Comandos Linux

Started by #phobia, 24 de May , 2007, 09:30:04 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

#phobia

O Básico
Existe melhor maneira para começar que não seja o básico? Pois bem, existem dois tipos de utilizadores em sistemas Linux, o utilizador normal e o super-utilizador. O utilizador normal tem permissões limitadas em relação ao super-utilizador, que não tem qualquer limitação de comandos.

ls : Listar ficheiros existentes na directoria actual
ls dir1 dir2 : Listar ficheiros em duas dadas directorias
ls –l : Listar os ficheiros existentes em modo longo, com informações de dono, grupo, atributos, tamanho, etc..
Para mais informações sobre o comando ls execute: man ls

cp ficheiro1 ficheiro2 : Copiar o conteúdo de um ficheiro para outro ficheiro
cp ficheiro1 ficheiro2 ficheiro3 dir1 : copiar múltiplos ficheiros para uma directoria
cp –R dir1 dir2 : copiar os ficheiros existentes da directoria 1 para a directoria 2
Para mais informações sobre o comando cp execute: man cp

mv ficheiro1 ficheiro2 : Mudar o nome do ficheiro1 para ficheiro2
mv ficheiro1 ficheiro2 ficheiro3 directoria_de_destino : Mover os ficheiros para uma directoria especificada
mv -i * directoria_de_destino : Mover todos os ficheiros existentes na directoria actual para uma directoria especificada. Caso algum ficheiro já exista na directoria de destino irá perguntar se deseja eliminar o duplicado.
Para mais informações sobre o comando mv execute: man mv

rm ficheiro : Remover um ficheiro da directoria actual
rm –r * : remover todos os ficheiro de uma directoria, bem como das suas sub-directorias
Para mais informações sobre o comando rm execute: man rm

mkdir directoria : Criar uma directoria na posição actual de nome "directoria"
Para mais informações sobre o comando mkdir execute: man mkdir

ln –s ficheiro atalho : Criar um atalho para um ficheiro, poderá se comparar com um atalho no windows. Se apagar o ficheiro o atalho fica sem efeito.
ln ficheiro atalho : Basicamente cria um atalho ou então um novo ficheiro apontado para o mesmo espaço em memória, mesmo que apague o ficheiro o atalho ainda funciona embora aponte para um ficheiro não existente
Para mais informações sobre o comando ln execute: man ln

cd .. : Desce um nivel de directoria em relação à sua localização actual. P.e.: Se estiver em /home/ricardo/testes com o comando cd .. irá passar a /home/ricardo.
cd /home/ricardo/mp3/ : Entrar na directoria mp3 da conta pessoal do utilizador ricardo
Para mais informações sobre o comando cd execute: man cd

pwd : Mostra a sua localização actual no sistema de ficheiros. Ou seja, present working directory.
Para mais informações sobre o comando pwd execute: man pwd

touch : Cria um ficheiro vazio


Comandos Médios

Permissões em Ficheiros:

Como referido com o comando ls –l, podemos verificar os atributos/permissões dos ficheiros de uma directoria.

rcordeiro@paradise:/tmp$ ls -l
total 3
-rw-r--r--      1 root     root        0     Jun  8 03:37 blockhosts.lock
-rw-r--r--      1 root     root      871     Jun 11 18:00 upsc.log
drwxrwxrwt    3 root      root         91     Jun 11 18:06 tmpdir
rcordeiro@paradise:/tmp$

Para analisar o output do comando ls –l temos de ir por partes, primeiro perceber os campos, e de seguida os seus significados.

No primeiro campo temos o tipo de ficheiro e as suas permissões, sendo essas divididas em blocos de 3 com o seguinte modo:


 /d/(directoria)  rwx/(utilizador)    rwx/(grupo)   rwx/(outros)

Podendo o d ser substituido por:
-  ? ficheiro
B ? block device (são os discos, cdrom, disketes, etc..)
C ? character device (são as placas de som, gráfica, etc..)
L ? atalho do tipo shortcut em windows


Se nas permissões se encontrar um "–" significa que essa permissão não esta disponível ao seu utilizador.


Existem vários tipos de permissões de ficheiros, que são:

D ? directoria
R ? leitura
W ? escrita
X ? executar

Para percebermos melhor vamos tomar como exemplos a segunda e a última linha do output do comando:

(1) : -rw-r--r--  1 root     root        0     Jun  8 03:37 blockhosts.lock
(2) : drwxrwxrwt    3 root      root         91     Jun 11 18:06 tmpdir

Podemos ver em (1) que blockhosts.lock é um ficheiro (pois tem em primeiro lugar um – e logo não é um directório), em que o utilizador dono do ficheiro tem permissões de leitura e escrita mas não tem permissões de execução. O grupo associado ao ficheiro tem permissões de leitura bem como os outros utilizadores do sistema, negando qualquer outro acesso ao ficheiro.

Já em (2), verificamos que tmpdir é uma directoria cujas permissões são livres, ou seja, tanto o utilizador dono do ficheiro, como o grupo associado, como qualquer outro utilizador do sistema irá conseguir entrar, ver, criar ou apagar ficheiros na directoria .

No segundo campo temos o número de atalhos associados ao ficheiro, em (1) temos um atalho associado ao ficheiro e em (2) temos três atalho associados ao ficheiros.

