Попробуйте использовать ionice
:
# ionice -c3 dd if=/dev/zero of=z
Это запустит процесс dd
с приоритетом «простоя» ввода-вывода: он получает дисковое время только тогда, когда никакой другой процесс не использует дисковый ввод-вывод для определенное количество времени.
Конечно, это может привести к переполнению буферного кеша и вызвать зависание, пока система сбрасывает кеш-память на диск. В / proc / sys / vm /
есть настройки, которые влияют на это, особенно в записях dirty_ *.
Это также зависит от алгоритма планирования диска, для этого лучше всего подходит CFQ.
Закомментируйте (или удалите )разделы, чтобы другим, обслуживающим вашу конфигурацию, было понятно, что вы не обрабатываете эти типы сообщений. Затем в разделе учета вызывайте модуль SQL только в том случае, если значение Acct -Status -Type соответствует одному из типов, которые вы хотите обработать.
В вашем примере вы, кажется, игнорируете все типы, что не очень полезно. Вот пример только с запуском и остановкой обработки.
accounting {
switch "%{Acct-Status-Type}" {
case 'Start' {
sql
}
case 'Stop' {
sql
}
# Do nothing for other types
}
}
См. документацию по языку политики в man unlang
.