суббота, 14 января 2012 г.

Ускоряем Linux: ramdisk.

Сидел и думал, чтоб такого полезного извлечь из 4 Гб оперативки… Решил замутить ramdisk. Порывшись в нете наткнулся на на заметку Serg Markov «Использование tmpfs» и понял — это именно то, что нужно.


По описанию в fstab прописал ramdisk:
tmpfs /home/user/.ramdisk tmpfs defaults 0 0

Создаем еще одну папку /home/user/.ramdisk-archive.
Кидаем все что хотим перенести на tmpfs в /home/user/.ramdisk. Чтоб система не ругалась делаем слимники туда, где должны быть перенесенные папки. Копируем /home/user/.ramdisk в /home/user/.ramdisk-archive.

Чтоб при включении перенести файлы из .ramdisk-archive в .ramdisk добавил в /etc/init.d/before.local команду:
rsync -a /home/user/.ramdisk-archive/ /home/user/.ramdisk

Теперь перед запуском init будем копировать наши папки на ramdisk. Проходит все довольно быстро и с учетом того, что потом Gnome стартует шустрее, общее время загрузки практически не меняется.

Теперь нужно-же сохранять изменения в .ramdisk-archive при выключении ПК.
Тут немного сложнее. В /etc/init.d кидаем файлик такого содержания:
#!/bin/sh
 rsync -a /home/user/.ramdisk/ /home/user/.ramdisk-archive
 exit 0

Обзываем ramdisk-sync-shutdown и ставим права на выполнение.

Теперь в папку /etc/init.d/rc0.d и /etc/init.d/rc6.d кидаем слимник с нашего файла: S00ramdisk-sync-shutdown.

Все, теперь при выключении или перезагрузке содержимое нашего ramdisk-a будет сохранено на HDD в .ramdisk-archive.

Ну и на последок не забываем про форсмажор:)
crontab */20 * * * * rsync -a /home/user/.ramdisk/ /home/user/.ramdisk-archive

Хотя если есть UPS то можно обойтись и без этого.

Ну и теперь — что это дало? Ну например LibreOffice запускается у меня примерно так: рас:), GIMP гдето рас-и:)

Да ну и собственно, что яскинул на ramdisk: .adobe .claws-mail .config .eric4 Firefox .fontconfig .gconf .gconfd .gimp-2.6 .gnome .gnome2 .gnome2_private .java .libreoffice .local .macromedia .mc .mplayer .Skype .tilda

Да, собственно эти все действия произведены на моей любимой openSuse 11.4:)

Комментариев нет:

Отправить комментарий