Linux разрешения: chmod, chown и umask за начинаещи (2025)

Linux е мощен и гъвкав операционен система, но за да го използвате ефективно, трябва да разберете как работят разрешенията. В тази статия ще обясним всичко за chmod
, chown
и umask
– трите основни инструмента за управление на правата за достъп. Независимо дали сте начинаещ или искате да си опресните знанията, това ръководство ще ви помогне да работите уверено с Linux файлове и директории.
1. Какво са Linux разрешенията?
В Linux всеки файл и директория имат собственик (owner) и група (group), както и набор от разрешения (permissions), които определят:
- Кой може да извършва действия (собственик, група, други потребители).
- Какви действия могат да се извършват (четене, запис, изпълнение).
Разрешенията се изобразяват с букви (r
, w
, x
) или цифри (0–7).
2. Видове разрешения
Linux поддържа три основни типа разрешения:
Символ | Значение | Описание |
---|---|---|
r | Read (четене) | Позволява преглед на съдържанието (за файлове) или списък (за директории). |
w | Write (запис) | Позволява промяна на файла или създаване/изтриване в директория. |
x | Execute (изпълнение) | Позволява стартиране на файл или влизане в директория. |
Примери:
- Файл с
-rw-r--r--
може да се чете от всички, но само собственикът може да го променя. - Директория с
drwxr-xr-x
позволява влизане на всички, но само собственикът може да създава/изтрива файлове.
3. Разбиране на chmod
(промяна на разрешения)
chmod
(Change Mode) се използва за промяна на разрешенията на файлове и директории.
Синтаксис:
chmod [опции] разрешения файл/директория
Методи за задаване на разрешения:
А) Числов метод (octal) – с цифри
Всяко разрешение се представя с число:
4
= Read (r
)2
= Write (w
)1
= Execute (x
)
Комбинираме числата за всяка група (собственик, група, други):
Комбинация | Число | Примерен резултат (ls -l ) |
---|---|---|
rwx | 7 (4+2+1) | -rwx------ (само собственикът има пълни права) |
rw- | 6 (4+2) | -rw-r--r-- (собственикът чете/пише, останалите само четат) |
r-x | 5 (4+1) | -r-xr-xr-x (всички могат да четат/изпълняват) |
Пример: Дайте пълни права на собственика, четене/изпълнение на групата и никакви права на другите:
chmod 750 файл.txt
Б) Символен метод – с букви
Използват се символи за групи и действия:
u
(user/owner),g
(group),o
(others),a
(all)+
(добавяне),-
(премахване),=
(задаване точно)
Примери:
chmod u+x скрипт.sh # Добавя изпълним режим за собственика
chmod go-w файл.txt # Премахва право на запис за групата и другите
chmod a=rw директория # Задава четене/запис за всички
4. Разбиране на chown
(промяна на собственик и група)
chown
(Change Owner) променя собственика и/или групата на файл/директория.
Синтаксис:
chown [опции] собственик:група файл/директория
Примери:
chown ivan файл.txt # Променя собственика на "ivan"
chown ivan:developers файл.txt # Променя собственика и групата
chown -R root:root /папка # Рекурсивно променя правата за цяла директория
5. Разбиране на umask
(маска по подразбиране)
umask
определя базовите разрешения за новосъздадени файлове и директории.
Как работи?
- Linux използва маска, която "изважда" права от максималните (
666
за файлове,777
за директории). - Стандартната
umask
е022
(файлове получават644
, директории –755
).
Задаване на umask:
umask 002 # Файлове: 664, Директории: 775
umask 077 # Файлове: 600, Директории: 700 (строги права)
6. Често срещани сценарии и съвети
Безопасност:
- Използвайте
chmod 700
за лични файлове. - Ограничавайте
write
правата за групи (chmod g-w
).
Практически примери:
- Скрипт:
chmod +x script.sh
– прави го изпълним. - Споделена папка:
chmod 775 /shared
– позволява запис на групата. - Сертификати:
chmod 600 ключ.pem
– забранява достъп на другите.
7. Важни специфични случаи: SSH ключове и конфигурации
Когато работите с SSH ключове, правилните разрешения са критични за сигурността. Ако правата са твърде "отворени", SSH може да откаже достъп!
Безопасни разрешения за ~/.ssh
и файлове:
chmod 700 ~/.ssh # Директорията трябва да е строго ограничена за собственика
chmod 600 ~/.ssh/config # Конфигурационният файл не трябва да е достъпен за други
chmod 600 ~/.ssh/id_rsa # Частният ключ винаги трябва да е строго защитен
chmod 644 ~/.ssh/id_rsa.pub # Публичният ключ може да се чете от всички
Защо са важни тези настройки?
- SSH изисква
700
за~/.ssh
, за да гарантира, че никой друг не може да види/променя съдържанието. - Ако
id_rsa
(частен ключ) има права777
или дори644
, SSH ще го отхвърли със съобщение като "Permissions too open".
Съвет: Винаги проверявайте разрешенията, ако получавате грешки при SSH връзки!
8. Заключение
Разбирането на chmod
, chown
и umask
е ключово за ефективна работа в Linux. С тези инструменти можете:
✅ Контролирате кой има достъп до вашите файлове.
✅ Споделяте ресурси безопасно между потребители.
✅ Автоматизирате настройките с umask
.
Запомнете: Винаги проверявайте разрешенията с ls -l
преди да променяте нещо!
Ако искате да научите още, опитайте командите в тестова среда. Linux разрешенията са мощен инструмент – използвайте ги мъдро! 🚀
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut