Comando apropos ajuda a lembrar nomes de outros comandos no Linux

O apropos faz uma busca nas páginas do manual do Linux pelos termos que o usuário “perguntou” – e mostra os comandos relacionados àquela pesquisa.
Desenvolvido por Wilford, Polacco e Watson, o apropos lê a introdução a cada comando descrito no manual do Linux, buscando por palavras-chave que você definiu na linha de comando.
Assim, você pode encontrar um comando, cujo nome não sabe ou não se lembra mais, procurando pelo que “ele faz”.
Vamos aos exemplos?

Exemplos do comando apropos

Se você quiser encontrar os comandos, no Linux, que tratam imagens, pode usar o apropos desta forma:

apropos image
acetoneiso (1)       - feature-rich graphical application to mount and manage CD/DVD images
carousel (6x)        - displays multiple images rotating in a circular formation
cjpeg (1)            - compress an image file to a JPEG file
cwebp (1)            - compress an image file to a WebP file
devdump (1)          - Utility programs for dumping and verifying iso9660 images.
djpeg (1)            - decompress a JPEG file to an image file
dwebp (1)            - decompress a WebP file to an image file
e2image (8)          - Save critical ext2/ext3/ext4 filesystem metadata to a file

Acima, há um resultado parcial, em que são exibidos comandos e funções relacionados à palavra “image”.
Contudo, nem todos os itens listados, tratam de imagens gráficas. Alguns tratam de imagens de disco, que é uma coisa totalmente diferente.
Se você se refere a imagens gráficas, de um determinado tipo, pode ser um pouco mais específico:

apropos jpeg
cjpeg (1)            - compress an image file to a JPEG file
djpeg (1)            - decompress a JPEG file to an image file
jpegexiforient (1)   - reads or writes the Exif Orientation Tag
jpegtran (1)         - lossless transformation of JPEG files
pdftocairo (1)       - Portable Document Format (PDF) to PNG/JPEG/TIFF/PDF/PS/EPS/SVG using cairo
rdjpgcom (1)         - display text comments from a JPEG file
wrjpgcom (1)         - insert text comments into a JPEG file

Ou, ainda, pode acrescentar o comando grep, para filtrar resultados:

apropos image | grep -i jpeg

apropos grep image
clique para ampliar

Em outros casos, o comando less, pode ser mais adequado:

apropos editor | less
atobm (1)            - bitmap editor and converter utilities for the X Win...
audacity (1)         - Graphical cross-platform audio editor
bitmap (1)           - bitmap editor and converter utilities for the X Win...
bmtoa (1)            - bitmap editor and converter utilities for the X Win...
easytag (1)          - Tag editor for MP3 and Ogg Vorbis files
ed (1)               - line-oriented text editor
editor (1)           - Vi IMproved, a programmers text editor
editres (1)          - a dynamic resource editor for X Toolkit applications
ex (1)               - Vi IMproved, a programmers text editor
id3tool (1)          - a command line editor for id3 tags.
:

Espero que este texto o ajude a explorar cada vez mais o Linux e seus inúmeros comandos.

Como testar a velocidade da Internet na linha de comando

Você pode usar o speedtest-cli para testar a velocidade da conexão em um servidor. Trata-se de uma ferramenta de linha de comando (por isto, é leve) para testar a largura de banda da sua conexão à Internet.
Para fazer os testes, o speedtest-cli usa as informações providas pelo site speedtest.net e evita o uso de uma interface gráfica, feita em flash… e pesada.

Instale o speedtest-cli

Para instalar o cliente do speedtest.net, é necessário ter o python-pip, primeiro.

SAIBA MAIS

« pip é um sistema de gerenciamento de pacotes usado para instalar e gerenciar pacotes de software escritos na linguagem de programação Python. Muitos pacotes podem ser encontrados no Python Package Index (PyPI) » Fonte: Wikipedia.

Instale o pip, assim (no Ubuntu):

sudo apt-get install python-pip

Depois, fica fácil instalar o software, que é o assunto deste post:

sudo pip install speedtest-cli

Está feito!

Como usar o speedtest-cli

Para testar a sua conexão à Internet, execute o comando:

speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Oi Velox (187.79.164.175)...
Selecting best server based on ping...
Hosted by Mob Telecom (Fortaleza) [69.61 km]: 740.387 ms
Testing download speed..................
Download: 13.62 Mbit/s
Testing upload speed..................................................
Upload: 10.38 Mbit/s

Após algum tempo, surge o resultado, para você analisar.
Pronto para brigar com a operadora?

Compartilhe os seus resultados

Com a opção --share, o seu resultado é transformado em uma imagem .png e enviado pro site do speedtest, de onde você a pode compartilhar. Veja como fazer isto:

