Настройка и работа в Linux




Как разделяют пингвинов Часть


Сергей А. ЯРЕМЧУК, 02/2003.

И, наконец, третья часть статьи. В прошлых двух мы рассмотрели процесс создания разделов и файловые системы, которые можно использовать в Linux. В последней же части разберемся с оставшимися утилитами и поговорим об оптимизации. Также рассмотрим еще одну virtual memory файловую систему, имеющую отношение скорее к оптимизации, поэтому пропущенную в предыдущей части статьи.

Итак, первой утилитой, которую мы рассмотрим, будет часто упоминаемая во второй части fsck. Но, чтобы просто не перечислять то, что можно найти в man, давайте разберем некоторые моменты, связанные с начальной загрузкой и остановкой системы. Я думаю, что это не будет лишним, ведь наша задача - разобраться в конце концов, как это все работает.

Итак, когда в Grub выбран пункт меню Linux, загружается ядро, которое в свою очередь запускает программу init, которая запускает сценарий /etc/rc.d/rc.sysinit, устанавливающий различные системные переменные и выполняющий некоторую работу по инициализации системы. Открываем этот файл. Все что в нем есть, я приводить естественно не буду, хотя там много интересных строк, остановимся только на параметрах касающихся работы проверки разделов жестких дисков и их монтирования.

# Start up swapping. action $"Activating swap partitions: " swapon -a -e

В этой строке монтируются все свап разделы, которые прописаны в /etc/fstab (опция -а), а для того, чтобы программа не слишком ругалась и не прекратила свою работу в случае неудачи, использована опция -е. Двигаемся дальше.

1. if [ -f /forcefsck ]; then 2. fsckoptions="-f $fsckoptions" 3. elif [ -f /.autofsck ]; then 4. echo $"Your system appears to have shut down uncleanly" 5. AUTOFSCK_TIMEOUT=5 6. AUTOFSCK_DEF_CHECK=no 7. [ -f /etc/sysconfig/autofsck ] && . /etc/sysconfig/autofsck 8. if [ "$AUTOFSCK_DEF_CHECK" = "yes" ] ; then 9. AUTOFSCK_OPT=-f 10. else 11. AUTOFSCK_OPT= 12.fi 13.if [ "$PROMPT" != "no" ]; then 14. if [ "$AUTOFSCK_DEF_CHECK" = "yes" ] ; then 15. if /sbin/getkey -c $AUTOFSCK_TIMEOUT -m $"Press N within %d seconds to not force file system integrity check..." n ; then AUTOFSCK_OPT= 16. fi 17. else 18. if /sbin/getkey -c $AUTOFSCK_TIMEOUT -m $"Press Y within %d seconds to force file system integrity check..." y ; then 19. AUTOFSCK_OPT=-f 20. fi 21. fi 22. echo 23. else 24. # PROMPT not allowed 25. if [ "$AUTOFSCK_DEF_CHECK" = "yes" ] ; then 26. echo $"Forcing file system integrity check due to default setting" 27. else 28. echo $"Not forcing file system integrity check due to default setting" 29. fi 30. fi 31. fsckoptions="$AUTOFSCK_OPT $fsckoptions" 32. fi




Содержание  Назад  Вперед