Escolar Documentos
Profissional Documentos
Cultura Documentos
Quando executamos o comando ls -la, podemos notar no início da linha, algumas "letras" d, x, r. Essas
letras estão diretamentre ligadas às permissões de arquivos e diretórios no sistema de arquivos do Linux.
No exemplo acima, temos o diretório "ozzy", com suas permissões, data da última modificação, dono e
grupo do diretório e as permissões. Veja a tabela abaixo:
As permissões de arquivos e diretórios, são configuradas de acordo com sua necessidade. Antes de
configurarmos as permissões de um diretório, primeiramente precisamos entender o que são permissões e
entender também o que são grupos e proprietários.
· Grupo: Grupo de usuários são utilizados para organizar os usuários dentro do sistema Linux. Esses
grupos são definidos pelo administrador do sistema na manutenção do sistema Linux. Por padrão, o
MDK 7.1 define um usuário por grupo, sendo que quando adicionarmos um usuário "cristina",
automaticamente será criado um grupo "cristina", contendo somente este usuário. Esta opção pode ser
alterada utilizando um programa muito útil e indispensável na admiistração de um sistema Linux, o
linuxconf. Veremos este programa na prática.
· Permissões: As permissões de arquivos e diretórios são utilizadas para determinar quem pode
executar, gravar, ou ver determinado arquivo ou diretório. Tratando-se que as pemissões são mostrada
principalmente pelas letras rwx, veja a tabela abaixo:
r w x
read (leitura) write (escrita) execute (execução)
Permissão para leitura Permissão para escrita Permissão para execução
Entendendo as permissões, é possível proteger arquivos e diretórios de usuários que não estariam
autorizados a determinada função.
Ok. Mas por que temos 3 vezes o rwx ?? Veja a tabela abaixo e entenda:
A primeira coluna define permissões para o dono do arquivo / diretório, ou seja, o usuário que o criou.
A segunda coluna define permissões para o grupo ao qual o usuário que criou o arquivo pertence. Sendo
assim, todos os usuários do grupo terão acesso à esse arquivo / diretório com as devidas permissões.
A terceira coluna define as permissões para outros (em geral). Qualquer outro usuário, mesmo que não
esteja dentro do mesmo grupo, pode usufruir do arquivo / diretório obedecendo as devidas permissões.
Exemplos:
· Um arquivo que tenha permissões: rwxrwxrwx : Significa que o dono do arquivo pode lê-lo, modifica-
lo, apaga-lo e executa-lo. Os usuários do grupo poderá fazer as mesmas modificações que o
proprietário e os outros usuários também poderão fazer as mesmas coisas.
· Um arquivo que tenha permissões: rwx------: Significa que somente o proprietário poderá ler, gravar
(alterar, apagar) e executar.
· Um arquivo que tenha permissões r-xr-xr-x : Significa que este arquivo está para leitura e execução
para o proprietário, o grupo e outros. Ele não tem a propriedade que permite que ele seja
apagado/alterado/escrito por qualquer pessoa, pois falta o atributo w.
Assim são as permissões de arquivos e diretórios, um dos cuidados MUITO IMPORTANTE quando o critério
é SEGURANÇA!!
Além de rwx, temos também a letra d, que irá indicar um diretório. Temos também a letra l que indica um
link, temos várias outras letras, que não indicam permissões, mas define o tipo do arquivo / diretório.
Não é difícil. Podemos fazer por 2 meios: modo texto ou com a ajuda do X (interface gráfica). Por linha de
comando, precisamos entender alguns conceitos:
r=4 leitura
w=2 gravação
x=1 execução
Pronto! Só isso precisamos entender! Agora para alterarmos as permissões de um arquivo, devemos fazer a
soma dos valores acima citados e aplicarmos o comando chmod:
· Deixando um arquivo com permissões de rwx para o dono, rw- para o grupo e r-- para outros,
devemos proceder assim:
o chmod 764 <arquivo>. O número 7 indica a soma dos três atributos (4+2+1 = 7 = atributo
rwx). O número 6 indica a soma dos atributos rw, e o número 4 indica o atributo r.
Pela interface gráfica, é muito mais simples: Abra o KDE e abra o "gerenciador de arquivos" (KFM - K File
Manager), click com o botão diretiro do mouse sobre o arquivo que você irá trocar as permissões, escolha
propriedades, depois vá na guia "Permissões de Acesso" e altere conforme a necessidade.
Dessa forma, poderemos alterar as permissões dos arquivos e diretórios do nosso Liunx de acordo com
nossas necessidades. Agora exercite !
É possível trocarmos a senha do root, para isso basta logarmos como root no sistema e executar o
comando passwd e então entrarmos com a nova senha e confirmando-a.
A senha do root deve ser uma senha difícil, impossibilitando que programas de decodificação de senhas
possa decifrá-la.
Uma senha do root bem definida deve conter os seguintes caracteres: aA_32994-ohp. Utilize letras
maiúsculas e minúsculas, números, traços (-) e underscore (_). Isso dificulta e muito a descoberta da senha
do root.
Não devemos utilizar para a senha do root, um nome, ou uma data, como por exemplo: 210378, linuxsenha,
passlinux... É sempre recomendado que você misture letras, números e tracinhos.
Se você perdeu a senha do root, ou esqueceu e não consegue mais logar no sistema como root, faça
assim:
· Reinicie o computador;
· O Linux cairá em modo mono-user e você poderá digitar passwd e trocar a senha do root.
Simples não? Porém muito perigoso! Dessa forma qualquer pessoa que executar o passo acima poderá
trocar a senha do root. Isso exige uma medida de segurança no arquivo lilo.conf no diretório /etc. Adicione
as seguintes linhas :
password = pass_lilo
restricted
Essas linhas podem ser inseridas logo abaixo da linha : vga = normal.
Logo, salve o arquivo e execute o comando lilo, para que um novo LILO contendo as novas configurações
seja criado.
Dessa forma, quando você digitar linux single no LILO boot, será pedida uma senha, que não deve ser igual
à do root, de forma alguma! No modelo asima, a senha é pass_lilo.
Medida de segurnaça em um servidor Linux é fundamental, mesmo que o Linux esteja sendo utilizado em
casa, como desktop.
Criação de Usuários
Tratando-se de segurança, utilizar o Linux como usuário root (super-user) não é uma boa idéia. Uma vez
que o root tem permissões para tudo no sistema, torna-se perigoso a uitilização do sistema como root. O
usuário root deve ser utilizado somente para dar manutenção no sistema. Sendo assim, precisamos de um
outro usuário para que possamos trabalhar com maior segurança.
Para criar novos usuários no Linux, logue como root e execute o comando adduser da seguinte forma:
adduser gustavo
Será criado um usuário com o nome gustavo, mas ainda sem senha. Defina uma senha para ele:
Nota: Se você estiver como root e executar o comando passwd ele pedirá a troca de senha do root, mas se
você executar passwd usuario ele trocará a senha do usuário indicado.
Feito isso, logue agora com o novo usuário e note que o prompt mudou de # para $. Além disso, muita coisa
mudou. As permissões já se aplicam agora, uma vez que o usuário que você estiver usando, estará restrito
às condições que o root impôs (ou as configurações padrões do sistema). Você poderá criar vários usuários
em seu Linux, um para você, um para seu irmão, para sua irmã ... e assim vai! Todos utilizarão o sistema de
forma segura e individual, nenhum deles estarão aptos a acessar os arquivos dos outros usuários, ou utilizar
as mesmas configurações para o X, netscape, Licq por exemplo. Cada um utilizará as configurações
realizadas por ele mesmo. Isso permite uma total personalização do Ambiente de Trabalho.
O Proprietário de um arquivo ou diretório é a pessoa que o criou. Mas isso pode ser alterado. Por exemplo,
o arquivo outros_comunicados.doc pertence ao usuário zeca (mas originalmente, quem o criou foi jose).
Trocar o proprietário do arquivo / diretório é tarefa para o root (aliás, esta operação não deixa de ser uma
manutenção no sistema).
Para trocarmos o proprietário do arquivo, basta um comando muito fácil de utilizar, o chown (ch = change,
own = proprietário)
Trocaremos o proprietário do arquivo linux_rlz.cgi que é do usuário marcos para o usuário matheus.
Então execute: chown matheus linux_rlz.cgi
Utilizando o liuxconf , podemos adicionar mais usuário e grupos, administrando o sistema com maior
facilidade.
Dá-se o nome de "usuário comum" qualquer usuário existente no sistema que não seja o root. Para logar no
sistema como usuário comum, antes este usuário tem que existir, sendo assim, o processo é o mesmo para
logar como root. Simplesmente digite o nome do user e entre com a senha.
Um usuário comum não tem (e nem pode ter) os privilégios do root. Para que um usuário comum trabalhe
com facilidade no sistema, ele deve ter devidas permissões de acesso à arquivos, diretórios e devices
(dispositivos, como som, mouse, vídeo...).
É dever do root estabelecer devidos privilégios a devidos usuários, dependendo de suas necessidades.
No Mandrake 7.1, os privilégios para usuários comuns estão pré-definidos, onde não encontraremos
problemas para trabalharmos como um usuário comum.
O Linux trata os dispositivos como mouse, placa de som, modem, e outros periféricos como arquivos (assim
entendendo) dentro do diretório /dev.
Entre no diretório /dev e liste os arquivos lá existentes, note as permissões dos arquivos. As letras são
distintas das que conhecemos. Cada dispositivo tem devidas permissões e atributos para que funcione
corretamente. Mas isso não impede que o root não altere suas permissões.
Obs: Para instalarmos um modem, por exemplo na porta COM2, deveremos utilizar o dispositivo /dev/ttyS1.
O mais importante que o curso frisa neste diretório são os dispositivos /dev/hd*. O que são?
Dispossitivos hd* são os controladores de winchesters (hrad disk), divididos por suas partições, por
exemplo:
Dependendo de quantos discos e quantas partições esses discos têm, podemos ter mais ou menos
dispositivos hd*. Estes dispositivos são úteis, por exemplo, para "montarmos" outros discos e até mesmo
outros tipos de sistemas de arquivos para dentro do Linux.
Tratando-se que o o sistema de arquivos do Linux inicia-se na / e tudo pertence a uma só estrutura,
podemos "trazer" o sistema de arquivos do Windows (por exemplo), que utiliza FAT 32 (no Linux, entendido
como vfat) para dentro do Linux. Para tal, deveremos saber qual hd* se refere o sistema de arquivos FAT e
onde iremos montá-lo.
Em seu computador você possui apenas um disco rígido, então você somente terá hda*. A primeira partição
do disco pertence à FAT e o restante ao Linux. Muito bem, desta forma sabemos que hda1 contém o
sistema de arquivos do Windows, com todos os seus arquivos e diretórios. Esta é a origem dos dados.
Agora precisamos de um destino, um local onde esta árvore Windows será adicionada no Linux. Por padão,
utilizamos o diretório /mnt, que é o diretório onde é montado cd-rom e floppy.
Este diretório (win98) será utilizado para montarmos o sistema de arquivos FAT. Assim, todo o C:
do Windows estará fazendo parte do sistema de arquivos do Linux a partir do ponto de montagem,
que será /mnt/win98.
Para montarmos o sistema de arquivos do Windows para a estrutura do Linux, faremos assim:
mount /dev/hda1 -t vfat /mnt/win98
O comando mount é muito utilizado para montar devices como disketes, cd-rom, e discos rígidos.
Para utilizarmos um CD-ROM que contenha dados (não música), precisamos antes montá-lo em
nosso sistema.
Tratando-se do CD-ROM, este já está configurado para determinado dispositivo, não sendo
necessário indicarmos a origem para que possamos montá-lo.
Com o diskete acontece a mesma coisa, só precisamos digitar mount /mnt/floppy e o disco poderá ser
utilizado dentro do sistema de arquivos.
Sempre antes de retirar o diskete da unidade, é necessário desmontá-lo: umount /mnt/floppy O CD-ROM,
é impossível tirá-lo de dentro da unidade sem antes desmontá-lo.
Este arquivo define, além de outras coisas, o modo de inicialização da máquina. Edite o arquivo e localize a
área onde está RunLevel. Será algo assim:
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
id:5:initdefault:
As linhas iniciadas por # estão comentadas, não tendo valor nas configurações do arquivo.
No exemplo acima, o modo padrão é 5, isto significa que o Linux iniciará em modo gráfico, com suporte a
rede e multi-user.
As opções 0 e 6 não podem ser setadas como default, por questões lógicas. Pode-se também, executar o
comando init no prompt para alterar temporariamente o modo de inicialização, por exemplo:
A combinação das teclas crtl+alt+del tem a mesma finalidade do comando reboot, que por sua vez, tem a
mesma finalidade do init 6 e shutdown -r 0. Esta combinação é útil para reiniciar a máquina rapidamente,
mas é perigoso se deixado ativo em um Linux como Servidor.
Para desabilitar o reboot com a combinação de teclas ctrl+alt+del, edite o inittab e localize a linha
correspondente à combinação dessas teclas. Comente a linha com # e insira uma nova linha abaixo
contendo o seguinte:
Isso fará com que, quando pressionarmos ctrl+alt+del, a máquina não reinicializará, e sim mostrará a
mensagem : O Linux não pode ser reiniciado desta maneira.
Há várias maneiras de desligar e reiniciar o Linux. Como vimos no tópico acima, podemos tanto utilizar o
init , o shutdown o reboot ou o halt. Veja:
As interfaces gráficas (no Linux, entendido como X-Window System, ou apenas X) trabalham em um
esquema cliente-servidor. Existe um servidor (XFree86, por exemplo) e os clientes: WindowMaker, Gnome,
KDE, Icewm... uma infinidade!
O servidor X pode ser configurado dependendo das necessidades do usuário. Podemos utilizar as
ferramentas Xconfigurator, XF86Setup, xf86config... dentre outras. As mais usuais e funcionais são:
XF86Setup e Xconfigurator.
Uma vez que o servidor X esteja corretamente configurado, agora é só "startar" um cliente. Digite
kde para iniciar o KDE, ou gnome, para iniciar o GNOME, ou então digite startx para iniciar o
WindowMaker como padrão e poder alternar entre outras interfaces.
Os aplicativos clientes do X são inúmeros espalhados pelo mundo. No MDK 7.1, temos vários.
Iniciaremos o startx, veremos na prática como ele funciona e alternaremos para outros ambientes.
O padrão do startx é o KDE, mas podemo alternar para Icewm, Blackbox, AfterStep dentre outros,
editando um arquivo chamado .xinitrc.
O .xinitrc defini qual cliente X será iniciado. As permissões deste arquivo deve ser 700 e o
conteúdo deste arquivo deve conter:
#!/bin/bash
exec icewm
Isso fará que inicie-se o IceWM ao digitar startx.
O Gnome é um cliente X muito flexível. É totalmente configurável e pode ser gerenciado pelo
Enlinghtement, que deixa seu visual e suas funções muito intuitivas e destacantes (muitos usuários
do Enlinghtement dizem que ele é muito louco!). Veremos na prática o Gnome e o Enlinghtement.
O KDE é o mais utilizado. Por sua facilidade e estabilidade. Estudaremos o KDE com seus detalhes
logo adiante.
As Consoles Gráficas
Já aprendemos a configurar a máquina para iniciar diretamente na interface gráfica, editando o arquivo
inittab, em /etc. Agora aprenderemos a utilizar mais de uma interface gráfica por vez.
Este recursos, tão bem como os clientes X, podem ser utilizados por usuários comuns e não só pelo root.
Já sabemos que em modo texto, é possível utilizar mais de uma console utilizando as teclas de funções de
F1 a F6, com a combinação do crtl+alt. Agora, aprenderemos a utilizar mais de uma interface gráfica
utilizando as consoles de F7 à F12.
Muito bem, o KDE foi aberto na console 7. Isso é padrão: logo após a última console texto (F6) será
a primeira console gráfica.
Outro KDE foi aberto na console 8 (alterne para lá combinando ctrl+alt+F8). Note que na console 1
foi iniciado o KDE, que está na 7 e na console 2 foi iniciado outro KDE, que está na 8.
Se você digitar na console 3 : startx -- :3, um terceiro KDE será iniciado e exibido na console 9. E
assim por diante.
Além do KDE, podemos abrir o Gnome, WindowMaker e todas as outras interfaces, dependendo da
configuração do nosso arquivo .xinitrc