mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

Linux - マシン起動時にディレクトリ・ファイルを自動作成!

[ pc_tips ] [ Linux ]

こんばんは。

Linux で、マシン起動時に自動でディレクトリやファイルを作成する方法についての備忘録です。

0. 前提条件

  • CentOS 6.7(i386) での作業を想定。(他の Linux ディストリビューションでも同様のはず)

1. はじめに

  • 今回の作業は、 /etc/tmpfiles.d/*.conf ファイルを作成することで実現する。 (環境によっては、 /run/tmpfiles.d/*.conf, /usr/lib/tmpfiles.d/*.conf ファイル)
  • /etc/tmpfiles.d/*.conf ファイル内の書式は以下のとおり。(詳細は「参考サイト」参照
    Type Path Mode UID GID Age Argument

2. 作成例

当方が使用する頻度が高いもののみについて、作成例を挙げる。

2-1. ディレクトリが存在しなければ作成する例

「ディレクトリ:/tmp/test_dir, パーミッション:1777, 所有者:root, グループ:root, 有効期限:5日」でディレクトリを作成する例。

/etc/tmpfiles.d/test_1.conf
1
d /tmp/test_dir 1777 root root 5d

2-2. ディレクトリが存在しなければ作成し、存在していれば空にする例

「ディレクトリ:/home/foo/test_dir, パーミッション:0755, 所有者:root, グループ:root, 有効期限:無限」でディレクトリを作成する例。

/etc/tmpfiles.d/test_2.conf
1
D /home/foo/test_dir 0755 root root -

2-3. ファイルが存在しなければ作成する例

「ファイル:/home/foo/test.txt, パーミッション:0777, 所有者:root, グループ:root, 有効期限:無限、ファイル内容:空」でファイルを作成する例。

/etc/tmpfiles.d/test_3.conf
1
f /home/foo/test.txt 0777 root root -

2-4. ファイルが存在しなければ作成し、存在していれば空にする例

「ファイル:/home/foo/test.txt, パーミッション:0777, 所有者:root, グループ:root, 有効期限:無限、ファイル内容:"This is a tmpfiles.d test!“」でファイルを作成する例。

/etc/tmpfiles.d/test_4.conf
1
F /home/foo/test.txt 0777 root root - "This is a tmpfiles.d test!"

3. 参考サイト


意外とよく使用する機能だけど、使用方法について説明しているサイトがあまりないので、備忘録として残しておいた次第です。

以上。

Comments