Решено: fstab & swap (Монтирование swap через fstab)

Knoppix

Модераторы: Warderer, Модераторы разделов

Аватара пользователя
BAF
Сообщения: 225
Статус: Я это я, какой есть такой есть.
ОС: Ubuntu

Решено: fstab & swap

Сообщение BAF »

Добра всем.

Имеется старенький комп AMD Duron 800MHz, RAM128M, ОС Debian 6 + squid3, ssh и 20 клиентов.

Выставил значение swappiness=10 (если кто подскажет какое лучше будет тока good)

Изначально делал размер раздела swap 300М, но уже после пару дней активной жизни пользователей в тырнете этого стало очень мало

Код: Выделить всё

free -m
             total       used       free     shared    buffers     cached
Mem:           121        117          4          0          4         11
-/+ buffers/cache:        101         20
Swap:          285        270         15


И память продолжала заканчиваться. Мои действия были таковы

Код: Выделить всё

dd if=/dev/zero of=/swap bs=1024 count=512K
mkswap -f /swap
sync
swapon /swap
swapoff /dev/sda2
swapon -p 10 /dev/sda2


Вот что получилось 6 часов спустя

Код: Выделить всё

free -m
             total       used       free     shared    buffers     cached
Mem:           121        115          6          0          2          6
-/+ buffers/cache:        105         16
Swap:          797        297        500


Ну это предыстория, теперь сам вопрос.

Код: Выделить всё

cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# / was on /dev/sda1 during installation
UUID=d98475bd-1828-4a62-9756-68f80a70333b /               ext4    errors=remount-ro 0       1
# /var was on /dev/sda3 during installation
UUID=69f8a70a-bf7f-4c8a-aae5-939e859252d6 /var            ext4    defaults        0       2
# swap was on /dev/sda2 during installation
UUID=d8ad8713-d137-44a4-a9c2-6d02bccfa0d5 none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0


Это родной fstab, мне нужно добавить в него мой файл /swap но тут возникли непонятки. Согласно этой статьи wiki.debian.org swap монтируется так

Код: Выделить всё

/dev/sda5              swap          swap      defaults              0      0


а как видно выше в моем случаи mount point=none и options=sw в стате и в инете нет ничего про опцию "sw".

Может кто подскажет: Что это за опция? и где правильно в статье или в родном файлике?

Так же не понятно как в fstab выставлять опции приоритета для каждого swap-а.(может это и не надо но все же напрямую с диска быстрее чем с файловой системы) Сейчас так

Код: Выделить всё

swapon -s
Filename                Type        Size    Used    Priority
/dev/sda2                               partition    292856    58000    10
/swap                                   file        524280    244704    -1
Поправите меня, если я не прав, буду тока рад.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: fstab & swap

Сообщение sash-kan »

по поводу указания приоритета — см. man swapon·
по поводу значения полей (в том числе для swap) подробно расписано в man fstab·
по поводу sw — раз нет в документации, то и не надо употреблять·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
BAF
Сообщения: 225
Статус: Я это я, какой есть такой есть.
ОС: Ubuntu

Re: Решено: fstab & swap

Сообщение BAF »

sash-kan писал(а):
14.08.2011 23:19
по поподу указания приоритета — см. man swapon·
по поводу значения полей (в том числе для swap) подробно расписано в man fstab·
по поводу sw — раз нет в документации, то и не надо употреблять·

Ну на счат man swapon тут все понятно было, иначе откуда я вообще выставлял приоритет.
По поводу sw да в доках нет и в мане тоже нет, довольно странно.
А вот на счет man fstab долго и упорно читал читал, пока не открыл man swapon и не начал так же долго и упорно читать там. И воуля

Код: Выделить всё

Add pri=value to the option field of /etc/fstab for use with swapon -a.
Все гениальное под рукой, а вдоках fstab ни слова.
Мой вопрос решен, спасибо за очевидные подсказки.
Поправите меня, если я не прав, буду тока рад.
Спасибо сказали:
neol
Сообщения: 600
ОС: Debian Stable

Re: Решено: fstab & swap

