最も簡単な方法(USBデバイス2台)

最も簡単な方法(USBデバイス2台)

それでUSBにKubuntuをインストールしましたが、問題はディスクスペースを誤ってフォーマット/分割したことです。これにより、Linuxのインストール時に空きディスク容量がほとんどなくなり、残りのディスク容量は実際に使用していない「USBストレージ」パーティションに無駄になりました。

分割

そのため、sdb2パーティションの追加スペースとして使用できるようにsdb1パーティションを再フォーマットするための最良の方法が何であるかを知りたいと思います。

答え1

下の領域のパーティションを移動することは大きな痛みになります。ここで問題は開始はどのように行われますか。私はこれがSDB5 512MBの領域だと思います。システムがsdb5から起動するように指示するいくつかの起動コードがあります。

しかし、これは、そのブートブロックの何かがLinuxがsdb6にインストールされていることを「認識」することを意味します。あえてこれを変えないでください

最も簡単な方法(USBデバイス2台)

新しいUSBキーを入手して挿入してください。 Linuxで起動します。新しいUSBフラッシュドライブを同じ方法でフォーマットしますが、「より良い」パーティションを使用してください。次に、古いキーのデータを新しいキーにコピーします。動作していることを確認してください。もう終わりました!

できる作業(1つのUSBデバイスのみを使用)

ご存知のように、Linuxにはマウントポイントがあります!ミックス&マッチできるそれら!だから:

  • 重要なコンテンツをバックアップする

  • Linuxでの起動とログインシングル(「回復」)モード

  • ext4 で再フォーマットして sdb1 パーティションの内容を削除します。

    mkfs.ext4 /dev/sdb1

  • それでは、Linuxのインストールを確認し、何がスペースを占めているのかを確認してください。

    du -sk / * 2> / dev / nullコードコピーソート-n |

たとえば、私のテストシステム(数秒間ディスクをスキャンした後):

...smaller fry removed...
12220   /run
13320   /sbin
18992   /etc
125244  /boot
873108  /home
873324  /lib
1154900 /opt
1537488 /root
4648100 /usr
15088048        /var

だから私は主に/ var用のシステムを使います。完璧。 /varを移動します。

  • 新しくフォーマットされたsdb1を/ mntにマウントします。

    マウント /dev/sdb1 /mnt

  • 「/var」を「/mnt」にコピーします(したがって、始める前にrsyncがインストールされていることを確認してください)。

    rsync -a /var /mnt

  • これで、(これは「シングルモード」、テキストモードの開始、すべてのサービス停止で行う必要があります。そうしないと、これを実行できない可能性があります)

    mv /var /oldvar # 必要に応じて戻り、oldvar を var に復元できます。

  • 新しい/ varを再生成してください。

    mkdir /var

  • oldvarの権限を確認して新しい/ varにコピーしてください。

  • /etc/fstab のマウントポイントリストに sdb1 の行を追加します。

    echo "/dev/sdb1 /var ext4 自動 0 2" >> /etc/fstab

sdb1パーティションは起動するたびに/ varに接続され、このパーティションに最大17GiBのデータを保存できるようになりました。

今再起動すると、すべてが以前と同じように機能します。 / varがいっぱいになり、sdb6にはoldvarが含まれているため、空き領域はまったくありません。すべてが大丈夫かどうかを徹底的に確認してください。。確実な場合は、oldvarディレクトリとすべてのサブディレクトリを削除してください。

ノート:私の例では/ varを使用しています。 /homeを移動する必要があるかもしれません。同じ。または、2つ以上のレベルをドリルダウンして、何がスペースを占めているかを確認できます。~へ/var:

du -sk /var/*2> /dev/null コードのコピーソート -n |

私の場合、/ var / wwwがスペースの90%を占めることがわかりました。したがって、 /var 全体を再配置する必要はありません。 "/var/www"を使用して上記の手順を実行しても、まだ90%の利点が得られます。また、シングルモードでログインまたは再起動する必要はありません。私のシステムでは、/var/wwwは間違いなくApache HTTPサーバーでのみ使用され、再起動せずに停止して再起動できるためです(/var/log、/var /run、/var/mailなどが使用されている可能性があり、シングルモードが必要な場合があります):

apache2ctl stop
rsync -a /var/www /mnt
mv /var/www /var/oldwww
mkdir /var/www
# Set up the same ownership and permissions of the old /var/www
chown www-data:users /var/www  
chmod 775 /var/www
# Compare the two ls lines
ls -la /var | grep www
# If ownership and pemissions are OK go on
echo "/dev/sdb1 /var/www   ext4   auto  0  2" >> /etc/fstab
# Free up sdb1 from mnt
umount /mnt
# Check whether the automount from fstab works
mount /var/www
# Now everything is as before, www is there and useable, it's just on sdb1.
apache2ctl start
# Now verify everything works again. IF it works, oldwww is useless.
rm -rf /var/oldwww # kill the original www

(新しい/var/wwwに直接作成してインストールし、/mntに全く触れることなくoldwwをwwwに同期することもできます。)

関連情報