di mana basis data updatedb berada?


14

Saya ingin menghapus dengan menghapus semua entri cari dan databasenya.

Saya mencoba

apt-get purge locate

dan

rm /etc/updatedb*

Tetapi apakah database juga hilang?
Di mana basis data updatedb terletak pada pemerasan debian?

Saya juga ingin menghapusnya secara manual, jadi saya bisa menginstalnya kembali

Jawaban:


12

man updatedb

cari 'FILES'

kata saya:

FILES
       /etc/updatedb.conf
              A configuration file.  See updatedb.conf(5).

       /var/lib/mlocate/mlocate.db
              The database updated by default.

1
Melumpuhkan, tidak menemukan. Padahal / var / lib / cari bukanlah tebakan yang buruk untuk mencari.
Dennis Kaarsemaker

1
Saya mencoba memberikan saran umum dan hasil mengikuti saran tersebut pada sistem saya.
ptman

2
Oh, dan sepertinya mlocate adalah lokasi standar di Debian.
ptman

mlocate tidak terpasang, tidak juga slocate
rubo77

11

Tidak perlu mendekompilasi executable! Silakan tanyakan 'temukan' :-)

Untuk updatedb / find (GNU findutils) versi 4.6.0 coba panggil

locate --statistics

Bagi saya (pada cygwin) ini menghasilkan seperti

Database /var/locatedb is in the GNU LOCATE02 format.
Database was last modified at 2017:03:13 22:44:31.849172100 +0100
Locate database size: 6101081 bytes
All Filenames: 202075
File names have a cumulative length of 22094021 bytes.
Of those file names,

    2591 contain whitespace,
    0 contain newline characters,
    and 20 contain characters with the high bit set.
Compression ratio 72.39% (higher is better)


6

Saya lebih suka hanya menghentikan proses, karena itu akan membawa Anda ke sana. Ini akan menjadi agnostik distribusi dan berfungsi jika Anda tidak memiliki halaman manual.

# strace updatedb 2>&1 |grep ^open|grep db

open("/etc/updatedb.conf", O_RDONLY)    = 3
open("/var/lib/mlocate/mlocate.db", O_RDWR) = 3
open("/var/lib/mlocate/mlocate.db.bUUaw4", O_RDWR|O_CREAT|O_EXCL, 0600) = 4

1

[DIURANGI tahun 2017]: Lihat jawaban di atas: temukan --statistik berhasil.

Jika Anda memiliki /etc/updatedb.conf, Anda dapat melihatnya di sana. Bukan saya. Anda dapat membaca halaman manual untuk menemukan, yang mengatakan lokasi default adalah / var / cache / temukan / locatedb. Milik saya tidak ada di sana. Anda dapat menggunakan cari sendiri untuk mencari file bernama "updatedb" atau "locatedb". Saya menggunakan Cygwin di Windows 7.


dan jika Anda mencari mlocate.db?
rubo77

1
@ phil-goetz Tidak perlu mendekompilasi. Anda bisa mendapatkan lokasi yang tepat dengan one-liner jika Anda telah memasang strace :$ sudo strace updatedb 2>&1 | grep -o "^open.*O_RDWR.*"
Cengiz Can

@Engiz: Pintar! Pembaruan db saya sederhana / var / locatedb.
Phil Goetz
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.