No terceiro e quarto campo temos o dono e grupo associado ao ficheiro respectivamente neste caso é o utilizador root.

No quinto campo temos o tamanho do ficheiro bytes.

No sexto e setimo campos temos a data e hora de criação do ficheiro respectivamente.

No ultimo ou oitavo campo temos o nome do ficheiro.

Mudança de permissões em ficheiros:

Para efectuarmos tal operação existe o comando chmod.
Sintaxe: chmod permissões ficheiro

1º metodo das permissões :  rwx    r - x     - - -

                1 1 1   1 0 1   0 0 0

                    7         5        0

Note-se que neste método de permissões temos de ter noções de binário. A permissão é definida usando um valor que representa a soma das permissões aplicar. Assim, leitura (r) vale 4, escrita (w) 2 e execução (x) 1. P.e.: o valor 7 surge ao somarmos 4+2+1 (rwx) enquanto 5 ao somarmos 4+1 (rx). Nenhuma permissão é representada com 0.

Se na linha de comandos digitarmos: chmod 750 teste, isso dará as permissões acima pedidas.

2º metodo das permissões:

U(tilizador)    G(rupo)    O(utros)
R W X    R - X    R – X

Ou então se desejarmos aplicar as mesmas permissões para todos os utilizadores podemos utilizar A(ll).

chmod o+rx teste : Irá dar  permissões de leitura e execução a todos os outros utilizadores que acedam ao ficheiro teste.

chmod o+x, u+w, g+r teste : Altera as permissões do ficheiro teste para permitir a execução a todos os outros utilizadores que acedam ao ficheiro, escrita ao utilizador que criou o ficheiro, e leitura a todo o grupo a que está associado o ficheiro.

chmod a+x teste : Fará com que todos os utilizadores tenham permissão de execução do ficheiro.

Para mais informações sobre o comando chmod execute: man chmod

Comandos Avançados :

passwd : Mudar a palavra passe do seu utilizador
passwd utilizador : Mudar a palavra passe de um outro utilizador.
Para mais informações sobre o comando passwd execute: man passwd

ps : mostra a listagem dos processos em utilização pelo seu utilizador
ps aux : mostra uma listagem extendida dos processos em utilização.
Para mais informações sobre o comando ps execute: man ps

top : Faz o mesmo que o comando ps auxw e actualiza-o de 10 em 10 seg.
Sendo que o load average pode ser visto nos três campos.
load average: 0.17,        0.27,       0.25
                     |______| |______| |______|
1min      5min      15min

kill -9 pid ou kill –kill pid: termina o processo com o pid (process identifier) que desejar.
kill –HUP : Hangup, ou seja, re-lê o ficheiro de configuração e inicia o processo com essas informações.
killall -9 top ? Mata todos os processos com o nome top
skill -kill –u username ? Mata todos os processos do user username
Para mais informações sobre o comando kill execute: man kill

Nota:
O pid poderá ser encontrado no segundo campo da tabela do ps aux.


nice : Mostra a prioridade dada a um processo, indo de -20 (máxima prioridade) a 19 (prioridade minima) . Quanto mais alto o valor menos prioridade tem.
renice pid : alterar o NICE do processo. Um utilizador normal só pode aumentar o valor (ceder prioridade de processamento) do nice, para diminuir o valor (obter maior capacidade de processamento) terá que ser um super-utilizador.

Para Terminar:

Muitos utilizadores de Linux têm dois sistemas operativos nos seus discos rígidos, sendo que a maior parte da informação está na partição windows, existe então o problema de ler o conteúdo das partições windows no Linux.

Vamos então mostrar de seguida como ter acesso automático aos seus dados que estejam em partições windows (fat e ntfs).

Versão FAT

1- Vamos criar as directorias onde vão estar localizadas as partições windows
mkdir /mnt/windows
2 – Vamos dar permissões completas a pasta e ficheiros em /mnt/windows
chmod -Rf 777 /mnt/windows *
3- Vamos editar o ficheiro /etc/fstab como super-utilizador
rcordeiro@paradise:/$ sudo -s
Password:
root@paradise:/# root@artemis:/#  nano /etc/fstab
e adicionar no fstab o seguinte.
/dev/hda1 /mnt/windows vfat rw,user,auto,umask=0 0 0
4- Vamos confirmar se temos o módulo vfat instalado no sistema
/sbin/lsmod | grep vfat
Se não aparecer nada teremos de adicionar o módulo vfat, para isso devemos fazer o seguinte:
nano /etc/modules
adicionar no final uma linha com o seguinte: vfat
5-Vamos agora carregar o módulo
/sbin/modprobe vfat
Se não devolver nada, está tudo pronto.
6-Vamos agora montar a partição que queremos, ou seja:
mount /mnt/windows

Versão NTFS

Basicamente pouco difere em relação ao vfat, para montarmos o disco ntfs teremos de alterar no ponto 3 para:

/dev/hda1 /mnt/windows ntfs defaults,user,ro 0 0

E não efectuar os passos 4 e 5.

Deve-se referir que o módulo vfat permite as leitura e escrita em partições fat, mas em ntfs apenas podemos ler os ficheiros nele existentes.


Créditos: Ricardo Cordeiro