Exibir código-fonte para Comandos Básicos do Linux
Ir para:
navegação
,
pesquisa
'''1 OBJETIVO''' Esse procedimento tem como objetivo demonstrar os comandos básicos a serem utilizados para manipular arquivos e diretórios no Linux. '''2 INTRODUÇÃO''' '''2.1 HISTÓRIA''' A história do Linux começou em 1991 com o inicio de um projeto pessoal de um estudante Finlandês chamado Linus Torvalds de criar um novo núcleo (kernel) de sistema operacional. Desde então, o núcleo Linux resultante foi marcado por um crescimento constante através de sua história. A partir do lançamento inicial de seu código-fonte, cresceu de um pequeno grupo de arquivo em ‘C‘ sob uma proibitiva licença de distribuição comercial para em 2012, possuir mais de 400 MB. de fonte sob a licença GPL (General Public License). '''2.2 DISTRIBUIÇÕES LINUX''' Distribuição Linux é um Sistema Operacional Unix-Like incluindo o kernel Linux e outros softwares de aplicação, formando um conjunto. Distribuições (ou “distros”) mantidas por organizações comerciais, como a Red Hat, Ubuntu, SUSE e Mandriva, bem como projetos comunitários como Debian e Gentoo montam e testam seus conjuntos de software antes de disponibiliza-los ao publico. Como o Linux e a maior parte dos softwares incluídos em distribuições são livres, qualquer organização ou individuo suficientemente motivado podem criar e disponibilizar (comercialmente ou não) a sua própria distribuição. Isso faz com que hoje haja registro de mais de 300 distribuições ativamente mantidas, embora menos de 10 delas sejam mesmo largamente conhecidas. O Linux evolui muito rapidamente, e os principais distribuidores tendem a lançar versões novas a cada três ou quatro meses, ou pelo menos semestralmente. Como em geral você pode obter o software gratuitamente ou a custo baixíssimo, não faz sentido optar pela versão antiga. Segue uma lista das principais distribuições de Linux: • Kurumin (Versão Brasileira – Carlos Morimoto) • Debian • Fedora • Gentoo • Mandriva (Mandrake [França] e Conectiva [Brasil]) • Red Hat (CentOS) • Slackware • SUSE • Ubuntu Nota: Cada distribuição pode conter alguns comandos únicos, por isso vale ressaltar que neste manual iremos utilizar como base a distribuição da Red Hat, o CentOS 6.5. E estaremos considerando um servidor já configurado. '''3 COMANDOS BÁSICOS DO LINUX''' '''3.1 LOGANDO NO LINUX''' Acessando o servidor Linux será necessário informar o usuário com que iremos logar e pressionar a tecla <ENTER>, posteriormente a senha deste usuário deverá ser informada. Neste treinamento utilizaremos o usuário root e a senha 123456 [[imagem:tela01.jpg|center]] Note que ao digitar a senha, nenhum caractere será mostrado, por isso digite-a com cuidado. Caso a senha digitada estiver errada, será mostrada a mensagem ‘login incorrect’ e deverá tentar novamente. '''3.2 COMANDOS PARA MANIPULAÇÃO DE DIRETÓRIOS''' '''3.2.1 COMANDO ‘ls'''' O comando ‘ls’ é utilizado para mostrar informações sobre os arquivos e diretórios Sintaxe: # ls [opções] [caminho1/arquivo1] [caminho2/arquivo2] Onde: caminho1/arquivo1: Diretório/arquivo que será listado caminho2/arquivo2: Outro diretório/arquivo que será listado As opções do comando ‘ls’ podem ser: • -a -> Lista todos os arquivos de um diretório, inclusive os arquivos ocultos. • -l -> Usa o formato longo para a listagem de arquivos, mostrando as permissões, donos, data de modificação, grupos, etc. • -R -> Lista os diretórios e subdiretórios recursivamente. • -h -> Mostra o tamanho dos arquivos em Kb, Mb e Gb. • -F -> Insere um caractere após cada arquivo para facilitar sua identificação, sendo: '*' para executáveis '/' para diretórios '=' para soquete '@' para link simbólico • --color=”PARAM” Mostra os arquivos em cores diferentes de acordo com o tipo. ‘PARAM’ pode ser: - never: nunca lista em cores (mesma coisa que não usar o parâmetro --color). - always: sempre lista em cores conforme o tipo de arquivo. - auto: somente colore a listagem se estiver em um terminal (putty). A listagem pode ser ordenada usando as seguintes opções: • -f -> Não ordena; • -r -> Inverte a sequência de ordenação; • -c -> Ordena pela data de alteração; • -x -> Ordena pela extensão; • -u -> Não ordena, mostra os arquivos na ordem do diretório; Exemplos: ls...............Lista os arquivos do diretório atual; ls –la...........Listagem detalhada dos arquivos do diretório atual; ls /bin /sbin....Lista os arquivos do diretório /bin e /sbin; [[imagem:tela02.jpg|center]] '''3.2.2 COMANDO ‘cd’''' Entra em um diretório. É necessário ter a permissão de execução para entrar no diretório. Sintaxe: # cd [diretório] Onde: [diretório] é a pasta que deseja acessar. Exemplos: -Usando ‘cd’ sem parâmetros ou ‘cd ~’ -> retornará ao seu diretório home ($HOME). -‘cd /’ -> retornará ao diretório raiz. -’cd –‘ -> retornará ao diretório anteriormente acessado. -‘cd ..’ -> sobe um diretório. -‘cd ../[diretório]’ -> sobe um diretório e entra imediatamente no próximo (por exemplo, quando estamos no diretório ‘/mnt/local’, digitando ‘cd ../teste’, o comando ‘cd’ retorna um diretório (/mnt) e entra imediatamente no diretório teste (/mnt/teste)). '''3.2.3 COMANDO ‘mkdir’''' Comando utilizado para criar um novo diretório. Sintaxe: # mkdir [opções] [caminho/diretório] As opções do comando ‘mkdir’ podem ser: • --verbose -> Mostra uma mensagem para cada diretório criado. Mensagens de erro são mostradas mesmo que esta opção não seja usada. Para criar um diretório é necessário ter permissão de gravação no diretório pai. Exemplo: mkdir /home/teste Cria o diretório ‘teste’ dentro de ‘/home’ mkdir teste 1 teste2 Cria os diretórios ‘teste1’ e ‘teste2’ dentro do diretório atual. '''3.2.4 COMANDO ‘rmdir’''' Este comando é utilizado para apagar diretórios. Para que funcione corretamente é necessário que o diretório a ser removido esteja vazio e o usuário deve ter permissão de gravação. Sintaxe: rmdir [opção] [caminho/diretório] Onde a opção pode ser: • -r -> Utilizando esta opção, é possível remover diretórios que contenham arquivos. Exemplo: rmdir /home/teste Remove o diretório ‘teste’ dentro de ‘/home’ rmdir teste 1 teste2 Remove os diretórios ‘teste1’ e ‘teste2’ dentro do diretório atual. '''3.3 COMANDOS PARA MANIPULAÇÃO DE ARQUIVOS''' Segue abaixo os principais comandos para a manipulação de arquivos. '''3.3.1 COMANDO ‘rm’''' O comando ‘rm’ é utilizado para remover arquivos e diretórios (mesmo que não estejam vazios). ''Obs.: No LINUX ao remover um arquivo, não é possível recuperá-lo (como no MS-DOS, onde pode-se usar o “undelete” ou no Windows, onde é possível restaurar um arquivo da lixeira).'' Sintaxe: # rm [opções] [caminho/arquivo ou diretório] As opções são: • -i (-interactive) -> Pede uma confirmação ao remover um arquivo. Esta opção é ativada por padrão, sendo necessário digitar ‘y’ para sim ou ‘n’ para não. • -f (-force) -> Remove os arquivos sem solicitar confirmação. Geralmente é utilizado quando deseja remover vários arquivos de uma vez, caso contrário, é necessário confirmar cada exclução. • -r (-recursive) -> Usado para remover arquivos e subdiretórios dentro de outros diretórios. Exemplo: rm teste.txt Remove o arquivo ‘teste.txt’ do diretório atual rm *.txt Remove todos os arquivos que terminam com ‘.txt’ rm teste1.txt teste2.txt Remove os arquivos teste1.txt e teste2.txt rm –rf /tmp/teste/* Remove todo o conteúdo do diretório ‘/tmp/teste’ mas mantém o subdiretório ‘/tmp/teste’ rm –rf /tmp/teste/ Remove todo o conteúdo do diretório ‘/tmp/teste’ inclusive o subdiretório ‘/tmp/teste’ '''3.3.2 COMANDO ‘cp’''' O comando cp é utilizado para fazer cópia de arquivos. Sintaxe: cp [opções] [origem] [destino] As opções disponíveis são: • -a (-archive) -> Preserva permissão total. • -i (-interactive) -> Pergunta antes de substituir um arquivo existente. • -f (-force) -> Não pergunta, substitui todos os arquivos caso já exista. • -u (-update) -> Copia apenas se o arquivo de origem é mais novo que o arquivo de destino, ou se o arquivo de destino não existe. • -p -> Preserva as permissões. • -r -> Copia arquivos dos diretórios e subdiretórios da origem para o destino. E recomendável usar -R ao invés de - r. • -R (-recursive) -> Copia arquivos e subdiretórios (como a opção -r) e também os arquivos especiais FIFO e dispositivos. Exemplo: cp teste.txt teste1.txt Copia o arquivo teste.txt para o arquivo teste1.txt cp teste.txt /tmp Copia o arquivo teste.txt para dentro do diretório /tmp cp * /tmp Copia todos os arquivos do diretório atual para o diretório /tmp cp /bin/* Copia todos os arquivos do diretório /bin para o diretório atual cp -R /bin /tmp Copia todo o diretório /bin (inclusive seu conteúdo) para o diretório /tmp cp -R /bin/* /tmp Copia todo o conteúdo do diretório bin para o diretório /tmp '''3.3.3 COMANDO ‘mv’''' O comando mv é utilizado para mover ou renomear arquivos e diretórios. É parecido com o cp, mas o arquivo de origem é apagado após a cópia. Sintaxe: mv [opções] [origem] [destino] Opções: • -f (-force) -> Substitui o arquivo de destino sem solicitar confirmação. • -i (-interactive) -> Solicita uma confirmação antes de substituir. Mesmo que não seja utilizado pelo usuário, está opção já é utilizado como padrão. • -v (-verbose) -> Mostra os arquivos que estão sendo movidos. Exemplos: mv teste.txt novoteste.txt Renomeia o arquivo teste.txt para novoteste.txt mv teste.txt /tmp Move o arquivo teste.txt do diretório atual para o diretório /tmp mv /tmp/teste.txt /user/testenovo.txt Move o arquivo teste.txt do diretório /tmp para o diretório /user e altera seu nome para testenovo.txt '''3.4 COMANDOS DIVERSOS''' '''3.4.1 COMANDO ‘ps’''' Algumas vezes e útil ver quais processos estão sendo executados no computador. O comando ps faz isto, e também nos mostra qual usuário executou o programa, hora em que o processo foi iniciado, etc. Funciona como o ‘services.msc’ do windows. Sintaxe: ps [opções] Onde as opções são: • a -> Mostra os processos de todos os usuários do sistema. • x -> Mostra processos que não são controlados pelo terminal. • u -> Mostra o nome de usuário que iniciou o processo e hora em que o processo foi iniciado. • m -> Mostra a memória ocupada por cada processo em execução. • f -> Mostra a árvore de execução de comandos (comandos que são chamados por outros comandos). • e -> Mostra as variáveis de ambiente no momento da inicialização do processo. • w -> Mostra a continuação da linha atual na próxima linha ao invés de cortar o restante que não couber na tela. As opções acima podem ser combinadas para resultar em uma listagem mais completa. Pode-se pode usar “pipes” (|) para filtrar a saída do comando ps. Ao contrário de outros comandos, o comando ps não precisa do hífen “-” para especificar as opções. Isto porque ele não utiliza opções longas e não usa parâmetros. Exemplos: ps Mostra todos os processos que estão em execução. ps aux | firebird Mostra apenas as informações sobre o processo ‘firebird’. '''3.4.2 COMANDO ‘kill’ E ‘killall’''' O comando kill permite finalizar um processo ou programa. Corresponde ao ‘finalizar tarefa’ ou ‘finalizar processo’ utilizados no Windows. Utilizando o kill, o processo é finalizado imediatamente, sem chance de salvar os dados ou apagar os arquivos temporários criados por ele. A diferença entre o ‘kill’ e o ‘killall’ está apenas nos parâmetros utilizados, pois, enquanto o primeiro utiliza o PID (número de identificação do processo) o outro utiliza o nome do processo. Obs. O PID pode ser visualizado ao utilizar o comando ‘ps’ '''''kill''''' Sintaxe: kill [sinal] [PID] Onde o sinal é: • -9 Envia um sinal de ‘destruição’ ao processo. Ele é terminado imediatamente, sem solicitar confirmação ou permitir salvar os trabalhos realizados até o momento. Para executar esta opção é necessário que o usuário seja o dono do processo ou ser o usuário root. Exemplo: kil -9 143 '''''killall''''' Sintaxe: killall [opção] [nome_processo] As opções podem ser: • -i -> Pede confirmação para finalizar o processo. • -l -> Lista o nome de todos os sinais conhecidos. • -q -> Ignora a existência do processo. • -v -> Retorna confirmação de sucesso na finalização. Exemplo: killall –i –firebird '''3.5 PERMISSÕES DE ARQUIVOS''' Nesta parte, serão apresentadas os principais comando para manipulação nas permissões dos arquivos. '''3.5.1 COMANDO ‘chmod’''' Muda a permissão de acesso a um arquivo ou diretório. Com este comando é possível escolher se o usuário ou grupo terá permissões para ler, gravar ou executar arquivos. Sempre que um arquivo é criado, seu dono é o usuário que o criou e seu grupo é o grupo do usuário. As permissões dos arquivos podem ser visualizadas utilizando o comando ‘ls –la’, conforme segue: [[imagem:tela03.jpg|center]] Na figura acima o primeiro dígito determina o tipo de arquivo (- para executáveis e arquivos ou ‘d’ para diretórios), os três seguintes são a permissão do dono do arquivo, os três do meio a permissão do grupo que o arquivo pertence e os últimos a permissão de outros usuários. A regra para as permissões sempre será: • --- -> Nenhuma permissão; • r-- -> Permissão de leitura; • r-x -> Leitura e execução; • rw- -> Leitura e gravação; • rwx -> Leitura, gravação e execução. Para facilitar o entendimento, as permissões podem ser indicadas através de números, conforme quadro abaixo: Permissão Binário Decimal --- 000 0 --x 001 1 -w- 010 2 -wx 011 3 r-- 100 4 r-x 101 5 rw- 110 6 rwx 111 7 Sintaxe: chmod [opções] [permissões] [diretório/arquivo] Opções: • -v (-verbose) -> Mostra os arquivos que estão sendo processados. • -f (-silent) -> Não mostra a maioria das mensagens de erros. • -c (-change) -> Semelhante à opção –v, mas só mostra os arquivos que tiveram permissões alteradas. • -R (-recursive) -> Muda as permissões dos diretórios e todo seu conteúdo. Exemplo: chmod –R 777 /sisger Libera para todos os usuários e grupos, permissão total no diretório /sisger e também em todo o seu conteúdo. chmod 705 teste.tst Libera permissão total para o usuário root, nenhuma permissão para o grupo de usuário e permissão de leitura e execução para todos os outros usuários. '''3.5.2 COMANDO ‘chown’''' O comando chown é utilizado para alterar o ‘dono’ do arquivo ou diretório. Sintaxe: chown [opções] [novo dono/grupo] [diretório/arquivo] As opções são: • -v (-verbose) -> Mostra os arquivos conforme são alterados. • -f (-supress) -> Não mostra mensagens de erro. • -c (changes) -> Mostra somente os arquivos que sofrem alterações. • -R (-recursive) -> Altera o dono de arquivos no diretório atual e subdiretórios. Exemplo: chown root /sisger/teste/SISGER.FB Altera para ‘root’ o dono do arquivo SISGER>FB '''3.6 USANDO O EDITOR VI''' Nesta parte será demonstrado o editor de textos incluso no linux. O vi não é o editor mais fácil de usar e nem é muito autoexplicativo, entretanto é o editor mais comum em distribuições LINUX, por isso merece um pouco de atenção. Para iniciar o vi basta digitar o comando; vi [arquivo a ser visualizado] Vale lembrar que ao digitar o comando utilizando o nome de um arquivo que não existe, o vi irá criar o arquivo com o nome digitado. Exemplo: vi /opt/firebird/aliases.conf Irá abrir o arquivo aliases.conf. vi /home/teste.txt Irá criar um arquivo vazio chamado teste.txt (caso o arquivo não exista) [[imagem:tela04.jpg|center]] Ao iniciar, o vi está em modo de comando, para inserir um texto basta apertar a tecla ‘i’ ou <insert>, veremos que o status no rodapé será alterado: [[imagem:tela05.jpg|center]] Agora é só digitar o texto desejado. Para terminar o modo de inserção e retornar ao modo de comando, basta apertar a tecla <ESC>. Estando no mode de comando é possível salvar as alterações digitando ‘:w’. Para apagar o texto estando no modo de comando, basta digitar ‘x’ ou <DELETE>, desse modo o caractere na posição do cursor será apagado. Digitando ‘dd’ será apagada a linha inteira na posição do cursor e para apagar uma palavra inteira basta digitar ‘dw’ (será apagada a partir da posição do cursor). Para salvar o arquivo, basta estar no modo de comando e digitar ‘:w’. Para salvar e sair do editor, pode digitar ‘:wq’ . Comandos do vi: • :w -> Salva as alterações. Outra opção é utilizar ‘:w!’ para forçar a gravação das alterações • :q -> Sai do arquivo. Utilizando ‘:q!’ realizada uma saída forçada. • :wq ou :x -> Grava as alterações e sai do arquivo. Também é possível utilizar ‘:wq!’ ou ‘:x!’ para forçar a gravação e a saída.
Retornar para
Comandos Básicos do Linux
.
Menu de navegação
Ferramentas pessoais
Criar conta
Autenticar-se
Espaços nominais
Página
Discussão
Variantes
Visualizações
Ler
Ver código-fonte
Ver histórico
Ações
Pesquisar
Navegação
Página principal
Mudanças recentes
Página aleatória
Ferramentas
Páginas afluentes
Alterações relacionadas
Páginas especiais
Informações da página