Назад | Перейти на главную страницу

Updatedb не добавляет новые файлы

Я настроил отдельную базу данных mlocate для индексации настраиваемого каталога, она обновляется задачей cron, но по какой-то причине она не индексирует файлы, созданные с момента первого создания базы данных. Индексированный каталог находится на cifs монтировать, но я удалил cifs из PRUNEFS в /etc/updatedb.conf

Вот команда, которая выполняется ежечасно:

/usr/bin/updatedb -l0 -U /datadrive/data -o /tmp/locate.db

Если я удалю /tmp/locate.db и запустите команду updatedb, после чего все файлы будут правильно проиндексированы. Если я запустил его снова, файлы новее оригинала. /tmp/locate.db не индексируются.

Это работает на виртуальной машине Centos 7 в Azure и cifs Mount - это Azure Files Поделиться. Он установлен в /etc/fstab следующим образом:

//my_storage.file.core.windows.net/my_files / datadrive cifs vers = 3.0, username = my_username, password = my_password, dir_mode = 0777, file_mode = 0777 0 0

Возникает вопрос: как заставить индексировать новые файлы?

Сначала вам нужно обновить свою базу данных, используя updatedb. Вы можете изменить свой сценарий, как показано ниже:

/usr/bin/updatedb; /usr/bin/updatedb -l0 -U /home/shui/data -o /tmp/locate.db

Я тестирую в своей лаборатории, у меня работает.

[root@shui tmp]# ls -alt locate.db
-rw-r-----. 1 root slocate 164858 Apr 27 03:58 locate.db
[root@shui tmp]# updatedb 
[root@shui tmp]# updatedb -l0 -U /home/shui/data -o /tmp/locate.db
[root@shui tmp]# ls -alt locate.db
-rw-r--r--. 1 root root 159136 Apr 27 04:07 locate.db