Как я говорю, какие процессы запись в большой степени к диску в CentOS 5?

Для обхождения этой проблемы, я пишу сценарий обновлений для установки в субботу вечером каждой недели. Они перезагружаются в начале утра воскресенья. Сценарий перезагрузки использует shutdown.exe. Сначала это выходит из системы любые пользователи, которые могут идти, затем это выполняет фактическую перезагрузку. Это не имеет никакого значения, является ли это Терминальным сервером или нет. Пользователи знают, что между 3:00 и 4:00 в воскресенье мое окно обслуживания (согласованный на заседании руководящего состава), поэтому если они настоят на том, чтобы соединяться, то они будут насильственно разъединены без данных извинений. Может не работать на всех, но это верные работы для меня.

4
задан 3 August 2010 в 21:16
7 ответов

Так печально ни один из iostat и связанных пакетов не работает в CentOS 5. Но я смог найти преступника медленным процессом при помощи:

PS auxf | grep 'B'

Который показывает все процессы, ожидающие во сне uniterruptible, вызванном ожиданием ввода-вывода, таким образом, это, вероятно, будут процессы, делающие много ввода-вывода.

Это было благодаря этому ответу ServerFault: wa (Ожидающий ввода-вывода) от главной команды является большим

Кроме того, для тех, которые задаются вопросом, является ли ввод-вывод медленным из-за свопинга, смотрите на свой главный вывод и посмотрите то, что сумму (свободный + кэшируемый) говорят столбцы. Или лучшее использование htop, который показывает это менее запутывающим способом.

0
ответ дан 3 December 2019 в 03:02

Я также как iotop

6
ответ дан 3 December 2019 в 03:02

collectl может быть тем, что Вы после. Статистика ввода-вывода процессом, среди прочего. collectl --top io распечатать подобный вершине список, отсортированный по использованию IO, collectl -sZ для collectl собственного вывода для подсистемы процессов. Добавление --procopts t переключатель покажет потоки также.

Как Richard Salts упомянул, IOTop даст Вам UI с более подробной статистикой ввода-вывода, если у Вас будет менеджер окон, и Python затем используют это. В любом случае, хотя, если Ваше ядро не поддерживает его (2.6.20 или позже безопасная ставка), затем, никакая программа не будет работать.

1
ответ дан 3 December 2019 в 03:02

Было бы хорошо знать, какой дистрибутив Вы идете, но здесь идет:
Вы видите, какой диск Ваш раздел подкачки идет путем проверки на "подкачку Linux / Солярис" в выводе "fdisk-l/dev/sda". Это покажет Вам, если будет подкачка на том разделе.

Затем можно следить за использованием подкачки с vmstat, чтобы видеть, делает ли сервер большой свопинг.

0
ответ дан 3 December 2019 в 03:02

одна опция, которая могла бы работать на Вас, состоит в том, если диск только становится влажным в пакетах, используйте collectl для захвата статистики процесса и диска. затем посмотрите на данные для наблюдения, когда диск насыщается и 'имя файла collectl-sZ-p ' для воспроизведения собранных данных процесса и взгляда, какие процессы находятся в состоянии ВЫПОЛНЕНИЯ в течение этих времен. мог бы работать, не мог бы... - метка

0
ответ дан 3 December 2019 в 03:02

Попробуйте команду btrace (или blktrace)

0
ответ дан 3 December 2019 в 03:02

iotop отлично работает на CentOS 5.7 (2.6.18-274). Если вы используете старое ядро, попробуйте вместо него dstat .

Установите rpmforge repo:

rpm -ivh rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

, затем установите dstat из rpmforge- extras репо для получения более новой версии (0.7.2):

yum --enablerepo=rpmforge-extras install dstat

Чтобы просмотреть наиболее часто используемые процессы ввода-вывода, вы можете использовать:

dstat -d --top-io --top-bio
0
ответ дан 3 December 2019 в 03:02

Теги

Похожие вопросы