Как предоставить оснастке доступ к / somedir

Я просто промочил ноги. Я установил vlc и хочу попробовать использовать его. Все мои носители установлены под /store, монтирование NFS. И снимки не разрешают доступ к этому каталогу.

После поиска в Google я понял, что могу получить доступ к файлам в разделе /home/peter для интерфейса :home и /media для интерфейсов :removable-media.

Но на самом деле мне нравится /store, и я не хочу менять это на /media/store или /home/peter/store или что-то еще, кроме /store.

Есть ли способ получить оснастку, чтобы разрешить моим привязкам (или, может быть, просто vlc) доступ к /store, так что привязка соответствует моим соглашениям об именах, или я вынужден перейти к настройкам привязки?

кажется очень негибким, и я надеюсь, что что-то упустил.

12
задан 8 May 2018 в 01:12

4 ответа

К моему удивлению это действительно похоже /home hardcoded., монтируются-support.c, содержит:

    const struct sc_mount mounts[] = {
        {"/dev"},   // because it contains devices on host OS
        {"/etc"},   // because that's where /etc/resolv.conf lives, perhaps a bad idea
        {"/home"},  // to support /home/*/snap and home interface
    ...

Ничего себе. Это удивляет меня. Но там у Вас есть он.

Править: См. также выпуск 1643706 Панели запуска

6
ответ дан 23 November 2019 в 03:44

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

В конечном счете, посредством работы над порталами XDG, определенные приложения (особенно графические приложения) могут добраться, доступ к файлам в произвольной эквивалентности мест сказал, что приложения используют некоторые недавно представленные API GTK. Это, при выполнении под заключением, обратится к доверяемому помощнику, всплывающее окно доверяло UI, который похож на средство выбора файла, говорите со специальной файловой системой FUSE для представления файла (в любом местоположении) как специальная вещь в/run/... где-нибудь, который видит приложение, и вещи могут удаться прекрасный.

Это разработано для средства выбора файла дружественные вещи как редакторы слова или медиаплееры. Ваше дерево Linux, размещенное в /codez не будет работать так хорошо все же.

1
ответ дан 23 November 2019 в 03:44

монтирование целевого каталога в /home/*/snap/ упоминается как опция; простое связывает, монтируются, не работал на меня, ни один не сделал hardlink или символьную ссылку или конечных файлов или каталогов в предложенный поспешный каталог или любого подкаталога этого. Это ограничение могло произойти из-за конечных файлов, существующих за пределами a /home/*/ каталог, я не протестировал монтирование/трудно/символьные ссылки в файлы в /home/*/ шарик префикса.

Однако Обходное решение: полный файл копирует в /home/<myuser>/snap/<appname>/<somenewdirectory> действительно работал на меня. Поддержание полных копий набора данных было все же неосуществимо для меня, но существует много инструментов, чтобы помочь иметь дело с таким ограничением; ручная рекурсивная копия перед использованием снимка и копирование измененных файлов назад после являются опцией, если Ваш набор данных является небольшим или даже атомарным

Для именования нескольких утилит копирования файла, которые могли помочь Вам:

  • cp --verbose --archive --recursive /somedir ~/snap/somedir, и источник/цель наоборот
  • tar -C / -c somedir | tar -C ~/snap/ -xv основанный на tar пример копии файла
  • rsync --archive /somedir ~/snap/somedir, rsync популярен и имеет многих обертка/расширения

  • любая основанная на файле резервная утилита (графический пример: grsync) должно быть применимым, так как целая цель состоит в том, чтобы копировать набор данных вперед и назад по мере необходимости

  • мерзавец клонирует, возможно, однако локальные клоны использованием по умолчанию hardlinks поэтому, если Вы используете мерзавца, чтобы управлять файловой системой io в снимок, быть осторожными возможности, что, не отключая жесткие ссылки во время клона, что клон мерзавца мог бы быть недоступен снимку.

1
ответ дан 23 November 2019 в 03:44

Просто запустите приложение, как если бы оно не было быстрым \o/

Так, например, хром

  1. Используйте редактор меню, например. «Главное меню», чтобы добавить пользовательский «пункт меню» хрома (это то, что Ubuntu использует для поиска приложений, когда вы нажимаете super + a):
  2. Установить имя, например: Chromium Unsnapped
  3. Установить команду: /snap/chromium/current/usr/lib/chromium-browser/chrome --user-data-dir=~/ChrUnsnapped --class="ChrUnsnapped" %U
  4. Установите значок, например. Загрузите ретро-логотип хрома
  5. сохраните/закройте
  6. super+a (или значок Показать приложения внизу слева), найдите новый элемент и щелкните правой кнопкой мыши, чтобы добавить его в избранное. enter image description here

Я так разочаровался в Snap, что не могу настроить свой личный каталог /stf, как делал это 15 лет. Слава богу за этот хак, кажется, мне придется делать это для каждого приложения snap freeken :'( .

Да, я знаю, что это плохо, но пока не будет конфигурации белого списка, это, кажется, единственный способ чтобы все вернулось на круги своя. Я действительно не хочу помещать свои вещи в /home, /mnt, /media, пожалуйста, не ненавидьте своих пользователей.

6
ответ дан 1 December 2020 в 21:42

Другие вопросы по тегам:

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