Это происходит, когда в предполагаемом целевом каталоге есть устаревшая сессия. Вы можете очистить сеанс с помощью
fusermount -u /mnt/remote
, где /mnt/remote
— это путь к вашему локальному файлу монтирования.
Команда updatedb
просканирует файловые системы в вашей системе и создаст индекс имен доступных файлов и каталогов. Эта индексация выполняется от имени непривилегированного пользователя -. Это означает, что индекс всегда будет содержать только имена файлов, которые доступны всем пользователям системы.
Поскольку ваш домашний каталог доступен только вам, (вы говорите в комментариях, что у вас есть rwx------
разрешения на него ), это означает, что он не будет проиндексирован пользователем updatedb
. Это, в свою очередь, означает, что locate
никогда не будет возвращать имена из вашего домашнего каталога. (использование sudo locate
вместо простого locate
по-прежнему будет запрашивать тот же индекс, так что это не поможет ).
Чтобы решить эту проблему, у вас есть два варианта:
Ослабьте ограничения для вашего домашнего каталога (и для любого каталога ниже того, который вы хотите проиндексировать,updatedb
). Права доступа, вероятно, должны читаться как rwxr-xr-x
или 755 в восьмеричном формате.
Не используйте locate
для поиска файлов.Вместо этого используйтеfind
:
find "$HOME" -name test.txt
Это будет искать что-либо с именем test.txt
в вашем домашнем каталоге или под ним.