Permissões
O sistema operativo UNIX (e da mesma forma, o Linux) difere de outros ambientes de computação na medida em que não é apenas ummultitarefa sistema, mas também é uma multi-utilizador do sistema, bem.
O que exatamente significa isso? Isto significa que mais do que um utilizador pode estar a operar o computador ao mesmo tempo. Enquanto o computador terá apenas um teclado e monitor, ele ainda pode ser usado por mais de um usuário. Por exemplo, se o computador estiver conectado a uma rede, ou à Internet, os usuários remotos podem fazer login via telnet ou ssh (secure shell) e operar o computador. Na verdade, os usuários remotos podem executar aplicativos X e ter a saída gráfica exibida em um computador remoto. O sistema X Windows suporta isso.
A capacidade multi-usuário de Unix não é uma "inovação", recente, mas sim um recurso que está profundamente enraizado na concepção do sistema operacional. Se você se lembrar o ambiente no qual o Unix foi criado, isso faz sentido. Anos atrás, antes dos computadores eram "pessoal", que eram grandes, caros e centralizado. Um típico sistema de computador da universidade consistiu de um grande computador mainframe localizado em um prédio no campus e terminais foram localizados em todo o campus, cada um ligado ao grande computador central. O computador suporta muitos usuários ao mesmo tempo.
A fim de tornar esta prática, um método teve que ser concebido para proteger os utilizadores entre si. Afinal, você não pode permitir que as ações de um usuário para travar o computador, nem você poderia permitir que um usuário para interferir com os arquivos pertencentes a outro usuário.
Esta lição irá abranger os seguintes comandos:
- chmod - modificar os direitos de acesso a arquivos
- su - tornar-se temporariamente o superusuário
- chown - propriedade do arquivo mudança
- chgrp - alterar a propriedade do grupo do arquivo
As permissões de arquivo
Linux usa o esquema mesmas permissões como Unix. Cada arquivo e diretório em seu sistema é atribuído direitos de acesso para o proprietário do arquivo, os membros de um grupo de usuários relacionados, e todos os outros. Os direitos podem ser atribuídos a ler um arquivo, para gravar um arquivo, e para executar um arquivo (ou seja, executar o arquivo como um programa).
Para ver as configurações de permissão para um arquivo, podemos usar o ls comando da seguinte forma:
[Me @ linuxbox me] $ ls -l some_file
-rw-rw-r-- 1 me me 1.097.374 26 de setembro 18:48 some_file
Podemos determinar um monte de examinar os resultados deste comando:
- O arquivo "some_file" é de propriedade do usuário "me"
- Usuário "me" tem o direito de ler e escrever este arquivo
- O arquivo é de propriedade do grupo "me"
- Os membros do grupo "me" pode também ler e escrever este arquivo
- Todo mundo pode ler este arquivo
Vamos tentar um outro exemplo. Vamos olhar para a bash programa, que está localizado no / bin diretório:
[Me @ linuxbox me] $ ls -l / bin / bash
-rwxr-xr-x 1 root root 316848 27 de fevereiro de 2000 / bin / bash
Aqui podemos ver:
- O arquivo "/ bin / bash" é de propriedade do usuário "root"
- O superusuário tem o direito de ler, escrever e executar esse arquivo
- O arquivo é de propriedade do grupo "root"
- Os membros da "raiz" do grupo também podem ler e executar esse arquivo
- Toda a gente pode ler e executar esse arquivo
No diagrama abaixo, vemos como a primeira parte da listagem é interpretada. Ele consiste em um caractere indicando o tipo de arquivo, seguido por três conjuntos de três personagens que transmitem a leitura, escrita e permissão de execução para o proprietário, grupo e todos os outros.
chmod
O chmod comando é usado para alterar as permissões de um arquivo ou diretório. Para usá-lo, você especificar as configurações desejadas de permissão e o arquivo ou arquivos que você deseja modificar. Há duas maneiras de especificar as permissões, mas só estou indo para ensinar de uma maneira.
É fácil pensar as configurações de permissão como uma série de bits (que é como o computador pensa sobre eles). Veja como funciona:
rwx rwx rwx = 111 111 111 rw- rw- rw- = 110 110 110 rwx --- --- = 111 000 000 e assim por diante ... rwx = 111 em binário = 7 rw- = 110 em binário = 6 rx = 101 em binário = 5 r-- = 100 em binário = 4
Agora, se você representar cada um dos três conjuntos de permissões (proprietário, grupo e outros) como um único dígito, você tem uma maneira muito conveniente de expressar as possíveis configurações de permissão. Por exemplo, se quiséssemos definir some_file ter lido e escrever permissão para o proprietário, mas queria manter o arquivo privado de outros, teríamos:
[Me @ linuxbox me] $ chmod 600 some_file
Aqui está uma tabela de números que abrange todas as configurações comuns. Os que começam com "7" são usados com programas (uma vez que permitem a execução) e os restantes são para outros tipos de arquivos.
Valor | Significado |
777 | (Rwxrwxrwx) Não há restrições sobre as permissões. Qualquer um pode fazer qualquer coisa. Em geral não é um cenário desejável. |
755 | (Rwxr-xr-x) O dono do arquivo pode ler, escrever e executar o arquivo. Todos os outros podem ler e executar o arquivo. Este cenário é comum para programas que são usados por todos os usuários. |
700 | (Rwx ------) O dono do arquivo pode ler, escrever e executar o arquivo. Ninguém mais tem qualquer direito. Essa configuração é útil para programas que só o proprietário pode usar e devem ser mantidos privados de outros. |
666 | (Rw-rw-rw-) Todos os usuários podem ler e gravar o arquivo. |
644 | (Rw-r - r--) O proprietário pode ler e gravar um arquivo, enquanto todos os outros só podem ler o arquivo. Um cenário comum para arquivos de dados que todos podem ler, mas apenas o proprietário pode mudar. |
600 | (Rw -------) O proprietário pode ler e gravar um arquivo. Todos os outros não têm direitos. Um cenário comum para arquivos de dados que o proprietário quer manter privado. |
Permissões Diretório
O chmod comando também pode ser usado para controlar as permissões de acesso para diretórios. Na maioria dos aspectos, o esquema de permissões para diretórios funciona da mesma maneira como fazem com arquivos. No entanto, a permissão de execução é utilizado de um modo diferente. Ele fornece controle de acesso a listagem de arquivos e outras coisas. Aqui estão algumas configurações úteis para diretórios:
Valor | Significado |
777 | (Rwxrwxrwx) Não há restrições sobre as permissões. Qualquer um pode listar os arquivos, criar novos arquivos no diretório e apagar arquivos no diretório. Geralmente não é uma boa definição. |
755 | (Rwxr-xr-x) O proprietário do diretório tem acesso total. Todos os outros podem listar o diretório, mas não pode criar arquivos nem excluí-los. Este cenário é comum para os diretórios que você deseja compartilhar com outros usuários. |
700 | (Rwx ------) O proprietário do diretório tem acesso total. Ninguém mais tem qualquer direito. Essa configuração é útil para os diretórios que somente o proprietário pode usar e devem ser mantidos privada dos outros. |
Tornando-se o superusuário por um tempo curto
Muitas vezes, é útil para se tornar o superusuário para executar tarefas de administração do sistema importantes, mas como você foi avisado (e não apenas por mim!), Você não deve ficar conectado como o superusuário. Na maioria das distribuições do Linux, é um programa que pode lhe dar acesso temporário aos privilégios do superusuário. Este programa é chamado su (abreviação de substituto do usuário) e pode ser usado nos casos em que você precisa ser o superusuário para um pequeno número de tarefas. Para se tornar o superusuário, basta digitar o su comando. Você será solicitado para a senha do superusuário:
[Me @ linuxbox me] $ su
Senha:
[root @ me linuxbox] #
Senha:
[root @ me linuxbox] #
Depois de executar o su comando, você tem uma nova sessão shell como superusuário. Para sair da sessão de superusuário, digite exit e você vai voltar para sua sessão anterior.
Em algumas distribuições, mais notadamente o Ubuntu, um método alternativo é usado. Ao invés de usar su , esses sistemas utilizam osudo comando em vez disso. Com o sudo , um ou mais usuários são concedidos privilégios de superusuário em uma base, conforme necessário. Para executar um comando como superusuário, o comando desejado é simplesmente precedido com o sudo comando. Depois que o comando é digitado, o usuário é solicitado para a senha do usuário, em vez de o superusuário de:
[Me @ linuxbox me] $ sudo algum_comando
Senha:
[me @ linuxbox me] $
Senha:
[me @ linuxbox me] $
Alterando a propriedade do arquivo
Você pode alterar o proprietário de um arquivo usando o chown comando. Aqui está um exemplo: Suponha que eu queria mudar o proprietário do some_file do "eu" para "você". Eu poderia:
[Me @ linuxbox me] $ su
Senha:
[root @ me linuxbox] # chown você some_file
[root @ linuxbox me] # saída
[me @ linuxbox me] $
Senha:
[root @ me linuxbox] # chown você some_file
[root @ linuxbox me] # saída
[me @ linuxbox me] $
Observe que, a fim de alterar o proprietário de um arquivo, você deve ser o superusuário. Para fazer isso, nosso exemplo empregado a sucomando, então temos executado chown e, finalmente, nós digitamos exit para voltar para a nossa sessão anterior.
chown funciona da mesma maneira em diretórios como faz em arquivos.
Alterando a propriedade do grupo
A propriedade de grupo de um arquivo ou diretório pode ser alterado com chgrp . Este comando é usado como este:
[Me @ linuxbox me] $ chgrp new_group some_file
No exemplo acima, nós mudamos a propriedade de grupo de some_file de seu grupo anterior para "new_group". Você deve ser o proprietário do arquivo ou diretório para executar uma chgrp .
Nenhum comentário:
Postar um comentário