Linux avançado
Plano de aula
| Objetivo geral | Objetivo expecÃficos | conteúdo programático | Metodologia e estratégia de avaliação | carga horária |
Observações iniciais
Nunca esqueça que o linux e case sensitive, e portanto digite
todos os comandos em minúsculo.
sempre que a linha iniciar com # é porque o comando deve ser feito
como root
O atalho para o comando executar tem que estar gravado na sua mente
Através do comando executar abriremos de forma rápida muitos programas, ex:
Comandos básicos
Um usuário mais experiente em linux deve dominar alguns comandos como:
| Comando | Ação | Exemplo | Observações |
| man | exibe o manual de um comando | man ls | |
| cd | mudar de pasta | cd /etc | |
| ls | exibir o conteúdo da pasta indicada | ls -l /home | |
| mkdir | criar pastas | mkdir ~/teste | ~/ indica pasta pessoal |
| rm | remover pastas e arquuivos | rm -rf ~/tmp | -r indica recursividade |
| echo | exibe um texto na tela | echo "olá mundo" | este comando pode interpretar variáveis |
| passwd | muda a senha de um usuário | passwd | passwd sem argumentos muda a senha do usuário corrente |
| cat | mostra na tela o conteúdo de um arquivo | cat /etc/passwd | |
| chmod | muda permissão de arquivos | chmod 750 /home/share | veja descrição abaixo |
| ln | cria links para pastas | ln -s ~/docs/imagens ~/Desktop/imagens | ~/ é igual a $USER |
| find | comando de busca | find ~/ -iname *.jpg | veja o man do find |
| > | redireciona um comando para um arquivo | cal 1968 > 1968.txt | peça explicações sobre redirecionamentos |
| shutdown | desliga ou reinicia o sistema | shutdown -r now | -r reinicia -h desliga |
| ifconfig | exibe o endereço ip (endereço de rede) | ifconfig | |
| sort | ordena um arquivo | sort arquivo | |
| uniq | remove linhas duplicadas | | |
Variáveis de ambiente
Se eu logar num sistema linux qualquer com o usuário "joao" a variável
$USER vai conter o valor "joao", assim eu poderia fazer no modo texto algo como:
O sistema linux possui algumas variáveis que dependem do usuário, veja...
abra o konsole e digite:
echo "estou logado como $USER e minha máquina é $HOSTNAME"
Atribuição de variáveis
vamos dar um valor a uma variavel
pasta=~/tmp
você poderia agora fazer
cd $pasta
e seria levado para ~/tmp
Pipe Redirecionamentos e Encadeamento de comandos
Pipe
Um pipe ou encanamento permite pegar a saÃda de um comando e passar para
um outro comando e assim construir comandos mais complexos:
cat /etc/passwd | grep $USER
O comando acima lê o arquivo /etc/passwd (que contém a lista de usuários
do sistema) e repassa para o comando 'grep' que filtra o valor da variável
$USER que contém o nome do usuário que está logado.
Obs2: Lendo a linha de um usuário do arquivo /etc/passwd obtemos
várias informações sobre o mesmo
Redirecionamentos
No konsole do linux, ou seja, em seu modo texto a entrada padrão STANDARD IN
é o teclado e a saida padrão STANDARD OUT é o monitor. Mas posso pegar a
saÃda padrão que iria para a tela e jogar em um arquivo, é a isto que chamamos
de redirecionamento, existem dois tipos de redirecionamento:
- destrutivos >
- não destrutivos >>
No redirecionamento destrutivo se o arquivo de destino contiver algo
este conteúdo será sobrescrito.
cat /etc/passwd | cut -d: -f1 | sort > ~/Desktop/usuarios.txt
Já no redirecionamento não destrutivo ">>" o conteúdo do arquivo de destino
será acrescido da saÃda do comando atual.
cal 1978 >> calendarios.txt
Encadeamento de comandos
permite executar vários comandos de uma só vez
exemplo...
Nosso objetivo é capturar a imagem de um menu aberto, por isso
o nosso primeiro comando é o sleep 7, isso dá tempo suficiente até
abrir-mos o menu
após abrir o menu aguardamos até ouvir um bip, e ver que
alguns segundos depois o gimp (editor de imagens) abre a imagem capturada
abra o executar e digite:
sleep 7; import -window root tela.png; gimp tela.png
O que permite a execução de três comandos de uma só vez é o ponto e vÃrgula, ou seja,
é o ponto e vÃrgula que permite o encadeamento de comandos.
Como saber seu endereço de rede
Primeiro você precisa saber para que saber o endereço de rede. Bom, o
o endereço de rede está para o computador assim como o celular está para
uma pessoa, usando o endereço de rede posso acessar recursos em outro
computador na rede tip:
- impressoras
- arquivos compartilhados
abra um konsole e digite
ifconfig
O ifconfig também serve para configurar o endereço de rede
veja tudo sobre o comando em ifconfig
Entrando em uma pasta de qualqer maneira
abra o konsole e atribua à variável $pasta o valor "~/tmp"
agora faça:
[ -d $pasta ] || mkdir $pasta; cd $pasta
o comando acima testa ...
ou há uma pasta -d (diretório) chamdo $pasta,
se não houver crie a mesma "mkdir", em seguida entra na mesma.
São usados quatro conceitos:
* o comando test -d $pasta
* atribuição de variáveis
* opcionais com barras verticais
* encadeamento com ponto e vÃrgula
Permissão de arquivos e pastas
o comando chmod
ler=4
gravar = 2
executar = 1
_ grupo tem soma zero ou seja não lê grava ou executa nada
| _ outros também tem soma zero
||
chmod 700 arquivo
|
|_ dono do arquivo tem a soma de ler=4 gravar=2 e executar=1
Como executar um comando como root
se estiver logado como kurumin faça:
se estiver como outro usuário digite 'su' e o sistema lhe pedirá a senha de root
Graficamente pode fazer:
kdesu kcontrol
digite a senha de root
Como adicionar usuários ao sistema
# adduser nome
Para remover um usuário use:
# userdel -r nome
O parâmetro -r indica recursividade, ou seja, a pasta
do usuário também será apagada com tudo o que estiver dentro.
Como modificar sua senha
abra um konsole (modo texto) e digite
Obs: se a senha for muito curta o sistema não aceita
No caso de mudança de senha são necessários 3 passos:
- digitar a senha atual
- digitar a nova senha
- confirmar a nova senha
Obs: se estiver logado como root e quizer muda a senha do usuário paulo faça:
Neste caso o sistema aceita qualquer coisa, pois prezume-se que o usuário root seja inteligente o bastante para não usar senhas bobas.
Como criar senha segura
- não use senhas óbvias tip: seu nome, sua idade
- misture números e letras (se possÃvel use também sÃmbolos)
- não use uma senha para tudo
Como parar ou reiniciar serviços
exemplo da interface de rede
# /etc/init.d/networking stop
# /etc/init.d/networking start
# /etc/init.d/nome-do-serviço stop
# /etc/init.d/nome-do-serviço start
Desabilitando o login automático no KDE
- abra o kcontrol
- clique em Administração do Sistema >> Gerenciador de login >> Conveniência
e desmarque login automático
Adicionando impressora
Recomendamos o cups (common unix printer system) pois ele está presente em todas as versões de linux, já no caso do kurumin existe o clica-aki, que é exclusivo do kurumin.
Obs: o proxy tem que estar desabilitado para conseguir acessar
a interface do cups local ou remoto, para desabilitar o proxy abra o seu navegador de internet e procure a seção na qual se define o proxy. Dica: Seja um fuçador.
Impressora local via cups
Como instalar programas
Em linux baseados no debian como o kurumin e o ubuntu basta fazer como root:
o comando acima instala o servidor ssh, se sua rede tem um proxy veja como instalar programas em redes com proxy neste link.
Acesso remoto seguro
no kurumin já existe o servidor ssh, basta ativa-lo através do clica-aki
ativar o servidor ssh na máquina que será acessada
clica-aki >> Instalar configurar servidores >> acesso remoto >> ativar servidor ssh
Descubrir o ip da máquina que será acessada
abra o konsole e digite "ifconfig" sem aspas
acesse pelo konqueror
fish://usuario@ip
Pelo modo texto faça:
Matando processos
em modo texto ou usando Control+Alt+Esc
Matando a interface gráfica
Control+Alt+backspace
Estudo de comandos avançados
Neste ponto do curso será aprofundado o estudo da linha de coamandos
Bash completion
o konsole completa os comandos que você digita, por exemplo:
digite ifc+Tab
ele completa para ifconfig
O konsole guarda um histórico dos comandos:
use setas para cima e para baixo para ver os últimos comandos
Desligando em 15 minutos
Ejetando o cd
eject
eject -t (fecha a bandeja)
O comando alias
Para criar um atalho no ~/Desktop do usuário kurumin para abrir o CDROM, coloque o comando abaixo dentro do comando do atalho
sudo mount /dev/cdrom /mnt/cdrom ; konqueror /mnt/cdrom
Caso tenha um arquivo grande e queira remover linhas duplicadas posso usar o comando uniq
cat arquivo | sort | uniq > saida.txt
se são vários arquivos txt a serem concatenados, ou seja, colocados em um único arquivo faço
cat *.txt | sort | uniq > arquivao.txt
Para saber qual o linux que está usando faça:
ou
dmesg | head -1
Arquivos de configuração importantes
Conhecer os arquivos de configuração de sistema.
arquivo de usuários do sistema
arquivo de grupos
quem pode usar o sudo
arquivo para bloquear o acesso ao seu computador
vim /etc/hosts.denny
ALL: ALL
Para liberar para sua rede interna
# kedit /etc/hosts.allow
# (libera a rede 172.30.7.)
ALL: 172.30.7.
Agendando tarefas com a tabela crontab
Discar e desconectar automaticamente
A grande maioria dos internautas brasileiros ainda não tem acesso à banda larga, e padecem com as linhas telefônicas (eu entre eles). Vi em uma lista e achei interessante essas regras para a crontab que fazem com que o computador disque automaticamente nos horários em que a ligação local é um pulso e desligue no momento em que o desconto termina. São as seguintes:
0 6 * * mon-sat ppp-off >>/var/log/messages 2>/dev/null
0 0 * * tue-fri ppp-go >>/var/log/messages 2>/dev/null
30 14 * * sat ppp-go >>/var/log/messages 2>/dev/null
Você pode editar a crontab usando o comando crontab -e.
Instalação do kurumin
Veja também
Comments (0)
You don't have permission to comment on this page.