36782

Сведения о некоторых командах ОС UNIX для выполнения лабораторной работы

Лабораторная работа

Информатика, кибернетика и программирование

Права доступа SUID SGID sticky r w x r w x r w x Права доступа к файлам и каталогам несколько различаются: Права доступа Файл Каталог r чтение чтение из файла получение списка файлов каталога w запись запись в файл изменение содержимого каталога создание и удаление файлов в нем x исполнение исполнение файла если он является сценарием или программой вход в каталог и осуществление в нем поиска Разрешения установленные для каталога имеют более высокий приоритет чем разрешения установленные для файлов этого каталога. Специальные...

Русский

2013-09-23

119.5 KB

1 чел.

Сведения о некоторых командах ОС UNIX 

для выполнения лабораторной работы № 2

id имя_пользователя – выводит информацию о подлинных и действующих UID и GID. Если имя пользователя не задано, то выводится информация о текущем пользователе, запустившем эту команду. По умолчанию печатает подлинные идентификаторы пользователей и групп, действующие идентификаторы пользователей и групп, если они отличаются от подлинных, а также идентификаторы дополнительных групп.

Флаги:

-g, --group

выводит только GID

-G, --groups

выводит только дополнительные группы

-n, --name

выводит вместо идентификаторов имена пользователей и групп. Используется совместно с флагами u, -g и -G

-r, --real

выводит вместо действующих идентификаторов пользователей и групп их подлинные идентификаторы. Используется совместно с флагами u, -g и -G

-u, --user

выводит только UID

useradd имя_пользователя – используется для создания новых учетных записей пользователей или для изменения существующих.

Флаги:

-u uid [-o]

определяет уникальное числовое значение UID (если не указан флаг ). Значения 0…99 обычно зарезервированы системой. Флаг позволяет дублировать UID 

-g group

определяет имя группы по умолчанию для пользователя

-G group1, group2,…

определяет членство пользователя в дополнительных группах

-d home

определяет домашний каталог пользователя

-s shell

определяет имя командного интерпретатора, используемого для взаимодействия пользователя с системой после его регистрации

-с ″comment

определяет дополнительную информацию о пользователе (описание пользователя)

-m [-k template]

создает домашний каталог пользователя, если он не существует. В случае задания флага -k копирует в этот каталог файлы инициализации из каталога template, в противном случае – из каталога /etc/skel

-D

показывает текущие значения полей учетной записи, заданные по умолчанию, или изменяет их на значения, заданные в командной строке

-e expire

определяет дату в формате ММ/ДД/ГГ (месяц/день/год), завершающую срок действия учетной записи. В случае присутствия флага -D указывает промежуток между очередными изменениями пароля

userdel имя_пользователя – удаляет из системы учетную запись пользователя. Флаг r удаляет вместе с учетной записью и домашний каталог пользователя.

Если пользователь в момент удаления его учетной записи работает в системе, данная операция не будет выполнена.

usermod имя_пользователя – используется для изменения учетных записей пользователей. и имеет те же флаги, что и команда useradd.

groupadd имя_группы – используется для добавления записи о новой группе пользователей.

Флаги:

-g gid [-o]

определяет уникальное числовое значение GID (если не указан флаг ). По умолчанию это значение больше 499, а также больше любого иднетификатора существующих групп.  Флаг позволяет дублировать GID 

-r

если не указан флаг -g, автоматически выбирает первый доступный GID, меньший чем 499

-f

аварийно завершает работу команды, если добавляемая группа уже существует в системе

groupdel имя_группы – используется для удаления записи о группе пользователей.

groupmod имя_группы – используется для изменения записи о группе пользователей.

Флаги:

-g gid [-o]

определяет новый уникальный GID (если не указан флаг ). Флаг позволяет принять неуникальный GID в качестве нового

-n 

определяет новое имя группы

groups имя_пользователя – выводит информацию об основной и дополнительных группах, членом которых является указанный пользователь. Если имя пользователя не задано, выводится информация о группах текущего пользователя.

passwd имя_пользователя – задает/изменяет пароль для указанного пользователя.Если имя пользователя не задано, задает/изменяет пароль для текущего пользователя.

