2

Я использую Fedora на своих экземплярах Amazon EC2 для разработчиков. Я недавно перешел с Fedora 8 на Fedora 15. Я заметил, что когда я делаю "cat /etc /fstab", я вижу следующее на моей Fedora 15:

LABEL=79d3d2d4    /         ext4    defaults         1 1
none       /dev/pts  devpts  gid=5,mode=620   0 0
none       /dev/shm  tmpfs   defaults         0 0
none       /proc     proc    defaults         0 0
none       /sys      sysfs   defaults         0 0

Когда я запускаю «cat /etc /fstab» на моем старом экземпляре Fedora 8, я вижу следующее:

/dev/sda1               /                       ext3    defaults 1 1
/dev/sda2               /mnt                     ext3    defaults 0 0
/dev/sda3               swap                    swap    defaults 0 0
none                    /dev/pts                devpts  gid=5,mode=620 0 0
none                    /dev/shm                tmpfs   defaults 0 0
none                    /proc                   proc    defaults 0 0
none                    /sys                    sysfs   defaults 0 0

Исходя из моего понимания Linux, я всегда думал, что корневой диск всегда был в /dev /sda1. Так что Fedora 8 FSTAB имеет смысл для меня.

Почему файловая система Fedora 15 отличается? Почему /dev /sda1 не смонтирован как root? И куда делись /mnt и /swap на Fedora 15? У меня нет проблем с моей Fedora 15, я просто пытаюсь понять изменения и быть более образованным.

3 ответа3

6

Корневой диск не обязательно должен быть /dev /sda1, это может быть что угодно, что действительно дает файловой системе unix такую гибкость.

Проблема с тем, как это делает ваш экземпляр F8, заключается в том, что имена устройств называются в зависимости от их идентификатора SCSI (или порядка BUS). Например, у вас есть диск SCSI с ID 4, и это единственный диск в вашей системе. Он получит /dev /sda и все будет работать. Теперь вы хотите добавить новый диск, и он будет установлен с SCSI ID 3. Теперь этот новый диск становится /dev /sda, а ваш старый - /dev /sdb, и все ваши значения в fstab недействительны.

Маркировка диска и установка меткой дает вам возможность не заботиться о порядке шины, он всегда будет монтироваться независимо от физического адреса. Вы можете сделать то же самое с UUID. Вы можете увидеть их значения, выполнив tune2fs -l /dev/sda . Вполне возможно, что помеченный по-прежнему фактически монтирует /dev /sda1.

3

В Linux существуют разные схемы для постоянного именования:

  • имя устройства: /dev /sd [abc] x
  • LABEL: метка для вашей файловой системы
  • UUID: каждая файловая система имеет уникальный идентификатор

Вы можете проверить это по blkid или посмотреть на /dev/disk:

# blkid /dev/sda3
/dev/sda3: LABEL="/" UUID="dfe84dbf-d7fd-4038-872c-6dfc31f0be6f" TYPE="ext3" SEC_TYPE="ext2" 

# ls -lF /dev/disk/by-label/
total 0
lrwxrwxrwx 1 root root 10 May 10 15:02 boot -> ../../sda1
lrwxrwxrwx 1 root root 10 May 10 15:02 SWAP-sda2 -> ../../sda2

# ls -lF /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 May 10 15:02 588a12e5-a032-43e7-a21c-99a1ddacd6fb -> ../../sda1
lrwxrwxrwx 1 root root 10 May 10 15:02 dfe84dbf-d7fd-4038-872c-6dfc31f0be6f -> ../../sda3

Раздел swap может существовать или не существовать при установке.

2

Первая запись, скорее всего, относится к sda1 ; использование меток или UUID теперь стало нормой, потому что один и тот же диск не всегда может быть sda1 как вы предполагаете. Например, предположим, что вы обновляете свое ядро, а небольшие изменения в драйверах означают, что драйверы вашего контроллера дисков загружаются в новом порядке. Внезапно sda - это то, что когда-то было sdb и наоборот. В качестве другого примера, подключенное USB-устройство будет использовать следующий доступный диск, а не тот, который использовался при последней установке. Используя UUID или сопоставления меток, вы можете создать точку монтирования для конкретного USB-накопителя.

О swap и /mnt: у вас нет подключенного тома swap или /mnt. Если вы используете изображения Amazon EC2, вы должны взглянуть на эту таблицу поиска. Он перечисляет эфемерное хранилище, которое поставляется с вашим экземпляром (бесплатно!). Если тип используемого вами экземпляра показывает тома подкачки или /mnt, добавьте их в свой fstab.

/mnt - это общее пространство хранения, а swap - для кэширования памяти. Если производительность вашего приложения снижается без подкачки, вы можете добавить локальный файл следующим образом:

dd if=/dev/zero of=/swapfile bs=1024 count=`echo ${NUM_MEGS}*1024|bc`
mkswap /swapfile
echo /swapfile swap swap defaults 0 0 >> /etc/fstab

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .