Нет, последняя строка не сообщает время ожидания ввода-вывода, но жестко запрограммирована на отображение нуля в Solaris, независимо от фактической нагрузки.
С распространением многоядерных и многопоточных процессоров время ожидания ввода-вывода
перестало иметь реальное значение и даже могло ввести в заблуждение. Операции ввода-вывода обычно не привязаны к одному модулю ЦП, поэтому не существует конкретного ЦП, ожидающего ввода-вывода, когда один или несколько из них ожидают обработки. В любом случае только процессы ожидают завершения ввода-вывода, это ожидание не использует никаких циклов ЦП, поэтому технически ЦП в это время простаивают и доступны для других задач. Затем сообщается, что операции ввода-вывода, не отличимые от времени простоя, равны нулю, начиная с Solaris 10, а затем то, что раньше было ожиданием ввода-вывода
, теперь включается во время простоя ЦП, что составляет В самом деле.
Если вас беспокоит ввод-вывод, посмотрите статистику диска с помощью iostat
(например, iostat -xntc 5
и посмотрите время обслуживания svc_t
], количество операций ввода-вывода в очереди ожидания wait
и процент времени, в течение которого очередь не пуста % w
), а не статистика ЦП, сообщаемая vmstat
, sar
, top
, iostat
и тому подобное.
Эта статья также может быть интересна для исследования проблем с производительностью ввода-вывода: http://dtrace.org/blogs/brendan/2011/05/11/file-system-latency-part-1/
Этот объясняет, что проблема с Linux такая же.
Вы можете использовать -s
или --service=
, чтобы указать серверную часть базы данных.
Get entries from administrative database.
-i, --no-idn disable IDN encoding
-s, --service=CONFIG Service configuration to be used
-?, --help Give this help list
--usage Give a short usage message
-V, --version Print program version
Проверьте, находится ли пользователь в ldap или файловом бэкэнде, выполнив
getent -s ldap passwd username
getent -s files passwd username
Вы можете найти данную запись в каждой службе, используя getent
, например.:
getent -s files passwd $USER
getent -s ldap passwd $USER
" Порядок служб в строке " в/etc/nsswitch.conf
" определяет порядок, в котором будут запрашиваться эти службы, пока не будет найден результат. Таким образом, проверяя каждый сервис, вы можете проверить, какой сервис отвечает за данную запись.