Debian Linuxでルートパーティションを拡張する方法(LVMを使用して作成されない)

Debian Linuxでルートパーティションを拡張する方法(LVMを使用して作成されない)

私はこの質問を読んだ。Linuxをアンインストールして再インストールせずに(またはデータを失う)、ルートパーティションのサイズを変更できますか?私が尋ねる前に。しかし、ルートパーティションを作成するときにLVMを使用しないため、リンクされた質問の解決策が私の問題に適用されるかどうかはわかりません。

私はDebian Linuxディストリビューションを使用しています。CrunchBang、私のラップトップに関する有用な主な情報は次のとおりです。
*@*:~$ uname -a
Linux * 3.2.0-4-686-pae #1 SMP Debian 3.2.60-1+deb7u1 i686 GNU/Linux
*@*:~$ sudo df -h
[sudo] password for *: 
Filesystem                                              Size  Used Avail Use% Mounted on
rootfs                                                  323M  259M   48M  85% /
udev                                                     10M     0   10M   0% /dev
tmpfs                                                   294M  636K  294M   1% /run
/dev/disk/by-uuid/da3f8ae3-c79f-4025-accb-1f64bf59ba84  323M  259M   48M  85% /
tmpfs                                                   5.0M     0  5.0M   0% /run/lock
tmpfs                                                   1.8G   43M  1.7G   3% /run/shm
/dev/sda9                                               442G   15G  404G   4% /home
/dev/sda8                                               368M   11M  339M   3% /tmp
/dev/sda5                                               8.3G  6.8G  1.1G  87% /usr
/dev/sda6                                               2.8G  500M  2.2G  19% /var

*@*:~$ sudo fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005d608

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      684031      340992   83  Linux
/dev/sda2          686078   976771071   488042497    5  Extended
/dev/sda5          686080    18262015     8787968   83  Linux
/dev/sda6        18264064    24121343     2928640   83  Linux
/dev/sda7        24123392    36278271     6077440   82  Linux swap / Solaris
/dev/sda8        36280320    37058559      389120   83  Linux
/dev/sda9        37060608   976771071   469855232   83  Linux


*@*:~$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=217630,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=300952k,mode=755)
/dev/disk/by-uuid/da3f8ae3-c79f-4025-accb-1f64bf59ba84 on / type ext4 (rw,relatime,errors=remount-ro,user_xattr,barrier=1,data=ordered)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /run/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=1817380k)
/dev/sda9 on /home type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
/dev/sda8 on /tmp type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
/dev/sda5 on /usr type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
/dev/sda6 on /var type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
gvfs-fuse-daemon on /home/min/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)

*@*:~$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=da3f8ae3-c79f-4025-accb-1f64bf59ba84 /               ext4    errors=remount-ro 0       1
# /home was on /dev/sda9 during installation
UUID=a832e353-d0fc-4e87-81fa-d08c77f84e81 /home           ext4    defaults        0       2
# /tmp was on /dev/sda8 during installation
UUID=5f3e0eab-4f75-44a1-81af-c450d4ff301d /tmp            ext4    defaults        0       2
# /usr was on /dev/sda5 during installation
UUID=b4c895ff-cb26-4c65-bcd7-3f6cd986756e /usr            ext4    defaults        0       2
# /var was on /dev/sda6 during installation
UUID=8bedb184-389f-4295-9612-c28a94c81b1e /var            ext4    defaults        0       2
# swap was on /dev/sda7 during installation
UUID=976ec3fe-7b8e-436b-8c52-05be582f4e32 none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0
#/dev/sdb4       /media/usb0     auto    rw,user,noauto  0       0

*@*:~$ sudo vgdisplay
  No volume groups found
*@*:~$ sudo lvdisplay
  No volume groups found

誰かが私に参考にできる提案や情報を提供できることを願っています。ありがとうございます〜

答え1

ルートファイルシステムは/ dev / sda1にあるようです(提供された情報ダンプの間にUUID da3f8ae3-c79f-4025-accb-1f64bf59ba84を持つパーティションに関する有用な情報は提供されていません。まったく異なるパーティションにある可能性があります)CDにあります)。

あなたの場合、すぐ後ろに拡張パーティションがあるため、拡張は非常に困難です。あなたができることは次のとおりです。

  1. /home ファイルシステムの縮小
  2. 新しいパーティションに十分なスペースを確保するために、同じ起動ブロックを使用して削除して再作成する/dev/sda9()/home
  3. パーティションを作成してext4ファイルシステムを作成したら、そこ/dev/sda1からすべてをコピーします。
  4. パーティション内のetc / fstabを更新し、パーティションのUUIDを更新して/から再update-grub起動し、新しいエントリを選択してみてください。

サイズ変更が含まれていないため、エラーが発生しにくいもう1つのパスは、sda1とsda5のデータをマージしてsda1を作成することです/boot

  1. CDから起動
  2. /tmp/sda5 に sda5 をインストールし、次の手順を実行します。

    mkdir /tmp/sda5/usr
    mv /tmp/sda5/* /tmp/sda5/usr
    

    (もちろんこれはusr自分で動けないという不平を言うでしょう)

  3. sda1をインストール/tmp/sda1し、/tmp/sda1以下を/tmp/sda5除くすべての項目をコピーします。/tmp/sda1/boot

  4. ディレクトリとその/tmp/sda1内容を除くすべてを削除します。boot
  5. /usrエントリを削除して(sda1)のfstabエントリを作成します。/boot
  6. /fstabのエントリの更新
  7. 起動し、update-grubboot.cfgのメニュー項目を確認して再起動してください。

どちらの場合も、dd現在の状況を復元できるようにシステムを完全にダンプ(使用)せずにこの作業を開始しないでください。

新しいディスクを購入し、その上にパーティションレイアウト(大きなディスクを含むsda1)を作成し、ファイルシステムを作成し、個々のパーティションの内容をコピーし、fstabとboot.cfg

IMOはまた、この方法でこのシステムを確立した人々を特定し、彼らが間違いを悔い改めるよう努めなければなりません。

答え2

ルートパーティションを拡張できますか?はい。ただし、オンラインではできません。* Live CDまたはUSBスティックから起動する必要があります。 debian、fedora、kaliなど、すべてのディストリビューションが利用可能です。

*:技術的には可能ですが複雑になることがあります。

もちろんこれを行うにはスペースが必要です。 LVM を使用せずに、ルートパーティション (sda1? sda8? sda9?) の直後のディスクに空き領域を探す必要があります。共有された情報によると、ルートはsd *参照ではなくUUIDによってマウントされるため、これは明確ではありません。 -blkidはこのマッピングを表示できます)。

2つのオプションがあります。 - 拡張パーティションでスペースを見つけてルートパーティションを新しいパーティションに移動するか、 - 新しいパーティションスキームを再作成し、すべてのデータをその中に移動できるスペアディスクを使用します。

このタスクには多くのトラップがあるため、タスクの実行中にディスクのレプリカを維持することをお勧めします。失敗した場合は、いつでも開始した場所に戻ることができます。

私はこれがかなり高いレベルであることを知っていますが、問題はいくつかの方法で解決できます。

関連情報