При запуске команды ls -ld /tmp выход будет:
drwxrwxrwt 30 root root 20480 Mar 11 14:17 /tmp
Итак, у меня есть два основных вопроса:
Что такое буква t после разрешений ? Насколько я знаю, /tmp используется для создания временных файлов, связанных с разными пользователями в системе, так как получилось разрешение rwxrwxrwx (777)?Это кажется неправильным для меня. Пожалуйста, мне нужна ваша помощь, чтобы понять, что здесь происходит.
Иногда бывает, что вам нужен каталог Linux, который может использоваться всеми пользователями системы Linux для создания файлов. Пользователи могут создавать, удалять или переименовывать файлы в соответствии с их удобством в этом каталоге.
Липкий бит - это бит разрешения, который установлен в файле или каталоге, который позволяет только владельцу файла / или пользователь root, чтобы удалить или переименовать файл. Никому другому пользователю не предоставляются привилегии для удаления файла, созданного другим пользователем.
Ну, чтобы избежать подобных проблем, используется понятие липкого бита. Поскольку для этой цели используется / tmp. Поэтому, чтобы избежать описанного выше сценария, / tmp использует липкий бит.Теперь, что, если пользователь случайно или намеренно удаляет (или переименовывает) файл, созданный другим пользователем в этом каталоге?
mkdir demo
chmod 777 demo
Например:
ls -ld demo
drwxrwxrwx 2 guru guru 4096 Mar 11 18:17 demo
ls -l demo
-rwxrwxrwx 1 abhi abhi 0 Mar 11 17:11 file1
-rwxrwxrwx 1 anshu anshu 0 Mar 11 18:15 file2
Я также создал два файла с разными пользователями в этой папке с разрешением 777.
chmod +t demo/
ls -ld demo
drwxrwxrwt 2 guru guru 4096 Mar 11 18:17 demo
Теперь поверните на липком бите на этом
mv /home/guru/demo/file2 /home/guru/demo/file3
mv: cannot move '/home/guru/demo/file2' to '/home/guru/demo/file3': Operation not permitted
Теперь, что произойдет, если один пользователь (абхи) хочет переименовать второго пользователя (anshu)
Происхождение липкого бита [!d12 ] Хорошо, чтобы избежать подобных проблем, используется понятие липкого бита. Поскольку для этой цели используется / tmp. Поэтому, чтобы избежать описанного выше сценария, / tmp использует липкий бит.
В Linux липкий бит имеет только описанное выше описание в каталогах. Исторически это использовалось для чего-то совершенно другого в обычных файлах, и именно здесь происходит название.
Когда программа выполняется, требуется время, чтобы загрузить программу в память, прежде чем пользователь сможет начать используй это. Если программа, например редактор, часто используется пользователями, то время задержки запуска было накладным.
Липкий бит - это метод обходного пути для общих каталогов, которые нельзя случайно удалить. Когда каталог имеет липкий бит, тогда только владелец или корень могут его удалить, даже если каждый пользователь может принять все другие разрешения.
/tmp - это наиболее общий каталог между процессами и пользователями, и для этого он содержит файл-липид, чтобы гарантировать, что ни один пользователь не может удалить каталог, даже если это разрешение 777, и это должно быть так, чтобы дать возможность пользователям и процессам использовать каталог без конфликтов в разрешениях.
Липкий бит - это метод обходного пути для общих каталогов, которые нельзя случайно удалить. Когда каталог имеет липкий бит, тогда только владелец или корень могут его удалить, даже если каждый пользователь может принять все другие разрешения.
/tmp - это наиболее общий каталог между процессами и пользователями, и для этого он содержит файл-липид, чтобы гарантировать, что ни один пользователь не может удалить каталог, даже если это разрешение 777, и это должно быть так, чтобы дать возможность пользователям и процессам использовать каталог без конфликтов в разрешениях.
Липкий бит - это метод обходного пути для общих каталогов, которые нельзя случайно удалить. Когда каталог имеет липкий бит, тогда только владелец или корень могут его удалить, даже если каждый пользователь может принять все другие разрешения.
/tmp - это наиболее общий каталог между процессами и пользователями, и для этого он содержит файл-липид, чтобы гарантировать, что ни один пользователь не может удалить каталог, даже если это разрешение 777, и это должно быть так, чтобы дать возможность пользователям и процессам использовать каталог без конфликтов в разрешениях.
Липкий бит - это метод обходного пути для общих каталогов, которые нельзя случайно удалить. Когда каталог имеет липкий бит, тогда только владелец или корень могут его удалить, даже если каждый пользователь может принять все другие разрешения.
/tmp - это наиболее общий каталог между процессами и пользователями, и для этого он содержит файл-липид, чтобы гарантировать, что ни один пользователь не может удалить каталог, даже если это разрешение 777, и это должно быть так, чтобы дать возможность пользователям и процессам использовать каталог без конфликтов в разрешениях.
Липкий бит - это метод обходного пути для общих каталогов, которые нельзя случайно удалить. Когда каталог имеет липкий бит, тогда только владелец или корень могут его удалить, даже если каждый пользователь может принять все другие разрешения.
/tmp - это наиболее общий каталог между процессами и пользователями, и для этого он содержит файл-липид, чтобы гарантировать, что ни один пользователь не может удалить каталог, даже если это разрешение 777, и это должно быть так, чтобы дать возможность пользователям и процессам использовать каталог без конфликтов в разрешениях.
Липкий бит - это метод обходного пути для общих каталогов, которые нельзя случайно удалить. Когда каталог имеет липкий бит, тогда только владелец или корень могут его удалить, даже если каждый пользователь может принять все другие разрешения.
/tmp - это наиболее общий каталог между процессами и пользователями, и для этого он содержит файл-липид, чтобы гарантировать, что ни один пользователь не может удалить каталог, даже если это разрешение 777, и это должно быть так, чтобы дать возможность пользователям и процессам использовать каталог без конфликтов в разрешениях.