
Я использую 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, просто пытаюсь понять изменения и быть более образованным.
решение1
Первая запись, вероятно, относится к sda1
; использование меток или UUID теперь является нормой, поскольку один и тот же диск может не всегда быть sda1
таким, как вы предполагаете. Например, предположим, что вы обновляете свое ядро, и небольшие изменения в драйверах означают, что ваши драйверы контроллера диска загружаются в новом порядке. Внезапно sda
становится тем, что было раньше, sdb
и наоборот. В качестве другого примера, подключенное USB-устройство будет использовать следующий доступный диск, а не тот, который оно использовало в последний раз, когда оно было вставлено. Используя сопоставления UUID или меток, вы можете создать точку монтирования для определенного USB-накопителя.
О swap и /mnt: у вас нет подключенного swap или /mnt тома. Если вы используете образы Amazon EC2, вам следует посмотретьэта таблица поиска. Он перечисляет эфемерное хранилище, которое идет с вашим экземпляром (бесплатно!). Если используемый вами тип экземпляра показывает тома swap или /mnt, добавьте их в fstab.
/mnt
это общее пространство для хранения, в то время как swap предназначен для кэширования памяти. Если производительность вашего приложения снижается без 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
решение2
Корневой диск не обязательно должен быть /dev/sda1, это может быть что угодно, что на самом деле и обеспечивает файловой системе Unix такую гибкость.
Проблема с тем, как это сделал ваш экземпляр F8, заключается в том, что устройства именуются на основе их идентификатора SCSI (или порядка шины). Так, например, у вас есть диск SCSI с идентификатором 4, и это единственный диск в вашей системе. Он получит /dev/sda, и все будет работать. Теперь вы хотите добавить новый диск, и он будет установлен с идентификатором SCSI 3. Теперь этот новый диск становится /dev/sda, а ваш старый становится /dev/sdb, и все ваши значения в fstab недействительны.
Маркировка диска и монтирование по метке дает вам гибкость, чтобы не заботиться о порядке шины, он всегда будет монтироваться независимо от физического адреса. Вы можете сделать то же самое с UUID. Вы можете увидеть их значения, выполнив tune2fs -l /dev/sda
. Вполне возможно, что маркированный диск все еще фактически монтирует /dev/sda1.
решение3
В Linux существуют различные схемы постоянного именования:
- имя устройства: /dev/sd[abc]x
- МЕТКА: метка для вашей файловой системы
- 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
раздел может существовать или отсутствовать при установке.