Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 10

впервые слышу что если повредился swap раздел то не сможет загрузиться система.
Да даже на работающем сервере можно почти всегда выполнить команду swapoff и при этом ничего не повредить. А уж про то что при загрузке нужен swap и речи нет. Ну и становится не понятно зачем swap вообще помещать на soft raid? Для того чтобы когда сервак будет свапить он занимался еще дополнительно и расчетом данных куда надо поместить данный блок памяти? Мне кажется это лишнее. Во всяком случае я всегда swap разделы при 4 дисках и использовании в soft raid всегда оставляю как 4 независимые раздела на каждом диске.
По ссылке в принципе и сказано, что если вылетит диск который имел swap раздел и были процессы, чьи данные были записаны в этот swap, то скорее всего процесс завершится с ошибкой. В принципе это и понятно, процесс потерял часть данных и не может к ним обратиться. Аналогично тому что вылетела планка памяти куда он записал данные. Но это никак не повлияет на загрузку ОС, swap это продолжение оперативной памяти, и как мы знаем во время перезагрузки она обнуляется. Ну во всяком случае если выключить компьютер то она точно сотрется. Так что это не критично. Да и довольно критично если данные будут сильно уходить в swap. Это будет говорить о том что где-то чего-то не хватает. Ну и активная запись в swap приведет к увеличанию iowait что сразу отразится на загрузке сервера. Уж лучше расширить память, она сейчас вроде не такая дорогая.
Ага, логика мне понятна. Про загрузку соглашусь, поправил статью.
Так как лично я ещё чайник, то пусть лучше некоторое время потормозит сервер работая со swap, чем аварийно красноглазить ночами, в попытке понять что же тут не так и как всё восстановить после того как oom killer что-то отстрелит или рухнет что-то из процессов с потерей данных. В конце-концов и статью писал для таких же чайников как я. :) Умный сисадмин, по-моему, и без моей статьи разберется как разбить диск и что вешать на raid, а что не стоит, а чайникам данный совет по-крайней мере даст время понять что происходит и что делать.

Про активный своппинг я читал. И полностью согласен, что в большинстве случаев при нормальной и отстроенной работе сервера swap использоваться практически не должен. Но при этом есть запущенные, но неактивные в течение длительного времени процессы — система их просто выкидывает в swap. Назначение сервера у меня — веб, то я лучше оперативную память буду использовать для кэша, а некоторые запущенные, менее нужные и редко используемые процессы пусть скидываются в swap, ибо место на жестком диске стоит дешевле оперативки. Хотя данная тема крайне холиварна.
что-то скорость обнуления дисков маленькая, может быть стоит указать bs=1м
Это я ошибся с расчётами времени, получилось 77 минут, т.е. чуть больше часа и скорость записи около 105-110 мегабайт/с на дисках sata2. Для этих дисков скорость приличная и не думаю, что можно выжать заметно больше. В статье есть пример вывода результата команды dd на зануление поверхности.
Но дома попробую поэкспериментировать с размером блока для записи и его влиянием на скорость.
Протестировал с размером блока 1M и 4M — скорость выросла маскимум до 110-112 мегабайт/с.
Если я не ошибаюсь, то для параллельного запуска можно было воспользоваться следующей конструкцией:
nohup dd if=/dev/zero of=/dev/sdd bs=4k &
Где nohup — команда для игнорирования обрыва связи, а & в конце служит для перевода команды в фоновый режим.
Соответственно можно последовательно запустить эту конструкцию для всех дисков, погасить терминал с ssh и идти спать/пить чай.
Спасибо, информация очень полезная. Добавил в статью. И к сожалению не могу выразить спасибо в виде плюса, карма пока ещё не позволяет.
Не за что)) я просто сталкивался с необходимостью запустить команду на сервере и расстраивался, что обрывается задача при падении ssh. Помогли советом на linux.org.ru
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации