Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Linux_asp_2_rabota.doc
Скачиваний:
10
Добавлен:
16.08.2019
Размер:
322.05 Кб
Скачать

Лабораторная работа 2 Основы использования командной строки

Следующие четыре лабораторные работы посвящены командному режиму Linux. Последний все больше уступает место другому – графическому. Но для администрирования часто применяется все же первый. Кроме того, один из уровней выполнения семейства UNIX/Linux, предназначенный для ее восстановления, называется административным однопользовательским режимом и предполагает работу только пользователя root в режиме командной строки.

2.1. Выполним первые действия в командном режиме

Нажмите комбинацию клавиш <Ctrl+Alt+F1>. В ответ на приглашение login зарегистрируйте сеанс пользователя root. Отметим, что последний имеет наибольшие права по настройке и управлению системой. При его регистрации не надо сообщать пароль, так как он не определен по умолчанию. В реальных условиях это встречается редко.

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

[root@asplinuxlive ~]#

Здесь указывается имя пользователя (root), имя хоста (asplinuxlive – network node hostname в английской терминологии). Так же сообщается, что активным является домашний каталог пользователя (~). После символа (#) можно вводить текст команд. Для начала дадим две, которые, как и все другие, следует завершать нажатием клавиши <Enter>,

pwd

ps

Первая выводит имя текущего каталога и приведет к следующему результату:

/root

а вторая – информацию о процессах, запущенных в текущий момент. Будет выведено что-то похожее на это:

PID TTY TIME CMD

4646 tty1 00:00:00 bash

4671 tty1 00:00:00 ps

Сообщается только о двух процессах. Первый из них соответствует запущенной после регистрации пользователя программе-оболочке (ее имя bash). Она обслуживает работу пользователя, интерпретируя его команды. Вторая сообщает информацию о ps - последней запущенной системной утилите (команды называют еще и так). Для обоих процессов приводятся такие данные (чаще называемые атрибутами):

PID – идентификатор или идентификационный номер процесса;

TTY – имя терминала, связанного с процессом;

TIME – суммарное время использования центрального процессора,

CMD – имя исполнимого файла, соответствующего процессу.

После загрузки системы активизируется больше процессов, но они не отображаются при таком запуске ps.

В системе командный режим обеспечивают шесть виртуальных терминалов. На втором из них откройте сеанс пользователя asplinux (других пользователей в системе пока не зарегистрировано). Для перехода на второй виртуальный терминал нажмите комбинацию клавиш <Ctrl+Alt+F2>, а затем укажите имя пользователя. Обычно после этого требуется ввести еще и пароль. Но сейчас он и для второго пользователя не определен.

Как только сеанс будет открыт, наберите еще две команды. Первая

pwd

даст такой результат

/home/asplinux

Еще раз отметим, что после регистрации пользователя, активным будет его домашний каталог, что мы и увидели в результате выполнения команды pwd, выводящей имя текущей директории. Еще раз напомним, что в тексте, кроме термина «Каталог», будем использовать еще и «Папка» или «Директория». Сама команда pwd, видимо, образована от слов print work directory.

Другая команда выводит список файлов активного каталога. У нее есть много параметров, а такой ее вид

ls

дает следующий результат:

Desktop

Приведено имя единственного элемента файловой системы в каталоге /home/asplinux. Напомним, что в этом каталоге такой файл один не обладает свойством скрытый (см. лабораторную работу 1, изучение программы Наутилус). Если Вы перезагрузили компьютер, перед выполнением лабораторной работы 2, то там не будет и файла screen.png.

И наконец, вернитесь к графическому режиму, исполнив <Ctrl+Alt+F7>. Но сначала закройте сеансы пользователей командой

exit

Теперь в графическом режиме исполните команду Приложения – Система – Терминал. Запущенная программа эмулирует работу командного режима. Ее имя xterm. Когда она запуститься, выполните такую команду:

pwd

Ее результат

/home/asplinux

показывает, что работа с Терминалом соответствует командному режиму, загруженного по умолчанию сеансу пользователя asplinux.

Затем задайте

ps

PID TTY TIME CMD

pts/0 00:00:00 bash

4775 pts/0 00:00:00 ps

Обращаем внимание, что выведены данные о двух процессах, но связаны они с терминалом, имеющим другое имя (pts/0), а не ttyx, как для виртуального терминала (здесь x соответствует его номеру и может быть целым числом от 1 до 6).

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

exit

Продолжим работу с компьютером, управляемым Linux, в командном режиме. До начала действий перейдите на первый виртуальный терминал и запустите сеанс root. Начните со следующих двух команд:

echo $SHELL

/bin/bash

echo $HOME

/root

Команда echo распечатывает на экране значения переменных оболочки. Они могут быть заданы пользователем или сохранять системные настройки. Второй тип называют переменные окружения. В приведенных примерах распечатываются значения двух из них, хранящих имена домашнего каталога пользователя и его активной оболочки. Для вывода значений переменных командой echo нужно к ее имени добавить знак $.

Домашний каталог пользователя совпадает с именем, под которым он зарегистрирован в системе. Убедимся в этом следующей командой

whoami

которая выведет

root

Более подробную информацию об открытых сеансах выводит следующая команда. Она сообщает, что root зарегистрировался на терминале с именем tty.

who

root tty1 Apr 5 07:50

asplinux :0 Apr 5 07:49

Но она видит и другого пользователя, с именем asplinux. Последний не связан с одним из шести виртуальных терминалов, так как его сеанс открыт в графическом режиме.

Более подробную информацию о зарегистрированных сеансах даст

w

с результатом

08:49:13 up 1:01, 3 users, load average: 0,00, 0,00, 0,00

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

Root tty1 - 07:50 58:21 8.12s 8.12s w

Asplinux :0 - 07:49 ?xdm? 8.32s 1.03s

/usr/bin/gnome-

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

Задание 8

Перейдите на второй виртуальный терминал и зарегистрируйте сеанс пользователя asplinux. Затем на четвертом виртуальном терминале откройте сеанс пользователя root, Как видим, можно одновременно зарегистрировать два сеанса пользователя с одним именем и правами на разных виртуальных терминалах. Дайте команду w и who. Проанализируйте результат. Выдают ли эти команды данные о пользователях, зарегистрированных во всех сеансах? Закройте сеансы на виртуальных терминалах 2 и 4.

На 1-м виртуальном терминале вновь вернемся к программе «обслуживающей» запросы пользователя в командном режиме. Для того, чтобы узнать версию программы-оболочки, используйте

bash –-version

Будет получен следующий результат:

GNU bash, version 3.00.14(1)-release (i386-redhat-linux-gnu)

Copyright (C) 2004 Free Software Foundation, Inc.

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

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

chsh --list-shell

после чего будет выведено

/bin/sh

/bin/bash

/bin/nologin

/bin/ash

/bin/bsh

/bin/tcsh

/bin/csh

Сменить оболочку можно той же командой chsh.

Всем пользователям важно знать, как распечатать имена файлов, которые находится в том или ином каталоге. В командном режиме, как мы уже говорили, это можно сделать командой ls. Ей можно задать параметры (опции), позволяющие управлять тем, какая информация и в каком виде будет представлена. Два примера опций приведены далее. В результате использования параметра -a печатается еще и информация о скрытых файлах. Обратите внимание, что первый символ имени таких файлов – точка.

ls –a

.

..

.bash_history

.bash_logout

.bash_profile

.bashrc

.cshrc

.default_contexts

.fonts.cache-1

.gconf

.gconfd

.gnome

.gnome2

.gnome2_private

.gstreamer-0.8

.gtkrc

.kde

.mc

.mozilla

.rnd

.tcshrc

.viminfo

.Xresources

Эта же команда с опцией –l, выводит еще и другие характеристики: тип файла, права доступа, количество связей, имя его владельца, размер, время последней модификации и имя. Приведем содержимое домашней директории другого пользователя – asplinux. Без опции -a печатаются данные только об одном файле – Desktop

ls –l /home/asplinux

Итого 72

drwxr-xr-x 2 asplinux asplinux 6086 Май 12 12:32 Desktop

К сказанному ранее добавим, что первый символ (d) указывает на тип файла. Это – директория. Цифра 2 указывает на количестве связей файла, о чем подробнее будет сказано далее.

Сделаем замечание о том, что, видимо, отдавая дань распространенности MS DOS, в Linux существует еще и команда dir, выполняющая такие же функции, как и ls.

Следующая команда просто очищает экран.

clear

Для завершения сеанса работы пользователя в командном режиме введите следующую команду:

logout

Если в ответ на команду будет выведено

bash: logout: not login shell else `exit`

то для этих же целей можно набрать exit или использовать комбинацию клавиш <Ctrl+d>.

И наконец, чтобы немедленно (now) перезагрузить компьютер, задайте

shutdown –r now

а для полного выключения нужна команда

shutdown –h now

Две последние команды сейчас давать не надо. Когда Linux загружен в графическом режиме, завершать работу компьютера следует используя такую последовательность действий. В меню Команды выберите пункт Завершить сеанс, а далее – Закончить работу. Если требуется завершить работу компьютера или перезагрузить его в момент использования командного режима, следует сначала вернуться в графический (напомним, что для этого сделайте <Ctrl+Alt+F7>). До перехода в такой режим надо завершить все сеансы командного режима.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]