最初の質問:
df -h
を実行すると、次のように表示されます。
# df -h
Filesystem Size Used Avail Capacity Mounted on
/dev/ad4s1a 9.7G 8.0G 918M 90% /
devfs 1.0K 1.0K 0B 100% /dev
/dev/ad4s1d 1.8T 6.7G 1.6T 0% /home
procfs 4.0K 4.0K 0B 100% /proc
linprocfs 4.0K 4.0K 0B 100% /usr/compat/linux/proc
devfs 1.0K 1.0K 0B 100% /var/named/dev
なぜそれは次のようなディレクトリを表示しません:
/var
/etc
/usr
?以前の専用サーバーでは、使用可能なすべてのパーティションサイズを表示できましたが、ここでは/home
と/
...しか取得できませんでした。
2番目の質問:
/var
パーティションサイズを増やすにはどうすればよいですか? 2時間の作業の後、このパーティションはいっぱいになりました...
df コマンドは、ファイルシステムごとのディスク領域の使用状況を報告します。 /var
/etc
と/usr
は、/
ファイルシステムの一部である独立したファイルシステムではありません。ファイルシステムは/
と/home
の2つしかありません。
システムを再インストールできる場合は、パーティションを変更して、適切なサイズの/var
ファイルシステムを作成できます。
できない場合は、リンク/var
-> /home/var
を作成してみてください。ただし、これを行う方法の詳細は、システムへのアクセス権によって異なります。
上記のとおり、別のFSでない限り、/var
を増やすことはできません。ただし、/
から/home
のように、より大きなFS=に移動できます。唯一の提案-dump/restore
を使用して、/ varの現在のコンテンツを新しい場所に移動します代わりにmv
またはtar
voodoo。これにより、所有権と権限だけでなく、/ var/emptyのschg/uchgなどのいわゆる「フラグ」も保存されます。また、/homeと/が別のパーティションにある限り、/ home/var->/varをハードリンクします。
# mkdir /home/var
# cd /home/var
# dump 0af - /var | restore rf -
# chflags -R nouchg,noschg /var
# rm -r /var
# ls -s /home/var /var
もちろん、上記すべてにシングルユーザーモードが必要です。それができない場合は、最初に/ varを使用するすべてのデーモン(sendmailやmysqlなど)を停止する必要があります。
他の良い習慣-/ var全体ではなく、大きくなる傾向があるdirsだけを移動します。/var/db/mysql、/ var/log、/ var/mailなどです。私はそれらのために別々のホームを作成することを好みます-/ usr/home/log、/ usr/home/mysqlおよび/ usr/home/mailなど。したがって、dirsは、ソフトウェアの構成を防止するために、/ var内の通常の場所にリンクされます。
なぜそれは次のようなディレクトリを表示しません:
このマシンには独自のファイルシステムはありませんが、/
のサブディレクトリであるためです。
以前の専用サーバーでは、使用可能なすべてのパーティションサイズを表示できましたが、ここでは/ homeと/ ...しか取得できませんでした。
あなたはそれらしか持っていないので、おそらく。
/ varパーティションサイズを増やすにはどうすればよいですか? 2時間の作業の後、このパーティションはいっぱいになりました...
/var
パーティションがないため、できません。
別のディスクを追加する場合は、/var
の下にあるすべてのものをこのディスクに移動し、/var
としてマウントできます。
編集:/home/
がほとんど空であることを確認しました。したがって、/var
の下にあるすべてのものを/home/var
に移動し、/var
をそこのシンボリックリンクに置き換えます。シングルユーザーモードで、またはレスキューシステムからこれを行う必要がある場合があります。
/var
内でのシンボリックリンクが好きではないというだけの理由で、これまでに提案されている方法とは少し異なるアプローチをとります。前と同じように、移動するデータを保持する/home
の下に新しいディレクトリを作成し、データをコピーします。
nullfs
マウントポイントを使用して、ソフトウェアが想定する場所に実際のディレクトリ(例:/home/var/db/mysql
)をマウントできます。
mount -t nullfs /home/var/db/mysql /var/db/mysql
/etc/fstab
では、次のようになります。
/home/var/db/mysql /var/db/mysql nullfs rw 0 0
このアプローチを機能させるには、カーネルにoptions NULLFS
が必要か、nullfsカーネルモジュールを使用可能にする必要があることに注意してください。
システムに関する限り、システムは/home/var/db/mysql
から/var/db/mysql
の内容に通常どおり正確にアクセスできます。このアプローチは、stat(1)やrealpath(1)などのユーティリティが/var
の下ではなく/home/var
の下にあるパスを報告することも意味します。