speedtest --share
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Oi Velox (187.79.164.175)...
Selecting best server based on ping...
Hosted by Mob Telecom (Fortaleza) [69.61 km]: 66.678 ms
Testing download speed........................................
Download: 3.52 Mbit/s
Testing upload speed..................................................
Upload: 0.42 Mbit/s
Share results: http://www.speedtest.net/result/3314997743.png

Veja que, na última linha, é exibida a URL para ver o resultado do teste na Internet. No meu caso, deu isto aqui: http://www.speedtest.net/result/3314997743.png
Ah, sim! Você pode usar apenas speedtest no lugar de speedtest-cli – no caso de você ter instalado o utilitário através do Python Pip.
como medir a velocidade da minha conexão à Internet
Simples, não?
Agora, experimente e compartilhe (este texto e seus resultados) com os seus amigos.

Como baixar e instalar o banco de dados Redis

O Redis é um banco de dados orientado a documentos (document-oriented, projetado para armazenar, recuperar e gerenciar informações também orientadas a documentos – também conhecidas como dados semi-estruturados.
logo redis banco de dados nosqlBancos de dados orientados a documentos constituem uma das muitas categorias dos conhecidos bancos NoSQL.
O Redis é software de código aberto, distribuído sob a licença BSD e vem sendo desenvolvido desde 2009. É construído na linguagem ANSI C e está disponível para diversas plataformas.

Como baixar e instalar

Vamos primeiro baixar a versão estável do Redis e, em seguida iniciar o processo de instalação, que serve para qualquer sistema operacional.
Baixe com o wget:

wget http://download.redis.io/redis-stable.tar.gz

Descompacte o pacote baixado no diretório em que você deseja instalar o Redis:

tar xvzf redis-stable.tar.gz

Entre no diretório do Redis, recém criado:

cd redis-stable

Vamos iniciar o processo de compilação:

make

O aplicativo recomenda rodar o seguinte comando:

make test

Os binários, já compilados, se encontram no diretório src/ – onde você vai encontrar o servidor Redis src/redis-server. Ponha-o pra funcionar:

src/redis-server &

Você deve ver surgir algo semelhante a isto na sua tela:

[18111] 17 Feb 16:35:20.099 # Warning: no config file specified, using the default config. In order to specify a config file use src/redis-server /path/to/redis.conf
[18111] 17 Feb 16:35:20.104 # Unable to set the max number of files limit to 10032 (Operation not permitted), setting the max clients configuration to 3984.
[18111] 17 Feb 16:35:20.105 # Warning: 32 bit instance detected but no memory limit set. Setting 3 GB maxmemory limit with 'noeviction' policy now.
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 2.8.6 (00000000/0) 32 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in stand alone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 18111
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

[18111] 17 Feb 16:35:20.108 # Server started, Redis version 2.8.6
[18111] 17 Feb 16:35:20.108 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
[18111] 17 Feb 16:35:20.108 * The server is now ready to accept connections on port 6379

Usando o Redis

Para “desocupar” o terminal com as mensagens do servidor, pressione Enter. Em seguida, inicie o cliente Redis:

src/redis-cli

Digite os primeiros comandos:

127.0.0.1:6379> set variavel "bom dia"
OK
127.0.0.1:6379> get variavel
"bom dia"
127.0.0.1:6379> 

Para finalizar o cliente Redis use o comando:

quit

Para finalizar o servidor Redis, use o killall:

killall redis-server

Fácil, não é? Não esqueça de compartilhar…

Como sincronizar data e hora no sistema a partir de servidores NTP

Sincronizar data e hora de dispositivos com um servidor NTP tem várias utilidades e vantagens – principalmente em uma empresa com um parque extenso de computadores.
Para mostrar como resolver isto, de maneira simples, vou usar o caso de um netbook, com 3 anos de uso, cuja bateria interna havia deixado de funcionar. Como resultado, toda vez que eu o ligava, ele tinha voltado pra 31 de Dezembro de 2007.

BIOS SETUP, RTC, Data e hora
Clique para ver detalhes.

Isto causava uma série de problemas – vários programas dependem de uma data e hora precisas para funcionarem adequadamente. Ter que ajustar a data e a hora manualmente, toda vez que ligar o computador é desgastante – mesmo pra mim, que costumo manter meus computadores ligados por dias ou semanas.
Veja como resolvi o problema.

O relógio do hardware ou RTC

Quase todo dispositivo eletrônico possui um hardware clock – relógio do hardware, que responde por outros nomes, como relógio do BIOS ou relógio de tempo real (RTC – Real Time Clock). Este relógio é alimentado por uma bateria própria – às vezes, ela é soldada à placa mãe, o que impede a sua troca.

LEIA MAIS

O que é o NTP

NTP quer dizer Network Time Protocol – trata-se de um protocolo usado para sincronizar os relógios entre computadores conectados em uma mesma rede.
A maioria dos servidores, na Internet, estão sincronizados através do NTP – o que evita que um email chegue a um destinatário 2 minutos “antes” de ser mandado, pra citar um pequeno exemplo do que seria a rede sem o NTP.
Apesar da aparente bagunça, a Internet precisa funcionar “como um relógio”.

Como instalar e configurar o NTP no Linux

Se você usa o Ubuntu ou qualquer outra distro Linux baseada no Debian, pode instalar com o apt-get:

sudo apt-get install ntp

Quem usa o RedHAT ou Fedora, pode instalar o NTP com o yum:

yum install ntp

Usuáros Debian, podem fazer uso do aptitude (com privilégios administrativos):

aptitude install ntp

Claro que você pode usar o aptitude no Ubuntu, também.
Como os pacotes são pequenos, o download e a instalação devem ser rápidos (isto depende da velocidade da sua conexão, também).

Como configurar o ntp

Se você aguardar alguns instantes, o NTP irá se executar e atualizar a data e hora do sistema.
Se você quiser, pode verificar se o aplicativo está rodando.
No Debian e no Ubuntu, use o seguinte comando:

/etc/init.d/ntp status
ntp.service - LSB: Start NTP daemon
   Loaded: loaded (/etc/init.d/ntp)
   Active: active (running) since Seg 2007-12-31 21:01:25 BRT; 6 years 7 months ago
  Process: 525 ExecStart=/etc/init.d/ntp start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/ntp.service
           └─618 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 113:120

Dez 31 21:01:29 Neuromancer ntpd_intres[649]: host name not found: 1.debia...g
Dez 31 21:01:29 Neuromancer ntpd_intres[649]: host name not found: 2.debia...g
Dez 31 21:01:29 Neuromancer ntpd_intres[649]: host name not found: 3.debia...g
Dez 31 21:02:03 Neuromancer ntpd[618]: Listen normally on 4 wlan0 192.168....3
Dez 31 21:02:03 Neuromancer ntpd[618]: peers refreshed
Dez 31 21:02:05 Neuromancer ntpd[618]: Listen normally on 5 wlan0 fe80::22...3
Dez 31 21:02:05 Neuromancer ntpd[618]: peers refreshed
Dez 31 21:02:06 Neuromancer ntpd_intres[649]: DNS 0.debian.pool.ntp.org ->...5
Dez 31 21:02:06 Neuromancer ntpd_intres[649]: DNS 1.debian.pool.ntp.org ->...5
Dez 31 21:02:06 Neuromancer ntpd_intres[649]: DNS 2.debian.pool.ntp.org ->...3
Hint: Some lines were ellipsized, use -l to show in full.

A linha em destaque, acima, mostra que o meu cliente NTP está ativo
Neste caso, não há mais nada que precise ser feito.
Se você desligar o computador, quando o ligar novamente, ele vai atualizar automaticamente a data e a hora do sistema, assim que se conectar à Internet.

Configurações adicionais do NTP

Se você quiser detalhar a configuração, pode indicar outros servidores mais adequados à sua região geográfica.
Você pode encontrar uma lista de servidores em www.pool.ntp.org.
Abra o arquivo de configuração /etc/ntp.conf com o seu editor favorito:

editor /etc/ntp.conf

e acrescente as opções adequadas. Para mim, estas são as que funcionam melhor:

server 0.south-america.pool.ntp.org
server 1.south-america.pool.ntp.org
server 2.south-america.pool.ntp.org
server 3.south-america.pool.ntp.org

Feita a alteração, reinicie o serviço NTPD:

sudo /etc/init.d/ntp restart
 * Stopping NTP server ntpd                                     [ OK ] 
 * Starting NTP server ntpd                                     [ OK ]

Só isto já é o suficiente para resolver o problema. Ao ligar o computador e conectar à Internet, o seu relógio interno já será atualizado automaticamente.
Para atualizar imediatamente a data e a hora do seu sistema, rode o comando a seguir:

/usr/sbin/ntpdate pool.ntp.org

Como habilitar a sincronização NTP pela interface gráfica

Abra o painel de configurações do seu sistema e selecione a opção de ajuste de data e hora.
Ubuntu NTP sincronização data hora
Em seguida, desbloqueie a tela de ajustes e forneça a senha administrativa.
Ao desbloquear, será possível selecionar a opção “Manter sincronizado com servidores na Internet”.
Só isto já será o suficiente – espero ter sido útil.