su имя_пользователя – позволяет временно вести работу в системе от имени указанного пользователя. Если имя пользователя не указано, предполагается, что задан пользователь root. Для возврата в свою учетную запись используется команда exit.

chgrp имя_группы имя_файла/каталога – изменяет группу, которой принадлежит файл/каталог.

Флаги:

-R 

задает рекурсивное изменение группы для всех файлов и подкаталогов указанного каталога

-c, --changes

выводит подробные сообщения по выполненным изменениям

Вместо имени группы может использоваться GID

chown имя_пользователя имя_файла/каталога – изменяет владельца файла/каталога.

Флаг -R задает рекурсивное изменение владельца для всех файлов и подкаталогов указанного каталога.

С помощью данной команды можно изменять владельца и группу одновременно. Для этого используется следующий синтаксис:

chown имя_пользователя:имя_группы имя_файла/каталога 

Вместо имени пользователя и имени группы могут использоваться UID и GID.

Права доступа

SUID

SGID

sticky

r

w

x

r

w

x

r

w

x

Права доступа к файлам и каталогам несколько различаются:

Права доступа

Файл

Каталог

r (чтение)

чтение из файла

получение списка файлов каталога

w (запись)

запись в файл

изменение содержимого каталога (создание и удаление файлов в нем)

x (исполнение)

исполнение файла, если он является сценарием или программой

вход в каталог и осуществление в нем поиска

Разрешения, установленные для каталога, имеют более высокий приоритет, чем разрешения, установленные для файлов этого каталога.

Специальные права доступа

Идея, лежащая в основе применения бита SUID (Set User ID – установить идентификатор пользователя), состоит в том, что пользователь, запустивший программу, для которой владелец установил бит SUID, на время выполнения программы получает все права ее владельца. Например, если администратор создал сценарий и установил для него бит SUID, а другой пользователь запускает этот сценарий, то привилегии администратора на время выполнения сценария переходят к пользователю. Тот же принцип применим и к биту SGID (Set Group ID – установить идентификатор группы), только в данном случае меняются привилегии группы, владеющей сценарием.

Бит сохранения задачи (sticky, от англ. «липучка») при установке для файла указывает системе на необходимость сохранить копию программы в памяти после ее завершения для ускорения последующих запусков этой программы. Если же sticky-бит установлен для каталога, то в этом каталоге файлы может удалять или переименовывать только их владелец или суперпользователь, даже если член группы имеет те же права, что и владелец файлов.

Изменение прав доступа

Изменять права доступа к файлам и каталогам может их владелец или суперпользователь. Для изменения прав доступа к файлам и каталогам применяется команда chmod (от англ. change mode – изменить режим). Аргументы этой команды могут быть заданы либо в символьном, либо в числовом (абсолютном) формате.

Символьный формат

Синтаксис команды chmod при использовании символьного формата таков:

chmod [кто] оператор права имя_файла

 

Параметр кто может принимать такие значения:

u – владелец

g – группа

o – сторонние пользователи

a – все пользователи

Параметр оператор может принимать такие значения:

+ – добавление прав к имеющимся

- – удаление прав из имеющихся

= – установка прав вместо имеющихся

Параметр права может принимать такие значения:

r – чтение

w – запись

x – исполнение

s SUID или SGID 

tsticky

u – установка тех же прав, что и у владельца

g – установка тех же прав, что и у группы

o – установка тех же прав, что и у сторонних пользователей

Примеры (предполагается, что для файла myfile установлены права доступа чтения, записи и исполнения для всех категорий пользователей и их символьная запись имеет вид rwxrwxrwx):

Команда

Символьная запись прав доступа

Результат

chmod a-x myfile

rw-rw-rw-

Отобрать у всех категорий пользователей право на исполнение

chmod og-w myfile

rw-r--r--

Отобрать у группы и сторонних пользователей право на запись

chmod g+w myfile

rw-rw-r--

Добавить право на запись для группы

chmod u+x myfile

rwxr--r--

Добавить право на исполнение для владельца

chmod g+wx myfile

rwxrwxr--

Добавить права на запись и исполнение

chmod g=o myfile

rwxr--r--

Установить для группы такие же права доступа, как у сторонних пользователей

