Какую команду nemo использует для монтирования дисков

Когда вы вызываете команду без указания пути к ней, вместо команды будут вызываться другие псевдонимы оболочки, функция, встроенная функция с тем же именем. Такое поведение было определено POSIX .

Чтобы вызвать внешнюю команду time , вы можете использовать команду :

command time --verbose cmd

4
25.09.2017, 16:07
2 ответа

Насколько я знаю (Я не смотрел непосредственно на код Nemo, но я видел много других файловых менеджеров ), он использует вызов API UDisks DBus. Вы можете (возможно )повторить вызов, который Немо делает вручную с помощью команды:

udisksctl mount --block-device=/dev/whatever

В котором должен быть указан путь, по которому устройство было смонтировано (, в большинстве систем оно будет находиться под /run/media/$USER, с именем, соответствующим метке тома (или UUID тома, если метка отсутствует ). ].

Вы также можете передать этой команде аргумент --options=, чтобы указать пользовательские параметры монтирования.

Аналог unmount::

udisksctl unmount --block-device=/dev/whatever

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

Если под «при запуске» вы подразумеваете «когда я вхожу в систему», то вы можете использовать модуль pam_mountPAM, который позволит вам также монтировать файловую систему при входе в консоль и дополнительно размонтировать это правильно, когда вы выходите из системы. Документацию для этого можно найти здесь . На самом деле это то, что используется большинством дистрибутивов для обработки зашифрованных домашних каталогов (, по крайней мере, традиционно, большинство из них медленно мигрируют на VFS Crypto API, но это скорее -не по теме ).

Если вместо этого вы имеете в виду «когда система загружается» под «при запуске», то на самом деле лучше не пытаться воспроизвести точные средства, которые Nemo использует для монтирования файловой системы. Гораздо лучший подход — самостоятельно настроить параметры монтирования, чтобы он вел себя именно так, как вы хотите.

В комментариях вы упомянули, что пытаетесь смонтировать том NTFS. Ваша основная строка /etc/fstabдля этого должна выглядеть так (на основе информации из комментариев):

/dev/sda3     /mnt/user/Storage    ntfs-3g    rw,nosuid,nodev,allow_other    0 0

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

  • windows_names:Это предотвратит создание файлов, к которым вы не можете получить доступ из WIndows из-за ограничений на имена. Как правило, вы вряд ли случайно создадите такие файлы (большинство людей не используют запрещенные символы, и зарезервированные имена также не используются в большинстве мест ), но на всякий случай это обеспечивает хорошую подстраховку.
  • hide_dot_files:Это автоматически помечает файлы с именами файлов, начинающимися с ., как скрытые, улучшая согласованность между Windows и Linux.
  • hide_hidden_files:Это исключит файлы со скрытым атрибутом из списка каталогов (даже сls -a). Аналогичный аргумент для вышеупомянутого варианта, хотя я сам не люблю его.
  • streams_interface=xattr:Это предоставляет альтернативные потоки данных NTFS в качестве расширенных атрибутов, позволяя большинству инструментов резервного копирования правильно сохранять и восстанавливать их.
  • big_writes:Это значительно повышает производительность записи для больших операций записи, но не влияет на то, как данные выглядят в разделе.

Кроме того, вы можете захотеть настроить файл сопоставления пользователей, если вы регулярно используете этот том как в Windows, так и в Linux. Это позволит разрешениям, установленным в одной ОС, корректно вести себя в другой. На странице руководства NTFS -3G (проверьте здесь)имеется достаточно хорошая документация о том, как это сделать, в разделе «Сопоставление пользователей».

9
27.01.2020, 20:48

Немо использует gio.

Например, если у вас есть несмонтированное устройство LUKS в разделе «устройства» в Nemo, а парольная фраза ранее была запомнена вашей связкой ключей, вы можете смонтировать его с терминала, не вводя пароль повторно.

Сначала вам нужно узнать прямое имя устройства для тома, который вы пытаетесь смонтировать. Вы можете найти это, введя gio mount -li.

Например, если вы ищете устройство с шифрованием LUKS на 50 ГБ, вы увидите что-то вроде этого:

Volume(3): 50 GB Encrypted
  Type: GProxyVolume (GProxyVolumeMonitorUDisks2)
  ids:
   class: 'device'
   unix-device: '/dev/dm-3'

Теперь вы можете установить unix-deviceвот так:

gio mount -d /dev/dm-3

Все как пользователь. Нет sudo.

1
27.01.2020, 20:48

Теги

Похожие вопросы