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

Updated:


※この記事は8年以上前に投稿されたもので、情報が古い可能性があります。

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

0. 前提条件Permalink

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

1. はじめにPermalink

  • 今回の作業は、 /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. 作成例Permalink

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

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

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

File: /etc/tmpfiles.d/test_1.conf

1
d /tmp/test_dir 1777 root root 5d

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

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

File: /etc/tmpfiles.d/test_2.conf

1
D /home/foo/test_dir 0755 root root -

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

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

File: /etc/tmpfiles.d/test_3.conf

1
f /home/foo/test.txt 0777 root root -

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

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

File: /etc/tmpfiles.d/test_4.conf

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

3. 参考サイトPermalink


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

以上。





 

Sponsored Link

 

Comments