chmod g+x,o-r myfile

rwxr-x---

Добавить право на исполнение для группы и отобрать право на чтение для сторонних пользователей

chmod g+s myfile

rwxr-s---

Добавить SGID 

chmod u-x myfile

rw-r-s---

Отобрать у владельца право на исполнение

chmod u+s myfile

rwSr-s---

Добавить SUID

chmod g-s,o+r myfile

rwSr-xr--

Снять SGID и добавить сторонним пользователям право на чтение

chmod –r myfile

-wS--x---

Отобрать у всех категорий пользователей право на чтение

chmod +t myfile

-wS--x--T

Установить sticky

chmod uo+x myfile

-ws--x--t

Добавить для владельца и сторонних пользователей право на исполнение

 

Числовой (абсолютный) формат

Синтаксис команды chmod при использовании числового формата таков:

chmod права имя_файла

Здесь параметр права представляет собой восьмеричное число. В простейшем случае оно состоит из трех трехбитовых наборов, каждый из которых относится к одной из категорий пользователей. Старший бит соответствует разрешению на чтение (1 – установлено, 0 – снято), средний – разрешению на запись, а младший – разрешению на исполнение.

Цифра восьмеричной системы

r  w  x

Символьная запись прав доступа

0

0  0  0

- - -

1

0  0  1

- - x

2

0  1  0

- w -

3

0  1  1

- w x

4

1  0  0

r - -

5

1  0  1

r - x

6

1  1  0

r w -

7

1  1  1

r w x

Например, записанные в символьной форме права доступа rwxrwxrwx имеют числовой эквивалент 777, а права rw-r-x--- имеют числовой эквивалент 650.

При установке /снятии специальных прав доступа слева добавляется еще один трехбитовый набор:

SUID SGID  sticky

Символьная запись прав доступа

0

0

0

0

- - - - - - - - -

1

0

0

1

- - - - - - - - t (при установленном x для сторонних пользователей)

- - - - - - - - T  (x для сторонних пользователей отсутствует)

2

0

1

0

- - - - - s - - - (при установленном x для группы)

- - - - - S - - -  (x для группы отсутствует)

3

0

1

1

Установлены SGID и sticky

4

1

0

0

- - s - - - - - - (при установленном x для владельца)

- - S - - - - - -  (x для владельца отсутствует)

5

1

0

1

Установлены SUID и sticky

6

1

1

0

Установлены SGID и SGID 

7

1

1

1

Установлены SGID, SGID и sticky

Например, записанные в символьной форме права доступа rw-r-s--x имеют числовой эквивалент 2651, права rwSr-s-w- имеют числовой эквивалент 6652, права r-xr-s-wT имеют числовой эквивалент 3552, а права rw-r-S-wt имеют числовой эквивалент 3643.

Примеры:

Команда

Символьная запись прав доступа

Результат

chmod 504 myfile

r-x---r--

Владелец имеет права чтения и исполнения, группа не имеет никаких прав и сторонние пользователи имеют право чтения

chmod 4755 myfile

rwsr-xr-x

Для файла установлен SUID, владелец имеет права чтения, записи и исполнения, группа и сторонние пользователи имеют права чтения и исполнения

chmod 6701 myfile

rws--S--x

Для файла установлены SUID и SGID, владелец имеет права чтения, записи и исполнения, группа не имеет никаких прав и сторонние пользователи имеют право исполнения

chmod 5765 myfile

rwsrw-r-t

Для файла установлены SUID и sticky, владелец имеет права чтения, записи и исполнения, группа имеет права чтения и записи и сторонние пользователи имеют права чтения и исполнения

Права доступа по умолчанию

При создании новых файлов и каталогов устанавливаются права доступа по умолчанию:

  •  для каталогов – 777 (rwxrwxrwx);
  •  для файлов – 666 (rw-rw-rw-).

Права доступа по умолчанию можно регулировать с помощью команды umask (англ. user file creation mode mask – пользовательская маска создания файлов). Пользовательская маска – это число, которое отнимается от прав доступа по умолчанию, а полученные в результате вычитания права применяются к создаваемому файлу (каталогу).

