Se você já usa o Linux há algum tempo (e até mesmo o OS X), provavelmente vai encontrar um erro de “permissões”. Mas o que exatamente eles são, e por que eles são necessários ou úteis? Vamos dar uma olhada no interior
No passado, 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 sobre isso, é basicamente 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.
(Imagem: Zenith Z-19 terminal "burro"; crédito: ajmexico)
Para que isso funcione, 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 o acesso adicional
Nesse mundo mal-intencionado de vários usuários, já estabelecemos limites quanto ao que os usuários podem fazer. Mas e o que eles acessam? Bem, todo arquivo tem um conjunto de permissões e um proprietário. A designação do proprietário, normalmente ligada quando o arquivo é criado, declara a qual usuário pertence, e somente esse usuário pode alterar suas permissões de acesso.
No mundo do Linux, as permissões são divididas em três categorias: read, write e executar. O acesso “Read” permite visualizar o conteúdo de um arquivo, o acesso “write” permite modificar o conteúdo de um arquivo e “executar” permite executar 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.
As pastas também podem ser restringidas com essas permissões. Você pode, por exemplo, permitir que outras pessoas do seu grupo visualizem diretórios e arquivos em sua pasta pessoal, mas não qualquer pessoa fora do seu grupo. Você provavelmente desejará limitar o acesso de "gravação" somente a você mesmo, a menos que esteja trabalhando em algum tipo de projeto compartilhado. Você também pode criar um diretório compartilhado que permita a qualquer pessoa visualizar e modificar arquivos nessa pasta.
GUI
Para alterar as permissões de um arquivo que você possui no Ubuntu, clique com o botão direito do mouse arquivo e vá para “Propriedades”.
Você pode alterar se o proprietário, grupo ou outros podem ler e escrever, somente leitura ou não fazer nada. Você também pode marcar uma caixa para permitir a execução do arquivo, e isso irá habilitá-lo para o Proprietário, Grupo e Outros simultaneamente
Linha de Comando
Você também pode fazer isso através da linha de comando. Vá para um diretório que tenha arquivos nele e digite o seguinte comando para visualizar todos os arquivos em uma lista:
ls -al
Próximo a cada arquivo e diretório, você verá uma seção especial que descreve as permissões tem. Parece-se com isto:
-rwxrw-r-
O r significa “ler”, o w significa “escrever” e o x significa "executar". Os diretórios serão iniciados com um "d" em vez de um "-". Você também notará que existem 10 espaços que mantêm o valor. Você pode ignorar o primeiro e, em seguida, há três conjuntos de 3. O primeiro conjunto é para o proprietário, o segundo conjunto é para o grupo eo último conjunto é para o mundo.
Para alterar as permissões de um arquivo ou diretório , vamos olhar a forma básica do comando chmod
chmod [class] [operador] [permissão] arquivo
chmod [ugoa] [+ ou -] [rwx] arquivo
Isso pode parecer complicado no começo, mas acredite, é bem fácil. Primeiro, vamos ver as classes:
Em seguida, os operadores:
Ainda comigo ? E a última seção é a mesma de quando verificamos as permissões de um arquivo:
Agora, vamos colocar juntos. Digamos que temos um arquivo chamado “todo.txt” que tem 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 gw todo.txt
Por fim, removeremos as permissões de leitura de todos os outros usuários.
chmod ou todo.txt
Também podemos combiná-los em um único comando, como:
chmod u + x, gw ou todo. txt
Você pode ver que cada seção é separada por vírgulas e não há espaços.
Aqui estão algumas permissões úteis:
Existem algumas outras coisas que você pode fazer com o chmod-like setuid e setgid - mas eles são um pouco detalhados e a maioria dos usuários realmente não precisa usá-los de qualquer maneira.
Atualmente, nem sempre rodamos sistemas que tem vários usuários. Por que devemos nos preocupar com as permissões?
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ê alterna para "root" ou "superusuário", que efetivamente faz a mesma coisa até que você efetue logout.
Esteja ciente de que em ambas as circunstâncias, alterar permissões de arquivo pode levar a programas não funcionando, sem querer alterar a propriedade do arquivo para o usuário raiz (em vez do proprietário) e tornar o sistema menos seguro (concedendo mais permissões). Como tal, é recomendado que você não altere permissões para arquivos - especialmente arquivos de sistema - a menos que seja necessário ou você saiba o que está fazendo.
Permissões de arquivo estão disponíveis 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.
Como impedir que as notificações interrompam seus jogos do iOS
As notificações são úteis quando você quer saber quando um novo e-mail ou mensagem chega. Mas a última vez que você quer ser interrompido é no meio de uma série de vitórias no seu jogo favorito. Eu tenho sido um pouco viciado no Spider-Man Unlimited no meu iPad recentemente, e estou ficando muito bom - se eu mesmo disser isso.
Como transmitir seus jogos on-line com o Steam
O Twitch.tv está rapidamente se tornando um dos principais destinos do streaming de jogos na Web, com sites de vídeo como o YouTube seguindo de perto. Mas você provavelmente já tem um programa de streaming decente no seu computador: Steam. Percebendo a oportunidade de criar sua própria comunidade de streamers, a Valve adicionou a opção de transmitir seus jogos para amigos ou qualquer um que queira assistir usando os jogos.