Что такое файл Linux fstab и как он работает?
Если вы работаете в Linux, то, вероятно, вам нужно было изменить некоторые параметры для ваших файловых систем. Знакомство с fstab может сделать весь процесс намного проще, и это намного проще, чем вы думаете.
Что такое Fstab?
Fstab - это таблица файловой системы вашей операционной системы. Если вы хотите пересмотреть файловые системы, обязательно ознакомьтесь с нашей другой статьей, HTG Объясняет: какую файловую систему Linux выбрать? В старые времена это был основной способ, которым система монтировала файлы автоматически. В настоящее время вы можете подключить USB-накопитель любого типа, и он просто появится в Nautilus, как в Windows и Mac OS, но однажды вам приходилось вручную монтировать эти диски в определенную папку, используя « гора ». Это справедливо для DVD, CD и даже дискет (помните те?).
Тогда единственной альтернативой было сообщить компьютеру, что при каждом подключении определенного устройства оно должно автоматически монтироваться в определенном месте. Вот тут и пришел fstab, и это было потрясающе. Предположим, вы поменяли местами жесткие диски на контроллере IDE или SCSI. Компьютер может загружать файловые системы в другом порядке, что может привести к путанице. Fstab настроен на поиск определенных файловых систем и их автоматическое монтирование нужным образом каждый раз, предотвращая возникновение множества катастроф..
Ваш файл Fstab
Файл fstab находится по адресу:
/ И т.д. / Fstab
Давайте посмотрим на мой файл fstab?
Вы определенно увидите различия, но если вы хотите следовать своему собственному fstab, просто вставьте эту команду в терминал:
Вы также можете использовать Gedit, если вы не знакомы с Nano.
Очевидные варианты
Вы заметите, что все записи начинаются с UUID. Возможно, вы помните, что видели это в одной из наших предыдущих статей «Как выбрать схему разделов для вашего ПК с Linux», но мы все равно объясним это снова. Каждой файловой системе во время форматирования присваивается универсальный уникальный идентификатор, который он берет в могилу. Поскольку его нельзя изменить, это идеальный способ выбора файловых систем для монтирования, особенно для важных. Допустим, ваш / home раздел находится на втором жестком диске, и вы в конечном итоге перенесли его на внешний жесткий диск; fstab все равно найдет этот раздел и смонтирует его правильно, избегая неудачной загрузки. Если вы переключитесь на (или застряли, используя) старый метод использования идентификаторов устройств для выбора разделов (т.е. / dev / sda1), это преимущество исчезнет, поскольку жесткие диски и разделы подсчитываются их контроллерами и, таким образом, могут измениться..
Редактировать: Использование UUID в вашем файле fstab, хотя и удобно для большинства домашних пользователей, имеет несколько больших предостережений. Это не работает при использовании таких вещей, как «собранные» или «сетевые» устройства. Если вы более опытный пользователь или планируете использовать такие вещи, как программный RAID в будущем, вам лучше не использовать UUID.
Следующий раздел fstab, как и все последующие, отделяется пробелом или табуляцией или их комбинацией. Здесь вы найдете точку монтирования. Как вы можете видеть, у меня есть точка монтирования (/), своп и две, которые я добавил вручную для моих общих сетевых накопителей. Если вы добавляете запись в fstab, вам придется вручную создать точку монтирования, прежде чем вы перезагрузите компьютер (и изменения вступят в силу).
Далее следует раздел, в котором указан тип файловой системы раздела. Многие из них, такие как ext2 / 3/4, ReiserFS, jFS и т. Д., Изначально читаются Linux. Ваша конкретная система, возможно, по-прежнему должна иметь определенные пакеты, установленные для чтения и записи в них. Прекрасными примерами являются мои NTFS-разделы; вы можете видеть, что я использую драйвер ntfs-3g для доступа к ним.
Scarier Stuff
Следующие несколько разделов обычно отпугивают новичков, но на самом деле они не такие сложные. Доступен большой набор опций, но есть несколько очень распространенных. Давайте посмотрим на них. (Опция по умолчанию - сначала, затем следуют альтернативы, но, поскольку дистрибутивы Linux могут сильно отличаться, ваш пробег может отличаться.)
- auto / noauto: укажите, должен ли раздел автоматически монтироваться при загрузке. Вы можете заблокировать определенные разделы от монтирования при загрузке, используя «noauto».
- exec / noexec: указывает, может ли раздел выполнять двоичные файлы. Если у вас есть чистый раздел, на котором вы компилируете, это будет полезно, или, может быть, если у вас есть / home в отдельной файловой системе. Если вы беспокоитесь о безопасности, измените это на «noexec».
- ro / rw: «ro» только для чтения, а «rw» для чтения и записи. Если вы хотите иметь возможность записи в файловую систему от имени пользователя, а не от имени пользователя root, вам нужно указать «rw».
- sync / async: это интересно. «Синхронизация» заставляет запись происходить сразу после выполнения команды, что идеально подходит для дискет (насколько вы увлечены?) И USB-накопителей, но не является полностью необходимым для внутренних жестких дисков. То, что делает «асинхронный», это позволяет команде выполняться в течение истекшего периода времени, возможно, когда активность пользователя прекращается и т.п. Вы когда-нибудь получали сообщение с просьбой «подождать, пока на диск будут записаны изменения?».
- nouser / user: это позволяет пользователю иметь права на монтирование и размонтирование. Важным примечанием является то, что «пользователь» автоматически подразумевает «noexec», поэтому, если вам нужно выполнить двоичные файлы и по-прежнему монтировать их как пользователь, обязательно используйте «exec» в качестве опции.
Эти параметры разделяются запятой и без пробелов и могут быть расположены в любом порядке. Если вы не уверены в настройках по умолчанию, то можно явно указать свои параметры. Вещи, которые монтируются из временных мест (например, USB), не будут следовать этому базовому шаблону, если вы не создали записи для них (по UUID) в fstab. Это удобно, если вы хотите, чтобы внешний жесткий диск всегда монтировался особым образом, потому что обычные флэшки и т.п. не пострадают.
Вы можете видеть, что на моих двух дисках хранения активированы пользовательские права на монтирование, разрешен доступ для чтения и записи и включена автонастройка. Я не собираю много программного обеспечения, но когда я делаю, я добавляю опцию «exec» в конце списка.
Демпинг и Фскинг
Следующая опция - двоичное значение («0» для «ложь» и «1» для «истина») для «дампа». Это довольно устаревший метод резервного копирования для случаев, когда система вышла из строя. Вы должны оставить это как «0».
Последний параметр представляет собой числовое значение для «передачи». Это указывает системе порядок, в котором следует выполнить команду fsck (произнести то, что вам нравится) или выполнить проверку файловой системы. Если диск имеет опцию «0», он будет пропущен, как и мои накопители в формате NTFS. Корневая файловая система всегда должна быть «1», а другие файловые системы могут идти после. Это лучше всего подходит для журналирования файловых систем, таких как ext3 / 4 и ReiserFS. Старые файловые системы, такие как FAT16 / 32 и ext2, могут занять некоторое время, поэтому лучше отключить их fscking и периодически делать это самостоятельно..
Теперь, когда вы знаете, что делаете, вы можете сойти с ума с помощью автоматического монтажа и тому подобного. Это очень удобно, когда у вас есть тонна разделов, которыми нужно управлять. Всегда не забывайте делать резервную копию на случай, если что-то пойдет не так, но развлекайтесь и не забудьте оставить свой опыт в комментариях!