![Qual é a principal diferença entre chmod e chown?](https://rvso.com/image/1000391/Qual%20%C3%A9%20a%20principal%20diferen%C3%A7a%20entre%20chmod%20e%20chown%3F.png)
Em alguns exemplos, vi que alguns usaram chown
em vez de chmod
. Não sei onde usar chmod
e chown
. Por favor, explique-me a diferença entre eles, quando e por que devo usá-los.
Responder1
Em termos simples,
chown
é usado para alterar a propriedade de um arquivo, enquanto chmod
altera os bits de modo do arquivo.
chown
define quem é o proprietário do arquivo.chmod
define quem pode fazer o quê.
Quando você torna alguém o proprietário de um arquivo, ele pode fazer quase onde quiser com esse arquivo, por exemplo, ele pode usar chmod
para alterar seus mods (digamos, permissões) para definir quem pode fazer o quê.
$ ls -l file
-rwxrwxr-x 2 ravexina admins 26 May 9 12:49 file
Na linha acima podemos ver que ravexina
é o dono do arquivo e admins
é o grupo. Posso usar: sudo chown dave:sudo file
para alterar o dono do arquivo dave
e o grupo para sudo
; Agora o arquivo pertence a “dave” e a todos no grupo “sudo”.
No entanto, chmod
definimos quem pode fazer o quê? quem tem o direito de ler um arquivo, gravar em um arquivo ou executá-lo. por exemplo:
chmod 777 file
concede os direitos de leitura, gravação e execução a todos, incluindo proprietário, grupo e todos os demais.
Dedesligue.us:
Responder2
Vamos criar um arquivo
touch rainbow
Vamos dar uma olhada nos metadados do arquivo
$ ls -l rainbow
-rw-rw-r-- 1 zanna zanna 0 May 24 10:09 rainbow
A primeira parte da informação é o tipo de arquivo ( -
no início significa que é um arquivo normal) e os bits de permissão
Depois vemos o dono (zanna) e o grupo (zanna). Podemos usar o chown
comando para alterá-los:
$ sudo chown pixie rainbow
$ ls -l rainbow
-rw-rw-r-- 1 pixie zanna 0 May 24 10:09 rainbow
E usamos chmod
para alterar os bits de permissão
$ sudo chmod 333 rainbow
$ ls -l rainbow
--wx-wx-wx 1 pixie zanna 0 May 24 10:09 rainbow
Como os bits de permissão são definidos separadamente para proprietário, grupo e outros, você pode controlar as permissões de arquivo para diferentes usuários combinando chown
e chmod
. Vereste breve guiapara um curso intensivo sobre permissões no Linux.
Responder3
Ao considerar as permissões de um arquivo (ou diretório, ou qualquer outro), existem dois fatores:
- Quempossui o arquivo - o usuário e o grupo, e
- o queeles podem fazer isso - ler, escrever, executar ou uma combinação destes.
chown
Acordos com oQuem. chmod
Acordos com oo que. Você não pode usar um em vez do outro.
As permissões simples do Unix classificam os usuários que tentam acessar um arquivo em três tipos:
- o dono do arquivo
- usuários que são membros do grupo que possui o arquivo
- todo mundo
chown
é usado para alterar os dois primeiros. chmod
é usado para alterar os direitos concedidos a esses tipos.
Responder4
Já respostas muito boas, mas gostaria de fazer uma contribuição onde as permissões sejam muito fáceis de entender
chmod u=r+w,o=r-w,g=-r-w test.php
u = user
o = other
g = group
Dessa forma, você pode anexar facilmente permissões a um arquivo. No exemplo acima
user = read + write
other = read but not write
group = not read not write
E não se esqueça -R
se quiser alterar as permissões recursivamente.