LINUX.ORG.RU

Linux Mint 19.3 + ecryptfs = LibreOffice error open directory

 ,


0

1

Добрый день. Собственно есть скрипт при подключении некоторых флешек, они монтируются и автоматом монтирует зашифрованную папку. Параметры монтирования контейнера:

mount -t ecryptfs -o key=passphrase:passphrase_passwd=*****,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=n /media/flash_$user /media/flash_$user;

На xubuntu 16 все работает. Решил пользователям поставить Mint 19 (обновить систему и мята вроде постабильней работает). Теперь с зашифрованной флешки документы на прямую не открываются: например LibreOffice при открытии - Доступ к ***** запрещен. При попытке выбрать флеш при сохранении - не удалось прочитать содержимое.

При это если скопировать с флешки на рабочий стол все нормально работает.

Пустой файл создать на флешке то можно и открывать и работать текстовым редактором.

Картинки точно также с флешки не открываются.

Куда копать? почему некоторые приложеия нормально работают некоторым нехватает доступа?

Немного оффтопа: чем обусловлен выбор ecryptfs? У меня похожий кейс - запасная флешка с рабочими данными с luks. С нее открываются файлы после открытия контейнера и монтирования без каких-либо проблем, в т.ч. ЛО.

knd ()

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

На фремя тестов монтирую флеш umask=0000.

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

Скрипт запускает UDEV: ACTION==«add», KERNEL==«sd[b-z]?», ATTRS{serial}==«0000000», RUN+=«/etc/udev/rules.d/mount», GOTO=«persistent_storage_end»

Может они что-то еще накрутили ибо: The original udev command has been replaced by systemd-udevd. Кстати может кому нужно решение

If you want to go back to having a shared instead of private filesystem namespace, then create a file /etc/systemd/system/systemd-udevd.service with contents

.include /etc/systemd/system/systemd-udevd.service.d/rules.conf

[Service]

MountFlags=shared

loiren ()

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

Правила из UDEV при автомонтировании ENV{DEVTYPE}==«partition», IMPORT{parent}=«ID_*»

KERNEL==«sd*[!0-9]|sr*», ENV{ID_SERIAL}!=«?*», SUBSYSTEMS==«usb», IMPORT{builtin}=«usb_id»

KERNEL==«sd*[!0-9]|sr*», ENV{ID_SERIAL}!=«?*», IMPORT{program}=«scsi_id –export –whitelisted -d $devnode», ENV{ID_BUS}=«scsi»

KERNEL==«sd*|sr*|cciss*», ENV{DEVTYPE}==«disk», ENV{ID_SERIAL}==«?*», SYMLINK+=«disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}»

KERNEL==«sd*|cciss*», ENV{DEVTYPE}==«partition», ENV{ID_SERIAL}==«?*», SYMLINK+=«disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n»

KERNEL!=«sr*», IMPORT{builtin}=«blkid»

ENV{ID_FS_USAGE}==«filesystem|other|crypto», ENV{ID_FS_UUID_ENC}==«?*», SYMLINK+=«disk/by-uuid/$env{ID_FS_UUID_ENC}»

ENV{ID_FS_USAGE}==«filesystem|other», ENV{ID_FS_LABEL_ENC}==«?*», SYMLINK+=«disk/by-label/$env{ID_FS_LABEL_ENC}»

ENV{DEVTYPE}==«disk», ENV{ID_WWN_WITH_EXTENSION}==«?*», SYMLINK+=«disk/by-id/wwn-$env{ID_WWN_WITH_EXTENSION}»

ENV{DEVTYPE}==«partition», ENV{ID_WWN_WITH_EXTENSION}==«?*», SYMLINK+=«disk/by-id/wwn-$env{ID_WWN_WITH_EXTENSION}-part%n»

я монтирую

mount -o rw,nosuid,nodev,relatime,uid=$uid,gid=$gid,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2 /dev/$device /media/$user/1

loiren ()