Permissões do usuário
Naquela época, os computadores eram máquinas enormes que eram incrivelmente caras. Para tirar o máximo proveito deles, vários terminais de computador foram conectados, o que permitiu que muitos usuários realizassem seus negócios simultaneamente. O processamento e o armazenamento de dados eram feitos na máquina, enquanto os próprios terminais eram pouco mais que um meio de visualizar e inserir dados. Se você pensar bem, é como nós acessamos dados na "nuvem"; Veja o sistema Cloud MP3 da Amazon, o Gmail e o Dropbox, e você perceberá que, embora as alterações possam ser feitas localmente, tudo é armazenado remotamente.
Para que isso funcione, os usuários individuais precisam ter contas. Eles precisam ter uma seção da área de armazenamento atribuída a eles, e precisam ter permissão para executar comandos e programas. Todos recebem "permissões de usuário" específicas, que ditam o que podem e o que não podem fazer, onde, no sistema, eles têm acesso e não têm acesso e cujos arquivos podem e não podem ser modificados. Cada usuário também é colocado em vários grupos, que concedem ou restringem acesso adicional.
Acesso a arquivos
No mundo do Linux, as permissões são divididas em três categorias: ler, escrever e executar. O acesso de "leitura" permite ver o conteúdo de um arquivo, o acesso de "gravação" permite modificar o conteúdo de um arquivo e "executar" permite que um execute um conjunto de instruções, como um script ou um programa. Cada uma dessas categorias é aplicada a diferentes classes: usuário, grupo e mundo. "Usuário" significa o proprietário, "grupo" significa qualquer usuário que esteja no mesmo grupo que o proprietário e "mundo" significa qualquer pessoa e todos.
Alterando Permissões no Ubuntu
GUI
Para alterar as permissões de um arquivo que você possui no Ubuntu, clique com o botão direito do mouse no arquivo e vá para "Propriedades".
Linha de comando
Você também pode fazer isso através da linha de comando. Vá para um diretório que contenha arquivos e digite o seguinte comando para visualizar todos os arquivos em uma lista:
ls -al
-rwxrw-r–
o r significa "ler", o W significa "escrever" e x significa "executar". Os diretórios serão iniciados com um "d" em vez de um "-". Você também notará que há 10 espaços que mantêm o valor. Você pode ignorar o primeiro, e então há 3 conjuntos de 3. O primeiro conjunto é para o proprietário, o segundo conjunto é para o grupo e o último conjunto é para o mundo.
Para alterar as permissões de um arquivo ou diretório, vamos ver a forma básica do comando chmod.
chmod [class][operator][permission] file
chmod [ugoa][+ or –] [rwx] file
Isso pode parecer complicado no começo, mas acredite, é bem fácil. Primeiro, vamos ver as classes:
- u: Isso é para o dono.
- g: Isso é para o grupo.
- o: Isso é para todos os outros.
- a: Isso alterará as permissões de todos os itens acima.
Em seguida, os operadores:
- +: O sinal de mais irá adicionar as permissões que se seguem.
- -: O sinal de menos irá remover as permissões que se seguem.
Ainda comigo? E a última seção é a mesma de quando verificamos as permissões de um arquivo:
- r: permite acesso de leitura.
- w: permite acesso de gravação.
- x: permite a execução.
Agora vamos juntos. Digamos que tenhamos um arquivo chamado "todo.txt" com as seguintes permissões:
-rw-rw-r–
Ou seja, o proprietário e o grupo podem ler e escrever, e o mundo só pode ler. Queremos alterar as permissões para estas:
-rwxr-–
Ou seja, o proprietário tem permissões totais e o grupo pode ler. Podemos fazer isso em 3 etapas. Primeiro, adicionaremos a permissão de execução para o usuário.
chmod u+x todo.txt
Em seguida, removeremos a permissão de gravação do grupo.
chmod g-w todo.txt
Por fim, removeremos as permissões de leitura de todos os outros usuários.
chmod o-r todo.txt
Nós também podemos combiná-los em um único comando, assim:
chmod u+x,g-w,o-r todo.txt
Aqui estão algumas permissões úteis:
- -rwxr-xr-x: O proprietário tem permissões totais, grupo e outros usuários podem ler o conteúdo do arquivo e executá-lo.
- -rwxr – r–: o proprietário tem permissões totais, grupo e outros usuários só podem ler o arquivo (útil se você não se incomodar em ver seus arquivos.
- -rwx--: O proprietário tem permissões completas, todas as outras não possuem nenhuma (útil para scripts pessoais).
- -rw-rw-: Proprietário e grupo podem ler e escrever (útil para colaboração com membros do grupo).
- -rw-r-r–: Proprietário pode ler e escrever, grupo e outros usuários só podem ler o arquivo (útil para armazenar arquivos pessoais em uma rede compartilhada).
- -rw ---: O proprietário pode ler e escrever, todos os outros não possuem nenhum (útil para armazenar arquivos pessoais).
Existem algumas outras coisas que você pode fazer com o chmod - como o setuid e o setgid - mas eles são um pouco detalhados e a maioria dos usuários não precisará usá-los de qualquer maneira.
A raiz ou o superusuário e os arquivos do sistema
Bem, o Unix e seus derivados - Linux, OS X, entre outros - também distinguem entre coisas executadas pelo usuário, coisas executadas por um administrador ou com privilégios de administrador, e coisas executadas pelo próprio sistema. Como tal, as coisas que são essenciais para o sistema precisam de privilégios de administrador para serem alterados ou acessados. Dessa forma, você não estraga nada acidentalmente.
No Ubuntu, para fazer alterações nos arquivos do sistema, você usa “sudo” ou “gksudo” para obter o equivalente a privilégios de administrador. Em outras distros, você muda para “root” ou “superusuário”, o que efetivamente faz a mesma coisa até você sair.
Lembre-se de que, em ambas as circunstâncias, a alteração das permissões de arquivo pode fazer com que os programas não funcionem, alterando involuntariamente a propriedade do arquivo para o usuário raiz (em vez do proprietário) e tornando o sistema menos seguro (concedendo mais permissões). Por isso, é recomendável que você não altere as permissões de arquivos, especialmente arquivos do sistema, a menos que seja necessário ou saiba o que está fazendo.
Permissões de arquivo estão em vigor para fornecer um sistema básico de segurança entre os usuários. Aprender como eles funcionam pode ajudá-lo a configurar o compartilhamento básico em um ambiente multiusuário, proteger arquivos “públicos” e dar uma pista de quando algo está errado com a propriedade de arquivos do sistema.
Acha que pode explicar as coisas mais facilmente? Tem uma correção? Quer relembrar os velhos tempos? Faça uma pausa e coloque seus pensamentos nos comentários.