Древовидная Команда, не работающая в некоторых каталогах

Я узнавал о виртуальных средах и проектах. При просмотре видео я встретился'tree управляйте, чтобы я установил tree и затем выполненный это. Но это не работает над другим разделом моего жесткого диска кроме / раздел.

Когда я использую tree в ~ / Документы, я получаю желаемые результаты

$ tree -d    
.
├── Desktop
└── Fix ‘No WiFi Adapter Found’ for HP Laptops with Ubuntu 18.04 _ UbuntuHandbook_files

2 directories

Но когда я использую его в другом разделе, я добираюсь

sandeep@sandeep-HP-Laptop-15q-ds0xxx:/media/sandeep/sandeep files$ tree -d
. [error opening dir]

0 directories
1
задан 5 October 2019 в 18:07

2 ответа

Каждый раз, когда раздел/съемные носители смонтирован, целевая точка обычно /media/USER/UUID. Но согласно [1 131] ограничения Снимка , Поспешные приложения не могут гарантировать доступ каталогов/файлов за пределами текущего пользователя $HOME и которые включают каталоги такой как [1 169] / медиа и даже / мусорное ведро . От [1 132] zyga's сообщение :

  • $HOME каталог пользователя должен соответствовать /home/*. Другие каталоги еще не поддерживаются. В особенности /home/subdir/user также не поддерживается.
  • любая установка, где user’s домой не доступен, если они не зарегистрированы, еще не поддерживается. Это включает:

    • установки с помощью automount
    • ecryptfs и подобная технология, которые не шифруют каталог $HOME (или раздел) только, в то время как пользователь зарегистрирован

, Примечание здесь “not supported” не означает “doesn’t work”. Некоторые вещи не могли бы работать, но также и некоторые последовательности событий могли бы привести к пользователю, не бывшему способному получить доступ к их данным.

Однако tree, который установлен через APT, может получить доступ к ним (DEBs не имеют таких ограничений). Так, если Вам нужно tree для работы в других разделах, любая установка tree использование APT. Для этого, выполнение

sudo apt install tree

Или монтируют раздел в [1 113]. Для монтирования раздела можно использовать или mount команда или редактирование /etc/fstab.

  • При использовании, mount ,

    • Создают каталог в любом подкаталоге [1 117], например, test в [1 171] ~ / Рабочий стол

      mkdir ~/Desktop/test
      
    • mount работы только с [1 120], полномочия, поэтому, работают

      sudo mount /path/of/partition/ ~/Desktop/test
      

      (Замена /path/of/partition/ с путем раздела/устройства, например,/dev/sda3)

    Это автоматически не смонтирует раздел в той папке. Таким образом, если Вы монтируете и размонтировали раздел снова и снова, команда должна быть повторно выполнена.

  • При редактировании /etc/fstab:

    • Получают UUID с помощью [1 162]

      blkid /path/of/partition
      

      (Замена /path/of/partition/ с путем раздела/устройства, например,/dev/sda3)

    • Открывают /etc/fstab с [1 125] полномочия с помощью текстового редактора такой в качестве [1 126] и добавляют эту строку:

      UUID Mount_point Partition_type
      

      , где UUID получен из предыдущей команды, точка монтирования ~/Desktop/test (позволяет, говорят), и тип раздела является типом раздела, такого как ntfs или ext4.

    Это автоматически монтирует раздел в данной точке монтирования даже после просто касание в Наутилусе.

, После того как Вы сделаны, Вы можете использовать tree с [1 128] полномочия, с тех пор и смонтируете раздел с [1 129] полномочия и следовательно владелец был бы root.

1
ответ дан 7 December 2019 в 14:57

Та же ошибка. Вот что я сделал, чтобы решить эту проблему:

$ sudo snap remove tree
$ rm -rf $HOME/tree
$ sudo apt-get install tree
$ exec -l $SHELL  # <= restart shell

Со временем я обнаружил, что привязка вызывает множество проблем.

Это только один пример.

8
ответ дан 30 May 2020 в 21:48

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

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