Em tempos de Windows Vista (!), parece absurdo para a maioria das pessoas usar um terminal e digitar comandos como se fazia anos atrás, na época do DOS. O fato é que para muitas tarefas usar o terminal pode ser mais rápido (quiçá mais fácil) que dar vários cliques aqui e ali. No Windows, há o command.com, que é bastante limitado em comparação com o shell do Linux, mas também pode ser utilizado para várias tarefas.
A coisa fica mais crítica no caso de um servidor, na instalação de um programa novo, como um fórum, por exemplo. Porque baixar tudo para o seu computador, descompactar, editar vários arquivos de configuração e subir tudo via ftp (que é lento com muitos arquivos pequenos, porque abre e fecha uma conexão para cada arquivo), se você pode fazer isso tudo diretamente do seu servidor?
Escrevi um post no fórum dos usuários brasileiros da DreamHost, mas achei que ele estava bom o suficiente para ser (re?)blogado aqui. Ei-lo:]
Como usar o shell (terminal em modo texto)
O shell, ou terminal em modo texto, é um acesso remoto ao servidor que você tem acesso. Em outras palavras, é como se você digitasse os comandos no teclado do computador que você está acessando e não no seu. Isto é útil em várias situações - por exemplo, neste tutorial, porque baixar o arquivo para o seu computador, descompactar e subir arquivo por arquivo se você pode baixar direto no seu servidor? As aplicações possíveis são inúmeras.
Mas enfim, mãos à massa!
Em primeiro lugar, o computador que você compartilha com outros usuários na dreamhost roda GNU/Linux. Se você não está acostumado com este sistema, eu recomendo que experimente antes em sua própria máquina, rodando um live-cd como o Ubuntu ou o Kurumin. Um live-cd é uma imagem ISO (imagem de CD) que você gravará num CD-R (é melhor não usar CD-RW por questões técnicas) que roda o Linux no seu computador como se você tivesse instalado - basta dar boot por ele, como o CD da instalação do windows.
Se você já usou o terminal do windows, provavelmente deve estar acostumado com digitar comandos para um computador, ao invés de clicar aqui e ali. Existem inúmeros guias de shell pela internet, mas poderia inumerar rapidamente alguns pontos chave:
1. O shell do linux é (muito) mais poderoso que o command.com do windows - o DOS foi originalmente criado “capando” o UNIX original;
2. Alguns comandos mudam de nome, dentre eles:
2.1. dir - ls
2.2. copy - cp
2.3. move - mv
2.4. del - rm
2.5. cd.. - cd ..
Então, vamos nessa!
Se você seguiu o meu conselho e testou os comandos num live cd antes de usar o shell, conseguirá se conectar com o servidor abrindo um terminal no seu computador (no ubuntu Aplicações > Acessórios > Terminal, ou alt-f2 > xterm) e digitando:
ssh usuario@servidor.dreamhost.com
ou
ssh usuario@site.com
Como curiosidade: SSH significa Secure SHell. é extremamente importante usá-lo em lugar do telnet, já que neste último seus dados trafegam de forma não-segura pela rede.
A diferença dos dois comandos é que o segundo geralmente seria um usuário secundário da conta que usaria (por exemplo se você revender o plano), porque o shell estaria “preso” àquele site específico.
Por exemplo:
ssh nighto@sunnyd.dreamhost.com
neste momento o cliente ssh perguntará se você deseja adicionar esta máquina na sua lista de máquinas confiáveis, diga que sim, e perguntará a sua senha. e então, você está conectado.
Com isso você já pode digitar comandos na sua máquina remota. por exemplo, seguindo o tutorial que eu linkei acima, eu poderia por exemplo:
ls <- lista os arquivos da pasta
cd nighto.net <- entra no diretório nighto.net
wget http://ufpr.dl.sourceforge.net/sourceforge/phpsysinfo/phpsysinfo-2.5.2-rc3.tar.gz"><- baixa esse arquivo
tar -xzvf phpsysinfo-2.5.2-rc3.tar.gz <- descompacta o arquivo baixado
rm phpsysinfo-2.5.2-rc3.tar.gz <- apaga o arquivo compactado
cd phpsysinfo <- entra na pasta
mv config.php.new config.php <- renomeia o arquivo
nano config.php <- edita o arquivo
[aperte ctrl-w para localizar texto, ctrl-o salva... tem os atalhos na tela]
nano includes/os/class.parseProgs.inc.php
[mesma coisa]
(dica: assim como no mIRC (para citar um programa de Windows que tem comportamento semelhante) para copiar basta selecionar um texto com o mouse, para colar basta clicar com o botão do meio (usualmente o scroll ou o botão direito e esquerdo simultaneamente). note que isto não substitui o ctrl-c-ctrl-v, então na prática você tem duas áreas de cópia… interessante, não?
… e voilà, fizemos rapidamente o que provavelmente demoraria muito mais tempo se tivéssemos de baixar o arquivo, editar no bloco de notas etc etc.
Existem outras possibilidades, por exemplo se você quiser copiar um arquivo diretamente da sua máquina para o servidor sem ter de abrir FTP ou SSH, poderia copiar um simples comando como:
scp arquivo usuario@maquina.dreamhost.com:~/arquivo
ou, do SSH, copiar um arquivo da sua máquina
scp usuario@ip.da.sua.maquina:~/arquivo . (note o ponto no final)
(para isso, você tem de instalar um servidor de shell no seu linux antes; isso pode ser feito facilmente com um sudo apt-get install openssh-server ou com o sistema de instalação da sua distro favorita)
… ok mas eu fui preguiçoso e não baixei o linux coisa nenhuma, quero continuar usando Windows!
Certo, para isso você precisará baixar (mais) um programa para acessar computadores via ssh. Para windows, um bom é o PuTTY, para encontrá-lo, googleie.
Espero que tenha ajudado 
existem possibilidades ainda mais interessantes, como por exemplo deixar baixando no servidor aquele torrent com pouquíssimos seeds que tá demorando um século pra baixar na sua máquina, e depois baixar por download direto a velocidade máxima… as possibilidades ficam à cargo da mente criativa do leitor 
Tags:
howto,
Linux,
ssh,
ubuntu