Dicas e Truques
Dicas para iniciantes
chmod
Todo arquivo e diretório em Linux possuem permissões que definem o seu acesso por parte dos usuários do sistema. Estas permissões proíbem, por exemplo, que um usuário acesse o diretório /home de outro.
O chmod é o comando responsável pelo controle destas permissões em arquivos e diretórios.
Para configurar as permissões de um arquivo ou diretório, utilizando o modo simbólico, o chmod deve receber como argumentos os usuários para os quais as permissões serão ajustadas e quais propriedades dos arquivos devem ser permitidas ou negadas a estes usuários.
Os parâmetros para os usuários podem ser:
u - Usuário proprietário do arquivo
g - Outros usuários do mesmo grupo do arquivo
o - Demais usuários
a - Todos os usuários. Equivale a ugo
Como propriedades dos arquivos, os argumentos mais utilizados com o chmod são:
r - Leitura
w - Escrita
x - Execução
Para usar estes parâmetros, você precisará também de um operador, que pode ser +, para adicionar as permissões indicadas, -, para retirá-las, e =, para trocar as permissões existentes pelas informadas no comando.
Com base nisto, já podemos começar a 'brincar' com o chmod. Para fazer com que todos usuários possam escrever em determinado arquivo, utilize o comando:
$chmod a+w nomedoarquivo
Se quiser retirar a permissão de execução dos usuários que não pertençam ao mesmo grupo do proprietário do arquivo, execute:
$chmod o-x nomedoarquivo
Para saber mais sobre o comando, não deixe de consultar a man page do chmod, digitando:
$man chmod
TCP/UDP: Identificação de Portas Ativas
Daniel Lobato Duclos - daniduc@cybershark.net
Freqüentemente, me deparo com pessoas perguntando que portas TCP ou UDP estão abertas em uma máquina Linux e qual programa está utilizando uma porta específica. São duas perguntas relacionadas, e bem simples de responder.
Para descobrir que portas estão abertas na sua máquina, nada de ficar rodando o nmap nela. Use:
netstat -nl
Esse comando lista todas as portas abertas. Veja um exemplo:
[root@ace /root]# netstat -nl
Conexões Internet Ativas (sem os servidores)
Proto Recv-Q Send-Q Endereço Local Endereço Remoto Estado
tcp 0 0 0.0.0.0:111 0.0.0.0:* OUÇA
tcp 0 0 0.0.0.0:6000 0.0.0.0:* OUÇA
udp 0 0 0.0.0.0:32768 0.0.0.0:*
udp 0 0 0.0.0.0:111 0.0.0.0:*
(..)
Agora eu sei que tenho as portas 111 e 6000 TCP e as portas 32768 e 111 UDP abertas. Mas espera ai! Porta 6000?? Que programa esta abrindo esta porta? Também é fácil de descobrir. Primeiro, descubra o número do processo que abriu esta porta com o comando fuser:
[root@ace /root]# fuser -n tcp 6000
6000/tcp: 840
Ótimo! Já sabemos que é o processo de ID (pid) 840. Agora, basta um ps com grep pra acharmos o ~Sculpado~T:
[root@ace /root]# ps auxw | grep 840
root 840 1.4 9.2 90708 23660 ? S 01:09 1:11 /usr/X11R6/bin/X
(..)
Opa! É o meu servidor X! Tudo normal.
A redistribuição desta e de outras mensagens da lista Dicas-L pode ser feita livremente, desde que o conteúdo, inclusive esta nota, não seja modificado.
Slack Tips
Piter Punk - piterpk@terra.com.br
Mixer em modo texto
Muitas vezes, você quer escutar uma música no mpg321 ou no workbone, enquanto programa feliz no console. Porém, o volume do som está deixando um pouco a desejar (é, isso acontece). Você pode tentar resolver o problema com o rexima, um mixer de som em modo texto incluído no Slackware 8.1.
É só digitar: rexima. Vai aparecer uma interface muito simpática e intuitiva com tudo o que pode ser regulado em sua placa de som. E, apesar de ser em modo texto, você pode utilizá-lo dentro de um xterm para regular o som dos aplicativos X. Muito útil quando se usa um gerenciador de janelas mais leve, e ele não vem com mixer embutido.
Rodando o ~Smake install~T do kernel no Slackware 8.1
No Slackware 8.0, logo depois de compilar o kernel, era só fazer make install e tudo era instalado no local correto. No 8.1, não é bem assim; como o kernel está no /boot e o make install instala o kernel no /, as coisas não são tão fáceis.
Para resolver este problema, antes de compilar o seu kernel, digite:
# export INSTALL_PATH=/boot
ou descomente a linha com este conteúdo em /usr/src/linux/Makefile.
Você também pode deixar o kernel ser instalado no / mesmo, e editar o seu /etc/lilo.conf para apontar para /vmlinuz, em vez de para /boot/vmlinuz. No Linux é assim, há várias formas de fazer a mesma coisa.
Apenas mandando e-mails
Até o Slackware 8.0, o sendmail podia ser executado sem ser em modo daemon. Agora, é necessário manter o sendmail rodando direto. Muitas pessoas vêem isso como uma falha de segurança, já que normalmente só usamos o sendmail para mandar e-mails.
Para resolver este problema, podemos deixar o sendmail com a porta 25 aberta apenas para a máquina local. Edite o /etc/rc.d/rc.sendmail e troque:
/usr/sbin/sendmail -L sm-mta -bd -q25m
por:
/usr/sbin/sendmail -L sm-mta -bd -q25m -Odaemonportoptions=Addr=127.0.0.1
Assim, você pode manter o daemon rodando indefinidamente, mas visível apenas para a sua máquina (o que é suficiente para apenas mandar e-mails).
Instalando o Slackware 8.1 sem o boot pelo CD
A primeira alternativa é utilizar o disquete de boot e os CINCO disquetes de root. Os disquetes estão no CD extra, dentro dos diretórios bootdisks e rootdisks, respectivamente.
Se você não tem o CD extra, pode fazer o download dos disquetes de um dos mirrors do Slackware, copiar a imagem dos discos para os seus disquetes (dd if=imagem of=/dev/fd0) e, por fim, ligar o seu sistema com o disquete de boot e depois ir colocando os disquetes de root conforme for sendo solicitado.
Chato, né? Várias pessoas também acharam. Por isso, foram inventando outras formas de instalação. Uma delas é através de um disco de boot que usa o FreeDOS para ~Sbootar~T o CD. Você ainda tem que fazer o download da imagem do disco (só que agora é apenas um download de 1.44MB) e copiar a imagem para um disquete.
Esta imagem (os criadores chamaram de DOSSLACK) pode ser encontrada no endereço www.userlocal.com/dosslack/ e serve para os proprietários de um leitor de CD-ROM IDE (não serve para modelos SCSI). É só deixar o CD no drive e dar boot no micro através do disquete.
Atalho para diretórios
Existem alguns atalhos pré-definidos no bash, que podem ser bastante úteis para os usuários poderem navegar dentro da árvore de diretórios do sistema. Para acessar diretamente o seu diretório /home, o usuário pode usar, por exemplo, o comando:
[user@host /home]$ cd ~
[user@host user]$
Se quiser retornar um diretório acima, poderá fazê-lo com o comando:
[user@host user]$ cd ..
[user@host /home]$
Para retornar ao último diretório acessado, deverá utilizar o comando cd - :
[user@host user]$ cd ..
[user@host /home]$ cd -
/home/user
[user@host user]$