tar: Removing leading `/’ from member names の警告を消す方法
cron で tar アーカイブを作ってバックアップする、というのはよくありますよね。
1 |
tar zcf hoge.tar.gz /etc |
のようにした場合、次のようなワーニングが出てしまいます。
1 |
tar: Removing leading `/' from member names |
日本語環境だと以下のようなメッセージで出ることもあります。
1 |
tar: メンバ名から先頭の `/' を取り除きます |
これは、tar の対象として絶対パスのディレクトリを指定しているために起こります。絶対パスで格納されたファイルをパス付で展開されたときのトラブルを避けるために、相対パスでの格納が推奨されています。
このワーニングを出さないようにする方法を検索すると、-P
オプションを付けましょうという記述がよく見受けられます。しかし、-P
オプションは絶対パスのまま格納するというオプションですので、展開時に絶対パスで上書きしてしまうなど予期せぬ事態を招く可能性があります。
絶対パスのファイルを指定しつつ、ワーニングを出さずに相対パスで格納するには -C /
を使いましょう。
1 |
tar zcf hoge.tar.gz -C / etc |
これで cron の実行時に毎回エラーメールが送信されることもなくなりますよ。
ITエンジニア募集中!
キュアコード株式会社はITエンジニアを募集しております。少人数の職場なので、上流・下流やサーバー・クライアント対応の垣根なく、あなたの強みを活かしながら いろいろなことにチャレンジ可能です。エンジニアとしての未経験の方、経験が少ない方も歓迎しています。
下記よりITエンジニア募集の採用情報をご覧いただけます。