Сообщение neol »

BAF писал(а):
15.08.2011 15:37
По поводу sw да в доках нет и в мане тоже нет, довольно странно.

В /usr/include/fstab.h есть (:

#define>FSTAB_RW<-->"rw"<--><-->/* read/write device */
#define>FSTAB_RQ<-->"rq"<--><-->/* read/write with quotas */
#define>FSTAB_RO<-->"ro"<--><-->/* read-only device */
#define>FSTAB_SW<-->"sw"<--><-->/* swap device */
#define>FSTAB_XX<-->"xx"<--><-->/* ignore totally */

struct fstab
{
char *fs_spec;<><--><-->/* block special device name */
char *fs_file;<><--><-->/* file system path prefix */
char *fs_vfstype;<-><--><-->/* File system type, ufs, nfs */
char *fs_mntops;<--><--><-->/* Mount options ala -o */
const char *fs_type;<--><-->/* FSTAB_* from fs_mntops */

int>fs_freq;<--><--><-->/* dump frequency, in days */
int>fs_passno;<><--><-->/* pass number on parallel dump */
};
Спасибо сказали:
Аватара пользователя
BAF
Сообщения: 225
Статус: Я это я, какой есть такой есть.
ОС: Ubuntu

Re: Решено: fstab & swap

Сообщение BAF »

neol писал(а):
15.08.2011 16:27
BAF писал(а):
15.08.2011 15:37
По поводу sw да в доках нет и в мане тоже нет, довольно странно.

В /usr/include/fstab.h есть (:

#define>FSTAB_RW<-->"rw"<--><-->/* read/write device */
#define>FSTAB_RQ<-->"rq"<--><-->/* read/write with quotas */
#define>FSTAB_RO<-->"ro"<--><-->/* read-only device */
#define>FSTAB_SW<-->"sw"<--><-->/* swap device */
#define>FSTAB_XX<-->"xx"<--><-->/* ignore totally */

struct fstab
{
char *fs_spec;<><--><-->/* block special device name */
char *fs_file;<><--><-->/* file system path prefix */
char *fs_vfstype;<-><--><-->/* File system type, ufs, nfs */
char *fs_mntops;<--><--><-->/* Mount options ala -o */
const char *fs_type;<--><-->/* FSTAB_* from fs_mntops */

int>fs_freq;<--><--><-->/* dump frequency, in days */
int>fs_passno;<><--><-->/* pass number on parallel dump */
};

Вообще конечно я благодарен и правда я рад любой помощи, но в данном случаи я могу лишь догадываться, что Вы хотели мне сказать. Как я понял из

Код: Выделить всё

#define>FSTAB_SW<-->"sw"<--><-->/* swap device

это означает, что sw есть ничто иное как swap. Если это так то весьма и весьма логично.
П.С. лично мое мнение: не ожидал такого от дебиана, а вот в убунте это весьма нормальная ситуация:(
Поправите меня, если я не прав, буду тока рад.
Спасибо сказали:
neol
Сообщения: 600
ОС: Debian Stable

Re: Решено: fstab & swap

Сообщение neol »

BAF писал(а):
15.08.2011 19:25
Вообще конечно я благодарен и правда я рад любой помощи, но в данном случаи я могу лишь догадываться, что Вы хотели мне сказать. Как я понял из
#define>FSTAB_SW<-->"sw"<--><-->/* swap device
это означает, что sw есть ничто иное как swap. Если это так то весьма и весьма логично.

Да я сам понял не больше вашего (:

PS После ковыряния в исходниках glibc и util-linux у меня вообще сложилось впечатление, что fstab из glibc там просто не используется, соответственно и эти опции просто игнорируются.

PPS man getfsent немного пролил свет на это безобразие:
Here the field fs_type contains (on a *BSD system) one of the five strings "rw", "rq", "ro", "sw", "xx" (read-write, read-write with quota, read-only, swap, ignore).

Похоже в Linux эта опция действительно ничего не делает и появилась в fstab из-за Debian/kFreeBSD. Хотя это не более чем предположение.
Спасибо сказали: