Чому /var/lib/mlocate.db майже 800 Мб?


17

Чи можу я щось з цим зробити? Мені не вистачає місця на диску.


Це може виглядати як дивне запитання, але: як знайти розмір файлу?
ulidtko

База даних може зберігатися як розріджений файл, а отже, реальне використання диска може істотно відрізнятися від того, про що повідомляє lsі du.
ulidtko

Відповіді:


28

На одній із моїх систем, яка працює як резервний сервер, mlocate.db потрапив у 9 Гб. Рішення полягало в тому, щоб виключити резервні каталоги з пошуку, оскільки мені не потрібно було їх шукати.

Я зробив це, додавши в каталог резервного копіювання PRUNEPATHS в /etc/updatedb.conf.

sudo updatedbПотім запуск зменшив його до 1,6 Мб (і економить величезну кількість часу, індексуючи всі ці файли).


Ідеально, дякую. Щойно пішло від 800 МБ до 100 МБ, але що ще важливіше, оновлена ​​команда може виконати дуже швидко вже зараз, тоді як раніше це займало кілька днів. (Однак зауважте, що він працює лише тоді, коли комп'ютер не працює від акумулятора, і він використовує IO з низьким пріоритетом, згідно сценарію в /etc/cron.daily/mlocate.)
mlissner

Вау 9 Гб до 1,6 Мб!
WinEunuuchs2Unix

9

Якщо на вашій машині є багато і багато файлів, ви можете розглянути можливість обрізки деяких шляхів до бази даних. Ви можете зробити це в /etc/updateb.conf у розділі PRUNEPATHS. Ви також можете обрізати файлові системи (наприклад, nfs, якщо цього хочете).


2

800 Мб звучить досить багато. Мій /var/lib/mlocate/mlocate.db становить близько 8 Мб (нова установка на дату випуску 10.04). Ви можете сміливо видалити його, якщо ви запустите sudo updatedb, він буде відтворений.


дякую, що спрацювало Після запуску оновленого sudo тепер він становить 620 Мб. редагувати: ой, я неправильно прочитав. 620 МБ означало б, що це не працює (я думав, що я прочитав KB на виході файлу).
evencoil

Скільки у вас файлів? Який розмір вашого диска?
Лекенштейн

1
Це справді таке велике? Розмір у МБ: 'du -m /var/lib/mlocate/mlocate.db'

Також обидва duі lsмають -hпрапор `: -h, --hum- print sizes in human readable format (e.g., 1K 234M 2G)
readmable`

Це дійсно так велико ... У мене дуже багато дуже маленьких файлів (пов'язаних з деякою роботою з даними) на декількох жорстких дисках, так що, можливо, саме тому. редагувати: Я також зберігаю багато резервних копій ... Чи є спосіб виключити каталоги з індексатора? Можливо, індексація цих резервних копій є великою проблемою.
evencoil

-1

Це база даних всіх файлів у вашому кореневому каталозі. Він використовується утилітою locate. якщо ви видалите цей файл, пошук більше не працюватиме.


чи справді він повинен бути таким великим?
evencoil

Це не повинно бути таким великим. Швидше за все, у вашому домашньому каталозі є багато файлів. Ви можете стерти його, а потім пустити оновлення знову.
user4124

якщо я стираю, чи буде воно відтворено автоматично в якийсь момент?
evencoil

вона буде відтворена, коли ви запустите команду "updatedb"
binW

це, здається, також відтворюється як щоденне завдання?
evencoil
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.