Как я могу записать, какое действие процесса или ядра использует диск в GNU/Linux?

Очень простой способ обойти это - открыть путь, где pip установлен в проводнике файлов, и нажать на путь, а затем набрать cmd, это задает путь, позволяющий вам упростить установку.

4 года спустя, но я столкнулся с тем же вопросом пару дней назад, и все другие методы не сработали для меня.

14
задан Mihai Limbășan 23 March 2009 в 04:22
поделиться

7 ответов

iotop хорош (большой, на самом деле).

, Если у Вас есть ядро до 2.6.20, Вы не можете использовать большинство этих инструментов.

Вместо этого можно попробовать следующее (который должен работать почти на любые 2,6 ядра IIRC):

    
sudo -s
dmesg -c
/etc/init.d/klogd stop
echo 1 > /proc/sys/vm/block_dump
rm /tmp/disklog
watch "dmesg -c >> /tmp/disklog"
   CTRL-C when you're done collecting data
echo 0 > /proc/sys/vm/block_dump
/etc/init.d/klogd start
exit (quit root shell)

cat /tmp/disklog | awk -F"[() \t]" '/(READ|WRITE|dirtied)/ {activity[$1]++} END {for (x in activity) print x, activity[x]}'| sort -nr -k2

dmesg-c строки очищают Ваш журнал ядра. Регистратор затем отключен, вручную (использующий часы) выведенный к диску (буфер памяти является небольшим, который является, почему мы должны сделать это). Позвольте ему работать в течение приблизительно приблизительно пяти минут и затем CTRL-c процесс часов. После отключения входа и перезапуска klogd, проанализируйте результаты с помощью немного awk в конце.

16
ответ дан 1 December 2019 в 12:14
поделиться

Если Вы используете ядро, более новое, чем 2.6.20, который очень легок, поскольку это - первая версия ядра Linux, которое включает учет ввода-вывода. Если Вы компилируете свое собственное ядро, несомненно, будут включать:

CONFIG_TASKSTATS=y
CONFIG_TASK_IO_ACCOUNTING=y

Ядра от пакетов Debian уже включают эти флаги, таким образом, нет никакой потребности в перекомпиляции Вашего ядра. Стандартная утилита для доступа к вводу-выводу бухгалтерские данные в режиме реального времени является iotop (1). Это дает Вам полный список процессов, организованных планировщиком ввода-вывода, и отображает статистику для каждого процесса для чтения, запишите и общая используемая пропускная способность средств ввода-вывода.

3
ответ дан 1 December 2019 в 12:14
поделиться

Можно использовать команду UNIX lsof (список открытые файлы). Это распечатывает процесс, идентификатор процесса, пользователя для любого открытого файла.

1
ответ дан 1 December 2019 в 12:14
поделиться

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

0
ответ дан 1 December 2019 в 12:14
поделиться

Можно хотеть заняться расследованиями iotop для Linux. Существуют некоторые версии Соляриса, плавающие вокруг, но например, существует пакет Debian.

2
ответ дан 1 December 2019 в 12:14
поделиться

Вы также можете использовать htop , включив столбец IO_RATR. Htop - отличная замена топу.

1
ответ дан 1 December 2019 в 12:14
поделиться

Я недавно слышал о Мортадело, клоне Филмона, но сам еще не проверял его:

http://gitorious.org/mortadelo

0
ответ дан 1 December 2019 в 12:14
поделиться
Другие вопросы по тегам:

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