os_lab3_kulnevx

advertisement
Нижегородский Государственный Технический
Университет им. Р.Е.Алексеева
Кафедра «Вычислительные системы и технологии»
Лабораторная работа №3 по
дисциплине: «Операционные системы»
Работа пользователя в Linux
Выполнил:
студент группы 10-В-2
Кульнев Андрей
Нижний Новгород
2013 год
Цель работы: Проделать все пункты, указанные в плане работы.
План работы:
1. Регистрация в системе.
Зарегистрироваться в системе. Изучить правила входа в систему и завершения работы (команды login, logout,
passwd, exit, shutdown, Ctrl+Alt+Del, Alt+Fn).
2. Основные информационные команды.
Научиться пользоваться диалоговым руководством man, ознакомиться с файлами HOW-TO в каталоге
/usr/doc/HOW-TO (при их наличии ).
3. Управление бюджетами пользователей.
В режиме суперпользователя выполнить команды who, id, logname, finger.
Создать новый бюджет командой adduser. Ознакомиться с файлами паролей /etc/passwd, /etc/shadow, составом
домашних каталогов и профилей пользователей /etc/skel/profile.
4. Работа с файловой системой.
Ознакомиться с командами mount, umount, df, mkfs, fsck.
С помощью команды df ознакомиться с разделами винчестера.
Выполнить монтирование файловой системы на дискете. Изучить описание автоматически монтируемых
файловых систем в файле /etc/fstab.
5. Управление файлами.
Изучить и опробовать:
-получение информации о файлах и каталогах; ls;
-команды файловых операций: cd, pwd, cp, mv, rm,mkdir, rmdir;
-создание прямой и символической ссылки ln;
-команды поиска find, вывода cat, tee, more, file;
-перенаправление потоков ввода-вывода (<,>,>>) и каналы (|);
-управление правами доступа: chmod, chown, chgrp;
-настройка различных прав доступа с проверкой возможных операций над файлами;
-утилиты группы mtools для работы файловой системой MS-DOS.
6. Управление заданиями.
Научиться запускать и управлять заданиями в оперативном и фоновом режимах. Команды jobs, ps, top, fg, bg,
kill, stop, at, Ctrl+Z.
7. Работа в оболочке MidnightCommander.
Структура и назначение основных каталогов файловой системы Linux.
8. Получение информации о системе и обзор средств центра управления KDE (Gnome).
Выполнение работы:
1. Регистрация в системе.
Зарегистрироваться в системе. Изучить правила входа в систему и завершения работы (команды login,
logout, passwd, exit, shutdown, Ctrl+Alt+Del, Alt+Fn).
Linux — система многопользовательская, а потому пользователь — ключевое понятие для организации всей
системы доступа в Linux. Когда пользователь регистрируется в системе (проходит процедуру авторизации,
например, вводя системное имя и пароль), он идентифицируется с учётной записью, в которой система
хранит информацию о каждом пользователе: его системное имя и некоторые другие сведения, необходимые
для работы с ним. Именно с учётными записями, а не с самими пользователями, и работает система.
В системе не могут быть зарегистрированы два пользователя имеющие одинаковые имена. Системные
утилиты, позволяющие регистрировать пользователей не допускают этого.
Имя пользователя в GNU/Linux может содержать разнообразные символы, однако в целях исключения
возможных конфликтных ситуаций с программным обеспечением и из соображений совместимости с другими
системами рекомендуется придерживаться следующих правил:
•
•
•
•
•
использовать буквы английского алфавита, цифры и символ подчеркиваний
избегать использования символа пробела
запрещено использовать символ двоеточия
следует избегать метасимволом(@,#,$ и т. д.)
не использовать специальные символы, например, символ табуляции
В ходе регистрации пользователя используются несколько программ. Самая важная из них —
демон init. Одна из его задач заключается в порождение процесса, обобщенно называемого getty, на
каждом термильном порте, который определен в файле /etc/inittab. Демон getty устанавливает
начальные характеристики порта и выводит на экран приглашение к регистрации. Он способен
обрабатывать запросы не только от виртуальных терминалов, а также от параллельных портов и
модемов.
Последовательность действий при регистрации такая:
1. Демон getty отображает содержимое файла /etc/issue, а также приглашение к регистрации
2. Пользователь вводит регистрационное имя в строке приглашения
3. Демон getty запускает программу login, передавая ей в качестве аргумента введенное имя
4. Программа login запрашивает пароль и сверяет его с записями в файле /etc/shadow
5. Программа login выводи на экран «сообщение дня», хранящаяся в файле /etc/motd и запускает
интерпритатор команд
6. Интерпритатор выполняет соответствующие сценарии конфигурации
7. Интерпритатор отображает на экране приглашение командной строки и переходи в режим
ожидания команд.
Когда пользователь выходит из системы, управление передается демону init, который пробуждается
и порождает заново процесс getty.
Процедура регистрации пользователя отображена на рисунке 1.
Рис. 1 Процедура регистрации пользователя
В UNIX пользователи должны себя идентифицировать при входе, что состоит из двух шагов:
 логин - имя, по которому пользователя идентифицирует система
 пароль - секретное слово для открытия счета
Стоит отметить, что в консольном режиме пароль при вводе не отображается. При вводе
неправильного пароля появляется сообщение: Login incorrect. После успешной регистрации в
системе появляется приглашение командной строки. Приглашение - это подсказка, выводимая
командной оболочкой и свидетельствующая о том, что система готова принимать команды
пользователя. Обычно в приглашении содержатся входное имя и имя хоста - в моем случае это
"andrew" и "andrew-laptop" соответственно. Заканчивается приглашение чаще всего символом "$".
Команды входа в систему и завершения работы
Команда login
Команда login. Является внешней командой, при её вызове интерпретатор вызывает команду
/bin/login.
/bin/login — начинает сеанс в системе
Синтаксис:
login [-p] [-h хост] [имя пользователя] [ПЕРЕМЕННАЯ_СРЕДЫ=ЗНАЧЕНИЕ]
login [-p] [-h хост] -f имя пользователя
login [-p] -r хост
Описание.
Программа /bin/login — используется для создания новой сессии в системе. Она обычно вызывается
автоматически в ответ на ввод логина пользователем в терминале. Login может быть оболочкой и не
вызываться как дочерний процесс. Когда login вызывается в качестве оболочки он должен быть
выполнен как exec login, потому что это заставит выйти пользователя из текущей оболочки. Попытка
выполнить login из любой оболочки, как оболочку выдаст сообщение об ошибке.
Параметры:
-f
-h
-p
-r
не выполнять аутентификацию, пользователь уже прошел проверку
имя удаленного хоста на который нужно зайти
сохранять среду
выполнить протокол autologin для rlogin
Команда logout и exit
Команда logout — является внутренней командой оболочки bash, которая завершает сценарий
работы пользователя в системе. Аналогично работает команда exit
Выйти из сеанса можно и с помощью комбинации клавиш Ctrl+D. Нажатие комбинации клавиш
Ctrl+D к закрытию текущего входного потока данных. В сущности, командная оболочка вводит
команды пользователя с консоли, как если бы она читала их построчно из файла. Нажатие Ctrl+D
сигнализирует ей о том, что этот "файл" закончился, и теперь ей неоткуда больше считывать
команды.
Команда passwd
passwd - изменяет пароль пользователя
Синтаксис: passwd [параметры] [LOGIN]
Описание:
Программа passwd изменяет пароли пользовательских учётных записей. Обычный пользователь
может изменить пароль только своей учётной записи, суперпользователь может изменить пароль
любой учётной записи. Программа passwd также изменяет информацию об учётной записи: полное
имя пользователя, регистрационную оболочку командной строки или дату устаревания пароля и
интервал. Команда запрашивает у обычных пользователей старый пароль (если он был), а затем
дважды запрашивает новый. После первого запроса проверяется, достаточен ли "возраст" старого
пароля. Возраст - это промежуток времени (обычно несколько дней), который должен пройти между
сменами пароля. Если возраст недостаточен, новый пароль отвергается и passwd завершается. Если
возраст достаточен, делается проверка на соответствие нового пароля техническим требованиям.
Когда новый пароль вводится во второй раз, две копии нового пароля сравниваются. Если они не
совпали, цикл запроса нового пароля повторяется, но не более двух раз.
Параметры
-a, --all
Этот параметр можно использовать только вместе с -S для вывода
статуса всех пользователей. Пример выполнения команды passwd –a –S отображен на рисунке
Рис. 2 Выполнение команды passwd –a -S
-d, --delete
Удалить пароль пользователя (сделать его пустым). Это быстрый способ
заблокировать пароль учётной записи. Это делает указанную учётную
запись беспарольной.
Удалим пароль у пользователя andrew (рис. 3)
Рис. 3 Удаление пароля у пользователя andrew
При следующем входе в систему под учетной записью andrew вводить пароль не потребуется
требуется.
-e, --expire
Немедленно сделать пароль устаревшим. В результате это заставит
пользователя изменить пароль при следующем входе в систему.
-h, --help
Показать краткую справку и закончить работу.
-i, --inactive ДНЕЙ
Этот параметр используется для блокировки учётной записи по
прошествии заданного числа дней после устаревания пароля. То есть,
если пароль устарел и прошло более указанных ДНЕЙ, то пользователь
больше не сможет использовать данную учётную запись.
-k, --keep-tokens
Указывает, что изменение пароля нужно выполнить только для
устаревших ключей аутентификации (паролей). Пользователи хотят
оставить свои непросроченные ключи нетронутыми.
-l, --lock
Блокирует пользователя. Эта опция отключает пароль изменяя на
значение, которое
может быть получено при шифровании. Добавляете «!» перед зашифрованным паролем.
не
-n, --mindays MIN_DAYS
Задать минимальное количество дней между сменой пароля. Нулевое
значение этого поля указывает на то, что пользователь может менять
свой пароль когда захочет.
-q, --quiet
Не выводить сообщений при работе.
-r, --repository РЕПОЗИТОРИЙ
Изменить пароль в РЕПОЗИТОРИИ.
-S, --status
Отображает информацию о статусах пользователей. Информация о статусе состоит из 7
полей. Первое поле — это имя пользователя. Второе поле
содержит идентификатор пароля
пользователя. Если пользователь заблокирован — L, если пользователь не имеет пароля — NP, и
если пароль есть, и он возможен для использования — P. Третье поле — дата последнего
изменения пароля. Следующие 4 поля содержат Минимальный
и
максимальные
сроки
использования аккаунта, период когда начать предупреждать пользователя об устаревании пароля,
и сроки действия
пароля. Допустим мы заблокировали пользователя andrew. Воспользуемся
командой passwd –S andrew для отображения информации о статусе пользователя (рис. 4).
Рис. 4 Отображение статуса пользователя andrew
Из рис. 4 видно что пользователь заблокирован.
-u, --unlock
Разблокирует уч. запись пользователя. Возвращает значение пароля к прежнему.
-w, --warndays ПРЕД_ДНЕЙ
Установить число дней выдачи предупреждения, перед тем как
потребуется смена пароля. В параметре ПРЕД_ДНЕЙ указывается число
дней перед тем как пароль устареет, в течении которых пользователю
будут напоминать, что пароль скоро устареет.
-x, --maxdays МАКС_ДНЕЙ
Установить максимальное количество дней, в течении которых пароль
остаётся рабочим. После МАКС_ДНЕЙ пароль нужно изменить.
К сожалению, для моей системы passwd не обладает большой системы оповещение пользователей,
поэтому на скриншотах не будет видно результатов действия команды, а будет только выдано
сообщение о изменение информации пользователя.
Выполним также команду passwd без параметров для смены пароля пользователя andrew (рис. 5).
Рис. 5 Смена пароля
Правила построения паролей
При создании паролей необходимо выполнять следующие требования:
 Пароль должен содержать не менее PASSLENGTH символов, как определено в файле
/etc/default/passwd. Значение PASSLENGTH должно быть не менее 3.
 Учитываются только первые восемь символов пароля.
 Пароль должен содержать не менее двух буквенных символов и одной цифры или
специального символа. В данном случае к буквенным символам относятся все прописные и
строчные буквы.
 Пароль должен отличаться от регистрационного имени пользователя и от любого слова,
получаемого циклическим или обратным сдвигом этого регистрационного имени.
Команда shutdown
shutdown - завершение работы системы перед выключением компьютера\
Синтаксис
shutdown <options> <time> <warning-massage>
Из опций программы shutdown наиболее часто используются две:
 -h — полная остановка системы (компьютер будет выключен);
 -r — перезагрузить систему.
Параметр time указывает время, когда должна быть выполнена команда (не обязательно выполнять
ее немедленно). Время можно указать в форме задержки от текущего момента.
Важный комментарий. Команда reboot завершает работающие процессы сигналом SIGTERM (15),
команда shutdown позволяет работающим сервисам самостоятельно завершить работу с помощью
прилагаемых init скриптов. Это позволяет корректно завершить работу, почистить кэш где нужно и
где это предусмотрено, выполнить какие либо промежуточные действия. Всегда используйте
shutdown вместо reboot.
Параметры:
-k Не выключать питание. Только отправить всем предупреждение.
-r Перезагрузить систему
-h Выключить питание
-P Остановить выключение питания.
-H Модифицирует -h флаг.
-c Отменить ожидание.
time когда выключить
warning message
сообщение отправляется пользователям.
Например если мы хотим выключить компьютер через 30 минут, то можно прописать shutdown –h 30
Комбинация клавиш [Ctrl][Alt][Fi]
Данная комбинация клавиш переключает на i-ый консольный терминал (i=1..6). Если i=7, то
производится переключение графический терминал.
Комбинация клавиш [Ctrl][Alt][Del]
Данная комбинация вызывает окно (рис. 6) , в котором можно выбрать один из трех вариантов:
Завершение работы, перезагрузка, спящий режим. Если ничего не выбирать, то система будет
автоматически выключена через некоторое время.
Рис. 6 Результат комбинации [Ctrl][Alt][Del]
2. Основные информационные команды.
Научиться пользоваться диалоговым руководством man, ознакомиться с файлами HOW-TO в
каталоге /usr/doc/HOW-TO (при их наличии ).
2.1 Диалоговое руководство man
Практически любая UNIX система имеет то, что называется "Руководство" man (“manual
pages”'). Эта команда man содержит документацию на различные команды системы, ресурсы,
конфигурационные файлы. Несомненно, в настоящее время необходимость знать консольные
команды не так остро нависает над пользователями. Если компьютер с установленным Linux
используется исключительно для выхода в интернет, редактирования документов, просмотра видео и
прослушивания музыки - проблемы, требующие владения консолью, вряд ли возникнут.
Использование справочной системы с помощью графических оболочек интуитивно понятно.
Система man не рассчитана на обучение, она предоставляет подробное описание команд и
конфигурационных файлов.
Для получение помощи необходимо вызвать команду man с аргументом — именем команды
или иного требуемого объекта.
Синтаксис:
man [-acdfFhkKtwW] [--path] [-m система ] [-p строка ] [-C файл_конфигурации ] [-M
список_путей ] [-P пейджер ] [-S список_разделов ] [раздел] имя ...
Опций:
 -C файл_конфигурации - указание файл конфигурации для использования; по умолчанию это
/etc/man.conf.
 -M путь - определяет список каталогов для поиска страниц руководства. Каталоги
разделяются двоеточиями. Пустой список каталогов равнозначен неупотреблению -M вовсе.










-P пейджер - назначить используемый пейджер. Это опция переназначает переменную
окружения MANPAGER, которая в свою очередь переназначает переменную PAGER. По
умолчанию, man использует /usr/bin/less -isR.
-S список_разделов - список разделов руководства разделённых двоеточиями, в которых
осуществляется поиск. Эта опция переопределяет переменную окружения MANSECT.
-a - по умолчанию после вывода первой найденной страницы руководства, man завершит
работу. Применение это опции вынудит man показать не только первую, а все страницы
справочника подходящие под заданное имя.
-c - переформатировать исходную страницу руководства, даже если существует актуальная
отформатированная страница. Это может понадобиться, если раньше страница была
отформатирована для экрана с другим количеством колонок, или повреждена.
-d - в действительности не показывает страницы справочника, но печатает отладочную
информацию как при осуществлении вывода страниц.
-D - показывает и страницу, и отладочную информацию.
-F - форматирование без отображения.
-h - выводит справку по опциям командной строки и завершает работу.
-K - поиск заданной строки во всех страницах справочника.
-m system - задание для поиска альтернативный набор страниц справочника, находящийся на
системе с указанным именем.
Допустим мне необходимо получить информацию о команде shutdown. Для этого я введу
“man shutdown” и на экране будут выведены страницы руководства по shutdown (рис. 7).
Рис. 7 Результат выполнения команды “man shutdown”
Нужно учесть что, не на все команды есть руководство. Некоторые страницы руководства еще
просто не написаны.
Сама по себе комаyда man не занимается отображение страниц помощи на экран. Она находит среди
всех страниц помощи нужную, форматирует её и передает программе постраничного просмотра,
используемой в системе по умолчанию. Обычно в GNU/Linux используется less.
Управление командой less:
Команда
Действие
<Ctrl>+<N>,<Down Arrow> Следующая строка
<Ctrl>+<P>,<Up Arrow>
Предыдущая строка
<Ctrl>+<V>,<PgDn>
Страница вниз
<Alt>+<V>,<PgUp>
Страница вверх
<Space>
Следующая страница
</>строка
Поиск подстроки вниз
<?>строка
Поиск подстроки вверх
<n>
Найти следующее вхождение искомой
подстроки
<q>
Выход
В Linux имеется множество файлов и команд с одинаковыми именами. Что бы можно было получить
именно то, что требуется пользователю, в систему man ввели разделение по секция, что позволяет не
путать, к примеру /etc/passwd и /bin/passwd.
Описание секций:
Секция
Информация
1
Описание команд пользователя
2
Описание системных вызовов
3
Описание библиотек
4
Информация о файлах устройств и иных специальных файлах
5
Форматы конфигурационных файлов
6
Помощь по играм
7
Макросы, кодировки, информация для программистов
8
Команды системного администрирования
9
Процедуры и функции ядра
Приведем пример вызова команды man с указанием секции для passwd. Результат команды man 1
passwd и man 5 passwd отображены на рисунках 8 и 9 соответственно.
Рис. 8 Результат команды man 1 passwd
Рис. 9 Результат команды man 5 passwd
Справочная страница содержит следующие типовые разделы:
NAME
SYNOPSIS
DESCRIPTION
OPTIONS
ENVIRONMENT
SEE ALSO
AUTHORS
BUGS
Имя команды (или объекта, для
которого вызвана справка)
Синтаксис вызова с перечнем
допустимых опций
Подробное описание команды
Перечень и описание допустимых
опций
Аспекты взаимодействия со средой,
окружением
Ссылки на смежные страницы
Сведения об авторах программы
Известные проблемы и
обнаруженные ошибки
Пути поиска страниц руководства
Для поиска страниц руководства, man использует составной метод, основанный на опциях
вызова и переменных окружения, файле настроек /etc/man.conf, а также некоторых встроенных
соглашениях и эвристике. Прежде всего, если имя аргумента передаваемого man содержит
наклонную черту (/), man принимает его как указание на файл, и не осуществляет поиск. Однако в
обычном случае, где имя не включает наклонной черты, man ищет в ряде каталогов файл,
содержащий страницы руководства для указанной темы.
Если вы зададите опцию -M список_путей, то список_путей это разделённый двоеточиями список
каталогов в которых man осуществит поиск. Если вы не укажите -M, но установите переменную
окружения MANPATH, man использует значение переменной как список каталогов для поиска. Если
вы не определите списка особых путей поиска с помощью -M или MANPATH, man осуществит
поиск по своему списку путей, основанному на содержании файла конфигурации /etc/man.conf.
Каталоги, заявленные в переменной MANPATH в конфигурационном файле, включаются в пути
поиска.
С помощью команды manpath определим пути поиска страниц руководства (рис. 10).
Рис. 10 Пути поиска страниц
Гипертекстовая справочная система info.
Организация справочной системы info — иерархическая, вся документация сведена в единое
дерево, в котором документы (так называемые ноды) являются узлами. Текст каждой ноды может
содержать гиперссылки на другие ноды.
Опробуем вызов команды info для команды shutdown, прописав info shutdown. Результат отображен
на рисунке 11.
Рис. 11 Результат выполнения команды info shutdown
На рисунке 11 видно, что командой info была вызвана страница из набора manpages. На верхней
строке отмечено название узла иерархического дерева (node) shutdown.
Команды apropos, whatis
apropos, whatis - поиск в базе данных по ключевому слову. Эти команды имеют следующий
синтаксис:
apropos ключевое слово
whatis ключевое слово
Команда аpropos ищет установленные в файлах базы данных краткие описания системных
команд по ключевому слову и выводит результат на стандартный вывод. Whatis показывает описание
только для полного имени команды. Опробуем эти команды на практике.
С помощью команды apropos найдем описание команды, соответствующей строке passwd. Результат
отображен на рисунке 12
.
Рис. 12 Результат команды apropos passwd
Произведем аналогичный поиск, но уже по полному названию команды при помощи whatis,
прописав whatis passwd. Результат отображен на рисунке 13.
Рис. 13 Результат команды whatis passwd
2.2 Файлы HOW-TO
Значительное количество информации находится в уже установленной системе (при
инсталляции по умолчанию) в виде так называемых страниц man, info и howto. Страницы howto - это
небольшие текстовые файлы, в которых описана последовательность действий для выполнения
конкретной задачи (например настройки модема или сетевой платы). В разных дистрибутивах howto
располагаются в разных местах, скорее всего это будут /usr/doc, /usr/local/doc или /usr/share/doc.
В моем случае, произведя поиск я не обнаружил файлов HOW-To.
3. Управление бюджетами пользователей.
В режиме суперпользователя выполнить команды who, id, logname, finger.
Создать новый бюджет командой adduser. Ознакомиться с файлами паролей /etc/passwd, /etc/shadow,
составом домашних каталогов и профилей пользователей /etc/skel/profile.
В операционной системе Linux существуют три типа пользователей:
- пользователь root
- системные (фиктивные) пользователи
- обычные пользователи
Каждому пользователю кроме имени присваивается числовой идентификатор пользователя (UID, User
IDentificator). Пользователь root имеет UID равный 0. Системные пользователи имеют идентификаторы от 1
до 499. Обычные пользователи имеют UID от 500. Для удобства управления доступом пользователей к
файлам системы пользователи объединяются в группы. Каждый пользователь входит хотя бы в одну группу.
Группе присваивается числовой идентификатор группы (GID - Group IDentificator). Когда пользователь
регистрируется в системе (проходит процедуру авторизации, например, вводя системное имя и
пароль), он идентифицируется с учётной записью, в которой система хранит информацию о каждом
пользователе.
Информация о пользователях хранится в файлах:
Файл
Описание
/etc/passwd
пользователи
/etc/group
группы пользователей
/etc/shadow
зашифрованные пароли пользователей
/etc/gshadow зашифрованные пароли групп
3.1 Ознакомиться с файлами паролей /etc/passwd, /etc/shadow, составом домашних каталогов и
профилей пользователей /etc/skel/profile.
Перед тем как выполнять команды who, if, logname и finger, а также перед созданием нового бюджета
пользователя, мы ознакомимся с файлами etc/passwd, /etc/shadow, составом домашних каталогов и
профилей пользователей /etc/skel/profile.
etc/passwd
Если рассуждать логически, управление пользователями должно начаться при их наличии, то есть вначале
нужно добавить пользователей в новую систему. Существует несколько способов для выполнения этой
задачи. Каждый из методов изменяет содержимое файла паролей /etc/passwd. Файл /etc/passwd содержит
список пользователей, которые известны системе. В процессе регистрации пользователя система обращается к
этому файлу в поисках идентификатора пользователя и его домашнего каталога. Каждая строка файла
описывает одного пользователя и содержит семь полей, разделенных двоеточиями.
Формат файла /etc/passwd практически един для всех диалектов Unix. Этот файл содержит строки
следующего вида, разделенные двоеточием:
username:password:UID:GID: full_name:home_dir:login_shell
username - имя пользователя
password - пароль
uid - уникальный идентификатор пользователя в пределах системы
gid - уникальный идентификатор группы в пределах системы, к которой принадлежит пользователь
uid comments - комментарий, расширенное описание пользователя, например, ФИО
home directory - домашний каталог пользователя
login_shell - имя программы - интерпретатора команд пользователя
Имя пользователя (username)— регистрационное имя пользователя, то есть логин. Желательно, хотя и не
обязательно, создавать пароли, каким-то образом ассоциирующиеся с определенными пользователями (с их
реальными именами). Это упрощает работу администратора, позволяя ему быстро по паролю распознавать
пользователя.
Поле пароля может быть представлено различным образом. Оно может быть пустым, указывая, что для
регистрации пользователя пароль не нужен. Оно может также содержать до 13 символов зашифрованной
версии пароля.
Идентификатор пользователя (User ID) — индивидуальный числовой идентификатор пользователя (UID).
Система обычно работает с UID, а не с именами пользователей. Идентификатор задается из диапазона
0…65534 и должен быть уникальным. Число 0 соответствует пользователю root. Желательно идентификаторы
назначать не произвольным образом, а системно. Например, выделить определенный интервал (1000…1100)
под одну группу пользователей, а еще один (2000…2100) — под другую группу. В каждом диапазоне
назначать идентификаторы последовательно. Это опять же упростит администрирование и позволит, бегло
взглянув на список процессов, сразу же определить кто чем занимается.
Идентификатор группы (Group ID) — числовой идентификатор первичной группы пользователя (GID).
Помимо первичной группы пользователь может входить или не входить в состав разных групп, но в
первичную группу (native group) он входит всегда. В различных дистрибутивах это выглядит по-разному.
Идентификатор группы 0 соответствует группе root.
Реальное имя пользователя (full name) — обычно представляет собой реальное (фактическое) имя
пользователя, например, ivan ivanov. Может содержать и другие данные: номер телефона и т.п. Эти сведения
используются в информационных целях.
Домашний каталог пользователя (home dir) — в качестве домашнего каталога обычно используется каталог
/home/<имя_пользователя> (например, /home/andrew). Без особых причин не рекомендуется изменять такую
организацию домашних каталогов.
Оболочка пользователя (login shell) — командный интерпретатор пользователя, который используется им по
умолчанию. Программа-оболочка (командный интерпретатор) запускается при входе пользователя в систему.
Примеры командных интерпретаторов: ash, bash, csh, fcsh, ksh.
Часть содержимого моего /etc/passwd приведена ниже.
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
syslog:x:101:103::/home/syslog:/bin/false
messagebus:x:102:107::/var/run/dbus:/bin/false
avahi-autoipd:x:103:110:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
avahi:x:104:111:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
couchdb:x:105:113:CouchDB Administrator,,,:/var/lib/couchdb:/bin/bash
speech-dispatcher:x:106:29:Speech Dispatcher,,,:/var/run/speech-dispatcher:/bin/sh
usbmux:x:107:46:usbmux daemon,,,:/home/usbmux:/bin/false
haldaemon:x:108:114:Hardware abstraction layer,,,:/var/run/hald:/bin/false
kernoops:x:109:65534:Kernel Oops Tracking Daemon,,,:/:/bin/false
pulse:x:110:115:PulseAudio daemon,,,:/var/run/pulse:/bin/false
rtkit:x:111:117:RealtimeKit,,,:/proc:/bin/false
saned:x:112:118::/home/saned:/bin/false
hplip:x:113:7:HPLIP system user,,,:/var/run/hplip:/bin/false
gdm:x:114:120:Gnome Display Manager:/var/lib/gdm:/bin/false
timidity:x:115:124:TiMidity++ MIDI sequencer service:/etc/timidity:/bin/false
andrew:x:1000:1000:Andrew,,,:/home/andrew:/bin/bash
vboxadd:x:999:1::/var/run/vboxadd:/bin/false
В первой записи указана учетная запись пользователя root. Как видно, идентификатор пользователя и
идентификатор группы пользователя для данной учетной записи совпадают и равны нулю. Затем следует
поле персональных данных, домашний каталог, которым является каталог
/root и командный интерпретатор пользователя - /bin/bash. Для пользователя Andrew UID=1000, GID=1000,
указанно реальное имя пользователя – Andrew, домашний каталог - /home/andrew/ и используемый
интерпретатор используемый по умолчанию /bin/bash.
Обычно вместо паролей ставится символ “x”, а пароли хранятся отдельно в файле `` /etc/shadow'', в котором
хранятся зашифрованные пароли и некоторая дополнительная информация о паролях. Файл /etc/shadow
доступен для чтения только root, что повышает защиту. Фиктивный интерпретатор команд (например,
/bin/false) не позволит кому-либо зарегистрироваться под таким псевдоименем.
/etc/shadow
Файл /etc/shadow доступен для чтения только пользователю root и предназначен для хранения
зашифрованных паролей. В нем также содержится учетная информация, которая отсутствует в файле
/etc/passwd. При использовании скрытых паролей соответствующие поля в файле /etc/passwd всегда содержат
символ «х». Оба файла необходимо сопровождать независимо друг от друга (или использовать команду
useradd для автоматического управления файлами). Как и /etc/passwd, файл /etc/shadow содержит одну строку
для каждого пользователя. Каждая строка состоит из 9 полей, разделенных двоеточиями:
имя пользователя;
зашифрованный пароль;
количество дней, прошедших с 1.01.1970 до последней смены пароля;
число дней до смены пароля (0 - может быть сменен всегда);
число дней, после которых пароль долже быть сменен (99999 - может не меняться вообще никогда)
число дней, в течение которых пользователь получает предупреждения о необходимости пароль
сменить;
7. число дней после окончания действия пароля, когда еще можно работать, после данного срока аккаун
будет заблокирован;
8. число дней, начиная с 1.01.1970, после которых пароль будет заблокирован;
9. зарезервировано
1.
2.
3.
4.
5.
6.
Пример содержание моего /etc/shadow:
root:$6$hSFXSl/F$KXq2TJaWImCk5ZrTmD01ftj3T7q/grcc97vuAivbkGfb4XHzlCu7t8Zx.MjiNn2Sdn7HRq6HSezb
3qzFwx65D.:15841:0:99999:7:::
daemon:*:14726:0:99999:7:::
bin:*:14726:0:99999:7:::
sys:*:14726:0:99999:7:::
sync:*:14726:0:99999:7:::
games:*:14726:0:99999:7:::
man:*:14726:0:99999:7:::
lp:*:14726:0:99999:7:::
mail:*:14726:0:99999:7:::
news:*:14726:0:99999:7:::
uucp:*:14726:0:99999:7:::
proxy:*:14726:0:99999:7:::
www-data:*:14726:0:99999:7:::
backup:*:14726:0:99999:7:::
list:*:14726:0:99999:7:::
irc:*:14726:0:99999:7:::
gnats:*:14726:0:99999:7:::
nobody:*:14726:0:99999:7:::
libuuid:!:14726:0:99999:7:::
syslog:*:14726:0:99999:7:::
messagebus:*:14726:0:99999:7:::
avahi-autoipd:*:14726:0:99999:7:::
avahi:*:14726:0:99999:7:::
couchdb:*:14726:0:99999:7:::
speech-dispatcher:!:14726:0:99999:7:::
usbmux:*:14726:0:99999:7:::
haldaemon:*:14726:0:99999:7:::
kernoops:*:14726:0:99999:7:::
pulse:*:14726:0:99999:7:::
rtkit:*:14726:0:99999:7:::
saned:*:14726:0:99999:7:::
hplip:*:14726:0:99999:7:::
gdm:*:14726:0:99999:7:::
timidity:*:14764:0:99999:7:::
andrew:$6$Sd8goBZv$RQwNkbVwBYDcX.kwcUEgI84/jnfP5PG71e29H8nHJxPp52RkJ7mlR96zlmmp5dD29OtvM
NlWZCjcdvJ/EVSwK/:15817:0:99999:7:::
vboxadd:!:15856::::::
У пользователей root и andrew в поле зашифрованный пароль находится большая последовательность
различных символов. Это и есть мой зашифрованный пароль. Зашифрованный пароль идентичен тому,
который ранее хранился в файле /etc/passwd; отображается пароль зашифрованный при помощи алгоритма
SHA-512, об этом на говорит префикс $6$
Состав домашнего каталога пользователя
/home - В этом каталоге размещены домашние каталоги пользователей. Linux является
многопользовательской системой и каждому пользователю присваивается имя и уникальный каталог для
персональных файлов. Файлы всех пользователей в Linux хранятся раздельно, у каждого пользователя есть
собственный домашний каталог, в котором он может хранить свои данные. Доступ других пользователей к
домашнему каталогу пользователя может быть ограничен. Информация о домашнем каталоге обязательно
должна присутствовать в учётной записи, потому что именно с него начинает работу пользователь,
зарегистрировавшийся в системе.
Домашний каталог содержит все пользовательские файлы : настройки, файлы конфигурации программ,
документы, данные, кэш браузера, почту, и т.д. Пользователь может создать подкаталоги в своем домашнем
каталоге, организованные по своему усмотрению. Другие пользователи не могут читать эти файлы или писать
в этот домашний каталог без разрешения пользователя .
Профайл пользователей /etc/skel/profile
Когда создается домашний каталог для нового пользователя, он инициализируется файлами из каталога
/etc/skel. Администратор системы может создавать файлы в /etc/skel , которые будут обеспечивать хорошую
заданную по умолчанию среду для пользователей. Например, он мог бы создавать конфигурацию
/etc/skel/.profile, которая устанавливает системную переменную EDITOR равной некоторому редактору,
который является дружественным к новым пользователям.
3.2 В режиме суперпользователя выполнить команды who, id, logname, finger.
В качестве привилегированного пользователя мы можем управлять процессом регистрации пользователей
в системе, в частности вводить и удалять бюджеты пользователей, а также группы. Бюджет пользователя
(user account) - это некоторая информация о пользователе, которая позволяет ему работать в системе. Обычно
это имя, пароль, группа, к которой принадлежит пользователь, идентификаторы пользователя и группы и т.д.
Кроме того, привилегированный пользователь имеет доступ к системным файлам инициализации,
позволяющим конфигурировать все пользовательские shell, и осуществляет контроль над стандартными
файлами инициализации, которые копируются в бюджет при его создании. С их помощью можно выполнять
начальную конфигурацию бюджетов пользователей.
Команда who
Команда who сообщает о том, какие пользователи в настоящий момент работают в системе. Указывается
устройство подключения, время начала сеанса, имя компьютера (если это удаленное подключение),
длительность простоя, а также принимаются ли сообщения утилит write и talk .
Синтаксис: who [ОПЦИИ]... [ФАЙЛ]
Если не указаны никакие опции, выводит листинг со следующей информацией о каждом пользователе
вошедшем в настоящее время в систему:
•
имя
•
терминал
•
время регистрации
•
имя дистанционного (удалённого) узла (localhost - для локально или X-дисплей (:0)
Опции:
 -b, --boot - время последней загрузки системы
 -d, --dead - выводит спящие процессы
 -H, --heading - выводит строку заголовка (шапку) для столбцов таблицы листинга
 -i, --idle - в листинге, после времени входа в систему, указывает количество часов:минут бездействия
пользователя в его терминале. Точка (.) в этом поле означает, что пользователь был активен в течение
последней минуты, а слово old (старый) - бездействовал более суток (опция -u).
 -l, --login - выводит системные процессы, ожидающие регистрации пользователей (т.е. свободные
терминалы)
 --lookup - пытается узаконить (канонизировать) имена узлов, найденные через DNS
 -m - выводит информацию о пользователе, связанном с текущим терминалом (о себе). Синоним
команды whoami.
 -p, --process - выводит активные процессы, порожденные программой init
 -q, --count - выводит только имена и количество зарегистрировавшихся пользователей
 -r, --runlevel - выводит информацию о текущем уровне выполнения (runlevel) для пользователя в
системе
 -s, --short - выводит только имя, терминал, время регистрации, имя дистанционного (удалённого) узла
(по умолчанию)
 -t, --time - если есть, то выводит информацию о последнем изменении времени в системе (см.
информацию о команде hwclock)
 -a, --all
эквивалент -b -d --login -p -r -t -T –u
 -T, -w, --mesg добавлять статус приема сообщений как +, - или ?

-u, --users
перечислить подключенных пользователей
Воспользуемся командой who без указания опций для вывода пользователей работающих в системе в
данный момент. Результат выполнения отображен на рисунке 14.
Рис. 14 Результат выполнения команды who без указания опций.
Воспользуемся командой who указав опцию –b для вывода информации о времени последней загрузки
системы. Результат выполнения отображен на рисунке 15
.
Рис. 15 Время последней загрузки системы
Как правило, команда who получает свои входные данные из файла /var/run/utmp. Аргумент ФАЙЛ может
задать другой файл с данными, например, /var/log/wtmp с информацией о завершенных сессиях результат
выполнения команды who с аргументом /var/log/wtmp :
andrew@andrew-laptop:~$ who /var/log/wtmp
root pts/1
2010-04-29 20:32 (:2.0)
root pts/3
2010-04-30 01:15 (:2.0)
root pts/1
2010-05-05 21:50 (:2.0)
root pts/1
2010-05-05 21:50 (:2.0)
root pts/1
2010-05-06 00:23 (:2.0)
root pts/1
2010-06-04 12:56 (:2.0)
root pts/1
2010-06-04 12:59 (:2.0)
andrew tty7
2013-04-22 11:33 (:0)
andrew pts/0
2013-04-22 11:36 (:0.0)
andrew tty7
2013-04-22 16:23 (:0)
andrew pts/0
2013-04-22 16:24 (:0.0)
andrew tty7
2013-05-08 16:26 (:0)
andrew tty1
2013-05-08 16:28
andrew tty1
2013-05-08 16:28
andrew tty2
2013-05-08 16:28
andrew tty2
2013-05-08 16:28
andrew tty4
2013-05-08 16:30
andrew tty4
2013-05-08 16:30
andrew tty7
2013-05-15 15:17 (:0)
andrew tty1
2013-05-15 15:19
andrew tty1
2013-05-15 15:19
andrew tty7
2013-05-16 18:31 (:0)
andrew tty7
2013-05-16 18:39 (:0)
andrew tty1
2013-05-16 18:44
andrew tty1
2013-05-16 18:44
andrew tty7
2013-05-16 18:47 (:0)
andrew pts/0
2013-05-16 18:48 (:0.0)
andrew tty7
2013-05-16 18:58 (:0)
andrew pts/0
2013-05-16 19:01 (:0.0)
andrew pts/1
2013-05-16 19:11 (:0.0)
andrew pts/2
2013-05-16 19:11 (:0.0)
andrew pts/3
2013-05-16 19:11 (:0.0)
andrew tty1
2013-05-16 19:18
andrew tty1
2013-05-16 19:18
andrew tty1
andrew tty1
root tty2
root tty2
andrew tty2
andrew tty2
root tty1
root tty1
andrew pts/0
andrew tty7
andrew tty1
andrew tty1
andrew pts/0
andrew pts/0
andrew tty7
andrew pts/0
andrew tty7
andrew pts/0
andrew tty7
andrew pts/0
andrew tty7
andrew pts/0
andrew pts/1
andrew tty7
andrew tty7
andrew pts/0
andrew tty1
andrew tty1
root tty1
root tty1
andrew tty7
root tty1
root tty1
andrew pts/0
2013-05-16 20:04
2013-05-16 20:04
2013-05-16 20:27
2013-05-16 20:27
2013-05-16 20:31
2013-05-16 20:31
2013-05-16 20:31
2013-05-16 20:31
2013-05-16 21:01 (:0.0)
2013-05-31 10:10 (:0)
2013-05-31 10:11
2013-05-31 10:11
2013-05-31 10:12 (:0.0)
2013-05-31 11:08 (:0.0)
2013-05-31 11:27 (:0)
2013-05-31 11:28 (:0.0)
2013-05-31 14:20 (:0)
2013-05-31 14:21 (:0.0)
2013-05-31 15:24 (:0)
2013-05-31 15:25 (:0.0)
2013-05-31 15:46 (:0)
2013-05-31 15:47 (:0.0)
2013-05-31 15:56 (:0.0)
2013-05-31 16:03 (:0)
2013-05-31 17:10 (:0)
2013-05-31 17:11 (:0.0)
2013-05-31 19:31
2013-05-31 19:31
2013-05-31 19:40
2013-05-31 19:40
2013-05-31 19:43 (:0)
2013-05-31 19:44
2013-05-31 19:44
2013-05-31 19:47 (:0.0)
Команда id
Команда id - выводит подлинные и действующие UIDы и GIDы
Синтаксис:
id [OPTION]... [USERNAME]
Эта команда выводит информацию об указанном пользователе USERNAME или текущем пользователе,
который запустил данную команду и не указал явно имя пользователя. По умолчанию выводятся подлинные
числовые идентификаторы пользователя (UID) и группы (GID), действующие (именные) идентификаторы
пользователей и групп, а также идентификаторы других групп, в которых состоит пользователь.
UID однозначно идентифицирует учетную запись пользователя в Linux. Используется для персонального
учета действий пользователя и определения прав доступа к другим объектам системы.
Опции команды:
 -g, --group - выводит только подлинный числовой идентификатор группы
 -G, --groups - выводит все подлинные числовые идентификаторы групп, в которых состоит
пользователь
 -n, --name - выводит действующие имена пользователей или групп.
 -r, --real - выводит подлинные числовые идентификаторы пользователей или групп.
 -u, --user - выводит только подлинный числовой идентификатор пользователя.
 --help - выводит помощь по этой команде и завершает работу
 --version - выводит информацию о версии команды и завершает работу
С помощью команды id получим информацию об UID и GID для пользователя Andrew и пользователя root.
Для этого набираем id Andrew и id root. Результат выполнения команды отображен на рисунке 16.
Рис. 16 Результат выполнения команд id Andrew и id root
Команда logname
Команда logname выводит имя текущего пользователя. Для нахождения имени используется файл
/var/run/utmp. Если в этом файле отсутствует элемент для вызвавшего процесса, выводится сообщение об
ошибке и программа завершается с кодом 1.
Синтаксис:
logname [OPTION]
Опции:
 --help - выводит описание опций программы и завершает её работу
 --version - выводит информацию о версии программы и завершает её работу
Воспользуемся командой logname для вывода имени текущего пользователя. Результат выполнения
программы отображен на рисунке 17.
Рис. 17 Результат выполнения команды logname
Команда finger
Команда finger возвращает информацию о пользователях, зарегистрированных в системе: системный
идентификатор, полное имя, терминал, время работы и номер телефона. Кроме того, finger отображает
информацию о пользовательском интерпретаторе командной строки, а также выводит содержимое файлов
.plan и .project, находящихся в домашнем каталоге пользователя. Информация может выводиться в длинном и
коротком форматах. Команда finger может производить поиск не только по системному идентификатору
пользователя, но также и по его имени или фамилии. Команда finger без аргументов выводит список
работающих в данный момент пользователей.
Синтаксис: finger [-lmsp] [пользователь ...] [пользователь@система''...]
Опции:
- s - вывести системное имя пользователя, реальное имя, имя терминала и статус записи (как символ ``*''
перед именем терминала, если доступ на запись закрыт), время простоя, время регистрации в системе и либо
рабочий адрес и телефон, либо имя удалённой системы.
Время регистрации отображается в виде названия дня недели, если с момента регистрации прошло меньше 6
дней, иначе в виде месяца и дня; часов и минут, если прошло меньше 6 месяцев, в противном случае вместо
часов и минут выводится год. Неизвестные устройства, так же как и несуществующие значения времени
простоя и регистрации, отображаются в виде одиночной звёздочки.
-l - Производит многострочный вывод, отображающий всю информацию, описанную для опции -s, а также
о домашнем каталоге пользователя, домашнем номере телефона, командной оболочке, наличии почты, и
содержании файлов .forward, .plan, .project и .pubkey из домашнего каталога пользователя.
-p -При использовании опции -l предотвращает помещение в вывод finger содержимого файлов .forward,
.plan, .project и .pubkey.
-m - Предотвращает для пользователь поиск по имени. Обычно пользователь является именем пользователя в
системе, однако поиск также будет произведён и по реальному имени пользователя, если не указана опция m. Поиск по имени, производимый утилитой finger, является регистронезависимым. Если не указано никаких
опций, finger использует стиль вывода опции -l в случае наличия операндов, и стиль опции -s в противном
случае. Если не указано никаких аргументов, finger выведет информацию по каждому
пользователю, зарегистрированному в системе на текущий момент. Утилита finger может использоваться для
поиска пользователей на удалённой машине. Аргумент пользователь в этом случае указывается в виде
``пользователь@система'', или ``@система'', при этом формат вывода по умолчанию в первом случае будет в
стиле опции -l, а во втором случае - в стиле -s.
Опция -l является единственной, которая может быть передана удалённой машине. Если в домашнем
каталоге пользователя присутствует файл .nofinger и команда не была запущена с привилегиями
суперпользователя, finger ведёт себя так, как если бы такой пользователь не существовал. В необязательном
файле конфигурации finger.conf могут быть указаны псевдонимы.
Поскольку finger вызывается из fingerd, псевдонимы будут работать как для локальных запросов, так и для
сетевых.
Воспользуемся командой finger и узнаем информацию о домашнем каталоге, имени пользователя, shell.
Результат выполнения команды finger отображен на рисунке 18.
Рис. 18 Результат выполнения команды finger –l
3.3 Создать новый бюджет командой adduser
Добавить учетную запись пользователя можно при помощи утилиты adduser. Создадим с помощью
adduser обычного пользователя.
Вводим в командной строке от имени суперпользователя: adduser user1. Далее заполняем необходимую
информацию в интерактивном режиме. Процесс создания пользователя user1 отображен на рисунке 19.
Рис. 19 Процесс создания пользователя
В результате происходит добавление нового пользователя. Ему присваивается UID = 1001, GID=1002,
создается домашний каталог /home/user, создается пароль, добавляется другая информация.
Результат создания отображен на рисунке 20.
Рис. 20 Результат создания нового пользователя user
Также можно произвести удаление учетной записи. Для этого нужно прописать userdel и имя пользователя.
При этом необходимо убедиться, что пользователь в этот момент не зарегистрирован в системе и что
нет процессов, запущенных от его имени. Необходимо помнить, что удаление учетной записи
происходит безвозвратно. Пропишем userdel –r user. Параметр –r указывает на необходимость
удалить домашний каталог и почтовый ящик. Результат удаления пользователя отображен на
рисунке 21.
Рис. 21 Результат удаления пользователя user
4. Работа с файловой системой.
Ознакомиться с командами mount, umount, df, mkfs, fsck.
С помощью команды df ознакомиться с разделами винчестера.
Выполнить монтирование файловой системы на дискете. Изучить описание автоматически
монтируемых файловых систем в файле /etc/fstab.
Простое описание системы UNIX, также применимое к Linux, заключается в следующем:
"В системе UNIX, все есть файл; а если что-то не файл, то это процесс". Это утверждение правда, т.к.
существуют специальные файлы, которые больше, чем просто файлы (именованные каналы и сокеты,
например), но для простоты допускают обобщение и говорят, что все есть файл. Система Linux, как и UNIX,
не делает никакой разницы между файлом и каталогом, так как каталог - это просто файл, содержащий имена
других файлов. Программы, службы, тексты, изображения и т.д. — все это файлы. В системе Linux устройства
ввода и вывода и вообще все устройства считаются файлами.
Виды файлов
Большинство файлов просто файлы, называемые обычными файлами; они содержат обычные данные,
например, текстовые файлы, исполняемые файлы (или программы), файлы ввода или вывода программ и т.д.
Хотя предположение, что все, что мы обнаруживаем в системе Linux представляет собой файл достаточно
верное, есть некоторые особенности.
Существуют следующие виды файлов:

Каталоги. Каталоги - это файлы, в качестве данных которых выступают списки других файлов и
каталогов. Именно в данных каталога осуществляется связь имени файла (словесного обозначения для
людей) с его индексным дескриптором (истинным именем-числом). Отсюда следует, что один и тот же
файл может существовать под разными именами и/или в разных каталогах: все имена будут связаны с
одним и тем же индексным дескриптором (механизм жестких ссылок). Также следует, что файлы
всегда содержаться в каталогах, иначе просто недоступны.

Обычные файлы. Сюда относятся все файлы с данными, играющими роль ценной информации сами
по себе. Linux все-равно текстовый перед ней файл или бинарный. В любом случае это будет обычный
файл.

Специальные файлы: механизм использования ввода-вывода. Большинство специальных файлов
находятся в /dev. Они используются для обозначения физических устройств компьютера. Например,
файл /dev/console - соответствующий консольному терминалу. Все, что выводится в файл /dev/console,
будет просто появляться на экране терминала. При попытке чтения из файла /dev/console, вы будете
получать то, что вводится с клавиатуры.
Специальные файлы бывают двух типов:
1) блочные - запись и чтение допускаются только блоками. Например, разделы дисков с
файловой системой являются таковыми.
2) Символьные (бесструктурные, сырые, row) - можно читать и писать отдельными байтами. К
ним относятся терминалы, неформатированные диски и разделы дисков без файловой
системы.


Понятия "размер" у специального файла не существует. Ведь этот файл обозначает физическое
устройство. Фактически, это ссылка на соответствующий драйвер. Вместо длины, команда ls
показывает для таких файлов два числа: "мажорный" и "минорный" номера устройств. Будем считать
для ясности, что "мажор" это порядковый номер драйвера устройства, а "минор" - внутренний номер
устройства в таблице обслуживающего его драйвера.
Ссылки: механизм обеспечения видимости файла или каталога во множестве частей файлового дерева
системы.
(Домены) сокеты: особый тип файла, подобный сокетам TCP/IP, обеспечивающий взаимодействие в
сети процессов, защищенных контролем файловой системы на доступ.

Именованные каналы: действуют более или менее похоже на сокеты и обеспечивают способ
коммуникации между процессами без использования правил поведения сетевых сокетов.
Разделы
Может показаться странным, что Linux использует более чем один раздел на одном диске, даже когда
выполняется стандартная процедура установки; для этого должно быть какое-то объяснение.
Одной из целей разделения на разделы является повышение сохранности данных на случай непредвиденных
происшествий. Путем разделения жесткого диска на разделы, данные могут быть сгруппированы и
разобщены. Когда происходит авария, повреждаются данные только одного раздела, а данные других
разделов скорее всего уцелеют.
Этот принцип датируется теми днями, когда у Linux не было журналируемой файловой системы и сбои
питания могли привести к катастрофе. По причинам обеспечения надежности и безопасности использование
разделов осталось, так нарушение одной части системы, автоматически не означает, что весь компьютер в
опасности. В настоящее время это самая важная причина для разметки.
Схемы и типы разделения
Есть два вида основных разделов в системе Linux:
 раздел с данными: обычные данные системы Linux, включая корневой раздел, содержащий все данные
для старта и запуска системы; и
 раздел подкачки: расширение физической памяти компьютера, представляет собой дополнительную
память на жестком диске.
Большинство систем содержат корневой раздел, один или несколько разделов с данными, и один или
несколько разделов подкачки. Системы в смешанных средах, могут содержать разделы данных других систем,
такие как разделы файловых системам FAT или VFAT с данными MS Windows.
Стандартный корневого раздела (обозначается одиночной косой чертой, /), составляет около 100-500 МБ и
содержит системные конфигурационные файлы, большинство основных команд и серверные программы,
системные библиотеки, некоторое временное пространство и домашний каталог пользователя с правами
администратора.
Пространство для подкачки (обозначается как swap) доступно только для самой системы, и скрыто из виду
при обычной работе. Раздел подкачки - это механизм, который обеспечивает, как и на обычных системах
UNIX, продолжение вашей работы, что бы ни случилось. Из-за этой дополнительной памяти в Linux вы
практически никогда не увидите раздражающих сообщений типа "Недостаточно памяти, пожалуйста
закройте сначала некоторые приложения и попробуйте еще раз". Процедура подкачки или виртуальной
памяти давно принята операционными системами уже вне мира UNIX.
Во многих дистрибутивах ядро находится на отдельном разделе, поскольку это самый важный файл
системы. Если это так, вы увидите, что у вас также есть раздел /boot, содержащий ваше ядро (ядра) и
сопутствующие файлы данных.
Остаток жесткого диска(ов) обычно делится на разделы данных, хотя может быть, что все не критичные для
системы данные будут находиться на одном разделе, например, при выполнении стандартной установки
рабочей станции. Когда некритичные данных разделяется на несколько разделов, то обычно это происходит
по следующему принципу:
 раздел для пользовательских программ (/usr)
 раздел, содержащий персональные данные пользователей (/home)
 раздел для хранения временных данных, таких как очереди печати и почты (/var)
 раздел для дополнительного программного обеспечения (/opt)
После того как разделы сделаны, можно только добавить дополнительные. Изменение размеров или свойств
существующих разделов возможно, но не рекомендуется.
Схема файловой системы
Для удобства файловая система Linux обычно представляется в виде древовидной структуры. В
стандартной системе Linux можно обнаружить подобный перечень и расположение, как на схеме приведенной
на рисунке 22.
Рис. 22 Древовидная структура файловой системы linux
Это схема из системы RedHat. В зависимости от системного администратора, операционной
системы и назначения UNIX-машины, структура может меняться, и каталоги по желанию могут быть
опущены или добавлены. Даже не обязательно соответствие имен, они лишь соглашение.
Дерево файловой системы начинается со слэша, обозначаемого наклоненной вперед косой чертой
(/). Это каталог, содержащий все основные каталоги и файлы, также называется корневой
директорией или "корнем" файловой системы. В таблице 1 представлены подкаталоги корневого
каталога.
Таблица 1 - Подкаталоги корневого каталога
/bin
/boot
/dev
/etc
/home
/initrd
/lib
Общие программы для совместного использования системой, системным
администратором и пользователями.
Загрузочные файлы и ядро, vmlinuz. В некоторых последних дистрибутивах также
данные grub. Grub – это большой единый загрузчик, который представляет собой
попытку избавиться от многих различных загрузчиков известных нам на сегодняшний
день.
Содержит ссылки на все периферийные устройства, которые представлены файлами с
особыми свойствами.
Большинство важных системных файлов конфигурации находятся в/etc, этот каталог
содержит данные, аналогичные тем что в Панели Управления Windows
Домашние каталоги обычных пользователей.
(в некоторых дистрибутивах) Информация для загрузки. Не удаляйте!
Файлы библиотек, включает файлы для всех разновидностей программ, необходимых
системе и пользователям.
/lost+found Каждый раздел имеет lost+found в его верхней директории. Здесь находятся файлы,
которые были спасены во время сбоев.
/misc
Для разных целей.
/mnt
Стандартные точки монтирования для внешних файловых систем, например, CD-ROM'а
или цифровой камеры.
/net
Стандартные точки монтирования для удаленных файловых систем
/opt
Как правило, содержит дополнительное ПО и ПО третьих сторон.
/proc
Виртуальная файловая система, содержащая информацию о системных ресурсах. Более
подробная информация о назначении файлов в proc можно получить, введя
команду man proc в окне терминала. Файл proc.txt рассматривает виртуальную
файловую систему в деталях.
/root
Домашняя директория администратора. Помните о разнице между / (корневым
каталогом) и /root (домашним каталогом пользователяroot).
/sbin
Программы для использования системой и системным администратором.
/tmp
Временное место для использования системой, которое очищается после перезагрузки,
так что не используйте ее под сохранение какой-нибудь работы!
/usr
Программы, библиотеки, документация и т.д. для всех пользовательских программ.
/var
Место хранения всех изменяемых и временных файлов, созданных пользователями,
такие как log-файлы, почтовые очереди, место для временного хранения файлов,
загружаемых из Интернета, или сохранения образа CD перед записью.
Файловая система в реальности
Для большинства пользователей, и для большинства обычных задач системного администрирования,
приемлемо допускать, что файлы и каталоги организованы в древовидную структуру. Однако компьютер
ничего не понимает о деревьях или древовидных структурах.
Каждый раздел имеет свою собственную файловую систему. Представляя все эти файловые системы
вместе, мы можем говорить о древовидной структуре всей системы, но все не так просто. В файловой
системе, файл представлен с помощью inode (индексного дескриптора), своего рода серийного номера,
содержащего информацию о данных этого файла: кому принадлежит этот файл, и где он находится на
жестком диске.
Каждый раздел имеет свой собственный набор индексных дескрипторов; на всей системе с несколькими
разделами могут существовать файлы с одним и тем же номером индексного дескриптора.
Каждый inode описывает структуру данных на жестком диске, хранит информацию о свойствах файла, в
том числе физическое местоположение его данных. Когда жесткий диск назначается для хранения данных
(обычно во время начала процесса установки системы или при добавлении дополнительных дисков к
существующей) в разделе создается определенное количество индексных дескрипторов. Этот число будет
максимальным количеством файлов всех типов (в том числе каталогов, специальных файлов, ссылок и т.д.),
которые могут существовать в одно и то же время на данном разделе. Как правило, мы рассчитываем на 1
inode от 2 до 8 килобайт памяти.
Во время создания нового файла, он получает свободный inode. В этом индексном дескрипторе
содержится следующая информация:
 Владельца и группа-владелец файла.
 Тип файла (обычный, каталог, ...)
 Разрешения на файл (Раздел "Права доступа: первая линия обороны Linux")
 Дата и время создания, последнего открытия и изменения.
 Дата и время, когда эта информация была изменена в индексном дескрипторе.
 Количество ссылок на этот файл.
 Размер файла
 Адрес, определяющий фактическое расположение данных файла.
Виртуальная файловая система /proc
В ОС Linux виртуальная файловая система /proc содержит файлы с текущей информацией о
процессах и системе в целом. Файловая система создается в оперативной памяти компьютера в
процессе загрузки и используется в качестве интерфейса обмена данными со структурами ядра.
Использование файлов /proc/* в большинстве случаев позволяет избавиться от необходимости
чтения и записи в устройство /dev/kmem. Большинство расположенных в структуре /proc файлов
доступны пользователям только для чтения, а для записи требуют полномочий root.
Для поддержки виртуальной файловой системы /proc при компиляции ядра должна быть
включена опция /proc file system support.
Файловая система /proc содержит множество каталогов с численными именами – эти каталоги
создаются для каждого запущенного в системе процесса. Имя каталога определяется
идентификатором (PID) соответствующего процесса. Каждый из таких каталогов содержит ряд
подкаталогов файлов, кратко описанных ниже.
Использование общепринятых имен основных файлов и структуры каталогов существенно облегчает
работу в операционной системе, ее администрирование и повышает переносимость. Типичную
структуру и назначение каталогов файловой системы UNIX я представлю в виде таблицы.
Команда mount
Данная команда монтирует файловую систему.
Монтирование — это подключение в один из каталогов целой файловой системы, находящейся
где-то на другом устройстве. Для монтирования необходим пустой каталог — он называется точкой
монтирования. Точкой монтирования может служить любой каталог.
Операция монтирования состоит из нескольких этапов:
1. Определение типа монтируемой системы
2. Проверка целостности монтируемой системы
3. Считывание системных структур данных и инициализация соответствующего модуля
файлового менеджера (драйвера файловой системы)
4. Установка флага, что система смонтирована. При корректном размонтировании этот флаг
сбрасывается, если при загрузке система определяет, что он не сброшен, значит работа
завершена некорректно и возможно ФС нуждается в починке.
5. Включение новой файловой системы в общее пространство имен.
Синтаксис команды mount:
mount [-lhV]
mount -a [-fFnrsvw] [-t тип_ФС] [-O список_параметров]
mount [-fnrsvw] [-o параметры [,...]] устройство | каталог
mount [-fnrsvw] [-t тип_ФС] [-o параметры] устройство каталог
Параметры
 -V - выводит информацию о версии программы.
 -h - выводит подсказку.
 -v - подробно информирует о выполняемых действиях.
 -a - монтирует все файловые системы указанного типа, описания которых содержатся в файле
/etc/fstab.
 -F - позволяет подключать файловые системы на различных устройствах или на серверах NFS
параллельно. Это благоприятно сказывается на производительности; также параллельно
обслуживаются тайм-ауты NFS.
 -f - пытается делать все возможное для выполнения системного вызова; если это невозможно,
тогда создаётся видимость успешного выполнения монтирования файловой системы. Этот
параметр полезен в сочетании с -v , чтобы отследить попытки, предпринимаемые командой
mount .
 -l - к выводу информации добавляет описания файловых систем ext2, ext3 и XFS. Для работы
этого параметра, монтирование должно разрешать операцию чтения дискового устройства
(т.е. активизирован suid root).



-n - монтирует без записи в /etc/mtab. Необходимость в этом возникает когда, например, /etc
находится на файловой системе с режимом доступа "только для чтения".
-s - избегая аварийного завершения, допускает даже неподходящие параметры монтирования.
При этом параметры, не поддерживаемые файловой системой, будут проигнорированы.
-r - монтирует файловую систему в режиме "только для чтения".
Пример: Опробуем команду mount.
Операция монтирования предполагает присоединение дерева каталогов, находящегося на
устройстве памяти, к указанному пользователем каталогу. Лишь после этого можно перейти в
присоединенный каталог и обращаться к его файлам.
Наиболее часто встречающаяся форма команды mount выглядит следующим образом:
mount -t vfstype device dir
1. Подключим флеш накопитель к компьютеру.
2. В меню виртуальной машины virtual machine подключим этот накопитель к виртуальной
ОС.
3. При подключении накопителя был создан файл устройства /dev/sdb1. Смонтируем его в
папку /home/andrew/FlashD.
Для этого пропишем mount /dev/sdb1 /home/andrew/FlashD,
предварительно создав каталог FlashD. Чтобы проверить результат введем ls /home/andrew/FlashD.
Результат и проделанные действия отображены на рисунке 23.
Рис. 23 Результат монтирования
Теперь флэш накопитель доступен для работы через указанную директорию. Это
демонстрируется выводом файлов с накопителя с помощью команды ls.
Команда umount
Команда umount отключает файловые системы от иерархического дерева каталогов. Файловая
система указывается или по имени каталога, к которому она была подключена, или по имени
специального устройства, на котором она размещена. Однако последний подход является
устаревшим и может не сработать, в основном в тех случаях, когда специальное устройство
одновременно смонтировано в несколько каталогов.
Следует отметить, что файловая система не может быть размонтирована, если в настоящий
момент она "занята" или используется, а именно: на ней есть открытые файлы, некоторые процессы
имеют там рабочие каталоги или на ней размещён файл подкачки (swap).
Синтаксис:
umount [-hV]
umount -a [-dflnrv] [-t тип_vfs] [-O параметры]
umount [-dflnrv] каталог | устройство [...]
Параметры:








-V - вывести информацию о версии программы и завершить работу.
-h - вывести справку о программе, её параметрах и завершить работу.
-v - подробно комментирует происходящее.
-n - размонтировать без регистрации событий в файле /etc/mtab.
-r - если размонтирование выполнить не удалось, пытается перемонтировать файловую
системы в режим "только для чтения".
-d - если размонтируемое устройство являлось петлевым (loop), тогда освобождает его.
-t тип_vfs - требует выполнение действий лишь для файловых систем указанного типа
тип_vfs. Вообще тип_vfs является списком файловых систем, разделённых запятыми. Этот
список может начинаться с префикса no для указания файловых систем, на которые не
распространяются никакие действия.
-O параметры - действия будут выполнены лишь для тех файловых систем, для которых в
/etc/fstab указаны заданные параметры. Кортеж из нескольких параметров подряд может быть
указан через запятую. Этот список может содержать префикс no, что предпишет не выполнять
действий над файловой системой, имеющую в /etc/fstab заданный параметр.
Продемонстрируем размонтирование смонтированной ранее файловой системы на устройстве
/dev/sdb1. Для этого пропишем umounts /dev/sdb1 /home/andrew/FlashD и проверим результат
командой ls /home/andrew/FlashD/. Результат проделанных операций отображен на рисунке 24.
Рис. 24 Результат размонтирования
После данных операций видно, что каталог FlashD является пустым.
Команда df
Команда df выдаёт отчёт о доступном и использованном дисковом пространстве на файловых
системах. При запуске без аргументов df выдаёт отчёт по доступному и использованному
пространству для всех смонтированных файловых систем (всех типов) рис. 25.
Рис. 25 Результат команды df без аргументов
Синтаксис:
df [опции] [файл...]
Опции:

-a, --all - включает в список файловых систем те, которые имеют размер в 0 блоков, и которые по


умолчанию опускаются. Такие файловые системы обычно являются псевдо-файловыми системами
специального назначения. Кроме того, только если задана эта опция, будут показаны файловые
системы типа "ignore" или "auto", которые поддерживаются некоторыми операционными системами.
-B, --block-size=size - выдаёт размеры в блоках размера байт.
-h, --human-readable - добавляет к каждому размеру букву, например M для мегабайт
Результат выполнения команды df -h отображен на рисунке 26.
Рис. 26 Результат выполнения команды df -h


-H, --si - делает то же, что и опция -h, но использует официальные SI единицы измерения (где для
расчётов используется 1000 вместо 1024 и, таким образом, M~-- это 1000000, а не 1048576).
-i, --inodes - вместо информации о блоках выдаётся информация об использовании inode'ов в файловой
системе. Inode содержит информацию о файле: владелец, права доступа, временные штампы и
местоположение на диске.
Результат выполнения команды df –i отображен на рисунке 27.
Рис. 27 Результат выполнения команды df –i






-k, --kilobytes - при выводе устанавливает размер блока в 1024 байт.
-l, --local - выводит только данные о локальных файловых системах.
-m, --megabytes - при выводе устанавливает размер блока в двоичный мегабайт (1048576 байт).
Отмечу, что четыре опции -h, -H, -k, -m носят взаимоисключающий характер и фактически будет
работать только последняя, указанная в командной строке; например, если заданы одновременно
опции --si и -m, то в результате при выводе размер блока будет установлен в мегабайт (1048576 байт).
-P, --portability - использовать формат вывода по стандарту POSIX. Он такой же, как формат по
умолчанию, только информация о каждой файловой системе всегда выводится на одной строке; имя
смонтированного устройства никогда не помещается на отдельную строку. Это приводит к тому, что
если длина имени смонтированного устройства больше, чем 20 символов, то колонки не
выравниваются.
-t тип-файловой-системы, --type=тип-файловой-системы - показывать только файловые системы с
указанным типом-файловой-системы. Можно задать несколько типов файловых систем, если
использовать несколько опций -t. По умолчанию никакие типы файловых системы не опускаются.
-T, --print-type – печатать тип файловой системы. Тип берётся от операционной системы (и
определяется системно-зависимым способом, например посредством чтения файла /etc/mtab).
Результат выполнения команды df –T -H отображен на рисунке 28.
Рис. 28 Результат выполнения команды df –T -H

-x тип-файловой-системы, --exclude-type=тип-файловой-системы - не показывать файловые системы с
заданным типом-файловой-системы. Можно задать несколько типов файловых систем, если
использовать несколько опций -x . По умолчанию никакие типы файловых систем не опускаются.
Команда mkfs
mkfs создаёт новую файловую систему Linux.
Синтаксис:mkfs [ -V ] [ -t fstype ] [ fs-options ] filesys [ blocks ]
Команда mkfs используется для создания файловой системы Linux на некотором устройстве, обычно в разделе
жёсткого диска. В качестве аргумента filesys для файловой системы может выступать или название устройства
(например, /dev/hda1, /dev/sdb2) или точка монтирования (например, /, /usr, /home). Аргументом blocks
указывается количество блоков, которые выделяются для использования этой файловой системой. По
окончании работы mkfs возвращает 0 - в случае успеха, а 1 - при неудачной операции.
Параметры:
 -V - подробно информирует происходящее, включая все выполняемые специфические команды
файловой системы. Если указать этот параметр более одного раза, то это запретит реальное
выполнение любых специфических команд файловой системы. Использовать этот параметр
целесообразно во время тестирования.
 -t fstype - указывает тип создаваемой файловой системы. Если этот параметр не указан, тогда, по
умолчанию, принимается тип файловой системы ext2.
 fs-options - передаёт модулю создания специфической файловой системы параметры в виде списка.
Следует отметить, что нет гарантии в том, что следующие перечисленные параметры будут
поддерживаться большинством модулей создания файловых систем.
 -c - перед созданием файловой системы проверяет наличие сбойных блоков на устройстве.
 -l filename - считывает список сбойных блоков из указанного файла filename. Для составления
подобного списка, можно выполнить предварительную проверку, например, с помощью программы
badblocks.
 -v - подробно комментирует происходящее.
В качестве примера создадим файловую систему ext3 на флеш диске. Флешка подключена.
Для этого пропишем mkfs –V –t ext3 /dev/sdb1. Результат отображен на рисунке 29.
Рис. 29 Результат выполнения команды «mkfs –V –t ext3 /dev/sdb1»
Команда Fsck - команда UNIX, которая проверяет и устраняет ошибки в файловой системе. Fsck
используется для проверки файловых систем и для исправления ошибок файловой системы, если они
будут обнаружены. Основное требование при проверки файловой системы: файловая система
должна быть размонтирована. Запуск fsck для уже смонтированной файловой системы может
привести к ее разрушению. К счастью, при запуске fsck на смонтированной файловой системе,
программа выдаёт предупреждение.
Синтаксис: fsck [options] [filesystem]
filesys может быть именем устройства (например, /dev/sda7), точкой монтирования этого блочного
устройства (/, /mnt/sda7 и т. д.), меткой раздела или UUID-индексом. Обычно fsck параллельно
проверяет данные на разных физических дисках, чтобы сократить общее время, необходимое для
полной проверки всех дисков.
Если файловых систем не указано и не указана опция -A, то fsck по порядку проверит файловые
системы, указанные в /etc/fstab. Это эквивалентно опции -As.
Код, возвращаемый fsck, является суммой следующих условий:
 0 — нет ошибок
 1 — ошибки файловой системы исправлены
 2 — необходима перезагрузка системы
 4 — ошибки файловой системы не исправлены
 8 — в процессе проверки произошли ошибки
 16 — неверное использование команды либо синтаксическая ошибка
 32 — fsck была прервана пользователем
 128 — ошибка разделяемых объектов
Воспользуемся командой fsck /dev/sdb1. Но перед этим размонтируем sdb1. Результат отображен на
рисунке 30.
Рис. 30 Результат выполнения команды fsck /dev/sdb1
Файл /etc/fstab
fstab - один из конфигурационных файлов в UNIX-подобных системах, который содержит
информацию о различных файловых системах и устройствах хранения информации компьютера;
описывает, как диск (раздел) будет использоваться или как будет интегрирован в систему.
Полный путь к файлу — /etc/fstab.
Каждая запись имеет следующие поля (которые разделяются пробелом или табуляцией):
<file system>
<dir> <type> <options> <dump> <pass>
 Поле, <file system> (файловая система) сообщает демону монтирования файловых систем
mount, что монтировать, имя монтируемого устройства.
 Второе поле, <dir> (директория), определяет куда монтировать <file system>.
 Поле <type> (тип) содержит тип файловой системы монтируемого устройства. Полный
список поддерживаемых систем можно просмотреть выполнив команду: man mount
 Следующее поле называется <options> (опции). Для полного их списка опций используется
команда man mount.
Список опций отображен в таблице ниже:
auto
Файловая система монтируется при загрузке автоматически или после выполнения
команды 'mount -a'.
noauto Файловая система может быть смонтирована только вручную.
Это опция установлена по умолчанию. Она позволяет вам исполнять бинарные файлы на
этом разделе диска.
noexec Бинарные файлы не выполняются. Никогда не используйте эту опцию на вашей корневой
системе!
ro
Монтирует файловую систему только для чтения
rw
Монтирует файловую систему для чтения/записи
sync
Все операции ввода/вывода должны выполняться синхронно
async
Все операции ввода/вывода должны выполняться асинхронно
user
Разрешает любому пользователю монтировать файловую систему. Применяет опции
noexec, nosuid, nodev, если они не переопределены.
nouser Только суперпользователь может монтировать файловую систему. Это опция используется
по умолчанию.
defaults Использовать значения по умолчанию. То же самое, что и rw, suid, dev, exec, auto, nouser,
async.
suid
Разрешить операции с suid и sgid битами. В основном используются, чтобы позволить
пользователям выполнять бинарные файлы со временно приобретёнными привилегиями
для выполнения определённой задачи.
nosuid Запрещает операции с suid и sgid битами.
nodev
Данная опция предполагает, что на монтируемой файловой системе не будут созданы
файлы устройств (/dev). Корневой каталог и целевая директория команды chroot всегда
должны монтироваться с опцией dev или defaults.
noatime Отключить возможность получения информации о последнем доступе/изменении файла.
exec
Поле <dump> используется утилитой dump для того чтобы решить, когда делать резервную
копию. dump проверяет это поле и использует число, чтобы решить, надо ли делать резервную
копию. Возможные значения поля — 0 и 1. Если 0, то dump игнорирует файловую систему,
если 1, то dump сделает резервную копию. Для большинства разделов в данном поле
записывается 0.
 Последнее поле — <pass> (пропуск). fsck проверяет число, подставленное в поле <pass> и
решает, в каком порядке проверять файловую систему. Возможные значения 0, 1 и 2.
Файловые систему со значением <pass>, равным 0, не будут проверены утилитой fsck. У
корневой системы должен быть наибольший приоритет, 1, остальные файловые системы
должны иметь приоритет 2.
Вместо указания имени устройства, можно указать UUID или метку тома, написав LABEL=<label>
или UUID=<uuid>, например, `LABEL=Boot' или `UUID=6e3e9905-46ab-4992-b2bc-136cbfe3ef3c'.
Содержимое моего файла /etc/fstab отображено на рисунке 31.

Рис. 31 Содержимое моего /etc/fstab
5. Управление файлами.
Изучить и опробовать:
-получение информации о файлах и каталогах; ls;
-команды файловых операций: cd, pwd, cp, mv, rm,mkdir, rmdir;
-создание прямой и символической ссылки ln;
-команды поиска find, вывода cat, tee, more, file;
-перенаправление потоков ввода-вывода (<,>,>>) и каналы (|);
-управление правами доступа: chmod, chown, chgrp;
-настройка различных прав доступа с проверкой возможных операций над файлами;
-утилиты группы mtools для работы файловой системой MS-DOS.
Команда ls
Комагда ls сначала выводит список всех файлов (не каталогов), перечисленных в командной строке, а затем
выводит список всех файлов, находящихся в каталогах, перечисленных в командной строке. Если не указано
ни одного файла, то по умолчанию аргументом назначается ‘.’ (текущий каталог).
Запуск команды ls без аргументов отображен на рисунке 32.
Рис. 32 Запуск команды ls без аргументов
Синтаксис:
ls [опции] [файл...]
Опции:
 -a, --all - выдавать все файлы в каталогах, включая все файлы, начинающиеся с `.'.
Выполним команду ls с аргументом –a для того чтобы она отобразила все файлы в каталоге, включая
все файлы, начиная с ‘.’ (рис. 33).
Рис. 33 Результат выполнения ls -a






-b, --escape, --quoting-style=escape - заменять неграфические символы в именах файлов,
используя алфавитно-цифровые последовательности, а также последовательности вида \ 000'
с восьмеричными цифрами, как в языке C.
-c, --time=ctime, --time=status - сортировать содержимое каталога в соответствии с временем
изменения состояния файла.
-d, --directory - выдавать имена каталогов, как будто они обычные файлы, вместо того, чтобы
показывать их содержимое.
-f - не сортировать содержимое каталога; выдавать файлы в том порядке, в котором они
записаны на диск.
-h, --human-readable - добавлять к каждому размеру файла букву размера.
-i, --inode - выдавать номер inode (серийный номер файла, этот номер однозначно
идентифицирует каждый файл в каждой файловой системе) каждого файла, слева от его
имени.
Результат выполнения команды ls –i отображен на рисунке 34.
Рис. 34 Выполнение команды ls –i



-k, --kilobytes - если выдаются размеры файлов, то выдавать их в килобайтах.
-n, --numeric-uid-gid - выдавать числовые UID и GID вместо имен владельца и группы.
-q, --hide-control-chars - выдавать знаки вопроса вместо неграфических символов в имени
файла. Эта опция включена по умолчанию.
 -r, --reverse - сортировать содержимое каталога в обратном порядке.
 -s, --size - выдавать размер каждого файла в блоках по 1024 байта слева от имени файла. Если
установлена переменная окружения POSIXLY_CORRECT, то применяется размер блока 512,
если не задана опция -k .
 -t, --sort=time - сортировать по времени последней модификации
 -u, --time=atime, --time=access, --time=use - сортировать по времени последнего доступа к
файлу (рис. 35)
Рис. 35 Выполнение команды ls –u
 -v - производить сортировку в соответствии с номером версии файлов.
 -A, --almost-all - выдавать все файлы, кроме `.' и `..'.
 -B, --ignore-backups - не показывать файлы, которые заканчиваются на `~', если они не заданы
в командной строке.
 -F, --classify, --indicator-style=classify - добавлять к каждому имени файла символ,
показывающий его тип. Для обычных исполняемых файлов это `*'. Для каталога добавляется
`/', для FIFO - `|', для символических ссылок `@', для гнезд `=', для обычных файлов ничего не
добавляется (рис. 36).
Рис. 36 Выполнение команды ls –F



-H, --si - делает то же, что и опция -h, но использует официальные единицы измерения SI (где
для расчетов используется 1000 вместо 1024).
-L, --dereference - выдавать информацию о файлах, на которые указывают символические
ссылки, вместо информации о самих символических ссылках.
-R, --recursive - рекурсивно выдавать список содержимого всех каталогов (рис. 37).
Рис. 37 Выполнение команды ls –R
Команда cd
Данная команда выполняет переход в другой каталог.
Синтаксис: cd новая_папка
Аргумент новая_папка указывает новый каталог, в который следует перейти.
В Linux текущий каталог представляется точкой, родительский каталог – двумя точками, рабочий
каталог пользователя обозначается символом ~.
В качестве примера перейдём в каталог /home и выведем его содержимое (рис. 38).
Рис. 38 Выполнение команды cd /home
Команда pwd
Данная команда печатает полное имя каталога.
Синтаксис: pwd [option]
Опции: --help и –version.
Выведем полное имя каталога, на который мы перешли ранее (рис. 39)
Рис. 39 Выполнение команды pwd
Команда cp
Данная команда копирует файлы.
Синтаксис:
cp [опции] … source dest
cp [опции] ... source…directory
Данная команда может копировать один файл source (источник) в другой dest(приесник), а может
также копировать несколько файлов в целевой каталог directory.
В последнем случае применяется вторая форма команды ср, а последним аргументом является
существующий каталог.
Опции:
 -a, --archive - по возможности сохраняет структуру и атрибуты исходных файлов при
копировании (но не сохраняет структуру каталогов).
 -b – выполняет резервирование каждого файла
 -d - копирует символьные ссылки как символьные ссылки, а не файлы, на которые они
указывают, и сохраняет жесткие ссылки между исходными файлами в копиях.
 -f, --force - удаляет существующие файлы в случае возникновения ошибки при открытии их на
чтение и никогда не спрашивает подтверждения перед тем как это сделать.
 -i, --interactive - спрашивает, нужно ли перезаписывать существующие файлы. Скопируем
файл text из каталога /home/andrew/ в каталог /home/drew/ подразумевая, что он там уже
существует воспользуемся командой cp -i /home/andrew/text /home/drew/text для запроса о
перезаписи (рис. 40)
Рис. 40 Выполнение команды cp -i /home/andrew/text /home/drew/text






- H - следовать по символической ссылке в SOURCE
-l, --link - делает жесткие ссылки вместо копирования обычных файлов (не каталогов).
--no-preserve=АТРИБУТЫ - не сохраняет заданные атрибуты.
-p, --preserve - защищает оригинальные параметры файла, такие как владелец, группа, права
доступа и временные штампы.
--parents - формирует имя каждого копируемого файла путем добавления к имени каталога, в
который осуществляется копирование, символа косой черты (/) и указанного полного имени
исходного файла. Последний заданный аргумент cp должен быть именем существующего
каталога.
-R, --recursive - копирует каталоги рекурсивно. Произведем рекурсивное копирование
каталога /var/backups в каталог /home/Andrew/FlashD (рис. 41)
Рис. 41 Выполнение команды cp -R /var/backups/ /home/andrew/FlashD




--reply=HOW - здесь аргумент HOW может принимать одно из значений "yes", "no", "query",
определяя какой ответ будет автоматически даваться на все вопросы: "да", "нет" или "запрос"
пользователю соответственно.
--remove-destination - удаляет каждый существующий (в том месте куда происходит
копирование) файл, перед копированием.
-s, --symbolic-link – вместо копирования создает символические ссылки
-t, --target-directory=КАТАЛОГ - указывает выходной каталог.


-u, --update – копирует только, если исходный файл новее.
-v, --verbose - выводить имя каждого файла перед его копированием. Произведем
копирование всех файлов из каталога /home/andrew в каталог /home/drew с подробностями.
Для этого пропишем cp -v /home/andrew/* /home/drew/. Результат выполнения (рис. 42)
Рис. 42 Выполнение команды cp -v /home/andrew/* /home/drew/

-x, --one-file-system - пропускать подкаталоги, которые расположены на файловых системах,
отличных от той, где начиналось копирование.
Команда mv
Данная команда перемещает или переименовывает файлы или каталоги.
Синтаксис:
mv [опции...] исходный_файл файл_назначения
mv [опции...] исходный_файл... каталог
Опции:
 -f, --force - удаляет файлы_назначения, если они существуют, не спрашивая об этом
пользователя.
 -i, --interactive - просит подтверждения на замену существующего файла, в виде вопроса,
которые выводится на стандартный вывод ошибок и читает ответ из стандартного ввода. Если
ответ не утвердительный, то файл пропускается.
 -u, --update - не переносит исходный файл, которые уже существуют в месте, куда
осуществляется перенос и имеют то же самое или более позднее время модификации.
 -v, --verbose - выдавать имя каждого файла перед его переносом.
Выполним переименование файла /home/andrew/textR в /home/andrew/TEXT28. Для этого я введу
команду mv –f - v /home/andrew/text /home/andrew/textR. Результат отображен на рисунке 43.
Рис. 43 Результат выполнения команды mv –f - v /home/andrew/text /home/andrew/textR
Команда rm
rm удаляет каждый заданный файл. По умолчанию каталоги не удаляются, но если заданы опции -r
или -R, то будет удаляться все дерево каталогов ниже заданного каталога, включая и его самого (без
ограничения на глубину этого дерева).
Синтаксис: rm [опции] файл...
Опции:
 -d, --directory - удалять каталоги с помощью системного вызова unlink вместо rmdir, и не
требовать, чтобы каталог был пуст перед его разлинковкой. Работает только если у вас есть
соответствующие привилегии.
 -f, --force - игнорировать несуществующие файлы и никогда не запрашивать подтверждение
на удаления.
 -i, --interactive - выдавать запрос на удаление каждого файла. Если ответ не утвердителен, то
файл пропускается.
 -r, -R, --recursive - рекурсивно удалять содержимое каталогов.
 -v, --verbose - выдавать имя каждого файла перед его удалением.
Удалим файл TEXT28 из каталога /home/Andrew (рис. 44).
Рис. 44 Результат выполнения команды rm /home/andrew/TEXT28
Команда mkdir
mkdir создает каталоги с заданными именами.
Синтаксис: mkdir [опции] каталог...
Опции:
 -m права, --mode=права - устанавливает права доступа к создаваемым каталогам. Эти права
могут быть заданы либо в символьном виде, как описано в chmod, либо в виде восьмеричного
числа.
 -p, --parents - создает недостающие родительские каталоги для каждого указанного каталога.
 --verbose - выдавать сообщение для каждого создаваемого каталога.
Создадим каталог Mult, а в нем каталог Film в каталоге /home/andrew (рис. 45)
Рис. 45 Результат выполнения команды mkdir --parents --verbose /home/andrew/Mult/Film
Команда rmdir
rmdir удаляет пустые каталоги. Если какой-либо из аргументов каталог не указывает на
существующий пустой каталог, то будет выдано сообщение об ошибке.
Синтаксис
rmdir [опции] каталог...
Опции
 --ignore-fail-on-non-empty - данная опция заставляет rmdir игнорировать ошибки при удалении
каталога, если эти ошибки вызваны тем, что каталог не пуст.

-p - если каталог включает более, чем один компонент пути, то удаляется каталог, затем
убирается последний компонент пути и удаляется получившийся каталог и т. д. до тех пор,
пока все компоненты не будут удалены.
Создадим каталог dir2 и произведем его удаление (рис. 46).
Рис. 46 Результат выполнения команды rmdir ./dir2
Команда ln
ln делает ссылки между файлами. По умолчанию делаются жесткие ссылки; при указании опции -s ,
делаются символьные (или мягкие) ссылки.
Синтаксис
ln [опции] исходный [куда]
ln [опции] исходный... каталог
Опции
-d, -F, --directory - позволяет суперпользователю делать жесткие ссылки на каталоги.
-f, --force - удалять существующие файлы куда.
-i, --interactive - запрашивать подтверждение удаления файлов куда.
-n, --no-dereference - считать файл куда обычным файлом, если явно заданный параметр куда
является символьной ссылкой на каталог.
-s, --symbolic - делать символьные ссылки вместо жестких ссылок. Данная опция будет вызывать
сообщение об ошибке для тех систем, которые не поддерживают символьные ссылки.
-v, --verbose - выдавать имя каждого файла перед тем как создавать для него ссылку.
Создадим жесткую ссылку на файл /etc/passwd (рис. 47).
Рис. 47 Результат выполнения команды ln –i /etc/passwd ./pw
Команда find
find производит поиск файлов по маршруту path по многочисленным критериям:
 по имени файла или шаблону имени
 по ссылкам
 тех, которые использовались в определенный промежуток времени
 по размеру
 по типу
 по владельцу или группе
 с определенными полномочиями доступа
 содержащих текст, совпадающий с указанным шаблоном
 по местонахождению в дереве каталогов (по глубине вхождения в структуру каталога)
 по комбинации перечисленных условий
Синтаксис: find [path…][expression]
Опции:
-daystart – в качестве точки отсчета времени принимает начало дня
-depth – обрабатывает содержимое каждого подкаталога перед обработкой собственно каталога
-follow – не следует поиске учитывать символические ссылки
-maxdepth levels – производит поиск в дереве каталогов не глубже указанного уровня levels
-mount – не выполняет поиск в каталогах других файловых систем
Воспользуемся командой find, чтобы найти в каталоге /usr/share файлы принадлежащие
пользователю andrew (рис. 48).
Рис. 48 Результат выполнения команды find /usr/share –user andrew
Команда cat
cat - объединяет файлы и направляет их на стандартный вывод.
Синтаксис: cat [ПАРАМЕТР] [ФАЙЛ]...
Опции:
 -A, --show-all - эквивалентно использованию -vET
 -b, --number-nonblank - нумерует все непустые строки выходного файла, начиная c 1
 -e - эквивалентно -vE
 -E, --show-ends - выводит в конце каждой строки символ $ (рис. 49).
Рис. 49 Результат выполнения команды cat –E /etc/mtab

-n, --number - нумерует все строки выходного файла, начиная с 1 (рис. 50).
Рис. 50 Результат выполнения команды cat –n /etc/mtab




-s, --squeeze-blank - заменяет набор пустых строк одной пустой строкой
-t - эквивалентно -vT
-T, --show-tabs - выводит символы табуляции в формате ^I
-v, --show-nonprinting - выводит управляющие символы кроме символов перевода строки
(LFD) и табуляции (TAB), для которых использует символ ^ и M-нотацию
Команда tee
tee считывает данные из стандартного устройства ввода и записывает их на стандартное устройство
вывода или в файл.
Синтаксис: tee [ПАРАМЕТР]... [ФАЙЛ]...
Воспользуемся командой tee для записи в файл и посмотрим его содержимое (рис. 51).
Рис. 51 Результат выполнения команды tee ./text
Опции:
 -a, --append - добавлять данные к указанным файлам, не перезаписывать
 -i, --ignore-interrupts - игнорировать сигналы прерываний
Команда more
Данная команда представляет фильтр для вывода текста.
Синтаксис: more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
Опции:
-num – устанавливает размер экрана в строках
-d – выводит для пользователя приглашение и сообщение, если нажимается несоответствующая
кнопка.
-f – вместо строк экрана подсчитывает логические строки, не усекая длинные строки
-р – не выполняет прокрутку: полностью очищает экран, а затем отображает текст
-s – заменяет несколько подряд идущих пустых строк одной пустой
+/ pattern – до отображения каждого файла выполняет поиск строк по заданному образцу pattern
+ linenum – начинает отображение со строки с указанным номером linenum
Выведем содержимое файла text1 (рис. 52)
Рис. 52 Результат выполнения команды more ./text1
Воспользуемся опцией –s (рис. 53)
Рис. 53 Результат выполнения команды more -s ./text1
Команда file
Команда file проводит серию тестов, пытаясь классифицировать файлы, указанные в командной
строке. Если файл текстовый, команда пытается по первым 512 байтам угадать язык
программирования. Для выполняемых файлов выдается также номер версии, если он больше 0
Синтаксис: file [-c] [-f файл_имен] [-m магический_файл] файл ...
Пример команды file без параметров (рис. 54)
Рис. 54 Результат выполнения команды file ./text
Опции:
-c -Проверка правильности формата магического файла. По соображениям эффективности эта
проверка обычно не делается. При наличии опции -c типы файлов не определяются.
-f файл_имен - Определяются типы файлов, имена которых заданы в файле_имен.
-m магический_файл - Задается магический_файл, отличный от стандартного, /etc/magic.
Магический файл содержит список магических чисел, по которым и производится классификация.
Комментарии в начале файла /etc/magic об ясняют его формат.
Перенаправление потока вывода
Во многих случаях удобнее работать не со стандартным выводом на монитор, а с файлами. Файлы
можно сохранять, редактировать, посылать по почте, и т.д. Можно перенаправить вывод команды в
файл, применив оператор перенаправления > и указав имя файла. При этом не важно, существует ли
такой файл на самом деле. Если такого файла нет, то он будет создан, а если есть, то перезаписан.
Выведем в файл слово Hello и посмотрим результат (рис. 55).
Рис. 55 Результат перенаправления вывода команды echo Hello в файл
Можно дописать в файл вывод других команд, не уничтожая имеющегося содержимого. Для этого
служит оператор >>
Перенаправление потока ввода
Перенаправление потока ввода < можно продемонстрировать на команде wc –w которая служит для
подсчета числа слов. Конечно, данная команда может работать, если указать в качестве аргумента
файл, но можно также воспользоваться оператором < для перенаправления потока ввода из файла
(рис. 56).
Рис. 56 Результат перенаправления потока ввода
Каналы
Особым вариантом перенаправления вывода является организация программного канала. Для этого
две или несколько команд, таких, что вывод предыдущей служит вводом для следующей,
разделяются символом "|". При этом стандартный выходной поток команды, расположенной слева от
символа |, направляется на стандартный ввод программы, расположенной справа от символа |.
Пример отображен на рисунке 57.
Рис. 57 Результат выполнения команды cat ./text1 | wc -w
Полученный результат означает, что вывод команды cat, т.е. текст из файла text1.txt, будет
направлен на вход команды wc -w, которая посчитает количество слов.
Программные каналы используются для того, чтобы скомбинировать несколько маленьких
программ, каждая из которых выполняет только определенные преобразования над своим входным
потоком, для создания обобщенной команды, результатом которой будет какое-то более сложное
преобразование.
Оболочка одновременно вызывает на выполнение все команды, включенные в конвейер, запуская
для каждой из команд отдельный экземпляр оболочки, так что как только первая программа начинает
что-либо выдавать в свой выходной поток, следующая команда начинает его обрабатывать. Так же
каждая следующая команда выполняет свою операцию, ожидая данных от предыдущей команды и
выдавая свои результаты на вход последующей.
Управление правами доступа
Команда chmod
Для изменения прав доступа к файлу используется команда chmod. Ее можно использовать в двух
вариантах. В первом варианте вы должны явно указать, кому какое право даете или кого этого права
лишаете:
[user]$ chmod wXp имя-файла
где вместо символа w подставляется либо символ u (т. е. пользователь, который является
владельцем); либо g (группа); либо o (все пользователи, не входящие в группу, которой принадлежит
данный файл); либо a (все пользователи системы, т. е. и владелец, и группа, и все остальные). Вместо
X ставится: либо + (предоставляем право); либо – (лишаем соответствующего права); либо =
(установить указанные права вместо имеющихся), Вместо p — символ, обозначающий
соответствующее право:
 r (чтение);
 w (запись);
 x (выполнение).
Синтаксис:
chmod [опции] режим файл...
Например, лишим права записи в файл ./file его владельца andrew (рис. 58)
Рис. 58 Лишения владельца права на запись в файл ./file
Опции:
 -c, --changes - подробно описывать действия для каждого файла, чьи права действительно
изменяются.
 -f, --silent, --quiet - не выдавать сообщения об ошибке для файлов, чьи права не могут быть
изменены.
 -v, --verbose - подробно описывать действие или отсутствие действия для каждого файла. Э
Второй вариант задания команды chmod (он используется чаще) основан на цифровом
представлении прав. Для этого мы кодируем символ r цифрой 4, символ w — цифрой 2, а символ x
— цифрой 1. Для того, чтобы предоставить пользователям какой-то набор прав, надо сложить
соответствующие цифры. Получив, таким образом, нужные цифровые значения для владельца файла,
для группы файла и для всех остальных пользователей, задаем эти три цифры в качестве аргумента
команды chmod (ставим эти цифры после имени команды перед вторым аргументом, который задает
имя файла). Например, если надо дать все права владельцу (4+2+1=7), право на чтение и запись —
группе (4+2=6), и не давать никаких прав остальным, то следует дать такую команду:
[user]$ chmod 760 file_name
В качестве примера предоставим все права всем для файла /home/andrew/file и попробуем записать в
него, что-нибудь от имени другого пользователя (рис. 59)
\
Рис. 59 Результат предоставления всем всех прав доступа
В итоге пользователь drew смог записать, что-то в файл file, владельцем которого является andrew.
Предоставление прав доступа к файлу также зависит от прав доступа к каталогу, в котором
находится файл. Например, даже если права доступа к файлу установлены как -rwxrwxrwx, другие
пользователи не могут иметь доступа к файлу, пока они не имеют прав на чтение и исполнение к
каталогу, в котором находится файл. Например, если бы я хочу ограничить доступ ко всем своим
файлам, я могу установить права доступа к своему домашнему каталогу /home/andrew как -rwx------.
Таким образом, никакой другой пользователь не будет иметь доступа к моим каталогам и ко всем
файлам и каталогам внутри него. Мне не нужно будет теперь беспокоиться об отдельных правах
доступа к каждому его файлу. Другими словами, чтобы, в принципе, иметь доступ к файлу, вы
должны иметь право на исполнение ко всем каталогам вдоль пути к файлу и право на чтение (или
исполнение) к самому файлу. Как правило, пользователи системы Linux не скрывают свои файлы.
Обычно права доступа к файлам устанавливаются как -rw-r-r--, что позволяет другим пользователям
читать файлы, но не изменять их. Для каталогов права доступа часто предоставляются в виде -rwxrxr-x, что позволяет другим пользователям просматривать ваши каталоги, но не создавать и не
удалять файлы в них.
 -R, --recursive - рекурсивное изменение прав доступа для каталогов и их содержимого.
Выполнять смену прав доступа к файлу с помощью команды chmod может только сам владелец
файла или суперпользователь. Для того, чтобы иметь возможность изменить права группы, владелец
должен дополнительно быть членом той группы, которой он хочет дать права на данный файл.
Чтобы завершить рассказ о правах доступа к файлам, надо рассказать еще о трех возможных
атрибутах файла, устанавливаемых с помощью той же команды chmod. Это те самые атрибуты для
исполняемых файлов, которые в индексном дескрипторе файла в двухбайтовой структуре,
определяющей права на файл, занимают позиции 5-7, сразу после кода типа файла.
Первый из этих атрибутов — так называемый "бит смены идентификатора пользователя". Смысл
этого бита состоит в следующем.
Обычно, когда пользователь запускает некоторую программу на выполнение, эта программа
получает те же права доступа к файлам и каталогам, которые имеет пользователь, запустивший
программу. Если же установлен "бит смены идентификатора пользователя", то программа получит
права доступа к файлам и каталогам, которые имеет владелец файла программы (таким образом,
рассматриваемый атрибут лучше называть "битом смены идентификатора владельца"). Это
позволяет решать некоторые задачи, которые иначе было бы трудно выполнить. Самый характерный
пример — команда смены пароля passwd. Все пароли пользователей хранятся в файле /etc/passwd,
владельцем которого является суперпользователь root. Поэтому программы, запущенные обычными
пользователями, в том числе команда passwd, не могут производить запись в этот файл. А, значит,
пользователь как бы не может менять свой собственный пароль. Но для файла /usr/bin/passwd
установлен "бит смены идентификатора владельца", каковым является пользователь root.
Следовательно, программа смены пароля passwd запускается с правами root и получает право записи
в файл /etc/passwd (уже средствами самой программы обеспечивается то, что пользователь может
изменить только одну строку в этом файле).
Установить "бит смены идентификатора владельца" может суперпользователь с помощью
команды [root]# chmod +s file_name
Еще один возможный атрибут исполняемого файла — это "бит сохранения задачи" или "sticky bit"
(дословно — "бит прилипчивости"). Этот бит указывает системе, что после завершения программы
надо сохранить ее в оперативной памяти. Удобно включить этот бит для задач, которые часто
вызываются на выполнение, так как в этом случае экономится время на загрузку программы при
каждом новом запуске. Этот атрибут был необходим на старых моделях компьютеров. На
современных быстродействующих системах он используется редко. Если используется цифровой
вариант задания атрибутов в команде chmod, то цифровое значение этих атрибутов должно
предшествовать цифрам, задающим права пользователя: [root]# chmod 4775 file_name
При этом веса этих битов для получения нужного суммарного результата задаются следующим
образом:
4 — "бит смены идентификатора пользователя",
2 — "бит смены идентификатора группы",
1 — "бит сохранения задачи (sticky bit)".
Если какие-то из этих трех битов установлены в 1, то несколько изменяется вывод команды ls -l в
части отображения установленных атрибутов прав доступа. Если установлен в 1 "бит смены
идентификатора пользователя", то символ "x" в группе, определяющей права владельца файла,
заменяется символом "s". Причем, если владелец имеет право на выполнение файла, то символ "x"
заменяется на маленькое "s", а если владелец не имеет права на выполнение файла (например, файл
вообще не исполняемый), то вместо "x" ставится "S". Аналогичные замены имеют место при задании
"бита смены идентификатора группы", но заменяется символ "x" в группе атрибутов, задающих
права группы. Если равен 1 "бит сохранения задачи (sticky bit)", то заменяется символ "x" в группе
атрибутов, определяющей права для всех остальных пользователей, причем "x" заменяется символом
"t", если все пользователи могут запускать файл на выполнение, и символом "T", если они такого
права не имеют.
Таблица 2 – Примеры задания прав доступа командой chmod
Команда
Результат
chmod a+r file
Даёт всем пользователям право на чтение
файла.
chmod +x file
Аналогично предыдущему примеру. Если
никакие из набора символов a, u, g или o не
указаны, то это эквивалентно указанию
символа a.
chmod og-x file
Лишает всех пользователей, кроме
собственника, права на исполнение файла.
chmod u+rwx file
Разрешает собственнику читать, изменять и
исполнять файл.
chmod o-rwx file
Запрещает читать, записывать и исполнять
файл всем пользователям, кроме
собственника файла и пользователей из
группы.
Chmod 777 file
Даёт всем пользователям право на чтение,
запись и исполнение файла.
Таблица 3 – Некоторые примеры последовательности прав и их расшифровка
rwxr-x--x
Пользователь-владелец файла может читать
файл, изменять и исполнять его;
пользователи, члены группы-владельца
могут читать и исполнять файл, но не
изменять его; все остальные пользователи
могут лишь запускать файл на выполнение.
rw------Только владелец файла может читать и
изменять его.
rwxrwxrwx
Все пользователи могут читать файл,
изменять его и запускать на выполнение.
--------Никто, включая самого владельца файла, не
имеет прав на его чтение, запись или
выполнение. Хотя такая ситуация вряд ли
имеет практический смысл, с точки зрения
системы она является вполне корректной.
Разумеется, владелец файла может в любой
момент изменить права доступа к нему.
Команда chown
chown изменяет владельца и/или группу для каждого заданного файла.
В качестве имени владельца/группы берется первый аргумент, не являющийся опцией. Если задано
только имя пользователя (или числовой идентификатор пользователя), то данный пользователь
становится владельцем каждого из указанных файлов, а группа этих файлов не изменяется. Если за
именем пользователя через двоеточие следует имя группы (или числовой идентификатор группы),
без пробелов между ними, то изменяется также и группа файла.
Синтаксис: chown [опции] пользователь[:группа] файл...
В качестве примера изменим владельца файла ./file. (рис. 60)
Рис. 60 Результат выполнения команды chown andrew ./file
После выполнения команды chown andrew ./file владельцем файла стал пользователь andrew.
Опции:
 -c, --changes - подробно описывать действие для каждого файла, владелец которого
действительно изменяется.
 -f, --silent, --quiet - не выдавать сообщения об ошибках для файлов, чей владелец не может
быть изменен.
 -h, --no-dereference - работать с самими символьными ссылками, а не с файлами, на которые
они указывают.
 -v, --verbose - подробное описание действия (или отсутствия действия) для каждого файла.
 -R, --recursive - рекурсивное изменение владельца каталогов и их содержимого.
 --dereference - изменяет владельца файла, на который указывает символьная ссылка, вместо
самой символьной ссылки.
 --reference=rfile - изменяет владельца файла на того, который является владельцем rfile.
Команда chgrp
C hgrp изменяет группу каждого заданного файла на группу, которая может быть представлена как
именем группы, так и ее числовым идентификатором (GID).
Синтаксис: chgrp [опции] группа файл...
Опции:
Все те же самые, что и у команды chown.
Проделаем все тоже самое, что и в примере выше только вместо команды chown воспользуемся
командой chgrp (рис. 61).
Рис. 61 Результат выполнения команды chgrp andrew ./file
Mtools
В системе Linux имеется набор утилит mtools, которые обеспечивают доступ к дискетам,
отформатированным для использования в MS-DOS. Команда mсору позволяет копировать файлы на
такую дискету и с нее. Никаких специальных операций вроде операции монтирования проводить не
нужно. В частности, при использовании утилиты mtools не придется монтировать раздел MS-DOS
для получения доступа к нему. В отличие от обычных путевых имен DOS, в путевых именах,
используемых с mtools, вместо обратной косой черты используется обычная косая. Каталог docs на
диске А: обозначается путевым именем a:/docs, а не a:\docs.
С помощью команды mdir можно получить список файлов, имеющихся на дискете MS-DOS, а с
помощью команды mcd ≈ переходить на этой дискете из каталога в каталог.
Большинство стандартных команд MS-DOS могут выполняться как операции mtools . В частности,
можно создавать каталоги MS-DOS (команда mmd) и удалять файлы (mdel).
Доступ к разделам MS-DOS конфигурируется файлом /etc/mtools.conf, в котором перечислены
различные стандартные разделы MS-DOS и дисководы. Каждый дисковод или раздел обозначается
определенным именем устройства.
6.
Управление заданиями.
Научиться запускать и управлять заданиями в оперативном и фоновом режимах. Команды jobs, ps,
top, fg, bg, kill, stop, at, Ctrl+Z.
Задания и процессы
Всякая выполняющаяся в Linux программа называется процессом. Linux как многозадачная система
характеризуется тем, что одновременно может выполняться множество процессов, принадлежащих
одному или нескольким пользователям. Работающий процесс также называют заданием (job). Понятия
процесс и задание являются взаимозаменяемыми. Однако, обычно процесс называют заданием, когда имеют
ввиду управление заданием (job control). Управление заданием — это функция командной оболочки, которая
предоставляет пользователю возможность переключаться между несколькими заданиями.
В большинстве случаев пользователи запускают только одно задание — это будет та команда,
которую они ввели последней в командной оболочке. Однако многие командные оболочки
(включая bash и tcsh) имеют функции управления заданиями (job control), позволяющие запускать
одновременно несколько команд или заданий (jobs) и, по мере надобности, переключаться между
ними.
Управление заданиями может быть полезно, если, например, вы редактируете большой текстовый
файл и хотите временно прервать редактирование, чтобы сделать какую-нибудь другую операцию. С
помощью функций управления заданиями можно временно покинуть редактор, вернуться к
приглашению командной оболочки и выполнить какие-либо другие действия. Когда они будут
сделаны, можно вернуться обратно к работе с редактором и обнаружить его в том же состоянии, в
котором он был покинут. У функций управления заданиями есть ещё много полезных применений.
Передний план (оперативный режим) и фоновый режим
Задания могут быть либо на переднем плане (foreground), либо фоновыми (background). На
переднем плане в любой момент времени может быть только одно задание. Задание на переднем
плане — это то задание, с которым вы взаимодействуете; оно получает ввод с клавиатуры и посылает
вывод на экран (если, разумеется, вы не перенаправили ввод или вывод куда-либо ещё). Напротив,
фоновые задания не получают ввода с терминала; как правило, такие задания не нуждаются во
взаимодействии с пользователем.
Некоторые задания исполняются очень долго, и во время их работы не происходит ничего
интересного. Пример таких заданий — компилирование программ, а также сжатие больших файлов.
Нет никаких причин смотреть на экран и ждать, когда эти задания выполнятся. Такие задания
следует запускать в фоновом режиме. В это время вы можете работать с другими программами.
Для управления выполнением процессов в Linux предусмотрен механизм передачи сигналов.
Сигнал — это способность процессов обмениваться стандартными короткими сообщениями
непосредственно с помощью системы. Сообщение-сигнал не содержит никакой информации, кроме
номера сигнала (для удобства вместо номера можно использовать предопределённое системой имя).
Для того, чтобы передать сигнал, процессу достаточно задействовать системный вызов kill(), а для
того, чтобы принять сигнал, не нужно ничего. Если процессу нужно как-то по-особенному
реагировать на сигнал, он может зарегистрировать обработчик, а если обработчика нет, за него
отреагирует система. Как правило, это приводит к немедленному завершению процесса,
получившего сигнал. Обработчик сигнала запускается асинхронно, немедленно после получения
сигнала, что бы процесс в это время ни делал.
Два сигнала — номер 9 (KILL) и 19 (STOP) — всегда обрабатывает система. Первый из них
нужен для того, чтобы убить процесс наверняка.
Сигнал STOP приостанавливает процесс: в
таком состоянии процесс не удаляется из таблицы процессов, но и не выполняется до тех пор, пока
не получит сигнал 18 (CONT) — после чего продолжит работу. В командной оболочке Linux
сигнал STOP можно
передать
активному
процессу
с
помощью
управляющей
последовательности Ctrl-Z.
Сигнал номер 15 (TERM) служит для прерывания работы задания. При прерывании (interrupt)
задания процесс погибает. Прерывание заданий обычно осуществляется управляющей
последовательностью Ctrl-C. Восстановить прерванное задание никаким образом невозможно.
Следует также знать, что некоторые программы перехватывают сигнал TERM (при помощи
обработчика), так что нажатие комбинации клавиш Ctrl-C может не прервать процесс немедленно.
Это сделано для того, чтобы программа могла уничтожить следы своей работы прежде, чем она
будет завершена. На практике, некоторые программы вообще нельзя прервать таким способом.
Ранее я работал с командой find. Я производил поиск различных файлов в каталоге /usr/share
принадлежащих пользователю Andrew, и в принципе поиск происходил быстро. Но что было бы если
бы я проводил поиск по всему каталогу /. Потребовалось бы гораздо больше времени, и я не мог бы
ввести другую команду до окончания поиска.
Такая ситуация противоречит идее многозадачности. Необходим способ, с помощью которого
можно было бы после ввода команды поиска, не дожидаясь ее завершения, запустить другую
программу. Решить задачу помогает запуск программ в фоновом режиме. Если запускать задания в
фоновом режиме, подсказка командной строки будет оставаться на экране, а новые задания можно
будет запускать, не дожидаясь завершения уже запущенных.
Простейший способ запуска задания в фоновом режиме - завершение команды запуска знаком
амперсанда (&). Этот знак заставляет оболочку запускать команду в фоновом режиме с
незамедлительным возвратом подсказки командной строки на экран.
Команда jobs
Команда jobs выводит список выполняемых или остановленных заданий.
В качестве примера запустим в фоновом режиме команду find / > text. И воспользуемся командой
jobs. Результат отражен на рисунке 62.
Рис. 62 Результат запуска команды jobs после запуска задания в фоновом режиме
В результате был выведен список в котором видно, что выполняется задание find / >text.
Комбинация Ctrl+Z
Если программа запущена в режиме переднего плана, то ее выполнение может быть
приостановлено комбинацией клавиш Ctrl+Z. Эта комбинация интерпретируется оболочкой как
команда временной остановки текущего процесса. Например, если команду поиска из предыдущего
примера запустить в режиме переднего плана, то после нажатия Ctrl+Z поиск временно
прекращается. Если теперь ввести команду jobs, выведется список в котором будет указано, наше
остановленное задание find / > text (рис. 63) .
Рис. 63 Результат запуска команды jobs после приостановки задания запущенного в режиме
переднего плана
Команда bg и fg
Если функция управления заданиями активна, то вы можете вновь запустить приостановленный
процесс. Чтобы вновь запустить процесс, остановленный командой stop, вы сначала должны
определить JID с помощью команды jobs. Затем вы можете использовать JID со следующими
командами:
fg <JID> - возобновляет приостановленное задание или переводит задание из фонового режима в
оперативный;
Возобновим остановленное ранее задание в оперативном режиме (рис. 64)
Рис. 64 Возобновление остановленного задание в оперативном режиме
bg <JID> - вновь запускает приостановленное задание в фоновом режиме.
Возобновим остановленное ранее задание в оперативном режиме (рис. 65)
Рис. 65 Возобновление остановленного задание в фоновом режиме
После того, как остановленное задание переводится в фоновый режим его выполнение
возобновляется, и команда jobs показывает его состояние как Running (выполняется) или Done
(готово).
Команда kill
В некоторых случаях остановленное или фоновое задание приходится завершать либо уничтожать.
Для уничтожения процесса, указанного его идентификатором (РID), используется команда kill.
Можно воспользоваться командой ps для определения идентификатора процесса либо уничтожать
остановленные или фоновые задания непосредственно по их номерам. Утилита kill посылает сигнал
процессу или процессам, заданным операндами pid.
Синтаксис:
kill [-s СИГНАЛ | -СИГНАЛ] PID...
Для каждого операнда pid утилита kill будет выполнять действия, вызванные аргументами:
Значение операнда pid будет использоваться в качестве аргумента pid. В качестве аргумента sig
используетсмя значение, заданное в опции -s, или SIGTERM, если эта опция не указана.
Замечание. Процесс, которому посылается сигнал, должен принадлежать текущему пользователю,
но суперпользователь (root) может посылать сигналы любым процессам.
Опции:
 -l - Выдать все значения сигналов, поддерживаемые в данной реализации, если операнды не
указаны.
 -s сигнал - Задает сигнал, который надо послать, используя одно из символьных имен.
Произведем уничтожение остановленного задания find / > text. Для этого нужно сначала
определить pid Затем послать сигнал SIGKILL(9). Результат отображен на рисунке 66.
Рис. 66 Результат уничтожения остановленного задания
Команда stop
Команда stop приостанавливает временно процессы.
Синтаксис: stop JID<CR>
Команда Ps:
Ps - выдача информации о состоянии процессов.
Синтаксис: ps [optinon]
Команда ps выдает информацию об активных процессах. По умолчанию информация дается
только о процессах, ассоциированных с данным терминалом.
По умолчанию выводятся:
 идентификатор процесса
 идентификатор терминала
 истраченное к данному моменту время ЦП
 имя команды
Если нужна иная информация, следует пользоваться опциями. Некоторые опции имеют один
аргумент или список аргументов.
Опции:
-e - вывести информацию обо всех процессах
-d - вывести информацию обо всех процессах, кроме лидеров групп
-a - вывести информацию обо всех наиболее часто запрашиваемых процессах
-f - генерировать полный листинг(рис. 67)
Рис. 67 Результат выполнения команды ps -f
-l - генерировать листинг в длинном формате
-p – список идентификаторов процессов. Можно узнать какому процессу принадлежит pid=1
Для этого введем ps –p 1 (рис. 68)
Рис. 68 Результат выполнения команды ps –p 1
Из результата видно что, pid=1 принадлежит процессу init.
-u – список идентификаторов пользователей
Команда at
at - выполнять команды позже.
Назначенные команды, которые необходимо выполнить в запланированное время, at читает из файла
или со стандартного ввода (клавиатуры). Эти команды формируют задание для at, которое будет
выполнено в заданное вами время.
Задание at будет выполняться отдельным процессом командного интерпретатора
Например добавим команды в файл comm и воспользовавшись командой at назначим время когда
команды из этого файла будут выполнены (рис. 69).
Рис. 69 Назначение времени выполнения команд из файла comm
7. Работа в оболочке MidnightCommander.
Структура и назначение основных каталогов файловой системы Linux.
Midnight Commander (далее просто MC) - это программа файл-менеджер для UNIX совместимых
операционных систем. Используя MC можно выполнять все основные операции с каталогами, файлами и
группами файлов, заходить на удаленные сервера по протоколам FTP и SMB, редактировать файлы и многое
другое.
Первым делом нужно установить MC. Для MC необходимо выполнить команду: sudo apt-get install mc
Поясню, что за команду я ввел.
sudo - Команда sudo предоставляет возможность пользователям выполнять команды от имени root
либо других пользователей.
apt-get - используется для управления пакетами.
install - установить.
mc - сокращённое имя Midnight Commander
Когда завершится процесс установки вводим команду mc . Результат выполнения команды mc отображен на
рисунке 70.
Рис. 70 Экран программы MC
Экран MC делится на четыре части. Почти весь зкран занят двумя панелями. По умолчанию,
вторая строка снизу является командной, а в самой нижней отображается назначение
функциональных клавиш. Самая верхняя строка - строка меню. Она может быть не видна, но при
нажатии клавиши F9 или при щелчке мыши эта строка отображается в верхней части экрана. MC
позволяет одновременно наблюдать содержимое двух каталогов. Одна из панелей является текущей
(в этой панели находится выделитель). Практически все команды оперируют над текущей панелью.
Хотя некоторые файловые операции, такие как Rename или Copy, по умолчанию используют каталог
неактивной панели в качестве каталога назначения (при выполнении подобных команд всегда
появляется запрос на подтверждение).
Можно выполнять системные команды прямо из MC просто путём их набора на клавиатуре.
Всё, что Вы набираете, появляется в командной строке, а при нажатии клавиши Enter, MC выполнит
набранную строку.
Строка меню появляется при нажатии F9 или при щелчке мышью в верхней строке экрана.
Строка меню состоит из пяти подменю: "Левая панель", "Правая панель", "Файл", "Команда" и
"Настройки".
Меню "Левая панель", "Правая панель", позволяют оперировать панелями.
В меню Файл предлагается список команд, которые могут быть применены к текущему или к
помеченным файлам.
В меню Команда содержатся более общие команды, которые никак не связаны с текущим
файлом или помеченной группой файлов.
Я не буду подробно рассматривать интерфейс программы, т.к. в принципе он является
интуитивно понятным. Я лишь продемонстрирую наглядно некоторые операции, выполнение
которых стало наглядно и проще за счет использования MC.
Рассмотрим некоторые операции находящиеся во вкладке Файл.
MC позволяет просматривать файлы. Например для просмотра файла из каталога достаточно
выбрать файл, открыть меню Файл и выбрать просмотр или же можно не выбирать файл на панели в
выбрать пункт «просмотр файла…», в котором нужно ввести название файла. В любом случае
результат будет одинаковый (рис. 71).
Рис. 71 Просмотр файла /home/andrew/text1
При просмотре файла невозможно его изменять. Для его редактирования нужно зайти в меню
файл и выбрать пункт правка. В этом случае также откроется выбранный файл но уже с
возможностью редактирования.
MC позволяет более наглядно изменять права доступа. Для этого надо зайти в меню Файл и
выбрать пункт «права доступа». При этом появится окно (рис. 72), которое является графическим
отображением команды chmod. В этом окне можно наглядно выставить нужные права доступа,
определить имя владельца и имя группы для выбранного файла.
Рис. 72 Права доступа к файлу
Также возможен вызов окна с расширенной настройкой прав. Для этого нужно выбрать меню
файл, затем пункт Права(расширенные) (рис. 73).
Рис. 73 Расширенная команда chown
MC позволяет в более наглядном виде создавать ссылки. Например, чтобы создать
символическую ссылку, нужно выбрать меню файл, в нем пункт «символическая ссылка». Появится
окно для создания символической ссылки (рис. 74).
Рис. 74 Создание символической ссылки
В результате создастся ссылка в каталоге /home/andrew/p. Перед именем ссылки будет стоять
символ @ (рис. 75).
Рис. 75 Символическая ссылка
MC позволяет наглядно устанавливать владельца и группу для файла. Для этого выбираем
меню файл , затем пункт Владелец/Группа. В результате появится окно (рис. 76), в котором можно
установить владельца и группу для выбранного файла.
Рис. 76 Установка владельца и группы
MC также позволяет производить в наглядном виде типовые операции по созданию каталогов,
переименованию файлов и каталогов, удалению и т.д.
Мощным инструментом также является поддержка горячих клавиш. Что при определенных
навыках поможет ускорить и облегчить работу. Например клавиша F3 для просмотра содержимого
файла.
Структура и назначение основных каталогов файловой системы Linux.
Структуру основных каталогов также можно увидеть благодаря MC. Нужно лишь выбрать в
меню левая или правая панель, выбрать пункт дерево и перейти в корневой каталог (рис. 77) .
Рис. 77 Основные каталоги
Все каталоги корневого каталога я отдельно сведу в таблицу ниже.
Таблица 4 – Основные каталоги
Каталог
Назначение и содержание
Корневой
каталог.
Является
основой
любой файловой системы UNIX. Все остальные
/
каталоги и файлы располагаются в рамках структуры, порожденной корневым
каталогом (в нем и в его подкаталогах), независимо от их физического
местонахождения. Для корневого каталога обязательно должна создаваться отдельная
физическая файловая система, а сам он является точкой ее монтирования, о чем
свидетельствует наличие подкаталога lost+found.
/bin
Общие программы для совместного использования системой, системным
администратором и пользователями.
/boot
Загрузочные файлы и ядро, vmlinuz. В некоторых последних дистрибутивах также
данные grub. Grub – это большой единый загрузчик, который представляет собой
попытку избавиться от многих различных загрузчиков известных нам на сегодняшний
день.
/dev
Содержит ссылки на все периферийные устройства, которые представлены файлами с
особыми свойствами.
/etc
Большинство важных системных файлов конфигурации находятся в/etc, этот каталог
содержит данные, аналогичные тем что в Панели Управления Windows
/home
Домашние каталоги обычных пользователей.
/initrd
(в некоторых дистрибутивах) Информация для загрузки. Не удаляйте!
/lib
Файлы библиотек, включает файлы для всех разновидностей программ, необходимых
системе и пользователям.
/lost+found Каждый раздел имеет lost+found в его верхней директории. Здесь находятся файлы,
которые были спасены во время сбоев.
/misc
Для разных целей.
/mnt
Стандартные точки монтирования для внешних файловых систем, например, CD-ROM'а
или цифровой камеры.
/net
Стандартные точки монтирования для удаленных файловых систем
/opt
Как правило, содержит дополнительное ПО и ПО третьих сторон.
/proc
Виртуальная файловая система, содержащая информацию о системных ресурсах. Более
подробная информация о назначении файлов в proc можно получить, введя
команду man proc в окне терминала. Файл proc.txt рассматривает виртуальную
файловую систему в деталях.
/root
Домашняя директория администратора. Помните о разнице между / (корневым
каталогом) и /root (домашним каталогом пользователяroot).
/sbin
Программы для использования системой и системным администратором.
/tmp
Временное место для использования системой, которое очищается после перезагрузки,
так что не используйте ее под сохранение какой-нибудь работы!
/usr
Программы, библиотеки, документация и т.д. для всех пользовательских программ.
/var
Место хранения всех изменяемых и временных файлов, созданных пользователями,
такие как log-файлы, почтовые очереди, место для временного хранения файлов,
загружаемых из Интернета, или сохранения образа CD перед записью.
8. Обзор центра управления Gnome
GNOME— свободная среда рабочего стола для Unix-подобных операционных систем. GNOME
является частью проекта GNU.
Разработчики GNOME ориентируются на создание полностью свободной среды, доступной всем
пользователям вне зависимости от их уровня технических навыков, физических ограничений и
языка, на котором они говорят. В рамках проекта GNOME разрабатываются как приложения для
конечных пользователей, так и набор инструментов для создания новых приложений, тесно
интегрируемых в рабочую среду.
GNOME — акроним от англ. GNU Network Object Model Environment («сетевая среда объектной
модели GNU»). Под GNU в данном случае подразумевается не проект, а операционная система,
официальной средой рабочего стола которой он является.
Зайдем в центр управления для этого на рабочем столе меню система и далее вкладку Центр
управления (рис. 78).
Рис. 78 Запуск центра управления
Перед нами запустится окно центра управления (рис. 79).
Рис. 79 Центр управления
Все конфигураторы центра управления разбиты на следующие группы:
 Персональные. Помогают изменить некоторые персональные параметры (информация о
пользователе, ассоциацция приложений)
 Интернет и сеть. Позволяет изменять адрес прокси-сервера и настроить удаленный доступ к
рабочему столу.
 Оформление. Позволяет настроить внешний вид системы.
 Оборудование. Изменяет и просматривает параметры оборудования (монитора, принтера,
жесткого диска и т.д.).
 Система. Вызывает системные конфигураторы.
 Прочее. Прочие конфигураторы
Рассмотрим по одному элементу из каждой группы.
Персональные
Из группы персональные я бы хотел рассмотреть пункт «Обо мне» (рис.80)
.
Рис. 80 Обо мне
Здесь можно заполнить дополнительную информацию о пользователе в данный момент
зарегистрированном в системе. Например, комментарии по поводу работы, дома, заполнить номера
телефонов. Во вкладке адрес можно ввести исчерпывающую информацию о местожительстве и месте работы.
На вкладке персональная информацию можно заполнить данные о занимаемой должности , домашней
странице в интернете, блог. Также возможна смена пароля, пользователя.
Интернет и сеть.
Пункт Сетевые соединения (рис. 81)
.
Рис. 81 Сетевые соединения
В сетевых соединения пользователь может добавлять, изменять, и удалять различные виды сетевых
соединений.
Оформление
Пункт Внешний вид (рис. 82)
Рис. 81 Внешний вид
Здесь можно производить различные настройки связанные в внешним видом системы. Каждый пользователь
может под себя настроить внешний вид системы, для удобства работы и просто хорошего восприятия. Во
вкладке фон можно задать картинку для рабочего стала. Во вкладке шрифты можно установить различные
шрифты для документов, приложений, рабочего стола и т.д. Во вкладке эффекты можно выставить различный
вариант использования эффектов или отключить их для повышения производительности системы.
Система
Системный монитор (рис. 82)
Рис. 82 Системный монитор
Здесь можно узнать различную информацию о системе. Во вкладке Система можно узнать имя машины в
сети, информацию об ОС, версию ядра и т.д. Также можно узнать информацию о процессоре, оперативной
памяти и доступном дисковом пространстве. На вкладке процессы (рис. 83) можно увидеть список
запущенных процессов, их состояние, приоритет, id и т.д. Возможно управление ими: изменение приоритета,
завершение и т.д.
Рис. 83 Вкладка процессы
На вкладке ресурсы можно увидеть информацию об использование ресурсов: графики использования ЦП,
использования памяти/подкачки, использования сети (рис. 84).
Рис. 84 Вкладка ресурсы
Во вкладке файловые системы можно увидеть информацию о носителях, корневых каталогах, типах файловой
системы, и информацию о свободном, занятом пространстве и т.д.
Оборудование
Мышь (рис. 85)
Здесь производятся различные настройки для удобного использования мыши. Можно например настроить
использование мыши под левшу, задать скорость указателя, его чувствительность, задержку двойного щелчка
и т.д.
Download