![]() |
Системные комманды и утилиты
Заголовок: Системные комманды и утилиты
Создано grumbler 18.04.2006 :: 23:09:20 Vulzscht wrote: 5) chmod - изменяет права доступа к файлу... 755 - делает выполняемым, а какие есть еще и их значение? в хэлпе просто как-то скромненько описано... Всего можно перечислить 8 возможных вариантов доступа к файлу/директории: Восьмиричное число Двоичное число Маска режима доступа Доступ 0 000 --- никакой 1 001 --x только исполнение 2 010 -w- только запись 3 011 -wx запись и исполнение 4 100 r-- только чтение 5 101 r-x чтение и исполнение 6 110 rw- чтение и запись 7 111 rwx чтение, запись и исполнение Права доступа назначаются для владельца (Owner, User), группы пользователей (Group) и всех остальных (Other). Соответственно, нам необходимо три чиселка! ;-) В качестве опций комманды chmod чащего всего подают три _восьмиричных_ чиселка (по чиселку для владельца, группых и прочих). Следовательно, 755 = 111 101 101 = rwxr-xr-x (слева - направо: владелец, группа, остальные). Однако есть более гибкие (и более понятные) варианты опций комманды chmod! Для задания прав доступа к файлу можно пользоваться следующим синтаксисом: Код:
chmod [u][g][o][+][=][-][r][w][x][X] путь_к_файлу Знаки + и - говорят о том следует ли _добавить_ к имеющимся правам доступа следующие за знаком права, или _удалить_ перечисленные за знаком права доступа к файлу. Знак = задаёт (не сохраняя имевшихся) новые права доступа к файлу. А символы r,w,x,X -- соответственно чтение (read), запись (write), исполнение (execute) и открытие дирректорий (eXecute). Ещё одна очень полезная опция комманды chmod: -R (Recursive) -- заставляет применить указанные правила ко всем файлам/директориям, лежащим "ниже" данной директории (то есть к поддиректориям и файлам в них). В качестве примера: добавим возможность для группы и всех остальных возможность читать файлы и открывать директории всех файлов и папок в каталоге /var/ftp Код:
chmod -R go+rX /var/ftp Код:
chmod go-rx /etc/rc.d/init.d/iptables Каковы особенности двух различных вариантов задания прав доступа к файлу? При использовании трёх восьмиричных чисел для задания прав доступа мы задаём права "жёстко". То есть что сказали -- то и получили. А при задании прав доступа посредством символов u,g,o, знаков +/- и аттибутов r,w,x,X мы добавляем/удаляем указанные привилегии, оставляя те, которые уже были заданы файлу/папке. То есть, если у файла были аттрибуты -rwxrwxrwx, а мы выполнили комманду Код:
chmod ugo-x путь_к_файлу Что лучше -- сказать невозможно: для каждого случая -- своё. |
Re: Системные комманды и утилиты
« Ответ #1 - написано: 18.04.2006 :: 23:18:24 » Соотечественницей комманды chmod является комманда chown (сменить владельца). Она, так же как и chown, воспринимает опцию -R (--recursive) и имеет следующий синтаксис: Код: Код:
chown -R новый_пользователь:новая_группа путь_к_файлу Подробнее -- читайте мануал! Re: Системные комманды и утилиты « Ответ #2 - написано: 19.04.2006 :: 22:06:25 » Выполнение комманд с правами суперпользователя Для данной цели рекоммендуется использовать утилиту sudo. Она позволяет выполнять какие-либо действия от имени root, не требуя входа в систему в качестве суперпользоватея. Эта программулька имеет конфиг /etc/sudoers. В качестве примера, попробуем настроить её для выполнения комманд монтирования дисков. Код:
# sudoers file. Конфиг sudo не так тривиален, как может показаться на первый взгляд, поэтому рекоммендую обратиться к системе помощи для более детального ознакомления. Код:
man sudo |
Текущее время: 20:34. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot