Механизмът на разпределение на правата в операционните системи, разработени през 70-те години на миналия век, се оказа толкова успешен, че досега е бил използван в UNIX системите, т.е. повече от четиридесет години.
Основният принцип на метода за разпределение на достъпа включва наличието на задължителни атрибути, като например потребителски имена както и техните групи. Почти очевидно е, че в Linux всеки потребител може да има само едно име, което трябва да е уникално в рамките на тази система. С помощта на псевдонима потребителят влиза в системата, т.е. се удостоверява. Освен това операционната система съдържа ограничен брой групи потребители. Всяка от тях може да бъде част от една или няколко групи. Редактиране на свойствата, създаване и изтриване на групи могат да направят супер - root. Членовете на различни групи имат различни права да действат в системата. Например, администратор притежава повече права, отколкото гост.
Inode (който всеки файл има) съдържа потребителското име на собственика и името на потребителската група, която има права върху файла.
Когато създавате файл, той става собственик на потребителя, от чието име се изпълнява процесът. Групата на новосъздадения файл също се определя с помощта на идентификатора на групата на текущия процес. С по-нататъшна работа всички тези стойности могат да се променят с помощта на конзолните команди, които ще бъдат обсъдени по-нататък.
Командата chmod може да промени потребителския достъп до файла. Всяка промяна на тези права е разрешена само на неговия собственик или суперпотребител. В Unix-системите кодът обикновено се задава като число в октална форма или с помощта на специални мнемонични символи (букви). Използването на всеки метод има своите предимства и недостатъци. По този начин, използвайки цифрова индикация за права за достъп, системният администратор ще може бързо да конфигурира желания тип достъп и използвайки мнемонични кодове, той може да го направи по-точно - например, добавяне или изтриване на достъп за писане, или отказ на разрешение за четене.
Като първи аргумент конзолна команда chmod означава спецификация на потребителските разрешения, а това е обозначението на мнемониката или осмичното число. Вторият и следващият аргумент са имената на файловете, към които се опитваме да променим разрешенията. При задаване на правата под формата на три числа първата цифра определя правата за собственика, втората за групата и третата за всички останали потребители.
Достъп до файлове в система от права има такива вариации:
Във връзка с каталозите съществува такава система от права:
Възможни са общо 8 различни комбинации, които са показани на фигурата по-долу.
Използвайки таблицата по-долу, можете да разберете как да приложите опциите за присвояване на сложни права, както и как да настроите 777 разрешения, използвайки chmod mnemonic спецификации.
Ето няколко примера за използване на командата chmod:
Използването на такъв скрипт за разпространение на файлове ще доведе до това, че собственикът има всички права върху файла, а всички други потребителски групи могат само да го изпълнят.
Когато използваме кода 775, ще предоставим на собственика и на цялата му група пълен списък с права. Други потребители няма да могат да правят промени в файла. Трябва да се каже, че за да се определи файл само със собствено име, е необходимо да се намира в директорията, където се намира този файл. В противен случай можете да се преместите в тази директория с помощта на командата cd directory_name / nested_directory или да използвате следната структура:
За да рекурсивно да промените разрешенията за всички файлове в директория и всички подпапки, добавете ключа -R към командата chmod. Получената команда ще изглежда така:
В резултат на това как да зададете 777 разрешения за файл или директория няма да бъде проблем - просто трябва да влезете в уеб сървъра си чрез SSH и да изпълните командата:
Също така можете да приложите подобна процедура чрез FTP клиентския интерфейс на FileZilla или SFTP клиента на WinSCP клиента. За да направите това, ще трябва да извършите оторизация на вашия сървър в една от тези програми, във визуалния интерфейс, изберете вашия файл или папка, след това щракнете с десния бутон и поставете отметките до необходимите права.
Понякога, в случай на спешна нужда, може да нямате достъп до Windows клиента, така че можете да промените правата за достъп чрез контролния панел на уеб сървъра. За да направите това, използвайте файловия мениджър на вашия контролен панел, изберете необходимите файлове и кликнете върху бутона Промяна на разрешения. Освен това ще е необходимо да проверите и всички отметки, а сега въпросът как да зададете 777 разрешения за папката вече няма да е труден за вас.