Автомонтирование USB-ключей с файловой системой FAT в Linux (RHEL5)

2144
niXar

По соображениям безопасности у меня есть две рабочие станции, и я могу передавать данные между ними только через USB-ключ.

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

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

Но в любом случае система не должна навязывать это мне, она может просто убедиться, что все передается за секунду и работает синхронно. Затем, когда я вынимаю ключ, ничего не теряется. Есть ли способ сделать это?

Буду признателен за любые другие советы по решению этой ситуации.

Изменить: кажется, что ситуация изменилась между RHEL5 и Fedora до F11 с одной стороны, и F12 с другой. Последние используют DeviceKit-диск, и я не совсем понял, как это сделать. Метод, представленный ниже в gconf, больше не работает.

3
Я не думаю, что вам нужно автоматическое монтирование (нет никакой возможности, чтобы система Linux могла прочитать ваши мысли и выяснить, как выполнить 2-3-секундную операцию, прежде чем извлекать диск), скорее вы хотите убедиться, что все данные сброшены на диск, прежде чем вы потянете его. J. Polfer 14 лет назад 0
Это именно то, что я имел в виду. Автосмонтирование было каламбуром. niXar 14 лет назад 0
поскольку этот вопрос был задан для RHEL5, возможно, вам следует опубликовать отдельный вопрос о том, как сделать то же самое в Fedora12 с помощью DeviceKit. (Мне самому немного любопытно о методе DeviceKit.) quack quixote 14 лет назад 0

3 ответа на вопрос

3
quack quixote

Если ваша система использует HAL для автоматического подключения USB-накопителей, вам необходимо настроить конфигурацию HAL. Я не уверен, что лучший способ сделать это, но вот несколько методов, которые могут работать для вас.

  • Некоторые сайты указывают, что параметры монтирования могут быть добавлены в Gconf с помощью инструментов gconf-editorили gconftool. Насколько я понимаю, это настройки для каждого пользователя; Я не уверен, как повлиять на системные настройки по умолчанию в Gconf.
    1. Начните gconf-editor
    2. Найти или добавить ключ /system/storage/default_options/vfat/mount_options
    3. Установите новое значение для желаемых параметров монтирования. Я предполагаю, что синтаксис представляет собой список через запятую, такой как вы бы использовали mount -o, как один из этих примеров:
      • iocharset=utf8
      • umask=022
      • gid=1002,fmask=133,dmask=022

  • Спецификации HAL показывают несколько свойств в storage.policy.*пространствах имен, которые влияют на параметры монтирования. HAL и Dbus сложны, но большая часть конфигурации по умолчанию происходит в /etc/halи /etc/dbus-1. В моей системе Ubuntu /etc/hal/fdi/policy/preferences.fdiя могу настроить политики HAL по умолчанию. В вашей системе вам нужно найти правильное место.

    Прочитайте этот ответ, который я написал о HALevt. Он написан с точки зрения Debian, и вы не используете HALevt, но настройки HAL должны быть похожими. Надеемся, что ссылки и примеры могут дать вам представление о том, с чего начать.
1
dlamblin

man auto.master

«Я установил все автомонтирование в / mnt / auto и установил программную ссылку / auto / usb на / mnt / auto / usb. Важно использовать noatime и showexec для параметров монтирования, чтобы продлить срок службы вашего флэш-накопителя, и иметь надлежащие права доступа к файлам. "

Там также модуль ядра, hotplugкоторый предоставляет Вам, udevдля которых правила могут быть записаны . Как правило, это только automountи не делать umount.

Я не уверен, связаны ли эти два подхода вообще.

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

И наконец, если вы всегда пишете файлы на компьютере, отличном от Linux, и читаете файлы только на компьютере с Linux (однонаправленная сеть для кроссовок), то вам также следует добавить опцию только для чтения, чтобы упростить ее. Опять-таки, было бы неплохо иметь umountтриггер, но, возможно, есть способ настроить событие umountперед mountсобытием горячего подключения.

RHEL уже делает это через udev → hal → dbus и gnome-mount. niXar 14 лет назад 0
Я знаю о параметре «синхронизация» в mount, но сам не монтирую, я использую стандартную настройку RHEL5 gnome + udev + hal + dbus + gnome-mount, и я не уверен, куда мне положить это, если я могу положить это где-нибудь. niXar 14 лет назад 1
-1
CarlF

Вы не дали достаточно информации, чтобы ответить на ваш вопрос. Для начала, какую операционную систему (ы) используют эти две рабочие станции?

«RHEL5» в названии вопроса. Это будет Red Hat Enterprise Linux 5. Powerlord 14 лет назад 2
Меня убеждают, что «Linux» - это операционная система. Я мог ошибаться Как отметил Р. Бемроуз, RHEL5 означает то, что он сказал. Кроме того, теги включают в себя «gnome» - среду рабочего стола. (На самом деле, одна из рабочих станций работает под управлением Fedora 11, но это не имеет никакого значения) niXar 14 лет назад 0