Команда locate- очень полезный инструмент в Linux, но кажется, что только root может запустить updatedbкоманду, которая очень неудобна для ее использования. Так как же заставить обычного пользователя иметь привилегию для запуска команды updatedb?
updatedb это команда, используемая для обновления базы данных, используемой командой locate.
Но при попытке запуска updatedb от имени обычного пользователя появляется следующее сообщение об ошибке:
[mirror@home code]$ updatedb
updatedb: can not open a temporary file for `/var/lib/mlocate/mlocate.db'
Или:
updatedb -o db
updatedb: can not change group of file `/var/lib/gforge/chroot/home/users/bigmeow/tmp/db.uhEZFQ': Operation not permitted
--require-visibilityфлаг ... но, может быть, вы могли бы немного объяснить, почему? например, почему бы просто не сделать то, что делает @xaizek, и сгенерировать базу данных в месте, где у вашего пользователя есть разрешение, без использования--require-visibilityфлага?