質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.39%
logrotate

logrotateはログの世代管理やサイズ制限を行うLinux標準のツールです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

パーミッション

パーミッション(許可)は、ファイルシステム、データベース、そして他のコンピュータシステムに対するユーザーのアクセス権のことを指します。

Red Hat Enterprise

Red Hat Enterpriseは、レッドハット社により開発・サポートが行われている業務向けLinuxディストリビューションです。オープンソースで無償で利用することができ、バイナリ版の入手・サポートは有償です。商用ディストリビューションとして人気が高く、代表的なLinuxの選択肢の一つです。

Q&A

解決済

3回答

6389閲覧

rsyslog.confのFileCreateModeの動作を確認したい。

eri0315

総合スコア23

logrotate

logrotateはログの世代管理やサイズ制限を行うLinux標準のツールです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

パーミッション

パーミッション(許可)は、ファイルシステム、データベース、そして他のコンピュータシステムに対するユーザーのアクセス権のことを指します。

Red Hat Enterprise

Red Hat Enterpriseは、レッドハット社により開発・サポートが行われている業務向けLinuxディストリビューションです。オープンソースで無償で利用することができ、バイナリ版の入手・サポートは有償です。商用ディストリビューションとして人気が高く、代表的なLinuxの選択肢の一つです。

0グッド

0クリップ

投稿2021/04/19 10:23

前提・実現したいこと

rsyslog.confのFileCreateModeの動作を確認したい。

該当のコマンド

Bash

1vi /etc/rsyslog.conf 2 3---追記 4$umask 0000 5$FileCreateMode 0640 6--- 7 8vi /etc/logrotate.d/syslog 9 10---追記 11size 1k 12--- 13 14/usr/sbin/logrotate -f /etc/logrotate.conf 15

試したこと

上記のコマンドを実行し、ログローテーションを行い、
/var/log/messageをローテーションさせましたが、
新規で作成された/var/log/messageのパーミッションが、
0600となり、FileCreateModeで定義したパーミッションになりませんでした。
FileCreateModeで定義したパーミッションになることを確認するためには、
どのような操作(コマンド)を行えば良いかご教示ください。

環境

Red Hat Enterprise LinuxServer Release 7.7

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

手元の環境(CentOS8)だと、logrotate.confcreateの行があります。
つまり、新たなファイルを作るのはrsyslogじゃなくてlogrotateで、
そのときのモードはcreateのオプションが省略されているので、元のファイルと同じになります。

RHEL7の場合も同じか確認してください。

同じだとすると、rsyslogにファイルを作らせるのであれば、/etc/logrotate.d/syslogの中にnocreateを書くのでしょう。
もしくは、

FileCreateModeの動作を確認したい

じゃなくて、ファイルのモードを640するだけでいいなら、/etc/logrotate.d/syslogに、create 640を書くか、あるいは、元のファイルを640に変更しておけば、新ファイルはrsyslogが同じモードで作るはずです。

投稿2021/04/19 11:06

編集2021/04/19 11:12
otn

総合スコア85607

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

eri0315

2021/04/19 11:43

>新たなファイルを作るのはrsyslogじゃなくてlogrotateで、 CentOS8の場合、FileCreateModeの動作は確認できないということですか? 質問の仕方が悪かったのですが、今回の要件は、 MW側がrsyslog.confに設定を追記したため、FileCreateModeによる、 パーミッションの変更の動作を確認する必要があります。 ※logrotate.dにはMWの設定ファイルは格納されていませんでした。 ログローテーションは、検証機に対象のMWが導入されていないため、試験として実行しました。 少し、脱線してしまいますが、 ログローテーション以外で、 rsyslog.confに定義されたログファイルを出力(作成)することが可能であるか、 情報お持ちでしたら共有頂けると幸いです。
otn

2021/04/19 12:05

回答をちゃんと読んでください。 > rsyslogにファイルを作らせるのであれば、/etc/logrotate.d/syslogの中にnocreateを書くのでしょう。
otn

2021/04/19 12:07

> ログローテーション以外で、rsyslog.confに定義されたログファイルを出力(作成)することが可能であるか、 手動で ログファイルを rm か mv して、kill -HUP "rsyslogdのPID" ですね。
eri0315

2021/04/20 14:13

nocreateでFileCreateModeのパーミッションでファイルが作成されました。 ありがとうございました。
guest

0

投稿2021/04/20 07:09

yukky1201

総合スコア2751

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

logrotateがローテートした後にファイルを作るので、そのときのモードになっているのでしょう。
/etc/logrotate.d/syslog に

create 0640 root root

を入れてはどうでしょう

投稿2021/04/19 10:46

sigsegv

総合スコア895

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.39%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問