Junior
Какво е umask?
sobes.tech AI
Отговор от AI
Umask (съкратено от user file-creation mode mask) е команда в операционните системи тип Unix/Linux, която задава маската за права по подразбиране за новосъздадените файлове и директории. Тя представлява набор от битове, които се изключват от пълните права (777 за директории, 666 за файлове) при създаването на обект.
Представяне на umask:
- Обикновено umask се представя като триизрчен октален код, например
022. Всяка цифра съответства на правата за собственика, групата и всички останали потребители. - Битовете на маската се инвертират спрямо желаните права. Например, за деактивиране на правото за писане (
2) за групата, съответният бит ще бъде зададен в umask.
Изчисляване на крайните права:
Крайните права за достъп за нов файл/директория се изчисляват като:
Резултат = Начални_права И (НЕ umask)
Където:
Начални_праваза файл = 666 (rw-rw-rw-)Начални_праваза директория = 777 (rwxrwxrwx)НЕ umask- битовото НЕ на стойността на umask. При използване на октален код, всяка цифра на umask се изважда от 7.
Пример: umask = 022
- За файл: 666 И (НЕ 022) = 666 И 755 = 644 (rw-r--r--)
- За директория: 777 И (НЕ 022) = 777 И 755 = 755 (rwxr-xr-x)
Преглед и задаване на umask:
-
Преглед на текущия umask:
# Показва umask в октален формат umask# Показва umask в символен формат umask -S -
Задаване на нов umask:
# Задава umask в октален формат umask 027# Задава umask в символен формат umask u=rwx,g=rx,o=r
Umask е важен инструмент за осигуряване на базова сигурност на файловата система, като задава разумни права по подразбиране за новите обекти.