Единственный параметр команды umask – восьмеричное число, задающее атрибуты, которые не надо устанавливать новому файлу или каталогу. Заданная без параметров, эта команда выводит значение текущей установленной маски.

Права доступа файлов, созданных при конкретном значении umask, вычисляются при помощи следующих побитовых операций: побитовое И между унарным дополнением аргумента (используя побитовое НЕ) и режимом полного доступа.  

Например:

umask 027

Для каталогов вычислить получившиеся права просто: права доступа по умолчанию (777) минус значение маски (027) равно 750.

Для файлов эта процедура немного сложнее. Сначала запишем двоичное представление восьмеричного значения маски: 0278=0000101112 и прав доступа по умолчанию: 6668=1101101102.  Затем запишем унарное дополнение значения маски: 111101000 (получается инвертированием битов двоичного представления значения маски). А теперь выполняем побитовое умножение прав доступа по умолчанию и унарного дополнения значения маски:

Переводим результат в восьмеричную систему и имеем права доступа 640 или, в символьном представлении, rw-r-----.

Примеры:

umask 0 

файлы будут создаваться с правами доступа rw-rw-rw- (666), каталоги – с правами доступа rwxrwxrwx (777)

umask 022 

файлы будут создаваться с правами доступа rw-r--r-- (644), каталоги – с правами доступа rwxr-xr-x (755)

umask 077 

файлы будут создаваться с правами доступа rw------- (600), каталоги – с правами доступа rwx------ (700)


1 1 0 1 1 0 1 1 0

1 1 1 1 0 1 0 0 0

1 1 0 1 0 0 0 0 0

рава для владельца

права для группы

права для сторонних пользователей

специальные права доступа


 

А также другие работы, которые могут Вас заинтересовать

7983. Газораспределительный механизм в автомобилях 2.35 MB
  Введение Изобретенный более ста лет назад автомобиль прочно занял ведущее место в жизни человека. По мере развития техники он совершенствуется, становясь более сложной энергетической установкой мощностью от нескольких десятков до 1000 и более лошади...
7984. Разработка продольного профиля, плана трассы трубопровода и определение потребности в ресурсах на его строительство 315 KB
  Разработка продольного профиля, плана трассы трубопровода и определение потребности в ресурсах на его строительство Содержание Исходные данные. Область применения технологической карты. Расчет геометрических размеров траншеи. Расчет ...
7985. Элементы электрической цепи 259 KB
  Элементы электрической цепи Активными элементами являются источники электрической энергии. Они подразделяются на источники напряжения - условное обозначение на рисунке. Пассивные элементы - элементы, которые не являются источниками электри...
7986. Архитектура вычислительных сетей 1.49 MB
  В учебном пособии рассмотрены основные вопросы архитектуры построения вычислительных сетей, аппаратное и программное обеспечение компьютерных сетей. СОДЕРЖАНИЕ Введение Основы работы сети...
7987. Курс лекций по системе AutoCAD 2.86 MB
  Оглавление. Оглавление. Рисунки. Команды общего редактирования. Настройка программы Простейший шаблон Использовать шаблон Использование волшебника. Выбор мастера. Настройка размерных параметров. Настройка размерных стилей. Диаметр...
7988. Исследование надежности работы систем связи с подвижными объектами 82.5 KB
  Исследование надежности работы систем связи с подвижными объектами. ЦЕЛЬ ЗАНЯТИЙ Изучить особенности проектирования систем связи с подвижными объектами (ССПО). Определить на трассах распространения сигнала одного направления  медианные мощности...
7990. Обоснование мероприятий повышения окупаемости пассажирских перевозок с оптимизацией существующей маршрутной сети, структуры парка автобусов в городе Речице 2.93 MB
  Городской транспорт имеет решающее значение для экономики и жизненно важен для мобильности населения, однако элементарное отсутствие достаточных финансовых средств не позволяет управлять системой городского транспорта в ее нынешнем структурном виде и содержать ее.
7991. Разработка программного обеспечения модуля управления и отладки комплекса КИИБ 637 KB
  Комплекс успешно применяется в испытательной лаборатории «Безопасность и ЭМС технических средств» в течение пяти последних лет. Имеется положительный опыт испытаний устройств и систем на базе микроконтроллеров Microchip, Atmel