Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Файловете и директориите в Linux имат зададени разрешения, които контролират достъпа до тях. Тези разрешения са важни за сигурността и правилното функциониране на системата. В тази статия ще обясним как да променяте разрешенията за файлове в Linux и защо това е важно. Ще разгледаме основните команди и концепции, свързани с файловите разрешения, за да можете уверено да ги управлявате.
Linux използва три нива на достъп за управление на файловете: потребител (owner), група (group) и други (others). Всеки файл или директория има определени права за всяко ниво на достъп.
Всеки файл има разрешения за трите нива на достъп (потребител, група и други), които определят какво могат да правят различните потребители с него.
Можете да видите текущите разрешения на файл с командата ls -l
. Тази команда ще изведе дълъг списък на файловете в директорията, включително техните разрешения.
ls -l filename
Това ще изведе нещо като:
-rwxr-xr--
Тези символи показват текущите разрешения за файла:
chmod
?Командата chmod
(change mode) е основният начин за промяна на разрешенията на файловете в Linux. Тази команда ви позволява да зададете нови разрешения, използвайки символи или числови стойности (октални числа).
Можете да използвате символи, за да променяте разрешенията по интуитивен начин. Основните символи са:
u
за потребителg
за групаo
за другиr
за четенеw
за записx
за изпълнениеНапример, ако искате да добавите разрешение за изпълнение за собственика на файл, използвайте:
chmod u+x filename
Това ще добави изпълнителни права за собственика. Ако искате да премахнете записване за другите:
chmod o-w filename
Това ще премахне правото на записване за всички потребители извън собственика и групата.
Друг начин да промените разрешенията е чрез използване на числови стойности (октални стойности). В този случай, всяко право на достъп (четене, запис, изпълнение) се представя с число:
Сумата от тези числа представлява разрешенията. Например:
Най-често срещаните комбинации са:
За да зададете разрешения с числови стойности, използвайте:
chmod 755 filename
Това задава:
chown
?Командата chown
(change owner) позволява да промените собственика на файл или директория. Това е полезно, когато искате даден файл да бъде притежаван от друг потребител или група.
За да промените собственика на файл, използвайте:
chown username filename
Това задава нов потребител като собственик на файла. Ако искате да промените и групата:
chown username:groupname filename
Можете да използвате -R
(рекурсивно), за да промените собствеността на всички файлове в директорията:
chown -R username:groupname directory
chgrp
?Ако искате само да промените групата на файл или директория, използвайте командата chgrp
. Това е полезно, когато искате да прехвърлите достъпа до група, без да променяте собственика.
chgrp groupname filename
Това ще промени групата на файла. Можете да използвате и опцията -R
за рекурсивно прилагане:
chgrp -R groupname directory
Да предположим, че създавате скрипт и искате да го направите изпълним. След като създадете файла:
touch script.sh
Можете да добавите изпълнителни права за собственика:
chmod u+x script.sh
Сега скриптът може да се изпълнява с команда като:
./script.sh
Да речем, че имате чувствителен файл и искате да го защитите. Можете да зададете разрешения така, че само собственикът да има достъп:
chmod 600 sensitive_file.txt
Това ще даде само на собственика права за четене и запис, докато групата и другите няма да имат достъп.
Ако искате да споделите достъп до директория с определена група, първо задайте групата:
chown :groupname shared_directory
След това задайте правилните разрешения:
chmod 770 shared_directory
Това ще даде на собственика и групата пълен достъп до директорията, но другите няма да имат никакъв достъп.
umask
?Командата umask
контролира кои разрешения се задават по подразбиране, когато се създава нов файл или директория. Когато създавате нов файл, по подразбиране му се задават разрешения на базата на умаската. Стандартната умаска е 022, което означава, че файловете ще се създават с разрешения 644 (четене и запис за собственика, само четене за групата и другите).
Можете да видите текущата умаска с командата:
umask
За да зададете нова умаска, използвайте:
umask 027
Това ще направи така, че файловете ще се създават с разрешения 640 (четене и запис за собственика, четене за групата, без достъп за другите).
Управлението на файловите разрешения в Linux е важно умение, което гарантира сигурност и контрол над достъпа до данни. С командите chmod
, chown
, и chgrp
можете лесно да променяте разрешенията и собствеността на файлове и директории. Следвайки добрите практики за сигурност, можете да гарантирате, че вашите файлове са достъпни само за тези, които трябва да имат достъп.
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut