Posts tagged ‘modes’

Права за достъп до файлове

chmod (change mode) е доста често използвана команда за администрация. Обикновено я ползваме, за да направим даден скрипт, написан на bash, python, perl изпълним.

За да на правил файл изпълним:

chmod +x myscript.sh

По подразбиране това ще промени атрибута за всички. Файловите атрибути са 3 вида:

u ( user – собственик на файла)
g ( групата, в която е потребителя)
o ( всичко останали потребители)
a ( всички гореспоменати)

Това означава, че горната команда е подобна на тази:

chmod a+x myscript.sh

По този начин ще позволим само на собственика на файла да го изпълнява:

chmod u+x myscript.sh

Може да премахвате атрибути от файл. Да кажем, че имате права за изпълняване от всички, но искате да не е изпълним от всички други (които не са потребителя или не са от неговата група):

chmod o-x myscript.sh

Освен атрибута за изпълнение, имаме атрибути за писане и четене. За тях важи горенаписаното.

Например искам да махна атрибутите за четене и писане на всички други потребители:

chmod o-rw myscript.sh

chmod може да се изпълнява и по друг начин. Може да използваме цифри за да укажем атрибутите, вместо символи.
Цифрите, които оказват атрибутите са показани по-долу:

execute = 1 (изпълнение)
write = 2 (писане)
read = 4 (четене)

В този ред на мисли ако са включени атрибутите за четене и писане имаме 2+4 = 6, а ако са включени за изпълнение и четене имаме 1+4 = 5.

За да може собственика на файла да има rwx атрибути, но групите, на които принадлежи, и всички останали да имат само rx, може да направим това:

chmod 755 myscript.sh

Така, 7= 4+2+1 (rwx) и 5 = 4+1 (rx).

Possibly Related Posts: