前回、更新頻度の高いログディレクトリ(/var/log)をHDDに移動しました。
しかし同じように頻度の高いディレクトリがあります。
それがテンポラリの領域です。
テンポラリのディレクトリはどこかというと、tmpという名前のディレクトリがそのはず。
というわけでルート以下の全てのディレクトリから探してみます。ストレージは除くので下記のコマンドを打ってみる
-pruneは、「そのディレクトリの中には入って行かない」なので/var/storageの中には入っていかなくなるわけです。
そしてorの意味を持つ-oで元々の目的だったtmpディレクトリを探したのです。
で、結果を見る限り/var/storage以外の3つのディレクトリがそれになるようです。
では対象のディレクトリの移動先をつくります。
そして中身の移動
3つとも空でした。
そしてディレクトリを削除してシンボリックリンク
おや?おかしいな?
よく見るとディレクトリではなくシンボリックリンクでした。
しかもすでの/var/tmpにリンクしてました。なのでコレはスキップ。
こっちはOK
そして最後
おや?おかしいな?
よくみると隠しファイルがありました。
移動させます。
自分と親ディレクトリまで移動させようとしてエラーが出てますが、目的は達成しました。
ちゃんと移動できてます。
そしてディレクトリを削除してシンボリックリンクを。
なんだ!?移動させたのに!
確認するとwebminディレクトリが出来上がってました。
しかし中身は空です。
なので/tmp削除→リンク作成を一気にやります
エラーになりませんでした。
では確認。
リンクされてます。
中身もちゃんと移動してます。
ではさっき既にリンクされていて不要だったディレクトリを削除。
テンポラリディレクトリ移動完了です。
これでますますUSBメモリへの負荷は減ったはずです。
USBメモリの点滅頻度も減ったような気がしています。
しかし同じように頻度の高いディレクトリがあります。
それがテンポラリの領域です。
テンポラリのディレクトリはどこかというと、tmpという名前のディレクトリがそのはず。
というわけでルート以下の全てのディレクトリから探してみます。ストレージは除くので下記のコマンドを打ってみる
# find / -path /var/storage -prune -o -name tmp
/usr/tmp
/var/storage
/var/tmp
/tmp
-pruneは、「そのディレクトリの中には入って行かない」なので/var/storageの中には入っていかなくなるわけです。
そしてorの意味を持つ-oで元々の目的だったtmpディレクトリを探したのです。
で、結果を見る限り/var/storage以外の3つのディレクトリがそれになるようです。
では対象のディレクトリの移動先をつくります。
# mkdir -p /var/storage/00/main/tmp/usr.tmp ← /usr/tmp用
# mkdir /var/storage/00/main/tmp/var.tmp ← /var/tmp用
# mkdir /var/storage/00/main/tmp/tmp ← /tmp用
そして中身の移動
# mv /usr/tmp/* /var/storage/00/main/tmp/usr.tmp/
mv: cannot stat `/usr/tmp/*': そのようなファイルやディレクトリはありません
# mv /var/tmp/* /var/storage/00/main/tmp/var.tmp/
mv: cannot stat `/var/tmp/*': そのようなファイルやディレクトリはありません
# mv /tmp/* /var/storage/00/main/tmp/tmp/
mv: cannot stat `/tmp/*': そのようなファイルやディレクトリはありません
3つとも空でした。
そしてディレクトリを削除してシンボリックリンク
# rmdir /usr/tmp
rmdir: /usr/tmp: ディレクトリではありません
おや?おかしいな?
よく見るとディレクトリではなくシンボリックリンクでした。
# ll /usr/tmp
lrwxrwxrwx 1 root root 10 7月 28 00:55 /usr/tmp -> ../var/tmp
しかもすでの/var/tmpにリンクしてました。なのでコレはスキップ。
# rmdir /var/tmp
# ln -s /var/storage/00/main/tmp/var.tmp /var/tmp
# ll /var/tmp
lrwxrwxrwx 1 root root 32 8月 17 01:42 /var/tmp -> /var/storage/00/main/tmp/var.tmp
こっちはOK
そして最後
# rmdir /tmp
rmdir: /tmp: ディレクトリは空ではありません
おや?おかしいな?
よくみると隠しファイルがありました。
# ls -la /tmp
合計 28
drwxrwxrwt 4 root root 4096 8月 16 06:57 .
drwxr-xr-x 22 root root 4096 8月 16 06:55 ..
drwxrwxrwt 2 root root 4096 8月 16 06:55 .ICE-unix
drwxr-xr-x 2 root root 4096 8月 16 04:04 .webmin
移動させます。
# mv /tmp/.* /var/storage/00/main/tmp/tmp/
mv: inter-device move failed: `/tmp/.' to `/var/storage/00/main/tmp/tmp/.'; unable to remove target: ディレクトリです
mv: inter-device move failed: `/tmp/..' to `/var/storage/00/main/tmp/tmp/..'; unable to remove target: ディレクトリです
自分と親ディレクトリまで移動させようとしてエラーが出てますが、目的は達成しました。
# ls -la /tmp
合計 16
drwxrwxrwt 2 root root 4096 8月 17 01:45 .
drwxr-xr-x 22 root root 4096 8月 16 06:55 ..
# ls -la /var/storage/00/main/tmp/tmp/
合計 20
drwxr-xr-x 4 root root 4096 8月 17 01:45 .
drwxr-xr-x 5 root root 4096 8月 17 01:35 ..
drwxrwxrwt 2 root root 4096 8月 16 06:55 .ICE-unix
drwxr-xr-x 2 root root 4096 8月 16 04:04 .webmin
ちゃんと移動できてます。
そしてディレクトリを削除してシンボリックリンクを。
# rmdir /tmp
rmdir: /tmp: ディレクトリは空ではありません
なんだ!?移動させたのに!
確認するとwebminディレクトリが出来上がってました。
# ls -la
合計 20
drwxrwxrwt 3 root root 4096 8月 17 01:46 .
drwxr-xr-x 22 root root 4096 8月 16 06:55 ..
drwxr-xr-x 2 root root 4096 8月 17 01:46 .webmin
しかし中身は空です。
なので/tmp削除→リンク作成を一気にやります
# rm -rf /tmp; ln -s /var/storage/00/main/tmp/tmp /tmp
エラーになりませんでした。
では確認。
# ll /tmp
lrwxrwxrwx 1 root root 28 8月 17 01:50 /tmp -> /var/storage/00/main/tmp/tmp
リンクされてます。
# ls -la /tmp/
合計 20
drwxr-xr-x 4 root root 4096 8月 17 01:45 .
drwxr-xr-x 5 root root 4096 8月 17 01:35 ..
drwxrwxrwt 2 root root 4096 8月 16 06:55 .ICE-unix
drwxr-xr-x 2 root root 4096 8月 16 04:04 .webmin
中身もちゃんと移動してます。
ではさっき既にリンクされていて不要だったディレクトリを削除。
# rmdir /var/storage/00/main/tmp/usr.tmp/
テンポラリディレクトリ移動完了です。
これでますますUSBメモリへの負荷は減ったはずです。
USBメモリの点滅頻度も減ったような気がしています。
コメント
コメントを投稿