Монтирование файловых систем

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

Настройка консоли

Вход в систему

Работа с системой начинается с входа в нее. После загрузки системы необходимо ввести логин и пароль. Если логин и пароль введены правильно, Вы увидите приветственное сообщение – так называемое сообщение дня. Текст этого сообщения находится в файле /etc/motd, там его можно изменить.

Ниже приветствия находится приглашение командного интерпретатора, обычно имеющее вид имя_узла#, -куда и необходимо вводить команды.

Виртуальные консоли

При входе в систему выводится номер виртуальной консоли:

FreeBSD/i386 (denhost.localdomain) (ttyv0)

В данном случае имя виртуальной консоли - ttyv0. Это первая консоль. Нумерация консолей начинается с 0. Для переключения между консолями служит комбинация клавиш <Alt>+<Fn>, где n – это номер консоли. Когда Вы нажимаете <Alt>+<F1> Вы переключаетесь на консоль ttyv0, <Alt>+<F2> - на консоль ttyv1 и т.д.

Виртуальные консоли – очень удобный механизм UNIX, позволяющий одновременно запускать в разных консолях несколько интерактивных программ. Программы, которые вы запускаете на одной виртуальной консоли, не прекращают выполнение, когда консоль становится невидимой. Они продолжают выполняться, когда вы переключаетесь на другую виртуальную консоль.

Правильное завершение работы в системе

Для выхода из консоли (чтобы никто ей не воспользовался во время Вашего отсутствия) предусмотрена команда logout.

Завершить работу системы можно командами:

· reboot – выполняет перезагрузку системы сразу после ввода команды;

· halt – завершает работу системы сразу после ввода команды;

· shutdown – завершает работу системы (в том числе и выполняет перезагрузку) в указанное время. Например,

shutdown –h 20:30 – позволяет выключить компьютер в 20:30 shutdown –h now - позволяет завершить работу системы немедленно shutdown –r now - позволяет перезагрузить систему немедленно

Выключить питание вы сможете, когда увидите сообщение:

The operating system has halted

 

Русификация консоли

В первую очередь необходимо отредактировать файл /etc/rc.conf с помощью редактора ee. Добавьте следующие строки:

keymap="ru.koi8-r"font8x8="cp866-8x8"
font8x14="cp866-8x14"
font8x16="cp866b-8x16"
scrnmap="koi8-r2cp866"

Строка выбора раскладки (keymap) в этом файле, скорее всего, уже есть. Далее идут строки выбора шрифтов.

После редактирования файла rc.conf нужно отредактировать файл /etc/passwd, но делать это необходимо с помощью команды vipw. При этом откроется редактор vi, который не очень удобен, для выхода из редактора с сохранением изменений необходимо набрать команду :wq Запускать команду vipw можно только с правами администратора, поэтому если вы зашли в систему не под пользователем root, перед вызовом команды vipw необходимо использовать команду su

В пятое поле базы данных пользователей (где описывается класс регистрации) нужно вставить значение russian, например:

denis:пароль:1001:1001:russian:0:0:Denis:/usr/home/denis:/bin/sh

Изменения нужно произвести для всех пользователей системы (не забудьте о пользователе root).

Далее необходимо отредактировать файл /etc/ttys. Измените для консолей ttyv0-ttyv7 тип консоли с cons25 на cons25r

ttyv0 "/usr/libexec/getty Pc" cons25r on secure

 

Затем в файле ~/.profile необходимо изменить значение переменной TERM:

TERM=${TERM:-cons25r}

После перезагрузки получаем русифицированную консоль. Для проверки введите команду ls –l - вывод будет на русском языке, меню редактора ee также будет русифицировано, также в командной строке можно теперь вводить русский текст. Переключение на русский язык ввода осуществляется с помощью клавиши CAPSLOCK.

Если файл /etc/passwd отредактировать с помощью команды vipw не удалось (например, у Вас нет прав на ее запуск), необходимо отредактировать файл:

~/.login:

setenv CHARSET KOI8-R
setenv MM_CHARSET KOI8-R
setenv LANG ru_RU.KOI8-R

Или выполнить команду pw usermod root -L russian для каждого пользователя системы.

 

Процессы

Каждому процессу в FreeBSD присваивается уникальный номер – идентификатор процесса (PID). Зная идентификатор процесса, Вы можете управлять процессом, например, завершить процесс или изменить приоритет процесса и т.д.

Принудительно завершить процесс можно с помощью команды kill. Формат ее вызова следующий: kill [параметры] PID.

Узнать идентификатор процесса позволяет команда ps. После запуска данной команды Вы увидите список процессов, запущенных от имени Вашего пользователя. Команда ps выводит идентификатор процесса (PID), терминал, к которому привязан процесс (TT), состояние процесса (STAT), процессорное время (TIME) и команду запуска процесса (COMMAND).

У команды ps много параметров, и с ними Вы можете ознакомиться на странице руководства (man ps). Так, например, ключ –a позволяет отобразить информацию о процессах всех пользователей, а не только собственных, ключ –x показывает процессы, не привязанные к терминалу (например, демоны).

Проще всего вычислить PID процесса с помощью следующей команды:

ps –ax | grep имя_процесса

Команда grep используется для поиска по заданной строке в выходном потоке.

C помощью команды kill можно не только завершить процесс, но и послать процессу определенный сигнал – уведомление о каком-то событии. Формат команды:

