Zainstalowałem pakiet Snap KeePassXC na Ubuntu 17.10. Mam wiele systemów Linux zainstalowanych na tym samym dysku, więc większość moich folderów domowych, takich jak ~ / Documents, utworzyłem jako łącza do osobnej partycji ext4 (użytkownicy mają ten sam identyfikator użytkownika, więc uprawnienia są prawidłowe). Próbowałem otworzyć bazę danych haseł, które mam w Dokumentach, ale keepassxc nie widzi żadnych plików w Dokumentach. Jeśli umieszczę plik w folderze domowym, zobaczy go.
Czy pakiety Snap mogą znaleźć pliki poza moim folderem domowym? W jakikolwiek sposób, aby KeePassXC (i pozostałe pakiety przystawek) uzyskiwały dostęp do plików na mojej osobnej partycji ext4 (może gdzieś jakieś konfiguracje)?
partitions
snap
Thanos Apostolou
źródło
źródło
Odpowiedzi:
Zatrzaski są zwykle ograniczone. Domyślnie snapy mogą uzyskiwać dostęp tylko do własnych zapisywalnych obszarów, ale mogą uzyskiwać uprawnienia za pomocą interfejsów. Istnieją dwa interfejsy, które zapewniają dostęp do plików poza ustawieniami domyślnymi:
home
interfejs iremovable-media
interfejs. Zakładam, że KeePassXC korzysta zhome
interfejsu, w ten sposób można uzyskać dostęp~/Documents
. Być może używa nawetremovable-media
interfejsu, ale obejmuje to tylko elementy zamontowane w/media
lub/mnt
. Jeśli inne partycje są zamontowane gdzie indziej, przystawka nie będzie miała uprawnień do podążania za dowiązaniami symbolicznymi.Sposoby wykonania tej pracy, uporządkowane według trudności:
/media
i upewnij się, że KeePassXC korzysta zremovable-media
interfejsu. Może to być zmiana początkowa, ale niewielka.Aktualizacja: KeyPassXC
snapcraft.yaml
jest tutaj . Wygląda na to, że ma jużremovable-media
interfejs. Wszystko, co musisz zrobić, aby wykonać (2), to podłączyć (nie jest to automatycznie połączone):źródło
sudo snap connect keepassxc:removable-media
załatwiło sprawę !!Oto szybka poprawka, dzięki której aplikacja Snap zachowuje się jak klasyczna instalacja, tzn. Nie ma żadnego ograniczenia.
Po prostu utworzyłem dowiązanie symboliczne do pliku binarnego do / usr / local / bin, na przykład:
(Zaskakujące jest to, że ta konkretna aplikacja jest instalowana z „uwięzieniem: ścisłe”, co jest bardzo denerwujące, ponieważ w tej chwili nie będzie działać na plikach z innych systemów plików).
źródło
Aby dodać do odpowiedzi Kyle'a , niektóre pakiety ze sklepu Ubuntu Software Store również potrzebują tego polecenia.
W moim przypadku kdenlive nie mógł odczytać mojego drugiego dysku twardego. Działa następujące polecenie:
źródło