Версия. mount+fstab=недоразумение.
#!DebainBased
Первое, на что хочу обратить внимание, так это на то, что информация о разделах, подлежащих монтированию в Linux может быть размещена как в fstab, так и в system.d. Источник. Это позволяет организовать разные сценарии запуска системы, также существует возможность использовать cron, init в той комбинации, как вам нравится. Здесь я считаю, что эта возможность нужна для балансировки нагрузки при запуске.
Второе. Существуют способы запретить монтирование раздела непосредственно при загрузке в автоматическом режиме. А именно -- добавление в fstab опции noauto.
Третье. К сожалению, на корневой каталог раздела придётся выставить режим доступа 777. Но ведь мы же должны разрешить запись в раздел всем пользователям, а они уже могут сами ограничить доступ к своим каталогам.
Так-то в Windows существует UAC, который можно настроить на автоматический приём исключений. Также можно сделать и в Linux. Просто нужно помнить, что каждую команду в консоли можно завернуть в "ярлык" и поместить, как на рабочий стол, так и в меню "Пуск".
Архитектура Linux подразумевает работу пользователя в пределах домашнего каталога и ни папкой больше, на ресурсы извне должны даваться символические ссылки. Именно поэтому такие дистрибутивы как Ubuntu, Mint используют принцип монтирования /media/$USER/$DISK для флешек и всех обнаруженных и не смонтированных с помощью /etc/fstab дисков, однако они используют для этого драйвер fuse, короче, тем, кто создает дистрибутивы Linux часто неводмёк, что их детище будут использовать люди, которые привыкли к какому-то логичному порядку настройки и использования. Почему работать от root это плохо, если ты единственный пользователь и админ компьютера? Почему для привычных операций нужны конструкции типа sudo тоже совсем не ясно. Почему так трудно добавить конкретное приложение в исключения для запуска от root, тоже не ясно. И самое главное, почему для форматирования флешки, необходимы административные права, если она подключалась пользователем.
Простой пример. Был у меня добавлен в автозагрузку раздел NTFS и при первом же сбое питания, Linux не смог его подключить из-за того, что он не был размонтирован при выключении. Соответственно, сервер, на котором он был установлен не загрузился и мне пришлось через кривую консоль KVM сервера восстанавливать загрузку, править fstab.
А всего лишь достаточно было бы запустить check disk от мелкософта, чтобы он поправил журнал.
К сожалению без дополнительных инструкций Linux так не умеет даже с родными файловыми системами и самое обидное, что с ними можно столкнуться даже на настольных дистрибутивах, достаточно только отредактировать fstab.
Теперь ближе к процедуре, ради которой писалась статья:
$ sudo nano /etc/fstab
aleksey@f-thinkpad:~$ 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>
# / was on /dev/sda1 during installation
UUID=e0b75772-24df-4aec-bf05-b86f853a79fb / ext4 errors=remount-ro 0 1
# /boot/efi was on /dev/sda5 during installation
UUID=B299-8ADC /boot/efi vfat umask=0077 0 1
/swapfile none swap sw 0 0
#нас интересует данная строка
/dev/sda2 /media/aleksey/windisk btrfs rw 0 2
Я не стал заморачиваться с UUID, так как это fstab моего ноутбука и тут видно, что последняя строка это инструкция по подключению раздела /dev/sda2 c btrfs на борту,в режиме чтения/записи, без бэкапа и вторым в очереди на проверку.
теперь модифицируем строчку так:
/dev/sda2 /media/aleksey/windisk btrfs noauto,rw 0 2
Опция noauto запрещает монтирование раздела при запуске системы.
Теперь вызовем:
$ sudo crontable -e
добавим в конец строчку:
@reboot mount -a
Теперь загрузка системы не остановится, если будет обнаружена проблема с диском или разделом, а ошибка запишется в dmesg.
А теперь разнос.
Я считаю, что должна существовать система гарантированной загрузки.
Очень странно, что базовый линукс не имеет в себе
отказоустойчивости в случае отказа жесткого диска. Вот есть у меня много
жестких дисков на автомонтировании, загрузка, не может примонтировать
-- грузись дальше, мне нужна сеть, чтобы тебя починить, в общем, очень
много странного и непонятного.
То-есть сценарий загрузки должен найти все разделы в системе, подключить их, потом прочитать fstab и создать символические ссылки в точках монтирования, ошибочные строки в fstab должны игнорироваться.
Всё.
Комментарии
Отправить комментарий