kill <номер сигнала> PID

kill имя сигнала PID

В таблице приведена информация о некоторых сигналах в FreeBSD.

Название Описание
SIGHUP Потеряна связь с управляющим терминалом
SIGINT Прерывание
SIGILL Некорректная команда
SIGKILL Уничтожение процесса
SIGSEGV Некорректное обращение к сегменту памяти
SIGPIPE Запись в канал, из которого некому читать
SIGTERM Программный сигнал завершения

Обычный пользователь может отправлять сигналы только своим процессам, исключением является пользователь root, который может отправить сигнал любому процессу.

Монтирование файловых систем

Чтобы работать с какой-либо файловой системой, необходимо примонтировать ее к корневой файловой системе. Например, вставив в дисковод дискету, нужно подмонтировать файловую систему дискеты к корневой файловой системе – только так Вы сможете получить доступ к файлам и каталогам, которые на этой дискете записаны. Такая же ситуация с жесткими, оптическими дисками и другими носителями данных.

Если Вы хотите заменить сменный носитель данных (дискету, компакт-диск), Вам нужно сначала размонтировать файловую систему, затем извлечь носитель данных, установить новый и заново смонтировать файловую систему. Размонтировать файловую систему можно, только когда ни один процесс ее не использует.

При завершении работы системы (перезагрузке, выключении компьютера) размонтирование всех файловых систем выполняется автоматически.

Команда монтирования (ее необходимо выполнять с привилегиями root)выглядит так:

mount [опции] <устройство> <точка монтирования>

Точка монтирования – это каталог, через который будет осуществляться доступ к монтируемой файловой системе. Например, если Вы подмонтировали компакт-диск к каталогу /mnt/cdrom, то получить доступ к файлам и каталогам, записанным на компакт-диске, можно будет через точку монтирования (именно в этом каталоге /mnt/cdrom). Точкой монтирования может быть любой каталог корневой файловой системы.

Для размонтирования файловой системы используется команда umount:

umount <устройство или точка монтирования>

Для некоторых общеизвестных устройств команда mount принимает упрощенный вид, например, mount /cdrom, mount /mnt/floppy.

Монтирование флешки

У первой подключенной флешки обычно имя устройства /dev/da0. Чтобы точно узнать, какое имя присвоено вашей флешке, достаточно ввести команду:

tail /var/log/messages

Для монтирования флешки необходимо использовать команду:

mount –t msdosfs /dev/da0s1 /mnt

Эта команда практически будет универсальной, и ее не надо изменять. Так как обычно файловая система флешки – VFAT, поэтому тип msdosfs подойдет при ее монтировании. S1- это количество разделов, как правило, на флешке он один. Если вы подключите вторую флешку, то нужно будет изменить только номер устройства - /dev/da1s1 и точку монтирования.

Пользователи и группы

pw - это утилита командной строки для создания, удаления, модифицирования и отображения пользователей и групп. Она функционирует как внешний интерфейс к системным файлам пользователей и групп.

После команды pw следует команда действия, например, useradd, usershow, groupshow или groupadd. Команда pw useradd позволяет регистрировать пользователей в системе, внося всю необходимую информацию в файлы конфигурации в автоматическом режиме.

Пример добавления пользователя с использованием pw:

Команда pw groupadd позволяет регистрировать новые группы в системе, внося всю необходимую информацию в файлы конфигурации в автоматическом режиме.

Пример добавления группы с использованием pw:

Изменить владельца файла можно с помощью команды chown, изменить группу владельца файла можно с помощью команды chgrp. Формат:

chown системное_имя_или_UID_владельца имя_файла

chgrp системное_имя_или_GID_группы имя_файла

passwd команда для смены пароля пользователя

Пример изменения пароля другого пользователя (jru) суперпользователем:

Ход работы:

1. Запустите ОС FreeBSD.

2. Измените (отредактируйте) сообщение приветствия, которое появляется на экране после ввода логина и пароля.

3. Русифицируйте консоль.

4. Зайдите в систему пользователем root еще с двух консолей

5. Создайте в директории /var директорию home. Результат команды who перенаправьте в файл /var/home/фамилия.

6. Запустите в первой консоли команду wc& без параметров. Она должна «зависнуть» в фоновом режиме.

7. С другой консоли вычислите PID процесса wc. Добавьте строчку с PID в Ваш файл.

8. Отправьте процессу wc сигнал, который должен остановить этот процесс.

9. Смонтируйте CD-ROM. Скопируйте с установочного диска файл с инструкцией по установке ОС FreeBSD INSTALL.TXT в свою домашнюю директорию. Либо смонтируйте флешку и скопируйте на нее файл /var/home/фамилия.

10. Размонтируйте смонтированное устройство, убедитесь в восстановлении структуры каталогов. Извлеките устройство.

11. Создайте в системе группу mygroup и зарегистрируйте двух пользователей таким образом, чтобы их домашние директории располагались в директории /var/home.

12. Создайте эти директории самостоятельно, измените владельца и группу владельца у каждой директории при помощи команд chown и chgrp.

13. Задайте новым пользователям пароли.

14. Войдите в систему на новых консолях в качестве новых пользователей. Результат команды who перенаправьте (добавив) в файл /var/home/фамилия.

15. Завершите работу ОС.