Тема: Сбор сведений о системе и управление процессами.
Время выполнения: 4 часа
Теоретический материал:
В данном сценарии изучаются команды, предоставляющие сведения о системе.
Начальные условия: Командная строка после входа в систему.
Определить имя текущей UNIX-системы с помощью команды uname -a
user@desktop ~ $ uname -aLinux thinkpad 2.6.13-gentoo-r4 #1 Mon Oct 17 12:09:36 MSD 2005 i686 Intel(R)...Здесь выводится полная версия системы, дата компиляции ядра и тип процессора.
Вывести
содержимое каталога proc с помощью команды ls /proc:
user@desktop ~ $ ls /proc1/ 7/ 8113/ 8209/ 9073/ dri/ modules103/ 7060/ 8124/ 8211/ 9324/ driver/ mounts@106/ 7128/ 8125/ 8213/ 9325/ execdomains mtrr185/ 7693/ 8131/ 8215/ 937/ fb net/186/ 7770/ 8135/ 8319/ 9376/ fb1/ partitions...Признаком
операционной системы Linux является наличие каталога /proc, которая содержит
псевдофайлы, предоставляющие системную информацию и позволяющие настраивать
ядро.
Вывести текущие пользовательские сеансы с помощью команды who:
user@desktop ~ $ whouser tty1 2005-10-24 13:17user pts/0 2005-10-24 13:19
user pts/2 2005-10-24 23:59
Вывести список всех примонтированных устройств с помощью команды mount:
user@desktop ~ $ mount/dev/hda6 on / type reiserfs (rw,noatime)proc on /proc type proc (rw)sysfs on /sys type sysfs (rw)udev on /dev type tmpfs (rw,nosuid)devpts on /dev/pts type devpts (rw)/dev/hda1 on /mnt/win type ntfs (ro,uid=1000,gid=100,nls=utf8)Первый столбец — имя устройства, второй — точка монтирования, далее следует тип файловой системы и опции монтирования.
Вывести загруженность примонтированных дисков с помощью команды df -h:
user@desktop ~ $ df -hФайловая система Разм Исп Дост Исп% смонтирована на/dev/hda6 24G 21G 3,4G 86% /udev 251M 180K 251M 1% /dev/dev/hda1 9,4G 7,7G 1,7G 83% /mnt/winnone 251M 0 251M 0% /dev/shmВывести информацию о всех выполняющихся процессах с помощью команды ps aux:
user@desktop ~ $ ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.0 1432 480 ? S 13:16 0:01 init [3]root 2 0.0 0.0 0 0 ? SN 13:16 0:00 [ksoftirqd/0]root 3 0.0 0.0 0 0 ? S< 13:16 0:00 [events/0]..user 8456 0.3 4.4 34932 22944 ? S 13:24 2:15 emacsuser 22537 0.0 0.3 3720 1560 pts/3 Ss 22:37 0:00 /bin/bashuser 8839 0.0 0.1 2644 932 pts/3 R+ 23:01 0:00 ps auxОставить в выводе предыдущей команды только системные процессы с помощью команды ps aux | grep -v user:
user@desktop ~ $ ps aux | grep -v userUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.0 1432 480 ? S 13:16 0:01 init [3]root 2 0.0 0.0 0 0 ? SN 13:16 0:00 [ksoftirqd/0]root 3 0.0 0.0 0 0 ? S< 13:16 0:00 [events/0]...root 6989 0.0 0.1 1672 704 ? Ss Oct25 0:00 /usr/sbin/syslogroot 7128 0.0 0.1 2020 716 ? Ss Oct25 0:00 /usr/sbin/fcron Часть процессов, показанные в квадратных скобках, — это потоки ядра, исполняющие специальные функции. Можно выделить демонов — в столбце терминала они имеют символ «?». Например, системный журнал (syslog) или планировщик задач (cron).
Вывести иерархию процессов с помощью команды pstree:
user@desktop ~ $ pstreeinit─┬─acpid ├─5*[agetty] ├─2*[artsd] ├─cpufreqd ├─dcopserver ├─events/0 ├─fcron ├─gconfd-2 ├─hcid ├─kaccess ├─kded───kded───kded ├─kdeinit─┬─artsd───artsd───artsd │ ├─kio_file │ ├─kio_imap4───kio_imap4...В вершине дерева стоит процесс init.
Рассмотреть поведение процессов интерактивно с помощью команды top.
В данном сценарии рассматриваются демоны как процессы, не связанные ни с одним терминалом.
Начальные условия: Командная строка после входа в систему.
Если запустить команду в фоновом режиме и выйти из командной оболочки: например, find / -name "*.html" -exec grep -Hn "linux loader" \{} \; & и exit, то запущенная команда завершится по сигналу SIGHUP.
user@desktop ~ $ find / -name "*.html" -exec grep -Hn "linux loader" \{} \; &[1] 9555user@desktop ~ $ exitДля того, чтобы программы неполучали сигнал SIGHUP, используется специальная команда nohup: nohup find / -name "*.txt" -exec grep -Hn "linux loader" \{} \; &
user@desktop ~ $ nohup find / -name "*.html" -exec grep -Hn "linux loader" \{} >> result\; &[1] 9783user@desktop ~ $ exitЭта программа завершится корректно после окончания поиска.
В данном сценарии изучается механизм приоритетов UNIX и команды для изменения приоритетов запускаемых процессов.
Начальные условия: Командная строка после входа в систему.
Каждый процесс в системе имеет свой уровень приоритета (в UNIX он называется «nice»), который можно увидеть с помощью команды ps –l — в столбце «NI».
user@desktop ~ $ ps -lF S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD0 S 1000 17223 17222 0 75 0 - 994 wait pts/1 00:00:00 bash0 R 1000 17485 17223 0 75 0 - 612 - pts/1 00:00:00 psПо умолчанию, приоритет процессов простого пользователя равен нулю.
Для запуска процесса с заданным приоритетом воспользуемся командой nice. Например, запустим создание архива с пониженным приоритетом: nice -n 10 tar -cjf libraries.tar.bz2 /usr/lib/.
user@desktop ~ $ nice -n 10 tar -cjf libraries.tar.bz2 /usr/lib/Чтобы изменить приоритет уже запущенной программы используется команда renice. Например, для понижения приоритета заранее запущенного процесса архивации tar -cjf libraries.tar.bz2 /usr/lib & воспользуемся командой renice +10 -p 3442:
user@desktop ~ $ tar -cjf libraries.tar.bz2 /usr/lib &[1] 3442user@desktop ~ $ renice +10 -p 3442Простые пользователи не могут повышать приоритет процессов, только понижать.
1) Сравните время создания корневого каталога с текущим временем системы.
2) Получите список всех типов файловых систем, примонтированных в настоящий момент.
3) Найдите три процесса, использующих самый большой объём памяти. Какой процент памяти они потребляют от общего объёма?
4) Получите иерархию родительских процессов для текущей командной оболочки.
5) Найдите, в каком файле в каталоге /proc хранится информация о системной памяти.
6) С помощью сигнала остановки процесса и команды bg запустите три параллельных процесса архивации каталога /etc, /home и /tmp.
1. Что рассматривает сценарий изменения приоритетов?
2. Что рассматривает сценарий запуска демонов?
3. Какой тип имеет корневая файловая система?
Скачано с www.znanio.ru
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.