Você está na página 1de 13

Permissões de Arquivo e Diretórios

drwxrwxrwx 19 ozzy users 4096 jul 7 11:54 ozzy

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:

drwxrwxrwx ozzy users Jul 7 11:54 ozzy

permissões proprietário grupo data e hora Nome do diretório

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.

· Proprietário: É o dono do arquivo/diretório. Tratando-se de um sistema operacional multi-usuário, o


Linux define as propriedades de arquivos e diretórios para cada usuário/grupo. Sendo assim, se o
usuário josias cria um arquivo no sistema, esse arquivo pertencerá automaticamente ao usuário josias,
definindo assim que o proprietário do arquivo é josias, e seu grupo será o grupo onde josias pertence.
Dessa forma, o usuário jose não terá devidas permissões para "ver" este arquivo (e nenhum mais dos
outros usuários terão, exceto o root).

· 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:

rwx rwx rwx

permissões para o proprietário permissões para o grupo permissões para outros

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.

Alterando as Permissões de Arquivos e Diretórios

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 !

Trocar da Senha do ROOT

É 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.

Socorro !! Esqueci a Senha do ROOT !!


A senha do root deve ser muito bem guardada, uma vez que com ela um usuário mal-intencionado pode
realizar "maravilhas" com o seu Linux.

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;

· No momento em que aparece o LILO Boot: , digite : linux single

· 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:

passwd gustavo - e entre com a nova senha.

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.

Proprietários de Arquivos e Diretórios

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)

 Logue como root no sistema;

 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

Pronto! O novo dono do arquivo agora é matheus, e não mais o marcos.


Para trocarmos o grupo ao qual o arquivo / diretório pertence, utilizamos o comando chgrp (change group).
Por exemplo, trocar o grupo do arquivo computadores.cotacao que pertence ao grupo compras para o grupo
fiscal. Execute:

chgrp fiscal computadores.cotacao

Agora, este arquivo pertence ao grupo fiscal.

A alteração de proprietários e grupos, influe diretamente nas permissões dos arquivos.

Utilizando o liuxconf , podemos adicionar mais usuário e grupos, administrando o sistema com maior
facilidade.

Logando no Sistema como um Usuário Comum

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.

Dispositivos no Linux - Diretório /dev

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.

Modelos de dispositivos: (diretório /dev)

ttyS0 = dispositivo que indica a porta de comunicações COM1

ttyS1 = dispositivo que indica a porta de comunicações COM2

ttyS2 = dispositivo que indica a porta de comunicações COM3

ttyS3 = dispositivo que indica a porta de comunicações COM4

Obs: Para instalarmos um modem, por exemplo na porta COM2, deveremos utilizar o dispositivo /dev/ttyS1.

psaux = dispositivo que indica a porta de comunicação de um mouse "minidim".

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:

hda1 = Indica a primeira partição do primeiro disco master do computador

hda2 = Indica a segunda partição do primeiro disco master do computador

hdc1 = Indica a primeira partição do segundo disco master do computador

hdd2 = Indica a segunda partição do segundo disco slave do computador

hdb3 = Indica a terceira partição do primeiro disco slave do computador

Veja a tabela abaixo:

Configuração do HD ( BIOS ) Dispositivo do Linux


Primeira Partição Primário Master /dev/hda1
Segunda Partição Primário Master /dev/hda2
Primeira Partição do Primário Slave /dev/hdb1
Segunda Partição do Primário Slave /dev/hdb2
Primeira Partição do Secundário Master /dev/hdc1
Segunda Partição do Secundário Master /dev/hdc2

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.

Vamos exemplificar para facilitar:

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.

 Como root, crie um diretório win98 dentro de /mnt

 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

 mount é o comando para montar dispositivos (umount para desmontar)


 /dev/hda1 é a origem, o dispositivo onde se encontra o sistema de arquivos FAT
 -t vfat é a opção que temos que utilizar para "dizer" que o sistema de arquivos que estamos
montando é Windows
 /mnt/win98 é o destino, o local do ponto de montagem onde o sistema de arquivos Windows se
iniciar (pode-se até entender /mnt/win98 como o C: do Windows). Todos os arquivos e diretórios do
Windows agora fazem parte do sistema de arquivos do Linux.

 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.

 mount /mnt/cdrom. É o suficiente para montarmos o conteúdo do CD-ROM no diretório


/mnt/cdrom.

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.

Obs.: Ver arquivo /etc/fstab e /etc/mtab

Modos de Inicialização do Linux

Há várias maneiras de iniciarmos e finalizarmos o Linux em nosso computador. Os modos de inicialização


dependem das configurações de um arquivo : /etc/inittab.

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:

# Default runlevel. The runlevels used by RHS are:

# 0 - halt (Do NOT set initdefault to this)

# 1 - Single user mode

# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)

# 3 - Full multiuser mode

# 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.

0 - halt = Na verdade desliga o Linux.

1 - Single User Mode = Modo simples de uso

2 - Multiuser, Without NFS = Modo semelhante ao 3, mas sem opções de rede

3 - Full Multiuser Mode = Modo completo, incluindo rede

4 - Unused = Não usado.

5 - X11 = Modo completo, incluindo rede e interface gráfica

6 - Reboot = Reinicia a máquina

id:5:initdefaut: = Esta é a linha onde alteraremos o modo de inicialização padrão.

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:

 init 6, rebootará a máquina (mas não altera o arquivo inittab)


 init 3, reinicia a máquina em modo texto e rede

init 0 é semelhante ao comando halt ou shutdown -h 0. Isso desliga o Linux.

init 6 é semelhante ao comando reboot ou sutdown -r 0. Isso reinicia a máquina.

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:

ca::ctrlaltdel:echo O Linux não pode ser reiniciado desta maneira.

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.

Desligando e Reiniciando o Linux

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:

 init 0 = Desliga a Máquina


 init 6 = Reinicia a Máquina
 reboot = Mesmo que init 6
 halt = Mesmo que init 0

 shutdown = Este comando apresenta algumas variações, como:


 shutdown -r 0 = Reiniciar a máquina em 0 minutos
 shutdown -r now = Reiniciar a máquina agora (mesmo que o anterior)
 shutdown -h 0 = Desligar a máquina em 0 minutos
 shutdown -h 25 = Desligar a máquina daqui a 25 minutos

shutdown -h exibe a lista de opções do comando, ou então, man shutdown.

Interfaces Gáficas do Mandrake 7.1

O momento mais esperado ! Utilizar interfaces gráficas.

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 Trabalho é realizado assim:


 O servidor mantém as configurações de placa de rede, monitor, frequência, mouse, teclado... todas
as configurações necessárias para poder rodar o servidor X. Estas configurações ficam
armazenadas no arquivo /etc/X11/XF86Config.

 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.

 A melhor maneira de escolher os ambientes gráficos para a utilização é através do Gerenciador de


Login do KDE. Para isso, devemos iniciar nosso Linux em init 5. Estudaremos mais 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.

 Vá para a console 1 (crtl+alt+F1) e digite startx

 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.

 Agora vá para a console 2 (ctrl+alt+F2) e digite: startx -- :2

 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

Você também pode gostar