FreeBSD localeデータベースの更新は310.locateを使う
スポンサーリンク
ファイル検索のためのlocale(1)データベースをよく利用します。
このデータベースの更新は、cronジョブによって自動的に
行われます。しかしながら、cronジョブが実行される時間に
サーバが起動していなかったり、マシンにOSを入れたすぐの
状態といった場合には、locale(1)のデータベースが作成されていません。
また、今すぐ更新したいとき、などがあります。
そういうときには、locale(1)のデータベースの更新を手動で実行する
わけですが、 locale(1)データベースを更新するために locale.updatedb
コマンドを直接使うと下記のようなエラーメッセージが表示されます。
rootユーザで updatedb を実行してます。
これは、すべてのログインユーザにすべてのファイル名を見ることが
可能になってしまいます。これは、セキュリティリスクです。
と言っています。rootユーザでアクセスできるところのすべての
ファイル名がlocale(1)データベースに格納されてしまうため、
本来見えないはずのユーザにもファイル名が公開されてしまうという
ことが発生してしまうので、セキュリティ上、好ましくありませんよ
ということです。
じゃあ、どうすればいいのよ、ということになりますが、
元々、 locale(1)データベースは、periodic の下のスクリプトが
cronによって実行されます。つまり、cronが実行してくれる
locate(1)データベースの更新スクリプトを利用すればいいのです。
locate(1)データベースの更新スクリプトは下記のものです。
310.locateスクリプトでは、locate.updatedbをnobodyユーザで実行
しています。nobodyユーザでアクセスできる範囲のファイル名の情報を
集めることにより、基本的に人には見えないものはデータベースに
含まれなくなるということです。
このデータベースの更新は、cronジョブによって自動的に
行われます。しかしながら、cronジョブが実行される時間に
サーバが起動していなかったり、マシンにOSを入れたすぐの
状態といった場合には、locale(1)のデータベースが作成されていません。
また、今すぐ更新したいとき、などがあります。
そういうときには、locale(1)のデータベースの更新を手動で実行する
わけですが、 locale(1)データベースを更新するために locale.updatedb
コマンドを直接使うと下記のようなエラーメッセージが表示されます。
% sudo /usr/libexec/locate.updatedb >>> WARNING >>> Executing updatedb as root. This WILL reveal all filenames >>> on your machine to all login users, which is a security risk.
rootユーザで updatedb を実行してます。
これは、すべてのログインユーザにすべてのファイル名を見ることが
可能になってしまいます。これは、セキュリティリスクです。
と言っています。rootユーザでアクセスできるところのすべての
ファイル名がlocale(1)データベースに格納されてしまうため、
本来見えないはずのユーザにもファイル名が公開されてしまうという
ことが発生してしまうので、セキュリティ上、好ましくありませんよ
ということです。
じゃあ、どうすればいいのよ、ということになりますが、
元々、 locale(1)データベースは、periodic の下のスクリプトが
cronによって実行されます。つまり、cronが実行してくれる
locate(1)データベースの更新スクリプトを利用すればいいのです。
locate(1)データベースの更新スクリプトは下記のものです。
/etc/periodic/weekly/310.locate
/etc/periodic/weekly/310.locate の一部抜粋です。
locdb=/var/db/locate.database touch $locdb && rc=0 || rc=3 chown nobody $locdb || rc=3 chmod 644 $locdb || rc=3 cd / echo /usr/libexec/locate.updatedb | nice -n 5 su -fm nobody || rc=3 chmod 444 $locdb || rc=3;;
310.locateスクリプトでは、locate.updatedbをnobodyユーザで実行
しています。nobodyユーザでアクセスできる範囲のファイル名の情報を
集めることにより、基本的に人には見えないものはデータベースに
含まれなくなるということです。
スポンサーリンク
スポンサーリンク
いつもシェア、ありがとうございます!
もっと情報を探しませんか?
関連記事
最近の記事
- パナソニック ジェットウォッシャードルツ EW-DJ61-Wのホースの修理
- LinuxセキュリティモジュールIntegrity Policy Enforcement
- アマゾンのEcho Show 5を買ったのでレビューします
- アマゾンのサイバーマンデーはAlexa Echo Show 5が安い
- Android スマートフォン OnePlus 7T と OnePlus 7の違い
- Android スマートフォン OnePlus 7 をAndroid10にアップデートしてみた
- クレジットカードのバーチャルカードの比較のまとめ
- 活動量計 Xiaomi Mi Band 4を買ってみたのでレビュー
- Android スマートフォン OnePlus 7 のレビュー
- AliExpressでスマートフォンを買い物してみた
- パソコンのホコリ対策 レンジフードフィルターと養生テープ
- 80PLUS GOLDのPC電源ユニットAntec NeoEco 750 Goldのレビュー
- イギリスの付加価値税 VAT は払い戻しを受けられる
- イギリスのロンドンでスーツケースなど荷物を預けられる場所は
- イギリスのロンドンで地下鉄やバスに乗るならオイスターカードを使おう
- イギリスのヒースロー空港からロンドン市内への行き方
- 航空便でほかの航空会社に乗り継ぎがある場合のオンラインチェックイン
- SFC会員がANA便ではなくベトナム航空のコードシェアを試して解ったこと
- ベトナムの入国審査でeチケットの掲示が必要だった話
- シアトルの交通ICカードはオルカカード(Orca)です
人気のページ
- Windows7 IME 辞書ツールで単語の登録に失敗しました
- C言語 popen()でコマンドを実行して出力を読み込む
- Windows7で休止状態にする方法
- CentOS MySQLの起動、停止、再起動
- loggerコマンドでsyslogにエラーを出力する方法
- パソコンパーツの買取をしてくれる店のまとめ
- Java Mapの使い方 get(),put(),remove(),size(),clear()
- 楽天のRポイントカードを作ってみた
- iPhone 5 から iPhone 6 に乗り換えたのでレビュー
- netstatコマンドのステータスの意味
スポンサーリンク
過去ログ
2020 : 01 02 03 04 05 06 07 08 09 10 11 122019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12