locate, Cara Mencari Files dan Folder di Linux dengan Cepat

Halo sobat, pernahkah kita melakukan pencarian file atau folder di Windows menggunakan “Search Files and Folders” dan merasakan prosesnya sangat lama, terutama jika HDD kita besar? Di Linux, pencarian file jauh lebih cepat berkat program mlocate. Mlocate bekerja dengan cara membuat database yang berisi daftar seluruh file dan folder di sistem, sehingga proses pencarian menjadi instan. Di Windows, program serupa bisa menggunakan Locate32 buatan Janne Huttunen. Namun, di Linux, mlocate telah terbukti sangat handal dan efisien. Instalasi mlocate
[root@cms mlocate]# yum install mlocate Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile  * base: mirror.cs.uwp.edu  * extras: mirror.steadfast.net  * updates: mirrors.chkhosting.com Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package mlocate.i686 0:0.22.2-4.el6 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================  Package           Arch           Version                  Repository      Size ================================================================================ Updating:  mlocate           i686           0.22.2-4.el6             base            85 k Transaction Summary ================================================================================ Install       0 Package(s) Upgrade       1 Package(s) Total download size: 85 k Is this ok [y/N]: y Downloading Packages: mlocate-0.22.2-4.el6.i686.rpm                            |  85 kB     00:00      Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction   Updating       : mlocate-0.22.2-4.el6.i686                                1/2    Cleanup        : mlocate-0.22.2-3.el6.i686                                2/2  Updated:   mlocate.i686 0:0.22.2-4.el6                                                    Complete!
Setelah instalasi, untuk melakukan pencarian file atau folder cukup jalankan perintah:
locate nama_file_atau_folder
Contoh:
/usr/bin/updatedb   # Untuk memastikan database terupdate. locate skripsi.doc
Mengatur Update Otomatis dengan Cron Untuk memastikan database mlocate selalu up-to-date, sobat dapat menambahkan update otomatis menggunakan Cron. Caranya, buka file cron untuk mlocate:
nano /etc/cron.daily/mlocate.cron
Masukkan kode berikut ke dalam file tersebut:
#!/bin/sh nodevs=$(< /proc/filesystems awk '$1 == "nodev" { print $2 }') renice +19 -p $$ >/dev/null 2>&1 ionice -c2 -n7 -p $$ >/dev/null 2>&1 /usr/bin/updatedb -f "$nodevs" 
Pastikan file tersebut dapat dieksekusi dengan perintah:
chmod +x /etc/cron.daily/mlocate.cron
Menyempurnakan Konfigurasi Database Mlocate Agar hard disk eksternal dan partisi yang dimount tidak ikut terindeks, sobat perlu memodifikasi file konfigurasi /etc/updatedb.conf. Buka file tersebut dengan editor teks:
nano /etc/updatedb.conf
Ubah baris PRUNEPATHS agar menghilangkan direktori /media (dan direktori lain yang tidak perlu diindeks), misalnya:
PRUNE_BIND_MOUNTS = "yes" PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fusectl gfs gfs2 hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs sockfs sysfs tmpfs ubifs udf usbfs" PRUNENAMES = ".git .hg .svn" PRUNEPATHS = "/afs /media /net /sfs /tmp /udev /var/cache/ccache /var/spool/cups /var/spool/squid /var/tmp"
  Dengan menggunakan mlocate, pencarian file di Linux menjadi sangat cepat dan efisien. Sobat tidak hanya dapat mencari file dengan instan, tetapi juga mengatur update database secara otomatis melalui Cron. Konfigurasi pada /etc/updatedb.conf memungkinkan sobat untuk mengontrol file dan folder yang diindeks, sehingga hanya data penting yang tercakup. Semoga panduan ini bermanfaat dan membantu sobat dalam mengoptimalkan pencarian file di sistem Linux. Selamat mencoba!

Leave a Reply

Your email address will not be published. Required fields are marked *