/tmpパーティションの領域の拡大をしてみる
この記事の所要時間:約14分18秒
今回拡大するのは/tmpパーティション。学校のデータベースの講義でDB2 express-cを使うから、自鯖に入れようとインストーラを起動したら
「/tmpパーティションの容量が足りません。DB2 express-cのインストールには/tmpパーティションに最低500MBの空き容量が必要です」
と言われてしまったのがきっかけ。とあるサイトを参考にしながらインストール時に/tmpの容量を300MBにしてしまったので、どう考えても足りない。あとに示すようにちょうど/tmpパーティションがディスクの末尾にあったのでこれを拡張してやることにしました。これぐらいで足りなくなっちゃうんだから今後も足りなくなることはあるだろうと。
現在のパーティションの状態
まずはfdisk -l
の結果。
# fdisk -l ディスク /dev/sda: 250.1 GB, 250059350016 バイト ヘッド 255, セクタ 63, シリンダ 30401 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x2527a2c7 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 1 39 307200 83 Linux パーティション 1 は、シリンダ境界で終わっていません。 /dev/sda2 39 294 2048000 82 Linux スワップ / Solaris パーティション 2 は、シリンダ境界で終わっていません。 /dev/sda3 294 549 2048000 83 Linux パーティション 3 は、シリンダ境界で終わっていません。 /dev/sda4 549 30402 239794176 5 拡張領域 /dev/sda5 549 13297 102400000 83 Linux /dev/sda6 13297 19671 51200000 83 Linux /dev/sda7 19672 20946 10240000 83 Linux /dev/sda8 20947 21202 2048000 83 Linux /dev/sda9 21202 21240 307200 83 Linux ディスク /dev/sdb: 500.1 GB, 500107862016 バイト ヘッド 255, セクタ 63, シリンダ 60801 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0xe6dbb923 デバイス ブート 始点 終点 ブロック Id システム /dev/sdb1 1 60801 488384001 83 Linux
次にdf -l
の結果。
# df -h Filesystem Size Used Avail Use% マウント位置 /dev/sda3 2.0G 1.7G 210M 89% / tmpfs 939M 12K 939M 1% /dev/shm /dev/sda1 291M 97M 180M 35% /boot /dev/sda6 49G 3.1G 43G 7% /home /dev/sda9 291M 11M 266M 4% /tmp /dev/sda7 9.7G 2.4G 6.8G 27% /usr /dev/sda8 2.0G 39M 1.8G 3% /usr/local /dev/sda5 97G 8.3G 83G 10% /var /dev/sdb1 459G 1.5G 434G 1% /mnt/backup_exHDD
どちらもみると、/tmpパーティションがsda9という名前で、ちょうどよく最後のパーティションに位置している。未使用領域も何十GBも残っているので、300MBの/tmpパーティションを一度消去してから1GBの/tmpパーティションを作りなおすことにした。
パーティションの削除
拡張するとは言っても、一度削除してまた新しく作るだけ。たまたま拡張したいのが/tmpという中身を消去してしまっても問題ないパーティションだったのと、そのパーティションがたまたま
入力コマンドは以下のとおり。
# fdisk /dev/sda (中略) コマンド (m でヘルプ): d 領域番号 (1-9): 9 コマンド (m でヘルプ): n 領域番号 (1-9): 9 最初 シリンダ (20112-30401, 初期値 20112): 20203 終点 シリンダ または +サイズ または +サイズM または +サイズK (20112-30401, 初期値146 7): +1G コマンド (m でヘルプ): w 領域テーブルは交換されました! ioctl() を呼び出して領域テーブルを再読込みします。 警告: 領域テーブルの再読込みがエラー 16 で失敗しました: デバイスもしくはリソースがビジー状態です。 カーネルはまだ古いテーブルを使っています。 新しいテーブルは次回リブート時に使えるようになるでしょう。 ディスクを同期させます。
※最初シリンダと終点シリンダの範囲と初期値は覚えていないので適当な値です。でも最初シリンダの初期値が一つ前のパーティションの終点シリンダよりも小さい値だったのだけは印象的。なんでだろ
言われたとおりに再起動します。
なんか起動しない
起動しませんw
初めは焦ったが、ただパーティション切っただけで全部やってくれるとおもったら大間違いなわけで。モニタとキーボードをつないでシングルユーザーモードで操作。/だけがマウントされた状態。vimもlessも使えない。
忘れていたフォーマット。バカス。
mkfs -t ext3 /dev/sda9
次に/etc/fstabを編集する。一度書き込もうとするもどうやら読み込み専用でマウントされているようなので、マウントし直しから。
# mount -o remount,rw /
中身を見たところ、/etc/fstabの/tmp(/dev/sda9)のUUIDがいまのUUIDと違うので書きなおした。以下はその違う様子。
# blkid /dev/sda9 /dev/sda9: UUID="668a1e5b-e8ec-4d4d-a6cd-34d911677214" TYPE="ext4" # cat /etc/fstab # # /etc/fstab # Created by anaconda on Fri Mar 29 19:56:07 2013 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=969c2d64-e2c5-4e84-82e3-c56a05218eda / ext4 defaults 1 1 UUID=d1a9a05b-01f0-4b88-a8f5-51b9ce1a7b08 /boot ext4 defaults 1 2 UUID=3e91e571-5cee-47d4-ab6b-bc4d4100c547 /home ext4 defaults 1 2 UUID=668a1e5b-e8ec-4d4d-a6cd-34d911677214 /tmp ext4 defaults 1 2 UUID=79786548-0dbc-49f4-87b6-79adc2235201 /usr ext4 defaults 1 2 UUID=5bfb1af5-5286-4954-b5fb-10b6f51d92f5 /usr/local ext4 defaults 1 2 UUID=e2da7d0c-ba2d-4ca3-a7fd-aee1a5ebb09f /var ext4 defaults 1 2 UUID=a229bd9f-93db-49f7-a4a1-a78644d80a16 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
/etc/fstabを書き換えたら無事起動するようになった。きちんと/tmpが認識されて1GBになっている。
# df -h Filesystem Size Used Avail Use% マウント位置 /dev/sda3 2.0G 1.7G 210M 89% / tmpfs 939M 0 939M 0% /dev/shm /dev/sda1 291M 97M 180M 35% /boot /dev/sda6 49G 3.1G 43G 7% /home /dev/sda9 1020M 34M 935M 4% /tmp /dev/sda7 9.7G 2.4G 6.8G 27% /usr /dev/sda8 2.0G 39M 1.8G 3% /usr/local /dev/sda5 97G 8.3G 83G 10% /var
空き容量は今後どうする?
インストールするときに何十GBかを未使用領域として空けておいたわけだけど、今回のパーティションの変更で起動しなくなったりと、パーティションは初めに全てきちんと決めておくのが一番だと思った。今後この空き容量はどうしよう。
開けるとしたら、データを一度別の場所にコピーしておいてからパーティションを順に作り直すという手順になるのだろうか。一番増やしたいのが/varパーティションだけどsda5とだいぶ奥の方にいる。あと/パーティションも89%とかなり危ないから増やしたい。どうしたものか。
[amazonjs asin=”B00CDVTFPA” locale=”JP” title=”日経 Linux (リナックス) 2013年 06月号”]
関連記事
-
最近の自宅サーバ事情
最近一番問題なのが、以前までMac miniの方で起きていた不定期にネットが切断される現象が、サーバ
-
/tmp/orbit-ユーザ名以下の謎のファイルが/tmpパーティションを圧迫する問題
これも以前から解決していなかった問題。tmpwatchの設定を変更することで解決した。 cronか
-
NVR500にプロバイダの固定IPサービスを設定する手順
ついに私も、固定IPサービスを使うことにしました。ルータへの設定で若干詰まったのでメモ。自鯖
-
USB外付けHDDをext4にフォーマットする手順
前エントリの玄人志向のHDDケースを買った。で出来上がった外付けHDDをフォーマットして、Cent
-
外付けHDDを起動時に自動マウントする
前エントリでフォーマットからマウントまでやったが、自動マウントの設定を忘れていた
-
Apacheの起動が失敗する
ブログの重さが改善されるかと思いapacheのKeepAliveをonにして、restart。 し
-
OP25Bを越えてメールの送信を可能にする手順
やっと出来るようになりました。この本のお陰ですほんとに。 送信関連でやったことは、SM
-
Twitterで自動フォロー返しをするPHPコード
Apple信者の毒舌な妹botで使用している自動フォロー返しのコードをメモ。前提は Githu
-
ドメインを取得してとりあえず使えるようにする手順
ドメイン名。ウェブページの顔ですね。ちょっとネットワークに詳しい人なら結構意識していると思います。
-
ApacheでSSLを有効に(mod_ssl)
動機は、ownCloudをインストールしたこと。自分しか使わないとはいえブラウザでアクセスできるオン