04
--
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
--
>>
<<
--
calendar_bottom
RSS | ATOM | ADMIN

badulog

日々の覚書と雑記
<< VRRP Virtual Router Redundancy Protoc | main | TCPWrapper >>
ENTRY TOP
スポンサーサイト

一定期間更新がないため広告を表示しています

スポンサードリンク | - | - | - | - |
ENTRY BOTTOM ENTRY TOP
locate関連

findよりも早く見付けられるlocate。
なぜならデータベースを持っていて、そのDBを検索するから。
findはコマンドが打たれる度にディスクをなめなめするのだ。

■ DBの実態
環境にもよるが、
[root@localhost /]# file /var/lib/slocate/slocate.db
/var/lib/slocate/slocate.db: data

これのようだ。

■ DB更新
cronに設定されていることが多いよう。
[root@localhost /]# cat /etc/cron.daily/slocate.cron
#!/bin/sh
renice +19 -p $$ >/dev/null 2>&1
/usr/bin/updatedb -f "nfs,smbfs,ncpfs,proc,devpts" -e "/tmp,/var/tmp,/usr/tmp,/afs,/net"

updatedbコマンドを使ってる。-eは除きたいディレクトリ。

■ locate? slocate?
今のディストリビューションはセキュリティ強化されたslocateらしい。
[root@localhost /]# ls -li /usr/bin/locate
925058 lrwxr-xr-x 1 root slocate 7 7月 4 2005 /usr/bin/locate -> slocate
[root@localhost /]# ls -li /usr/bin/slocate
925059 -rwxr-sr-x 1 root slocate 26368 5月 14 2004 /usr/bin/slocate

うむ。シンボリックリンクだ。



ま、DB更新されていて、ファイルを探したいだけならlocate。
色々やりたいか、AM4:00に電源落ちてるならfindか。


baduizm | linux | - | - | - |
ENTRY BOTTOM ENTRY TOP
スポンサーサイト
スポンサードリンク | - | - | - | - |
ENTRY BOTTOM