Qual é a principal diferença entre chmod e chown?

Qual é a principal diferença entre chmod e chown?

Em alguns exemplos, vi que alguns usaram chownem vez de chmod. Não sei onde usar chmode 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 chmodaltera os bits de modo do arquivo.

  • chowndefine quem é o proprietário do arquivo.
  • chmoddefine 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 chmodpara 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 filepara alterar o dono do arquivo davee o grupo para sudo; Agora o arquivo pertence a “dave” e a todos no grupo “sudo”.

No entanto, chmoddefinimos 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: insira a descrição da imagem aqui

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 chowncomando para alterá-los:

$ sudo chown pixie rainbow
$ ls -l rainbow
-rw-rw-r-- 1 pixie zanna 0 May 24 10:09 rainbow

E usamos chmodpara 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 chowne 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.

chownAcordos com oQuem. chmodAcordos 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:

  1. o dono do arquivo
  2. usuários que são membros do grupo que possui o arquivo
  3. 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 -Rse quiser alterar as permissões recursivamente.

informação relacionada