/var/log
rootユーザー以外は読み取れないようにすべてのファイルをロックするように指定されました。この記事のために/var/log/boot.log
パニックになりました。毎回起動するたびに、ファイルは以前の権限の状態に関係なく644権限に設定されているようです。
/etc/init.d
私は多くの主要なファイルや機能でumaskを変更しようとしましたが、成功しませんでした。
このタスクを実行する特定のプログラムと権限を/var/log/boot.log
600に設定する方法を知っている人はいますか?
答え1
を介しfgrep -r boot.log /usr
てplymouth
問題が発生しました。 Centos 6のマニュアルページはplymouth
少し不足していますが、ソースコードを検索するとどこかにno_boot_log
渡して設定するオプションがあることがわかりますno-boot-log
(Plymouthのログがないと仮定)。ああ!さらに掘り下げると、3番目のパラメータにのみ設定されていない限り、呼び出しに使用されるパラメータをworld_readable
調整するフラグがあります。mode
open(2)
log_is_opened = ply_logger_open_file (session->logger, filename, true);
悲しいトロンボーン。とにかくinitrdイメージを調整してカスタマイズしたり、RedHatにバグレポートを送信したり、a)ソースコードのナビゲーションが少なくなるようにいくつかのドキュメントを書くことができます。 b) どういうわけかカーネルを介してそのモードを設定するオプションを提供できます。 argまたは何か。
答え2
ここで回答のためにRHELサポートに連絡してください...
RHELはPlymouthが犯人であることを確認しました。
彼らはソリューションドキュメント(https://access.redhat.com/site/solutions/66805- RHELサブスクライバのみ)ソースコードには、より厳格なモードでログを開くか生成するためのフラグがありますが、このフラグは外部で設定できず(つまり、オプションなし)、誰でも読みやすいようにハードコーディングされていることを確認してください。
RHEL サポート文書には、/etc/rc.d/rc.local スクリプトの chmoding が私が望む権限を変更する方法になると述べています。
本当に悪い!