Изучение принципов организации файловой системы ОС UNIX на примере QNX, страница 5

od -td directory > od_file2.txt

echo "\n File removed. \n Difference:"

diff od_file1.txt od_file2.txt

mkdir directory/new_dir

od -td directory > od_file1.txt

echo "\n Directory created. \n Difference:"

diff od_file2.txt od_file1.txt

cp for_copy.txt ./directory/new_dir/for_copy_c.txt

od -td directory > od_file2.txt

echo "\n File created. \n Difference:"

diff od_file1.txt od_file2.txt

Результаты выполнения:

$ sh od_analyze

Directory created.

 File copied.

 Difference:

4c4,7

< 0000000060

---

> 0000000060 0000199618 0000000000 0000000096 0000000000

> 0000000100 0000917544 1601335142 2037411683 1949197151

> 0000000120 0000029816 0000001024

> 0000000130

 File renamed.

 Difference:

5,7c5,6

< 0000000100 0000917544 1601335142 2037411683 1949197151

< 0000000120 0000029816 0000001024

< 0000000130

---

> 0000000100 0000524320 1701603686 1954051118 1949197056

> 0000000120

 File removed.

 Difference:

4,6c4

< 0000000060 0000199618 0000000000 0000000096 0000000000

< 0000000100 0000524320 1701603686 1954051118 1949197056

< 0000000120

---

> 0000000060

 Directory created.

 Difference:

4c4,6

< 0000000060

---

> 0000000060 0000192436 0000000000 0000000096 0000000000

> 0000000100 0000458784 1601660270 0007498084 1949197056

> 0000000120

 File created.

 Difference:

3.5. Ознакомиться с содержимым файла /etc/passwd, /etc/shadow, утилитой /usr/bin/passwd, проанализировать права доступа к этим файлам.

В файле /etc/passwd хранится вся информация о пользователях. Это обычный текстовый файл, право на чтение которого имеют все пользователи, а право на запись только суперпользователь. Аналогичная информация о группах хранится в файле /etc/group.

Рассмотрим содержимое /etc/passwd.

$ cat /etc/passwd

root:x:0:0:Superuser:/root:/bin/sh

bin:x:1:1:Binaries Commands and Source:/bin:

daemon:x:2:2:System Services:/daemon:

mail:x:8:40:User Mail:/var/spool/mail:

news:x:9:50:Network News:/var/spool/news:

uucp:x:12:60:Network News:/var/spool/news:

ftp:x:14:80:FTP User:/home/ftp:

nobody:x:99:99:Nobody:/:

gr4081/1:x:100:100::40811:/bin/sh

gr4081/2:x:101:100::40812:/bin/sh

gr40812_9:x:102:100::/home/gr40812_9:/bin/sh

gr40811_9:x:103:100::/home/gr40811_9:/bin/sh

$

Первое поле это регистрационное имя пользователя, второе поле в некоторых системах это пароль в зашифрованном виде, но поскольку доступность пароля даже в зашифрованном виде может представлять некоторую угрозу для системы, то часто пароли хранятся в отдельном файле, а в /etc/passwd просто ставится символ x.

Третье поле – идентификатор пользователя в системе, четвертое – идентификатор первичной группы пользователя, четвертое поле - это комментарии (обычно это полное реальное имя пользователя, но бывает и дополнительная информация, например, телефон и т.д.).

В пятом поле выводится домашний каталог пользователя, в шестом – используемый интерпретатор.

Пароли пользователей в зашифрованном виде хранятся в файле /etc/shadow, закрытом для чтения и записи для обычных пользователей, однако доступном для суперпользователя.

$ cat /etc/shadow

/etc/shadow: Permission denied

Если зайти от root:

# cat /etc/shadow

mary:P6jp1YdbIG8.U:1291771333:0:0

Утилита /usr/bin/passwd позволяет менять пароли пользователей. Обычные пользователи могут поменять только свой пароль, при этом система потребует ввода старого пароля, ввода нового и подтверждения нового пароля. Если старый пароль введен неверно, то в изменении будет отказано.