Як я можу знайти список файлів із певними дозволами?
Я хочу знайти файли, які належать root
користувачеві, які мають rwx
дозвіл для власника.
Чи є спосіб знайти список таких файлів? Я використовую Ubuntu 16.04.
Як я можу знайти список файлів із певними дозволами?
Я хочу знайти файли, які належать root
користувачеві, які мають rwx
дозвіл для власника.
Чи є спосіб знайти список таких файлів? Я використовую Ubuntu 16.04.
Відповіді:
Так, GNU find
може це зробити:
-користувач unme
Файл належить користувачеві Uname (дозволений числовий ідентифікатор користувача).
-perm -мода
Усі файли дозволу встановлені для файлу. У цій формі приймаються символьні режими, і зазвичай це спосіб, яким ви хотіли б їх використовувати. Ви повинні вказати 'u', 'g' або 'o', якщо ви використовуєте символьний режим. Див. Розділ ПРИКЛАДИ для деяких ілюстративних прикладів.
Отже, ви хочете:
find /path/to/directory -user root -perm -u+rwx
Якщо ви хочете , щоб знайти всі файли , користувач має певний дозвіл на (незалежно від того , що він є власником (і навіть встановити з допомогою ACL)) , ви можете використовувати find
з -readable
, -writable
і -executable
.
Щоб знайти всі файли, для яких користувач sam має дозвіл на читання
sudo -u sam find /path/to/directory -readable -ls
sudo -u sam
потрібен, тому що три згадані комутатори працюють з дозволами користувача, який викликав, find
- тож вам потрібен sudo, щоб запустити себе find
як користувач sam . -ls
показує повний запис для кожного знайденого файлуподальші приклади
Щоб знайти всі файли, для яких sam execute
або має write
дозволи
sudo -u sam find /path/to/directory -writable -or -executable -ls
Щоб знайти всі файли, для яких sam має execute
та read
дозволи
sudo -u sam find /path/to/directory -readable -and -executable -ls
записується це НЕ помилка!