Каково основное различие между chmod и показанный?

В некоторых примерах я видел, что некоторые использовали chown вместо chmod. Я не знаю, где использовать chmod и chown. Объясните мне различие между ними, когда и почему я должен использовать также.

43
задан 26 August 2018 в 02:31

6 ответов

Давайте создадим файл

touch rainbow

, Давайте взглянем на метаданные файла

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

, первая часть информации является типом файла (- вначале средства, это - регулярный файл), и биты полномочий

После этого, мы видим владельца (zanna) и группу (zanna). Мы можем использовать эти chown команда для изменения их:

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

И мы используем chmod для изменения битов полномочий

$ sudo chmod 333 rainbow
$ ls -l rainbow
--wx-wx-wx 1 pixie zanna 0 May 24 10:09 rainbow

, Так как биты полномочий установлены отдельно для владельца, группы и других, можно управлять полномочиями файла для различных пользователей путем объединения chown и chmod. См. этот краткий справочник для интенсивного курса на полномочиях в Linux.

48
ответ дан 23 November 2019 в 00:00

При рассмотрении полномочий файла (или каталог, или безотносительно), существует два фактора:

  • , кто владеет файлом - пользователь и группа, и
  • , что они могут сделать с ним - чтение, запишите, выполнитесь или комбинация этого.

chown соглашения с , кто . chmod соглашения с , что . Вы не можете использовать один вместо другого.

Простые полномочия Unix классифицируют пользователей, пытающихся получить доступ к файлу в три типа:

  1. владелец пользователей файла
  2. , которые являются членами группы, владеющей файлом
  3. все другие

chown, используется для изменения первых двух. chmod используется для изменения прав, предоставленных этим типам.

19
ответ дан 23 November 2019 в 00:00

Несколько точек/подсказок для добавления к предыдущим превосходным ответам:

  • Вы должны иметь, выполняют разрешение на каталоге (и все те, которые выше его) получить доступ к нему
  • Использование-R опция применить изменения рекурсивно во всем включая и ниже цели, например, chown -R www-data files/
  • можно изменить пользователя и группу одновременно при помощи синтаксиса chown user:group myfile
  • Часто, более легко/лучше использовать '+' и '-' опции вместо того, чтобы установить абсолютные полномочия, особенно при контакте с комбинацией файлов и каталогов. Например, если бы Вы хотите дать полномочия записи группы каталогу, и все ниже его, chmod -R 775 files/ сделало бы 'файлы /' и все в и ниже его исполняемый файл и читаемый ко всем, которые не могли бы быть желаемым результатом для каждого файла. Используя chmod -R g+w files/ просто добавит разрешение записи группы, не касаясь ничего больше.
7
ответ дан 23 November 2019 в 00:00

Очень хорошие ответы уже, но я хотел бы сделать вклад, где полномочия очень легко понять

chmod u=r+w,o=r-w,g=-r-w test.php

u = user
o = other
g = group

Этот способ, которым можно легко добавить полномочия в файл. В примере выше

user = read + write
other = read but not write
group = not read not write

И не забывают -R, если Вы хотите изменить полномочия рекурсивно.

6
ответ дан 23 November 2019 в 00:00

chown изменится , кто владеет файлом и какая группа он принадлежит, в то время как chmod изменения , как владельцы и группы могут получить доступ к файлу (или если они могут получить доступ к нему вообще).

1
ответ дан 23 November 2019 в 00:00

В простом термине chown используется для изменения владения файла в то время как chmod для изменения битов режима файла.

  • chown определяет, кто владеет файлом.
  • chmod определяет, кто может сделать что.

Когда Вы делаете кого-то владельцем файла, он может сделать почти везде, где он хочет в тот файл, например, он может использовать chmod к изменениям его модификации (говорят, что полномочия) для определения, кто может сделать что.

$ ls -l file
-rwxrwxr-x  2  ravexina admins   26 May  9 12:49 file

В вышеупомянутой строке мы видим это ravexina владелец файла и admins группа. Я могу использовать: sudo chown dave:sudo file изменить владельца файла к dave и группа к sudo; Теперь файл принадлежит "dave" и всем в "sudo" группе.

Однако с chmod мы определяем, кто может сделать что? кто имеет право считать файл, записать в файл или выполнить его. например:

chmod 777 file

дает права на чтение, запишите и еще выполнитесь всем включая владельца, группу и everyones.

От turnoff.us: enter image description here

96
ответ дан 23 November 2019 в 00:00

Другие вопросы по тегам:

Похожие вопросы: