Ubuntu минимальная установка командной строки от mini.iso и apt-get install gnome-shell gdm gnome-terminal
(и firefox
возможно).
nohup
режим не имеет никакой уместности на том, является ли процессом связанный ввод-вывод. Таким образом да, медленное устройство хранения данных, вероятно, замедлит процесс.
Если процесс имеет пульсирующий вывод (например, 10 строк каждый 1 час), но пропускная способность ниже, чем Ваше "медленное" устройство хранения данных, то можно улучшить производительность, например, пишущий в канал или FIFO (который затем копируется в медленное устройство хранения данных другим процессом), пока один пакет вывода не превышает буфер канала.
mkfifo /tmp/fifo
nohup prog >/tmp/fifo &
cat </tmp/fifo >slow_log_file &
или
nohup prog | buffer -s 16k >slow_log_file &
где буфер является специальной программой (доступный на Debian с apt-get install buffer
) это поддерживает многочисленную внутреннюю очередь, чтобы не блокировать устройство записи.
Или если Вы управляете исходным кодом, Вы могли бы реализовать буферизацию себя и возможно использовать отдельный процесс регистратора для записи в медленное устройство хранения данных. Я знаю, что djbdns (известный его устойчивостью) использует процесс регистратора.
Как нормальный процесс, которые производят огромный IO, он будет заблокирован. Но обычно блоки файловой системы кэшируются в памяти. И когда попытка ОС записать грязные блоки в диск, Вы будете видеть, что ожидают столбец в главном выводе, становится 100%
directio
или O_DIRECT
в open()
для отключают кэширующийся
– dchirikov
14.01.2013, 14:40