- ベストアンサー
/varの容量を変更の仕方
freeBSD.4.10の/var領域変更で躓いています。 /var領域が一杯になってきたため、余裕のある/usrの分を/varへ移行したいと思っております。 OSインストール後ですが可能でしょうか? 変更の仕方ご教授いただければ幸いです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
情報がすくないですが、単純に5つほど案が考えられますね。 1)パーティション変更その1 ●全面的にパーティションを切り直す。 ・初期インストールと同じ方法。 ・バックアップを取得しないと全データが消える。 ・別マシンで、新パーティション/データ移行をした方がダウンタイムが少ないと思われる。 2)パーティション変更その2 ●/varと隣接しているパーティションを縮小させる(現状のパーティション構成による) ・状況により可能/不可能が決まる。(disklabel,swapinfo,df等の情報が必要) ・/varと隣接したパーティションが、/(root),/usr等の消せない場合は実施不可。 # 以下条件が揃うとした場合。(sysinstall等で実施) ・容量が足らない/varと、比較的空きがあるswapや/tmpが隣接している。 ・シングルユーザモードにて、/var,swap,/tmpを消す。(データは消える) ・必要な容量を確保。/var,swap /tmpは/(root)で代用可かも ・/etc/fstabが変更されるので、正しく直す。 ・1よりダウンタイムは少ない(はずだ)が、経験が無いと1より手間&危険である。 3)シンボリックリンクで問題回避する。 ●特定のディレクトリをシンボリックリンクで他のパーティションに移動させる。 ・/varの圧迫しているディレクトリを、空きのあるパーティションにコピー(cp -pR,tar 等) ・ディレクトリに対してシンボリックリンクをはる。 ・事前にある程度の作業が可能なので、ダウンタイムは少ない。 ・無闇なリンクは保守を困難にするので、ポリシーが無いなら止めた方が無難。 ・シンボリックリンクが間違っていると、元の場所(/var)のファイルの日付やサイズが変わるので要チェック。 ・OS再起動は不要だが、作業前にサーバAPの停止は必須。 4)ログの出力先を変更する。 ●httpd(かな?)のログの出力先を、空きのあるパーティションに変更。 ・サーバアプリケーションの設定ファイルの変更。 ・OS再起動は不要。サーバAPの再起動は必要。 5)保存ログの格納場所を変える。 ●サーバAPが出力するものだけ/varに残して、保存用は別パーティションに格納する。 # サーバ構成が不明で明言できないが、サーバ管理者の腕の見せ所。 ・保存が目的のログファイルを定期的に移動(mv)させるスクリプトを書く。 ・うまく作れば、サーバAPの停止も不要となる可能性あり。 ・スクリプトのメンテナンス(保守)の手間が継続的が少々ふえる。 私なら、(4≧5)>3>(2≧1)の順で検討しますね。 金銭&時間に余裕があれば、「ちゃんとした予備機構築」って事もありえるなぁ。 状況に合わせて、検討なさって下さい。 参考までに、 自宅のマシン郡だと、/,swap,(/tmp),/var,/usr,/optの最低5つパーティションを切って、 /optを出来るだけ大きくして、/usr/(compat,home,src,obj,ports,X11R5,local)を/optへ シンボリックリンクしちゃってます。 こうすると、マシンの用途/DISK容量に限らず/,swap,(/tmp),/var,/usrがほぼ同じ容量になるし、 NFS exportするのが/optだけになって何かと楽なのです。 また、DISK容量の小さいマシンは、/(root)しかパーティションが無いのもあります。 まあ、こんな例もあるって事で。 でわ。
その他の回答 (2)
- yambejp
- ベストアンサー率51% (3827/7415)
物理的にパーティションをきっているなら 特殊なツールでもつかわないかぎり、 パーティションのきり直しはむずかしいでしょう。 FreeBSDの導入をする際に参考になさった 解説書にも「将来のことをよく考えてパーティション をきるように」というくだりがあると思います。 HDDを増設するのもよし、前回申し上げた/varを シンボル化することでもよし、特にデータ量のおおい /var以下の特定のフォルダのみを/usr以下の適当な フォルダに移動するもよし、お好みの方式でご検討 なさってみてください。 そういう場当たり的な対応がいやなら /stand/sysinstallでパーティションきりなおして ください。もちろんデータは全て消えますけど。
- yambejp
- ベストアンサー率51% (3827/7415)
/varをパーティションでわけているということですか? また/usrと/(ルート)もパーティションがわかれて いるのでしょうか? /usrをベースにするには /usr/varをつくり、/varの内容をすべてコピーし /varをumountします。ルートにシンボルで ln -s /usr/var /varをつくればよいでしょう。 終わったら/etc/fstabで/varの情報をはずしておいて ください。 ただ、/varが一杯になるというのは微妙な状況です。 いらないログファイルがたまってたりするんじゃ ないですか?
補足
早々のご回答ありがとうございます。 現況は下記の通りとなります。 58% / 35% /tmp 20% /usr 80% /var 説明不足で申し訳ありません。 /usrをベースというわけではなく/varを大きくとってパーティションを再構築を希望しています。 現在のデータを消さずに。 >ただ、/varが一杯になるというのは微妙な状況です。 >いらないログファイルがたまってたりするんじゃ >ないですか? バーチャルドメインのログを一週間分保存しており、バーチャルドメインを増やすごとにログも増えHDを圧迫しています。