Как знать все файлы в Ubuntu, имеющей Stickybits?

Я теперь понимаю липкие биты и почему я должен использовать их на основе своего вопроса: Какова буква "t" в выводе "ls-ld/tmp"?

Теперь у меня есть новый вопрос.

Как я мог перечислить все файлы, которые имеют Stickybits в моем Linux Ubuntu?

2
задан 13 April 2017 в 15:24

2 ответа

Здесь мы идем снова:)

Эта команда должна обслуживать Вас:

find / -perm +1000 

Детали:

Для добавления stickybit Числового/восьмеричного пути необходимо добавить "1" к началу каталога. пример:

chmod 1757 ~/Desktop/test

так знают для поиска stickybit, необходимо искать все файлы, имеющие "этого", что означает иметь полномочия +1000 (1, здесь идет для stickybit и "000" для того, что первоначальные полномочия)

, Таким образом, эта команда будет искать целую файловую систему каждый файл, которые имеют разрешение "+1000".

Теперь, если у Вас есть тест эта команда тогда, можно заметить, что много ошибок повышают здесь, которые делают вывод неясным, и это, ошибки происходят, потому что Вы пытаетесь искать в некоторых местах, и у Вас нет доступа для чтения на нем.

Так для избавлений от этих ошибок можно перенаправить те ошибки к /dev/null

 find / -perm +1000 2> /dev/null

, Кроме того, можно перенаправить вывод в файл "output.txt", а не сохранить произведенными в "терминале stdout"

find / -perm +1000 >output.txt 2>/dev/null
3
ответ дан 2 December 2019 в 03:04

Я был бы точно так же, как для создания нескольких точек, подробно останавливаясь на очень хорошем ответе Hadi. В первую очередь, липкий бит не имеет никакого эффекта на файлы в Linux. Как объяснено в man chmod :

ЛИПКИЕ ФАЙЛЫ

В более старых системах Unix, липкий бит заставил исполняемые файлы копиться в области подкачки. Эта функция не полезна в современных системах VM, и , ядро Linux игнорирует липкий бит на файлах . Другие ядра могут использовать липкий бит на файлах в определенных системой целях. В некоторых системах только суперпользователь может установить липкий бит на файлах.

Поэтому нет никакого смысла в поиске файлы с липким набором битов, таким образом, мы можем также ограничить поиск каталогами только, которые ускорят вещи чрезвычайно. Это может быть сделано с помощью find:

find / -type d -perm /1000 2>/dev/null

кроме того, обратите внимание, что я использую -perm /mode синтаксис вместо -perm +mode. Это вызвано тем, что +mode удерживается от использования и может возвратиться в неожиданных результатах. От man find:

   -perm /mode
          Any of the permission bits mode are set for the file.  

   -perm +mode
          Deprecated,  old way of searching for files with any of the per‐
          mission bits in mode set.  You should use -perm  /mode  instead.
          Trying to use the `+' syntax with symbolic modes will yield sur‐
          prising results.  For example, `+u+x' is a valid  symbolic  mode
          (equivalent to +u,+x, i.e. 0111) and will therefore not be eval‐
          uated as -perm +mode but instead as  the  exact  mode  specifier
          -perm  mode  and so it matches files with exact permissions 0111
          instead of files with any execute bit set.  If  you  found  this
          paragraph  confusing,  you're  not alone - just use -perm /mode.
          This form of the -perm test  is  deprecated  because  the  POSIX
          specification  requires  the  interpretation of a leading `+' as
          being part of a symbolic mode, and so we switched to  using  `/'
          instead.

Наконец, можно также использовать символьный вместо восьмеричных режимов, которые могло бы быть легче считать, если Вы не привыкли к нему:

find / -type d -perm +'+t' 2>/dev/null 
0
ответ дан 2 December 2019 в 03:04

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

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