Як ви бачите дозволи файлів?


79

Хочу знати, як бачити дозволи певного файлу. Яку команду слід ввести в терміналі? Однак я не хочу це змінювати.


Якщо це не дублікат, позначте його як Захищений. Це важливе питання.
evilMinion

Відповіді:


110

Якщо ви хочете побачити дозвіл на файл, ви можете скористатися ls -l /path/to/fileкомандою.

Наприклад

   ls -l acroread 
   -rwxr-xr-x 1 10490 floppy 17242 May  8  2013 acroread


Що це значить ?

Спочатку -представляє звичайний файл. Це дає вам натяк на тип об’єкта, який він є. Він може мати такі значення.

  • d (каталог)
  • c (символьний пристрій)
  • l (симпосилання)
  • p (названа труба)
  • s (розетка)
  • b (блок пристрою)
  • D (двері)
  • - (звичайний файл)


rпредставляє дозвіл на читання.
wявляє собою дозвіл на запис і
xпредставляє виконавчий дозвіл.

Перша комбінація rwxявляє собою дозвіл для власника .
Друга комбінація rwxявляє собою дозвіл для групи .
Третя комбінація rwxявляє собою дозвіл на інший файл.


Октальне позначення

Дозвіл файлу також може бути представлений у восьмеричних позначеннях.
У восьмеричних позначеннях

Прочитати або rпредставлено 4,
Написати або wпредставлено 2
Виконати xпредставлено 1.

Сума цих трьох використовується для представлення дозволу.

stat команда може бути використана для перегляду дозволу на файл у восьмеричній нотації

  stat -c "%a %n" /path/of/file

Наприклад

   stat -c "%a %n" acroread 
   755 acroread

Тут ви можете побачити

Для власника це 4 + 2 + 1 = 7 (111 у двійковій)
Для групи це 4 + 0 + 1 = 5 (101 у двійковій), а
для інших це 4 + 0 + 1 = 5 (101 у двійковій).


18

Ви можете використовувати або довгий список:

ls -l [filename]

Або статистика:

stat [filename]

Stat є більш всеосяжним; він показує вам час доступу, зміни та зміни, а також інформацію про розмір Inode та розмір, яка може вам не бути корисною.


Примітка: "це залежить", що команда покаже стандартні дозволи, однак ваш доступ може бути обмежений іншими засобами, acl, apparmor, і selinux можуть обмежувати доступ поза тим, що показано ls -l.
Пантера

7

Незалежно від того, ви фактично використовуєте дозволи на доступ ACL, якщо у вас встановлений aclпакет, ви можете використовувати getfacl <path>досить пристойну розбивку дозволів на цей файл.

$ getfacl /root/
# file: root/
# owner: root
# group: root
user::rwx
group::---
other::---

Якщо ви робите використовувати дозвіл ACL, то розкажуть вам про дозволи, lsі statпросто не може.

$ sudo setfacl -m u:oli:r /root
$ getfacl /root/
# file: root/
# owner: root
# group: root
user::rwx
user:oli:r--
group::---
mask::r--
other::---
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.