instalação e - profjefer.files.wordpress.com · É também autor da gnu general public ... ex.:...
Post on 30-Sep-2018
216 Views
Preview:
TRANSCRIPT
II Curso de Especialização em Redes de
Computadores – Configuração e
Gerenciamento de Servidores e
Equipamentos de Redes
360 horas
Instalação e configuração de serviços de redes 1 (24hrs)
Prof. Jéfer Benedett Dörr
Prof. Jéfer Benedett Dörr
● Coordenador do curso de Licenciatura em Computação - UFPR Setor Palotina
● Mestre em Informática - UFPR● Especialista em Software Livre com ênfase
em Redes - UNIPAN● Bacharel em Informática - UNIOESTE
jefer@ufpr.brwww.profjefer.wordpress.com
Instalação e configuração de serviços de redes 1
Introdução ao uso de virtualização; Instalação de sistema operacional de rede (GNU/Linux); Comandos básicos; Criação de usuários e grupos; Editor de texto; Instalação e gerenciamento de pacotes (instalação, remoção, repositórios); Gerenciamento de partições e volumes lógicos (LVM); Compactação e descompactação de arquivos; Montagem e desmontagem de dispositivos; Comandos para gerenciamento de redes, contas, arquivos, processos e permissões; Agendamento de Tarefas; Shell Script: conceitos básicos, estrutura, variáveis e manipulação de strings, estruturas condicionais, estruturas de repetição, funções, expressões e uso de parâmetros, redirecionamento de entrada e saída, desenvolvimento de programas de instalação e desinstalação.
Etapas: nos dias 21/11 (4 horas) e 22/11 (8 horas); e dias 28 (4 horas) e 29/11 (8 horas)
1. Introdução2. Instalação3. Virtualização4. Comandos básicos5. Administração do Sistema6. Shell Script
Etapa 1
Introdução
1. Introdução2. Instalação3. Virtualização4. Comandos básicos5. Administração do Sistema6. Shell Script
IntroduçãoLinux é parte de um todo, mais precisamente, é um kernel de código-fonte aberto, que foi - e é desenvolvido - ao longo do tempo graças à colaboração voluntária de desenvolvedores de várias partes do mundo.
CTSSO CTSS (Compatible Time-Sharing System) foi um dos primeiros sistemas operacionais a adotar a técnica de time-sharing. Essa técnica, empregada atá hoje, permite que vários usuários possam, simultâneamente, utilizar um ambiente para executar programas. Tudo ocorre sobre o mesmo sistema operacional, rodando em uma única máquina. Esse tipo de sistema caracteriza o processo de compartilhamento de processador, memória e disco entre vários utilizadores.
O CTSS foi desenvolvido no Centro de Computação do MIT, po Fernando Jose Corbató. A primeira demonstração do CTSS ocorreu em 1961, rodando em um IBM 709. EM novenbro de 1962, o Centro de Computação do MIT passou a utilizar o IBM 7090. Com isso, o CTSS foi portado para um novo hardware.
MULTICS
O Multics era um projeto ambicioso da GE, mas enfrentou vários problemas, entre eles, falta de recursos computacionais. Assim, no mesmo ano, Ken Thompson decidiu criar algo mais "realista", chamando o novo projeto de Unics. Tempos depois, o nome foi mudado para UNIX, denominação que permanece até hoje.
Multiplexed Information and Computing Service
1964 - 2000
UNIXO surgimento do UNIX se deu em 1969, como um projeto da Bell Labs, laboratório pertencente à AT&T. Mas somente em meados da década seguinte tornou-se um sistema efetivamente disponível no meio acadêmico, o que permitiu a sua evolução e o surgimento de variações.
O UNIX, na verdade, começou em meados dos anos 1960 como um projeto a ser desenvolvido por um grupo de habilidosos programadores, entre eles, Ken Thompson e Dennis Ritchie: um sistema operacional de nome Multics.
https://www.youtube.com/watch?v=JoVQTPbD6UY
*unixO UNIX teve grande aceitação não somente em universidades, mas também em ambientes corporativos, resultando no surgimento de variações diversas do sistema, como as versões BSD e o Solaris.
MINIXO MINIX é um sistema operacional simples, criado por Andrew S. Tanenbaum, um renomado professor de computação que é conhecido pelos diversos livros que escreveu para a área.
Tanenbaum disponibilizou o MINIX principalmente para servir de auxílio no ensino de computação. Trata-se de um sistema operacional simples, que exige poucos recursos de hardware e cuja primeira versão foi lançada em 1987
O MINIX também não foi escrito do "zero". Trata-se, na verdade, de um projeto baseado em um sistema operacional que tem grande participação na história da computação: o UNIX.
LinuxA história do Linux começa no ano de 1991, pelas mãos de um estudante universitário finlandês chamado Linus Torvalds. Linus Torvalds, então com quase 20 anos, começou a estudar ciência da computação na Universidade de Helsinki, na Finlândia, em 1988. Cerca de dois anos depois, aproveitando o conhecimento que tinha e estava adquirindo sobre a linguagem C, decidiu criar a sua própria implementação de um terminal em seu recém obtido computador 80386, principalmente para acessar o servidor UNIX da instituição de ensino. Isso porque ele já havia testado o MINIX para esta finalidade, mas não estava satisfeito com os seus recursos.
MarcoFrom: torvalds@klaava.Helsinki.Fi (Linus Benedict Torvalds)Newsgroups: comp.os.minixSubject: What would you like to see most in minix?Summary: small poll for my new operating systemKeywords: 386, preferencesMessage-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>Date: 25 Aug 91 20:57:08 GMTOrganization: University of HelsinkiLines: 20
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big andprofessional like gnu) for 386(486) AT clones. This has been brewingsince april, and is starting to get ready. I'd like any feedback onthings people like/dislike in minix, as my OS resembles it somewhat(same physical layout of the file-system (due to practical reasons)among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work.This implies that I'll get something practical within a few months, andI'd like to know what features most people would want. Any suggestionsare welcome, but I won't promise I'll implement them :-)
Linus (torvalds@klaava.Helsinki.Fi)
PS. Yes - it's free of any minix code, and it has a multi-threaded fs.It is NOT protable (uses 386 task switching etc), and it probably neverwill support anything other than AT-harddisks, as that's all I have :-(.
NOMEO nome Linux foi criado por Ari Lemmke, administrador do site ftp.funet.fi que deu esse nome ao diretório FTP onde o núcleo Linux estava inicialmente disponível. Linus inicialmente tinha-o batizado como "Freax".
O Linux, por si só, é um kernel. Sozinho, um kernel não tem muita utilidade. É necessário "juntá-lo" a um conjunto de softwares para que tenhamos, efetivamente, um sistema operacional em condições de uso. É aí que o projeto GNU entra.
TUX
KERNELKernel pode ser entendido como o núcleo do sistema operacional, isto é, como a parte essencial deste. Cabe ao kernel fazer o intermédio entre o hardware e os programas executados pelo computador. Isso significa que a junção do kernel mais os softwares que tornam o computador usável (drivers, protocolos de comunicação, entre outros), de acordo com a sua aplicação, é que formam o sistema operacional em si.
StallmanRichard Matthew Stallman, ou simplesmente "rms" (Manhattan, 16 de março de 1953) é um ativista, fundador do movimento software livre, do projeto GNU, e da FSF. Um aclamado programador e Hacker, seus maiores feitos incluem Emacs (e o GNU Emacs, mais tarde), o GNU Compiler Collection e o GNU Debugger.
É também autor da GNU General Public License (GNU GPL ou GPL), a licença livre mais usada no mundo, que consolidou o conceito de copyleft.http://stallman.org/
FSFA Free Software Foundation (FSF, Fundação para o Software Livre) é uma organização sem fins lucrativos, fundada em 04 de Outubro de1985 por Richard Stallman e que se dedica a eliminação de restrições sobre a cópia, redistribuição, estudo e modificação de programas de computadores – bandeiras do movimento do software livre, em essência. Faz isso promovendo o desenvolvimento e o uso de software livre em todas as áreas da computação mas, particularmente, ajudando a desenvolver o sistema operacional GNU e suas ferramentas.
GNUGNU é a sigla para um nome curioso: "GNU is Not UNIX (GNU Não é UNIX)".
Trata-se de um projeto que teve início em 1984, pelas mãos de Richard Stallman, que queria criar um sistema compatível com UNIX, mas sem utilizar código deste.
copyleftCopyleft é uma forma de usar a legislação de proteção dosdireitos autorais com o objetivo de retirar barreiras à utilização,difusão e modificação de uma obra criativa devido à aplicaçãoclássica das normas de propriedade intelectual, exigindo que asmesmas liberdades sejam preservadas em versões modificadas.
GPLGNU General Public License (Licença Pública Geral), GNU GPL ou simplesmente GPL, é a designação da licença para software livre idealizada por Richard Matthew Stallman em 1989, no âmbito do projeto GNU da Free Software Foundation (FSF).
GNU FDL, a Licença de Documentação Livre GNU.GNU LGPL, a Licença Pública Geral "Menor" GNU.
Liberdadesliberdade de executar o programa, para qualquer propósito (liberdade zero);
liberdade de estudar como o programa funciona e adaptá-lo às suas necessidades (liberdade 1), sendo o acesso ao código-fonte um pré-requisito para esta aspecto;
liberdade de distribuir cópias de forma que você possa ajudar ao seu próximo (liberdade 2);
liberdade de melhorar o programa e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie (liberdade três). Novamente, aqui o acesso ao código-fonte é um pré-requisito.
The Linux Fundation
A Linux Foundation (LF) é uma organização sem fins lucrativos tecnologia consórcio fretado para fomentar o crescimento do Linux.
Linux InternacionalAssociação mundial sem fins lucrativos de corporações e outros que trabalham rumo a promoção do crescimento do Linux e do FOSS. Chefiada por Jon "maddog" Hall.
http://www.li.org/
Open SourceA Open Source Initiative (OSI) - Iniciativa pelo código aberto - é uma organização dedicada a promover o software de código aberto ou software livre.
Distro Timelinehttps://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg
Principais Distroshttp://distrowatch.com/dwres.php?resource=popularity
http://softwarelivre.org/debianbrasil/blog/versoes-do-debian-elaborado-por-marcello-de-souza?utm_source=dlvr.it&utm_medium=twitter
Etapa 2
Instalação
1. Introdução2. Instalação3. Virtualização4. Comandos básicos5. Administração do Sistema6. Shell Script
PreparativosSistema:Debian
Ubuntu ServerRed Hat
CentOSSuse
md5sum imagem.iso
FHS
■ /etc - nesse diretório e em seus subdiretórios se encontram basicamente todos
arquivos de configuração do Linux. Ex.: /etc/resolv.conf, de configuração do DNS; o
/etc/samba/smb.conf, arquivos de configuração do samba, entre outros. (Obs.: nos
exemplos estou usando alguns arquivos padrão da distro Fedora, em outras distros
poderá ser um pouco diferente, mas sem romper com o padrão FHS)
■ /etc/opt - Arquivos de configuração para a pasta /opt.
■ /etc/skel - Arquivos gravados nas pastas dos novos usuários.
■ /etc/X11 - Arquivos de configuração para o servidor X (modo gráfico), versão 11.
■ /opt - Arquivos opcionais, não padrão da distribuição. Ex.: aplicações como
GoolgleEarth.
■ /srv - Dados dos serviços fornecidos pelo próprio sistema.
■ /bin - Arquivos binários com comandos essenciais para todos usuários. Ex.: cat, cp,
rm.
■ /sbin - Também arquivos binários, só que com comandos essenciais para
administração de rede. Ex: ifconfig, modprobe, runlevel.
■ /lib - Bibliotecas necessárias para os binários das pastas /bin e /sbin. Ex.: se for
usado o comando ldd /bin/ls, mostrará as bibliotecas necessárias para esse
comandos rodarem, como libc e linux-gate. Dica: se por acaso algum binário
não rodar, você pode verificar com o comando ldd, ele vai mostrar se tem
alguma biblioteca faltando. Você pode fazer a verificação em outra máquina
que tenha a mesma distro e o programa rodando e descobrir qual pacote é
necessário baixar, por exemplo se for usado o rpm -qf /lib/libc.so.6, vai mostrar
o pacote glibc, daí é só ir na maquina com problema e instalar através do
comando yum install glibc, ou apt-get install glibc.
■ /usr - Uma hierarquia secundária para alguns arquivos, com permissões diferentes.
■ /usr/bin - Entra em jogo a hierarquia secundária. A pasta /usr/bin em teoria tem o mesmo
funcionamento da /bin, porém usada para arquivos não necessários para a comunicação
usuário-máquina. Ex.: less, renice, yum.
■ /usr/sbin - Hierarquia secundária para /sbin, também com comandos não necessários para
uso. Ex.: logrotate, lsof, lpinfo.
■ /usr/lib - Bibliotecas necessárias para arquivos das pastas /usr/bin e /usr/sbin.
■ /usr/local - Hierarquia terciária. Também contém as subpastas bin, lib e sbin, porém elas
vêm vazias por padrão, sendo deixadas exclusivamente para programas criados pelo
usuário.
■ /usr/src - Código fonte do kernel.
■ /boot - Arquivos estáticos usados no Boot Loader, ou seja, na
inicialização do sistema.
■ /tmp - Pasta onde ficam arquivos temporários. Ex.: quando você
baixa algum arquivo da internet e opta por executar ao invés de
salvar, na prática ele fica salvo na pasta /tmp e depois é
excluído(muitas vezes não prontamente após o final da
execução, o que o permite executar novamente).
■ /home - Diretório home dos usuários. Ex.: a pasta do usuário
papainoel normalmente vai ser /home/papainoel, e dentro terá pastas
como Desktop e Documentos.
■ /root - Diretório home do usuário root. Por padrão vem com poucos
arquivos, como o arquivos de instalação anaconda-ks.cfg.
■ /proc - Diretório com informações dinâmicas sobre a máquina. Ex.:
/proc/meminfo contém informações sobre uso da memória naquele
instante. Obs.: Os arquivos da /proc não tem permissão de alteração
nem pra usuário root.
■ /dev - Pasta onde ficam os endereços lógicos dos devices conectados
no computador. Ex.: a terceira partição de um HD conectado no
primeiro canal IDE da máquina: /dev/hda3.
■ /mnt - Onde ficam montados os volumes temporários.
■ /media - Onde ficam montados devices como pendrive e CDs.
■ /var - Arquivos variáveis, como logs e páginas web.
■ /var/log - Onde são gerados os principais logs do sistema.
■ /var/lock - Contém uma espécie de controle sobre alguns processos
que estão em execução.
■ /var/run - Contém o PID dos processos que estão rodando na
máquina.
■ /var/spool - Processos que estão em uma fila de execução. Ex.:
documento sendo enviado para uma fila de impressão.
■ /var/mail - Caixa de e-mail dos usuários.
■ /var/cache - Arquivos de cache de diversos programas.
Sistema de ArquivosReiserFS: O ReiserFS foi criado por Hans Reiser e pela equipe de desenvolvimento da Namesys. Ele provou ser uma alternativarobusta ao Ext2. Seus bens mais importantes são a melhorutilização do espaço em disco, o melhor desempenho do acessoao disco e uma recuperação de falhas mais rápida
Reiser4: Conceito de segurança refinadoBenchmark: http://www.phoronix.com/scan.php?page=article&item=ubuntu_1204_fs&num=6
Ext2: O sistema de arquivos ext2 é conhecido como "Second Extended FileSystem". Foi desenvolvido para ser mais "eficiente" que o sistema de arquivos "Minix", seu antecessor.
O Minix era muito utilizado nas primeiras versões do Linux, e foi utilizado por muitos anos.
O sistema de arquivos ext2 não possui journaling e foi substituído pelo ext3. tornou-se o sistema de arquivos Linux mais popular pormuitos anos
Ext3: foi criado por Stephen Tweedie. Como no ext3 só foi adicionado o suporte a journaling, podemos converter um sistema de arquivos ext2 para ext3, adicionado suporte a journaling, e também podemos converter um sistema de arquivos ext3 para ext2, removendo o suporte a journaling. Confiabilidade e desempenho.
XFS: Com intenção original de ser um sistema de arquivos para osistema operacional IRIX, a SGI iniciou o desenvolvimento do XFS nocomeço de 1990.Alta escalabilidade por meio do uso de grupos de alocação.Alto desempenho por meio de um eficiente gerenciamento de espaço emdisco.Pré-alocação para evitar a fragmentação do sistema de arquivos.
JFS (Journaling FileSystem) é um sistema de arquivos desenvolvido pelaIBM para o AIX, disponível em licença open source.
SWAP: espaço reservado para troca de dados com a memória RAM.
Sistema de Arquivos: criando
# mkfs -t ext3 /dev/hda4mke2fs 1.38 (30-Jun-2014)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)1026144 inodes, 2050295 blocks102514 blocks (5.00%) reserved for the super userFirst data block=063 block groups32768 blocks per group, 32768 fragments per group16288 inodes per groupSuperblock backups stored on blocks:32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Writing inode tables: doneCreating journal (32768 blocks): doneWriting superblocks and filesystem accounting information: done This filesystem will be automatically checked every 33 mounts or180 days, whichever comes first. Use tune2fs -c or -i to override.
Para saber quais sistemas de arquivos é atualmente suportado pelo seu Linux, digite o comando abaixo:
$ ls /sbin/mk*/sbin/mkdosfs /sbin/mkfs.ext2 /sbin/mkfs.msdos /sbin/mkfs.xfs/sbin/mke2fs /sbin/mkfs.ext3 /sbin/mkfs.reiser4 /sbin/mkreiser4/sbin/mkfs /sbin/mkfs.jfs /sbin/mkfs.reiserfs /sbin/mkreiserfs/sbin/mkfs.cramfs /sbin/mkfs.minix /sbin/mkfs.vfat /sbin/mkswap
Sistemas de arquivos criados
# cat /proc/mountsrootfs / rootfs rw 0 0none /sys sysfs rw 0 0none /proc proc rw,nodiratime 0 0udev /dev tmpfs rw 0 0/dev/hda2 / reiserfs rw 0 0/dev/hda2 /dev/.static/dev reiserfs rw 0 0tmpfs /var/run tmpfs rw 0 0tmpfs /var/lock tmpfs rw 0 0usbfs /proc/bus/usb usbfs rw 0 0tmpfs /lib/modules/2.6.15-23-386/volatile tmpfs rw 0 0devpts /dev/pts devpts rw 0 0tmpfs /dev/shm tmpfs rw 0 0tmpfs /var/run tmpfs rw 0 0tmpfs /var/lock tmpfs rw 0 0/dev/hda3 /mnt/win98 vfat rw,nodiratime,gid=46,fmask=0007,dmask=0007,codepage=cp437, iocharset=iso8859-1,utf8 0 0
Através do comando df -T:
# df -TSist. Arq. Tipo 1K-blocos Usad Dispon. Uso% Montado em/dev/hda2 reiserfs 10233024 2298764 7934260 23% /varrun tmpfs 75416 52 75364 1% /var/runvarlock tmpfs 75416 4 75412 1% /var/lockudev tmpfs 75416 68 75348 1% /devdevshm tmpfs 75416 0 75416 0% /dev/shmlrm tmpfs 75416 18856 56560 26% /lib/modules/2.6.15-23-386/volatile/dev/hda3 vfat 10231424 1836824 8394600 18% /mnt/win98
SWAP
swapoff -a # desabilita "todas" as partições swap em /etc/fstab
swapon -a # habilita "todas" as partições swap em /etc/fstab
Particionamento
Instalandohttps://www.debian.org/releases/wheezy/amd64/
Etapa 3
Virtualização
1. Introdução2. Instalação3. Virtualização4. Comandos básicos5. Administração do Sistema6. Shell Script
Virtualizaçãoutilização de um sistema operacional real sobre uma máquina virtual.
VirtualBoxhttp://www.virtualbox.org/manual/
VirtualBox - Linha de Comando
Iniciando uma VM:$ VBoxManage startvm "debian"
Criando uma VM (VM será criada usando as configurações padrão apenas 128 MB de RAM, sem disco virtual, etc.): $ VBoxManage createvm -name "Slack" -register
Iniciando sem interface:$ VBoxHeadless -s "Slack" &
VM rodando:vboxmanage list runningvms
http://www.virtualbox.org/manual/ch08.html
VirtualBox - Linha de Comando
Vamos criar agora uma máquina virtual com 512MB de RAM e 20GB de HD e instalar o Ubuntu de uma imagem que está em /home/visitante/ubuntu.iso.
$ VBoxManage createvm -name "Ubuntu" -register$ VBoxManage modifyvm "Ubuntu" -memory "512MB" -acpi on -boot1 dvd -nic1 nat$ VBoxManage createvdi -filename "Ubuntu.vdi" -size 20000 -register$ VBoxManage modifyvm "Ubuntu" -hda "Ubuntu"$ VBoxManage registerimage dvd /home/visitante/ubuntu.iso$ VBoxManage modifyvm "Ubuntu" -dvd /home/visitante/ubuntu.iso
VirtualBox - Linha de Comando
Para listar quais máquinas virtuais estão registradas no sistema use: $ VBoxManage list vms
Para listar informações de uma máquina virtual específica use: $ VBoxManage showvminfo "Ubuntu"
Depois de criada, ainda se pode modificar a máquina virtual, nesse exemplo modificaremos a memória: $ VBoxManage modifyvm "Ubuntu" -memory "1024MB"
Exemplo de modificação da máquina virtual, onde mudaremos novamente a memória, colocaremos o drive de DVD como boot primário e desativaremos o suporte a USB:$ VBoxManage modifyvm "Ubuntu 9.04" -memory 512 -boot1 dvd -usb off
Adicionar pastas compartilhadas: $ VBoxManage sharedfolder add "Ubuntu 9.04" -name "VirtualFiles" -hostpath "/home/visitante/arquivos"
Para clonar um HD virtual use: $ VBoxManage clonevdi /home/visitante/.VirtualBox/Ubuntu.vdi /home/visitante/.VirtualBox/Ubuntu-COPIA.vdi
O comando VBoxManage oferece diversas possibilidades, para ver a lista use: $ VBoxManage --help
VirtualBox - Linha de Comando - Export / import
Exportando uma máquina virtual
vboxmanage export Deb64 --output appliance.ova
Importando
vboxmanage import appliance.ova --dry-run
KVMKVM (Kernel-based Virtual Machine) é uma solução de virtualização open source para Linux incluído por padrão no kernel a partir da versão 2.6.20.
http://www.ibm.com/developerworks/br/local/linux/instalandokvmnolinux/
apt-get install lkvm ibvirt0 virt-manager qemu-kvm
XEN
http://doc.opensuse.org/products/draft/SLES/SLES-xen_sd_draft/cha.xen.basics.html
Etapa 4
Comandos Básicos
1. Introdução2. Instalação3. Virtualização4. Comandos básicos5. Administração do Sistema6. Shell Script
Navegando em diretórios
# tree -d -L 1 /jefer@ufpr ~ $ tree -d -L 1 //├── bin├── boot├── cdrom├── dev├── etc├── home├── lib├── lib32├── lib64├── lost+found├── media├── mnt
# tree -d / | tail -n 1
Ir para o diretório atual:
# cd .
Entrar em diretório:
# cd /usr//bin
Subir um nível:
# cd ..
Listar diretórios: ls
# ls
# ls -l -h
# ls -lh
# ls -hl
# ls --human-readable -l
cd diretório: abre um diretório.
Informação do sistema
uname: mostra informações do sistema operacional e docomputador. Digite uname -a para obter mais detalhes;
free: mostra a quantidade de memória RAM disponível;
date: mostra a data e a hora atual;
df: mostra as partições usadas;
who: mostra quem está usando o sistema.
uptime: mostra a quantas horas seu computador está ligado;
arquivos
cat arquivo: mostra o conteúdo de um arquivo.# cat /proc/cpuinfo
head: Mostra o início
tail: Mostra o fim
chmod: comando para alterar as permissões de arquivos e diretórios.
cp origem destino: copia um arquivo ou diretório para outro local;
scp: scp /var/lib/arquivos root@192.168.100.1:/home/damasceno
mv origem destino: tem a mesma função do comando cp, só que ao invés de copiar, move o arquivo ou o diretório para o destino especificado;
mkdir diretório: cria um diretório, por exemplo, mkdir abcdef cria uma pasta de nome abcdef;
cal: exibe um calendário;
cmp: compara arquivos;
clear: elimina todo o conteúdo visível;
lynx: abre o navegador de internet de mesmo nome;
links2: :)
diff arquivo1 arquivo2: indica as diferenças entre dois arquivos;
du diretório: mostra o tamanho de um diretório (durep);
file arquivo: mostra informações de um arquivo;
finger usuário: exibe informações sobre o usuário indicado;
find diretório parâmetro termo: o comando find serve para localizar informações. Para isso, deve-se digitar o comando seguido do diretório da pesquisa mais um parâmetro e o termo da busca.
Parâmetros:name - busca por nometype - busca por tiposize - busca pelo tamanho do arquivomtime - busca por data de modificação
Exemplo: find /home name tristaniafind
pq: mostra o status da fila de impressão;
lprm: remove trabalhos da fila de impressão;
ps: mostra os processos em execução;
pwd: mostra o diretório em que você está;
passwd: altera sua senha. Para um administrador mudar a senha de um usuário, basta digitar passwd seguido do nome deste;
grep
Procurar: grep "trecho a procurar" arquivo.txt
Remover palavra do arquivo: grep -v saindo arquivo.txt
procurar o trecho em todos os arquivos e diretórios que estejam dentro de
/var/www/: grep -R "trecho a procurar" /var/www/
grep -n root /etc/passwd
egrep
egrep -v "^#|^$" [arquivo.conf_original] > [arquivo.conf_descomentado]
reboot: reinicia o sistema imediatamente;
rm arquivo: apaga o arquivo especificado;
rmdir diretório: apaga o diretório especificado, desde que vazio;
sort: organiza;
strings: exibe strings;
shutdown: desliga ou reinicia o computador, veja:shutdown -r now: reinicia o computadorshutdown -h now: desliga o computador
sudo shutdown -r 30 "O sistema será reiniciado para aplicação de atualizações. Aproveite pra tomar um café."
time: medir tempo de execução de comando;
updatedb: atualize índices de busca;
locate: faz buscas;$ locate -i aRquIvo.txt$ locate *.bmp
sed
Remover string do textosed '/saindo/ d' arquivo.txt
echo "Tutorial sobre sed: aprenda a trabalhar com sed" | sed 's/sed/awk/g'
remover 10 linhas: sed '1,10 d' /etc/passwd
Inserir linha depois de encontrar padrão: echo -e "sou uma linha\nsou outra
linha\nesta linha tem número 1\nesta já não tem número" | sed -r '/[0-9]+/ a Oi.
Sou novo aqui'
lista.txt
|
\/justajksjkjdkfl
asdfdfd
12,,,,,,,,fulano@detal.com.br,,,,,
12,,,,,,,,fulano@detal.com.br,,,,,
13,,,,,,,,,,,elderbandai@bandai.com.br,,,,,,
13,,,,,,,,,,,elderbandai@bandai.com.br,,,,,,
14,,,,,,,flanders@ned.com,,,,,,,,,
14,,,,,,,flanders@ned.com,,,,,,,,,
18,,,,,,,mariaprimeira@louca.com.br,,,,,,,
$ sed '/@/!d' lista.txt
$ sed '/@/!d' lista.txt | sed 's/^[0-9][0-9]//g' | sed 's/,//g'
$ sed '/@/!d' lista.txt | sed 's/^[0-9][0-9]//g' | sed 's/,//g' | sort | uniq
seq
$ seq 10
$ seq 3 9
$ seq 10 10 110
$ seq -s, 10 -2 1
$ touch $(seq -f "harvey%02g" 10)
top: exibe a lista dos processos, conforme os recursos de memória consumidos;
useradd usuário: cria uma nova conta usuário, por exemplo, useradd marvin cria o usuário marvin; (e adduser?)
userdel usuário: apaga a conta do usuário especificado;
vi: inicia o editor de textos vi. Saiba mais aqui;
whereis nome: procura pelo binário do arquivo indicado, útil para conhecer seu diretório ou se ele existe no sistema;
uniq
cat teste_uniq.txt
joaquim
maria
priscila
joao
joao
norberto
uniq -c teste_uniq.txt
1 joaquim
1 maria
1 priscila
2 joao
1 norberto
uniq teste_uniq.txt
joaquim
maria
priscila
joao
norberto
halt: desliga o computador;
id usuário: mostra qual o número de identificação do usuário especificado no sistema;
kill: encerra processados em andamento;
ls: lista os arquivos e diretórios da pasta atual;
w: mostra os usuários logados atualmente no computador(útil para servidores);
wget: wget http://releases.ubuntu.com/14.04.1/ubuntu-14.04.1-server-amd64.iso
history
$ history
$ history 25
Filtrar:
$history | grep pwd
Limpar
$ history -c
Parar:
$export HISTSIZE=0
wc
Parâmetros:■ -l: conta as linhas;
■ -w: conta as palavras;
■ -c: conta os caracteres.
# wc -l utfpr.txt26 texto.txt
# wc -w utfpt.txt14 texto.txt
# wc utfpr.txt2346 282 26
cut
As opções mais usadas, são:■ -b, -bytes [bytes] :: Mostra a lista de bytes do arquivo.
■ -c, -characters [número] :: Mostra o número de caracteres do arquivo
(o Tab e o espaço são contados como caracteres).
■ -f, -field [campos] :: Mostra a lista de campos
■ -d, delimite [caracter] :: Opção para uso com "-f", determina o
caractere delimitador e na ausência o padrão é o Tab.$ date | cut -d: -f1Ter Abr 16 20
Um exemplo mais elaborado mostrando a quantidade de memória RAM:
$ free | tr -s ' ' | sed '/^Mem/!d' | cut -d" " -f23073768
Mostrando o primeiro campo de um arquivo que usa como delimitador dois pontos (:).
Pode ser usado, por exemplo, para mostrar os logins de todos os usuários do sistema contidos no arquivo passwd:
$ cut -d: -f 1 /etc/passwdrootdaemonbinsyssyncgames
Mostrando o primeiro e o terceiro campo de um arquivo que usa como delimitador dois pontos (:).
Vamos usar o mesmo arquivo, e agora vamos obter os logins e os números de usuário:
$ cut -d: -f 1,3 /etc/passwdroot:0daemon:1bin:2sys:3sync:4games:5
Mostrando apenas os 10 (dez) primeiros caracteres de qualquer linha em um arquivo:
$ cut -c 1-10 /etc/passwdroot:x:0:0daemon:x:1bin:x:2:2:sys:x:3:3:sync:x:4:6games:x:5:
awk:
Arquivo: server.txt01/18/2014 01:47 PM <DIR> server_12801/18/2014 02:26 PM <DIR> server_13101/18/2014 02:53 PM <DIR> server_13301/18/2014 03:17 PM <DIR> server_13501/18/2014 04:17 PM <DIR> server_13601/19/2014 08:16 AM <DIR> server_13901/19/2014 08:23 AM <DIR> server_140
cat server.txt | awk '{print $5}'
■ print $1 -> Exibe a primeira coluna;
■ print $2 -> Exibe a segunda coluna e assim
por diante;
■ print $NF ->Exibe a última coluna.
compras.csv1,marcio,da silva,dk9102,200.00,2014-10-012,alex,ribeiro,qr8790,110.00,2014-10-013,maria,clara,dk9102,200.00,2014-10-024,roberto,albieri,rt6543,50.00,2014-10-025,franciso,prado,qr8790,110.00,2014-100-026,adalberto,mathias,qr8790,110.00,2014-10-037,eduardo,figuereido,dk9102,200.00,2014-10-038,brian,johnson,rt6543,50.00,2014-10-039,jason,killer,rt6543,50.00,2014-10-0310,alex,ribeiro,dk9102,200.00,2014-10-03
$ awk ‘/dk9102/‘ compras.csv$ awk -F “,” ‘/dk9102/ {print $4,$2,$6;}’ compras.csv
arquivo dk9102.awk
$ cat dk9102.awkBEGIN {total=0;print “\n”;print “Relatorio de Compras – dk9102”;print “—————————————–”;print “Produto\t\tCliente\t\tData”;print “—————————————–”;}/dk9102/ {OFS=”\t\t”;print $4,$2,$6;total+=$5;}END {print “—————————————–”;print “total = R$” total;}
$ awk -F “,” -f dk9102.awk compras.csv
| > >> & &&
> cria ou substitui o conteúdo do arquivo;
>> adiciona a saída do comando ao final do arquivo existente ao invés de substituir seu conteúdo
| (pipe)Envia a saída de um comando para a entrada do próximo comando para continuidade do processamento
& rodar em background
&& rodar em caso de sucesso
; concatena comandoscd /etc ; cat hosts ; sleep 10 ; echo bye ; halt
wildcards
# ls -d /etc/rc?.d
# ls /etc/*.conf
# ls /etc/[a-cA-C]*
# cp -v /etc/{a,b,c,e,f}*.conf /tmp`/etc/adduser.conf' -> `/tmp/adduser.conf'`/etc/brltty.conf' -> `/tmp/brltty.conf'`/etc/casper.conf' -> `/tmp/casper.conf'cp: cannot stat `/etc/e*.conf': No such file or directory`/etc/fdmount.conf' -> `/tmp/fdmount.conf'`/etc/fuse.conf' -> `/tmp/fuse.conf'
touchtouch: cria ou atualiza dados do arquivo;
stat: status de arquivos ou dispositivos;
file: indica o tipo do arquivo;
wipe: exclusão segura;
wich/whereis: mostra o caminho absoluto do comando;
top: mostra processos que usam mais cpu;
dd: faz cópia direta dd if=... of=...;
detox: corrigi nomes problemáticos;
fdupes: elimina arquivos duplicados;
whoami: crise de existência?
sl: :)
ajuda
man
info
whatis
apropos
Livros
Simuladoshttp://www.lpibrasil.com.br/simulados
http://www.vivaolinux.com.br/scripts/download.php?codigo=5156
Show do Milhão:http://www.fuctura.com.br/jogolpi/
top related