Как пересобрать fstab автоматически

13

Я случайно удалил все записи из файлов fstab во время резервного копирования (да, я знаю;)).

Я хотел бы знать, если есть способ восстановить его с текущими параметрами монтирования, так как я не перезагружал сервер с момента удаления. Если такой программы нет, кто-нибудь может мне помочь ее восстановить.

Используя это , я нашел команду, чтобы показать текущую настройку, но я не знаю, что с ней делать.

$ sudo blkid
/ dev / sda1: UUID = "3fc55e0f-a9b3-4229-9e76-ca95b4825a40" TYPE = "ext4" 
/ dev / sda5: UUID = "718e611d-b8a3-4f02-a0cc-b3025d8db54d" TYPE = "swap" 
/ dev / sdb1: LABEL = "Files_Server_Int" UUID = "02fc2eda-d9fb-47fb-9e60-5fe3073e5b55" TYPE = "ext4" 
/ dev / sdc1: UUID = "41e60bc2-2c9c-4104-9649-6b513919df4a" TYPE = "ext4" 
/ dev / sdd1: LABEL = "Диск расширения" UUID = "782042B920427E5E" TYPE = "ntfs" 


$ cat / etc / mtab
/ dev / sda1 / ext4 rw, ошибки = remount-ro 0 0
proc / proc proc rw, noexec, nosuid, nodev 0 0
нет / sys sysfs rw, noexec, nosuid, nodev 0 0
нет / sys / fs / fuse / connections fusectl rw 0 0
нет / sys / kernel / debug debugfs rw 0 0
нет / sys / kernel / security securityfs rw 0 0
нет / dev devtmpfs rw, mode = 0755 0 0
нет / dev / pts devpts rw, noexec, nosuid, gid = 5, mode = 0620 0 0
нет / dev / shm tmpfs rw, nosuid, nodev 0 0
нет / var / run tmpfs rw, nosuid, mode = 0755 0 0
нет / var / lock tmpfs rw, noexec, nosuid, nodev 0 0
нет / lib / init / rw tmpfs rw, nosuid, mode = 0755 0 0
нет / var / lib / ureadahead / debugfs debugfs rw, relaytime 0 0
/ dev / sdc1 / home ext4 rw 0 0
/ dev / sdb1 / media / Files_Server ext4 rw 0 0
binfmt_misc / proc / sys / fs / binfmt_misc binfmt_misc rw, noexec, nosuid, nodev 0 0
/ dev / sdd1 / media / Expansion \ 040Drive fuseblk rw, nosuid, nodev, allow_other, blksize = 4096, default_permissions 0 0
gvfs-fuse-daemon /home/yvoyer/.gvfs fuse.gvfs-fuse-daemon rw, nosuid, nodev, пользователь = yvoyer 0 0
/ dev / sdd1 / media / Backup500 fuseblk rw, nosuid, nodev, синхронизация, allow_other, blksize = 4096, default_permissions 0 0
/ dev / sr0 / media / DIR-615 iso9660 ro, nosuid, nodev, uhelper = udisks, uid = 1000, gid = 1000, iocharset = utf8, mode = 0400, dmode = 0500 0 0
gvfs-fuse-daemon /home/cdrapeau/.gvfs fuse.gvfs-fuse-daemon rw, nosuid, nodev, пользователь = cdrapeau 0 0

yvoyer
источник

Ответы:

12

Ну, я не знаю автоматизированного способа его восстановления, но из вашей пасты, созданной вручную ...

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc /proc proc nodev,noexec,nosuid 0  0
UUID=3fc55e0f-a9b3-4229-9e76-ca95b4825a40 / ext4 errors=remount-ro 0 1
UUID=718e611d-b8a3-4f02-a0cc-b3025d8db54d none swap sw 0 0 
UUID=41e60bc2-2c9c-4104-9649-6b513919df4a /home ext4 defaults 0 0
UUID=02fc2eda-d9fb-47fb-9e60-5fe3073e5b55 /media/Files_Server ext4 defaults 0 0

Пожалуйста, подождите, пока пара других людей рассмотрит и одобрит это, прежде чем слепо копировать и перезагружать его, второй набор глаз всегда хорош;)

Я пропустил sdd и sr0, так как они выглядят так, как будто они сделаны gvfs.

цезий
источник
Спасибо, но вы не указали ничего о cd-rom "/ media / cdrom /", это нормально?
Yvoyer
Извините, должен был сказать, я отредактирую свой ответ. Да, я это тоже намеренно исключил, так как он также обрабатывается gvfs, автоматически монтируемым при вставке диска.
Цезий
Лучше перезагрузить или запустить mount -a. С mount -aопцией, это могло сломать все, или это даст мне предупреждения? Огромное спасибо.
yvoyer 22.11.11
1
mount -aточно ничего не сделает, если строки в fstab уже смонтированы. Вы должны увидеть точно нулевой вывод. Так что да, я думаю, вы можете смело попробовать это. Если вы получаете какие-либо сообщения, это означает, что строка fstab может быть неправильной. Хотя вряд ли что-то сломается.
Цезий
7

Диски с графическим интерфейсом программы управления fstab. Вы можете перейти туда и автоматически включить параметры монтирования разделов, выключив и снова включив их. Я думаю, что это восстановит ваш fstabрежим по умолчанию.

мертв
источник
1
ОП ждал ответа, чтобы перезагрузить свой сервер почти 5 лет назад ....
Органический мрамор
23
@OrganicMarble, если запрашивающий был единственным, для кого здесь были ответы, кнопка «принять» могла бы быть просто кнопкой удаления сообщения.
Олат
2
blkid | grep /dev/sd | sed -e 's/:.* UUID/;UUID/' -e 's/ TYPE.*//' | while read re; do sed -i "s;$re;" /etc/fstab; done

Этот ^ cmd работает для меня довольно хорошо.

Андрей
источник
Это дает мне команду `s 'на 12 и 102
символах