
- •Особенности системы. Основные понятия
- •Основные компоненты ос unix
- •Начало работы с командной строкой, командами, процессами
- •Вход пользователя
- •Ввод простых команд
- •Печать времени
- •Получение информации о работающих пользователях
- •Уничтожение процесса
- •Выход пользователя
- •Формирование команд
- •Формат команд
- •Стандартные файлы
- •Перенаправление стандартного ввода-вывода
- •Организация конвейеров команд
- •Использование метасимволов
- •Файловая система ос unix
- •Общие сведения
- •Структура
- •Именование файлов
- •Механизм защиты файлов
- •Работа с файлами и каталогами
- •Вывод содержимого каталога
- •Изменение текущего каталога
- •Создание каталога
- •Вывод имени текущего каталога
- •Переименование каталога
- •Удаление пустого каталога
- •Вывод содержимого файла, конкатенация файла и создание файла
- •Переименование и перемещение файлов
- •Копирование файлов
- •Удаление файлов и каталогов
- •Установка и изменение режима доступа к файлу
- •Лабораторная работа №6 Управление процессами в ос Linux
- •Введение
- •О процессах linux
- •Клонирование процессов, процессы init и exec
- •Стандартные ввод и вывод
- •Элементарные операции над процессами
- •Перенаправление ввода и вывода
- •Операторы перенаправления ввода-вывода Linux перечислены в таблице 1.
- •Связывание процессов с помощью каналов (конвейеров)
- •Многозадачность
- •Приоритетный и фоновый режимы
- •Мониторинг многозадачной среды
- •Информация о состоянии процессов. Мониторинг процессов с помощью ps
- •Теперь, посмотрим результат вывода следующей команды:
- •Получение списка пользователей, работающих в системе
- •Запуск команд в заданное время с помощью команд at и batch
- •Запуск команд в определенное время с помощью команды at
- •Первая команда
- •После ввода всей команды вы увидите на дисплее нечто, наподобие:
- •Управление многозадачностью
- •Использование команды nohup
- •Изменение приоритета команд с помощью nice
- •Изменение приоритета работающего процесса с помощью renice
- •Прекращение процесса с помощью kill
- •Лабораторная работа №7 Командный интерпретатор shell
- •Запуск и выход из оболочки
- •Интерпретация командной строки
- •Последовательное выполнение команд (символ ;)
- •Специальные символы
- •Поиск всех символов (метасимвол *)
- •Поиск по одному символу (метасимвол ?)
- •Использование кавычек для отмены значения символа пробел
- •Создание простых программ shell и их выполнение
- •Ограничения при именовании программ shell
- •Переменные
- •Позиционные параметры
- •Специальные параметры
- •Именованные переменные
- •Удаление переменных
- •Присвоение значений переменным
- •Использование команды read
- •Арифметические операции: команда let
- •Конструкции языка программирования Shell
- •Комментарии
- •Оператор for
- •Оператор while
- •Условные операторы. Оператор if ... Then
- •Общий формат конструкции if
- •Безусловная передача управления
- •Отладка программы
- •Лабораторная работа №8 Работа в графической среде X Windows
- •К кнопка
- •Линейка пиктограмм
- •Кнопки виртуальных Рабочих столов
- •Список задач
- •Настройка kde
- •Центр управления kde
- •Настройка Панели
- •Добавление ссылок на приложения в Панель kde
- •Работа с файлами и каталогами в kde
- •Файловая система
- •Файловый менеджер Konqueror
- •Операции с файлами и каталогами с помощью файлового менеджера Konqueror
- •Создание файлов и каталогов
- •Изменение атрибутов файла
- •Редактирование файла
- •Работа со стандартными приложениями kde
- •Уничтожение окон в kde (аварийное закрытие программ)
- •Выход из kde
- •Ваши последние действия
- •Содержание
-
Мониторинг многозадачной среды
-
Информация о состоянии процессов. Мониторинг процессов с помощью ps
-
Назначение команды ps – отслеживание работы фоновых и других процессов в системе. Поскольку в большинстве случаев фоновые процессы никак не взаимодействуют ни с экраном, ни с клавиатурой, то ps остается основным средством наблюдения за ними. Как правило, эта команда используется с рядом параметров, которые определяют выводимые поля. Одни из основных полей, выводимые командой ps перечислены в таблице 3, а некоторые опции этой команды – в таблице 4.
Таблица 3 . Основные поля, выводимые командой ps
Поле |
Описание |
USER |
Имя пользователя |
PID |
Идентификатор процесса |
%CPU |
Процентная часть ресурсов ЦП используемая данным процессом |
%MEM |
Процентная часть ресурсов ОЗУ используемая данным процессом |
TTY |
Терминал, с которого был запущен процесс |
STAT |
Статус процесса (R – выполняется, S – в режиме ожидания, N – процесс сниженного приоритета, W – временно полностью выгружен из памяти) |
START |
Время начала работы процесса |
TIME |
Время работы процесса |
COMMAND |
Имя выполненной команды |
Таблица 4. Некоторые опции команды ps
Опция |
Описание |
-a |
Процессы всех пользователей |
-l |
Расширенный формат вывода с дополнительной информацией |
-r |
Только работающие процессы |
-u |
Формат вывода с указанием пользователя |
-x |
Показать процессы без контролирующего терминала |
Теперь приведем несколько примеров использования команды ps. Итак, если без опций команда ps вывела информацию в виде
# ps
PID TTY TIME CMD
559 tty1 00:00:01 login
560 tty1 00:00:01 bash
583 tty1 00:00:00 ps
то при запросе информации только о работающих процессах:
#ps - r
PID TTY STAT TIME COMMAND
594 tty1 R 0:00 ps -r
Теперь, посмотрим результат вывода следующей команды:
#ps - ruax
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 595 0.0 0.5 2304 660 tty1 R 16:14 0:00 ps -ruax
Следует также отметить, что в случае, когда вся выводимая информация не помещается целиком на экране, следует воспользоваться командой more (см. пример в пункте 2.2)
-
Получение списка пользователей, работающих в системе
Для того чтобы узнать, кто в данный момент находится в системе и с чем работает – используется команда w.
Для получения списка зарегистрированных в системе пользователей вам надо просто ввести who, и вы увидите на экране список, похожий на приведенный ниже:
# who
root console May 19 07:00
kiv tty02 May 19 08:12
sam tty03 May 19 09:35
cyr ttys7 May 19 12:55
Как видно, в системе зарегистрировано четыре пользователя; в списке приведено также время регистрации каждого из них.
Команда who имеет несколько опций, однако здесь мы расскажем только о двух из них.
-
-u перечисляет пользователей с указанием времени бездействия (точка (.) означает, что пользователь активно работал в последнюю минуту, old – что последний раз он нажимал клавиши более суток назад);
-
-H выводит заголовок.
Таблица 5. Поля вывода команды who
Поле |
Описание |
USER |
Имена пользователей |
LINE |
Использованные линии и терминалы |
LOGIN-TIME |
Время входа пользователя в систему |
IDLE |
Время бездействия пользователя |
FROM |
Имя удалённой машины или дисплея Х-терминала |