Ilekroć uruchamiam aplikację w terminalu jako root (np. sudo gedit /etc/default/varnish
), A następnie, gdy otwieram inny terminal, pojawia się błąd „ls: access to .gvfs: Permission denied” w górnej linii terminala.
Znalazłem rozwiązanie w sieci
umount /path/to/.gvfs
rm -rf .gvfs
ale to tylko tymczasowo naprawia problem.
Wygląda na to, że mam dwa zamontowane wystąpienia gvfs w moim systemie
$ sudo mount |grep gvfs
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=33)
gvfsd-fuse on /home/****/.gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0)
Nie wiem, czy jest to powiązane, kilka miesięcy temu musiałem zmienić uprawnienia w moim folderze domowym jak
sudo chown -R $USER:www-data
Czy mógłbyś mi pomóc to naprawić?
EDYCJA: Po odmontowaniu nie pojawia /run/user/1000/gvfs
się ten błąd.
gnome-terminal
gvfs
kenn
źródło
źródło
sudo
programów graficznych..gvfs
folderów użytkowników zawsze były interesujące i (dla niektórych z nas) zaskakujące .Odpowiedzi:
Uruchamianie aplikacji graficznych
sudo
może czasem prowadzić do takich problemów.Wyjaśnienie
sudo
uruchamia program z uprawnieniami administratora (jak uruchomiony jako root), ale program nadal widzi aktualny katalog domowy w swoim katalogu domowym.Kiedy więc oprogramowanie zapisuje swoje pliki konfiguracyjne, kończy tworzenie plików w twoim katalogu domowym, które są własnością użytkownika root . Skończysz z plikami, których sam nie możesz edytować ani usuwać, a oprogramowanie działa, ponieważ nie będziesz mógł go modyfikować, co prowadzi do dalszych problemów.
Jakie jest najlepsze rozwiązanie?
Istnieje alternatywa:
gksudo
.Ten wariant sudo skonfiguruje zmienne środowiskowe, takie jak katalog domowy, w taki sposób, że sprawia, że uruchamianie aplikacji graficznych jako root jest znacznie bezpieczniejsze i nie myli programów z tworzeniem plików root w twoim katalogu domowym.
Dlaczego wpływa to na aplikacje graficzne?
Nie dotyczy to tylko aplikacji graficznych, ani nie wpływa na wszystkie aplikacje graficzne. Wpływa na aplikacje przechowujące konfigurację w katalogu osobistym bieżącego użytkownika. Jest to po prostu bardziej powszechne w aplikacjach graficznych.
Czasami aplikacje będą w stanie wykryć, czy działają z sudo i odpowiednio dostosować swoje zachowanie, ale nie jest to powszechne w aplikacjach graficznych, które zwykle nie powinny być uruchamiane z sudo.
Jak rozwiązać problem?
Będziesz musiał znaleźć pliki i katalogi będące własnością roota w swoim katalogu domowym i usunąć je. Moim zdaniem lepiej je usunąć niż zmienić ich własność, ponieważ nie były one przeznaczone dla twojego użytkownika, ale użytkownika root, więc mogą wystąpić nieoczekiwane skutki, jeśli po prostu zmienisz własność. Możesz oczywiście wykonać ich kopię zapasową na wypadek, gdybyś zdecydował, że jest coś, co chcesz w nich później.
Aby znaleźć pliki należące do katalogu głównego w swoim katalogu domowym:
Jeśli nadal masz problemy z niektórymi aplikacjami (działającymi jako użytkownik), spróbuj ponownie uruchomić komputer, aby usunąć
/tmp
i wszystko nadal działa. Czasami niektóre aplikacje mogły uszkodzić istniejące pliki konfiguracyjne i trzeba usunąć całą ich konfigurację z katalogu domowego, ale mam nadzieję, że dla wielu nie będzie tak.źródło
gksudo
zamiastsudo
podczas uruchamiania programów graficznych.Wystarczy dać użytkownikowi uprawnienia
.gvfs/
i powinien to naprawić.źródło