Что означает опция «sw» в / etc / fstab?

8

В моем Ubuntu 14.04 / etc / fstab у меня есть следующая строка:

UUID=e4YGg1-2bHU-Ylum-3FwK-MK3s-1Fjf-ZvQEh2 none            swap    sw              0       0

Который кажется довольно актуальным для обмена.

Я не могу понять, что ЮЗ вариант стоять. В фстабе нет никаких указаний ни на человека, ни на подмену.

Любая идея?

Cinlloc
источник
2
Я думаю, что это может сказать вам то, что вы хотите знать: это подтверждает то, что я всегда предполагал.
AFH

Ответы:

2

Согласно ссылке ниже, опция 'sw' указывает, что раздел подкачки должен быть активирован командой 'swapon -a':

/dev/hda6 none swap sw 0 0

http://www.linuxquestions.org/questions/linux-newbie-8/fstab-defaults-sets-wrong-permissions-145958/

Олег Болден
источник
man7.org/linux/man-pages/man8/swapon.8.html : -a, --all: All devices marked as ``swap'' in /etc/fstab are made available, except for those with the ``noauto'' option.также: git.kernel.org/cgit/utils/util-linux/util-linux.git/tree/…
Том Ян
Тот же случай для версии Ubuntu 14.04 имеет: git.kernel.org/cgit/utils/util-linux/util-linux.git/tree/mount/…
Том Ян
3

Этот столбец описан в Linux man fstabкак:

Четвертое поле ( fs_mntops) описывает параметры монтирования, связанные с файловой системой.

Форматируется как список параметров, разделенных запятыми. Он содержит как минимум тип монтирования плюс любые дополнительные параметры, соответствующие типу файловой системы. Для документации по доступным опциям для файловых систем не-nfs, см mount(8).

Когда есть файловая система swap, эти параметры монтирования ничего не делают. Смотрите: В чем разница между записями подкачки в fstab?

Эти опции fstab являются частью struct fstab:

 struct fstab {
         char    *fs_spec;       /* block special device name */
         char    *fs_file;       /* filesystem path prefix */
         char    *fs_vfstype;    /* type of filesystem */
         char    *fs_mntops;     /* comma separated mount options */
         char    *fs_type;       /* rw, ro, sw, or xx */
         int     fs_freq;        /* dump frequency, in days */
         int     fs_passno;      /* pass number on parallel fsck */
 };

Таким образом, в итоге есть 6 столбцов в /etc/fstabсредствах:

  1. fs_spec: описывает блочное специальное устройство, локальную файловую систему или удаленную файловую систему, которая будет смонтирована.
  2. fs_file: описывает точку монтирования для файловой системы. Для разделов подкачки это поле должно быть указано как none.
  3. fs_vfstype: описывает тип файловой системы.
  4. fs_mntops: описывает параметры монтирования, связанные с файловой системой.
  5. fs_freq: используется для этих файловых систем dumpкомандой, чтобы определить, какие файловые системы должны быть выгружены.
  6. fs_passno: используется fsckпрограммой для определения порядка, в котором проверки файловой системы выполняются во время перезагрузки.
kenorb
источник
Ну, roи rwописаны в mount (8): man7.org/linux/man-pages/man8/mount.8.html , хотя swи, xxвероятно, не имеют смысла в Linux. Кроме того, fstab в Linux имеет только 6 полей roи rwотносится к полю параметров монтирования.
Том Ян
Это верно, 4-й столбец описывает параметры монтирования, связанные с файловой системой.
Кенорб
Уточнил еще больше.
Кенорб
Хм, на самом деле, я хочу сказать, что бессмысленно поднимать вопрос о BSD fstab. fstab в Linux имеет 6 полей, в то время как в коде, который вы цитировали, fstab в BSD имеет 7. И дополнительное, которое есть у BSD, в то время как в Linux его нет char *fs_type; /* rw, ro, sw, or xx */. Я имею в виду, да, есть у BSD, но так? Это все равно что сказать "и так swи swapначинается с sw, swзначит swap".
Том Ян
@Tom Исправлены проблемы несоответствия.
Кенорб