'updatedb' не может открыть файл 'mlocate.db'

Когда я работаю updatedb от терминала я получаю эту ошибку:

updatedb: can not open a temporary file for `/var/lib/mlocate/mlocate.db'

Любые идеи о том, как добраться updatedb работать?

2
задан 31 May 2018 в 10:24

4 ответа

После обновлений Ubuntu 14 я продолжал получать

$ locate chruby
locate: can not open `/var/lib/mlocate/mlocate.db': Permission denied

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

Мой « некорневой пользователь » является главным .Так как root я добавил этого пользователя в группу mlocate :

# addgroup master mlocate

После перечисления деталей этого каталога, чтобы увидеть владельцев:

# ls -al /var/lib/mlocate
drwxr-xr-x  2 root root        4096 Jun 19 13:21 ./
drwxr-xr-x 94 root root        4096 Jan 23 11:27 ../
-rw-r-----  1 root mlocate 50134121 Jun 19 13:21 mlocate.db
2
ответ дан 2 December 2019 в 01:44

Выполните команду с sudo:

sudo updatedb
2
ответ дан 2 December 2019 в 01:44

Считайте man updatedb и изучите, как записать updatedb вывод в другом месте, в каталоге у Вас есть разрешение записи для.

-1
ответ дан 2 December 2019 в 01:44

Я понимаю, что это - старое сообщение, но я не вижу это решение в другом месте.

Проблема не mlocate.db файл, как Вы ожидали бы. Это - полномочия на mlocate исполняемый файл. Это устранит проблему:

sudo chmod 2755 /usr/bin/mlocate

Это - источник проблемы:

$ ls -lathr /usr/bin/mlocate 
-rwxr-xr-x 1 root mlocate 39K Nov 17  2014 /usr/bin/mlocate

Вам нужен a setuid обдумал группу, чтобы позволить Вам работать locate команда без sudo. После того как это фиксируется, Ваш ls вывод должен быть похожим на это:

$ ls -lathr /usr/bin/mlocate 
-rwxr-sr-x 1 root mlocate 39K Nov 17  2014 /usr/bin/mlocate

Просто выполнение a chmod поскольку некоторые другие рекомендуют против db сам файл будет только работать до следующего раза кто-то работает updatedb. Затем полномочия будут сброшены.

3
ответ дан 2 December 2019 в 01:44

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

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