How to extend a partition in Linux Virtualbox machine?
Hello, I'm running low on space and wish to add the 8GB I allocated within Virtual box to my VM in virtualbox. I see the 8GB free in gparted but I'm not sure how I can add this space to my /dev/sda1 partition? I think I need to use LVM but not sure. I'm running Oracle VirtualBox on Ubuntu and have Linux Mint VM I created in VBOX.
Code:
└─# df -H Code:
└─$ sudo fdisk -l Here's the 8GB free in gparted I wish to allocated to /dev/sda1 https://imgur.com/a/9TZm064 https://imgur.com/a/9TZm064 |
I would boot the live gparted ISO on the guest.
1. Move the extended partition to the right to create free space after sda1 2. Extend sda1 to use the free space. 3. Apply changes. 4. Shutdown live ISO, remove ISO from CD drive, reboot VM. Always backup anything important on the VM as necessary. If you want to experiment first you can always clone the VM assuming you have enough disk space on the host. |
Quote:
|
I downloaded the gparted iso. Then I mounted this iso to my VDI I wish to resize and changed the boot order to boot off of the ISO.
When I boot it up I see the sda1 partition I want to resize but I still can't. I think I need to move my swap file for the vm (dev/sda5) over to right some how. The swap file is preventing me from being able to do this. Any ideas how I can move the swap file over to the far right so my 7.91 GB free space is next to /dev/sda1? https://imgur.com/a/i5fVe2K https://imgur.com/a/i5fVe2K Thanks again for any input! |
Select partion -> resize/move from the menu and the with the mouse move drag the extended partition box for sda2 to the far right so the unallocated space is between sda1 and sda2.
|
Quote:
"Grow /dev/sda2 from 975 MiB to 8.87 GiB" Is this what I want to do to get the unallocated space next to /dev/sda1? I want to make sure that's accurate before committing this change. Much appreciated! Also, any ideas why the images don't work? I keep having to paste links to my images instead. Thank you! https://imgur.com/aPiyF3b https://imgur.com/aPiyF3b https://imgur.com/1RAQTmL https://imgur.com/1RAQTmL |
No, you want to move not resize. Yes the unallocated space needs to follow sda1
|
Quote:
|
If you enter the 8GB or so into the box for preceding space it will move the partition to the right.
|
Quote:
DEFAULT: Freespace preeeding (MiB): 0 MiB listed in the Free space following in (MiB) 8105 And if I flip those values around it ends up showing Grow /dev/sda2 from 975 Mib to 8.87 GiB Is that going to grow my swap file on /dev/sds5 from 975 to 8.87GB? I hope not. Otherwise I might have to look into deleting my current swap file. I should be able to join the free space left over by the swap file to the 7.91GB I have unallocated correct? I might need to edit that out in /etc/fstab in my guest OS before I attempt that and make sure my snapshot in Oracle is good. I hope the snapshot retains the current partition setup in case of issues. Here's the pictures illustrating what I was trying. Thanks again for anymore help! Default settings: https://imgur.com/aPiyF3b Change to Opposite: https://imgur.com/N1xKoRu Changes it will make: https://imgur.com/51zXH2l |
Unable to extend /dev/sda2 to use unallocated space
Ok, I just found out that I had to first queue up the change above and then after that it allowed me to grab the swap file on /dev/sda5 and move it all the way to the right.
This is the operation that went through with these two actions. 2 Actions completed https://imgur.com/XBykOHL https://imgur.com/aPiyF3b Result: Unallocated 7.91GB is now next to /dev/sda1 I wish to expand. Unable to extend /dev/sda2 to use the 8.9G unallocated on /dev/sda2 in Gparted Live ISO boot https://imgur.com/kkhuqeq Unable to extend it if I'm in the OS either. https://imgur.com/wVWeBdU But I still cannot extend the /dev/sda1 through gparted event with the unallocated space listed in my screen shot. From what I recall I should be able to click Resize/Move on my /dev/sda1 and then drag a bar to utilize the 7.91 GB I have unallocated? Am I missing something here or do I have to edit something in the file system? I'm having an off day and kind of tired. Also, seems odd that DH -H shows the 8.9G on /dev/sda2 I want to allocate to /dev/sda1 shows it as W95 Ext'd (LBA) Might that be the issue? Code:
sudo fdisk -l |
I can not tell but it looks like you do not have sda1 selected.
|
Quote:
Unable to expand: https://imgur.com/i1xK2zv It does not show what should be 8GB free to the right to drag the arrow. I'm thinking I *might* have to run this command I found on stack exchange to delete /dev/sdc2 that shows up as W95 Ext'd (LBA) in fdisk -l output above? Then I might be able to use the unallocated but I'm pretty sure that will blow away the /dev/sda5 975 MB swap file I'm using. I don't want to render it unbootable if do that. The command was sudo /fdisk /dev/sda2 and then choose d for delete. Then I might be able to join the 27.04 GB on /dev/sda1 to the unallocated space? :confused: Command I'm thinking about running. /fdisk /dev/sda2 delete the 8.87 GB "Extended" /dev/sda2 which will likely wipeout /dev/sda5? https://imgur.com/944F0OP Current partitioning and file systems: https://imgur.com/3TtQ0d7 Hoping to get this addressed and you've been very helpful! |
You made the extended partition larger and moved sda5 to the end of the extended partition. The unallocated space is in the wrong spot which is why you can not resize sda1. You could just delete swap but as posted that might leave your VM unable to boot.
Move sda5 back to the beginning of sda2. Shrink sda2 back to its original size. Move sda2 to the end of the drive. Resize sda1. |
Quote:
Here's these steps I was mentioning where I end up with that 1 MB unallocated no matter what I tried. HOW it Is NOW: https://imgur.com/FayOZRd https://imgur.com/FayOZRd And if I move it to the far Left it forces leaving 1 MB unallocated file. Even if I enter 0 in the preceding field. Also, I tried entering the 8104 for free Space following but then it switches the New Size where the swap is to 974 instead of the 975. https://imgur.com/dZUHLqj Quote:
Leaves 1 MB of unallocated. https://imgur.com/dZUHLqj Unable to zero out free space preceding to 0. Forces the swap/sda5 to change from 975 MB to 974MB https://imgur.com/dZUHLqj Results of doing this do not look good and leave a 1 MB file even though the swap/sda5 says it will stay at 975MB even though i can't enter that value because it's not possible. https://imgur.com/cgyjeje Basically I'm not sure at this time how I can get /dev/sda2 back to the original 975MB that matched the 975MB swap file how it was originally. And I have no idea why the unallocated 7.91 merged with the sda2 disk. :confused: Here's a before and after. Before & After today's changes brief picutre: Original intention was to get sda1 next to the 9.71 MB unallocated so I could extend the /dev/sda2 my VM's vdi resides on. The sda5 975 swap when the original sda2 size was also 975MB https://imgur.com/UYp2jFj https://imgur.com/UYp2jFj Thanks again for any ideas. I don't recall having so many issues with using gparted and allocating free space to extended existing partitions! |
Let me try to explain a bit more. Your VM is configured using the legacy MBR partitioning, you have a primary partition sda1, an extended partition sda2 and within the extended partition a logical partition which is your swap. The extended / logical partitioning scheme was developed so that in the old days one could create more then 4 partitions. 1-4 are primary and anything >=5 is a logical partition.
What you have in https://imgur.com/cgyjeje image is resized the extended partition to include the added space and are moving sda5 within sda2 which is incorrect. Lets try it again: 1. Move sda5 back to the beginning of sda2. 2. Resize sda2 back to the original size, basically the same as sda5. 3. Move sda2 to the end of the drive. This should move the unallocated space from the extended partition back to where it should be. 4. Resize sda1 to include the unallocated space. |
I also wanted to provide a summary of fdisk -l output before and after changes causing the start & end sectors to change on /dev/sda2
fdisk -l before any changes: Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 56719359 56717312 27G 83 Linux /dev/sda2 56721406 58718207 1996802 975M f W95 Ext'd (LBA) /dev/sda5 56721408 58718207 1996800 975M 82 Linux swap / Solaris fdisk -l after todays' any changes: Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 56719359 56717312 27G 83 Linux /dev/sda2 56721406 75315199 18593794 8.9G f W95 Ext'd (LBA) /dev/sda5 73318400 75315199 1996800 975M 82 Linux swap / Solaris I'm assuming I want to try to change the Start and End sectors of /dev/sda2 back to how they were before any of the changes were made? Either way I'd rather not have to remove the /swap to try to fix this because that might cause issues and I confirmed my swap is working fine right now. Code:
Disk /dev/sda: 35.91 GiB, 38561972224 bytes, 75316352 sectors |
I responded to your thread while you were adding a post. See my post #16 but yes you want to resize sda2 back to where it was before.
|
Quote:
I was thinking trying these operations with KDE Partition manager withing the Guest OS. This looks like it will basically put it back to how it was originally. I have not committed this yet but see what you think? I'm not sure if I could change the 1MB unallocated that would end up on sda2 but the sda5 would be back at the top this way. I could possible zero out that extra 1 MB some how. https://imgur.com/O6S4eLS |
I would not worry about the 1mb space.
|
Quote:
Quote:
Unable to mode this /sda2 Resize/Move. https://imgur.com/0vWumWg Thanks! |
No you need to move sda2. It seems you are running the VM and not the gparted ISO. gparted will not allow you to move active partitions. You could turn swap off and then try to move sda2 but I would go back to running gparted ISO.
|
Quote:
https://imgur.com/UQS8Ypg Thanks again for all the help. This has been frustrating as heck and I never remember running into so many issues! :banghead: |
Also, I went ahead and restored my snapshot to before I messed with this at all just to get back to exactly how it was before trying anything.
Hope to get this figured out tomorrow! :study: The sectors are back to my very first post ,etc. |
Sorry, I've totally messed you up and posted the wrong steps.
1. resize the extended partition to include the entire unallocated space. 2. move sda5 to the end of the extended partition. 3. move the start of the extended partition to the right. This will essentially move the unallocated space to right after sda1. 4. resize sda1 to now use the unallocated space. |
Your setup seems unusual as I can't think of a good reason to have an Extended partition on a drive when you are only using 2 partitions. I don't know if this is how your installer created things or if you did but it is much simpler if you only have 2 partitions that they be primary as you have found.
Another possibility in addition to the post above would have been to use gparted and turn off swap using the terminal tab, delete swap then delete sda2 (Extended partition), increase the size of sda1 leaving 1-2GB for a primary swap partition. You would need to modify the entry in the /etc/fstab file for swap and insert a correct device name or UUID as creating a new swap changes the UUID. |
Quote:
OFFICIAL PARTITION FIX Links referenced: https://askubuntu.com/questions/1751...-using-gparted https://jochenhebbrecht.be/site/2016...t#comment-7080 Action Plan: 1) Deactivate Swap with KDE Manager 2) Disable swap by commenting out the UUID in /etc/fstab 3) Boot off gparted Live and delete the swap and apply changes 4) Delete the extended /dev/sda2 partition and apply 5) This left me with only two file systems > the /dev/sda1 that I wanted to expand and 8.87 GB of unallocated space 6) Resize the unallocated space leaving the amount you want to use for a /swap file 7) Right click on remainder (975 MB in my case) and assign it linux-swap files system within gparted 8) You can probably re-activate the swap with the live gparted but I ended up booting without swap active without issues but the first boot was noticebly slower. 9) Open KDE-Partition manager (If installed) > I added plasma desktop manager with XFCE so I think KDE desktop installed this utility. Right click on swap and choose swap on. 10) Identify the new UUID for the swap via the commands listed below. 11) Remote the comment out # from the beginning of the /etc/fstab for the /swap file and input the new UUID 12) Reboot and confirm swap is active using the new UUID for the swap. Things noticed. The UUID for my swap file did change as part of this process. It might be a better idea to activate the swap within the gparted live ISO session but I did not do this. However, I now have the extra space I wanted allocated so I'm not going to bother messing with this. However, I have noticed a slight hang when my VM boots up but it seems to be up and running fine. I'll monitor this to check. I attached a few screen shots that might help someone with this issue in the future. It was a PITA but after spending an entire day I was able to get this sorted. Swap file UUID before doing this was: └─sda5 975M part 81fd0e88-7b42-461f-99da-7484c7d58db5 Swap file UUID after doing this: └─sda2 974M part 48d0c546-938b-4489-87de-371af43496f4 Note: Theses commands will get you the UUID of the swap. lsblk --output NAME,SIZE,TYPE,UUID lsblk --output NAME,SIZE,FSTYPE,UUID | grep '[[:space:]]swap[[:space:]]' Happy Days! Pictures: https://imgur.com/kiofHW9 https://imgur.com/OeHb4tb https://imgur.com/aiMoI8a https://imgur.com/J3U1G5x |
What's odd is ever after some more testing the OS loading logo is slower on startup. It used to only flash for about 1-2 seconds. Now it's more like 6-10 seconds which is annoying. I even restored my snapshot just to confirm it loaded faster with the swap and partition setup from before by loading my old snapshot. But I confirmed the snap file is definitely activated and in use so I suppose I can deal with that slight annoyance.
|
Quote:
Can't help with the slower boot as I haven't used Mint in years but I'd agree it is more an annoyance than a problem. |
Quote:
Here's my dmesg showing this issue. dmesg |grep edc1bdec-bbbb [ 41.139375] systemd[1]: Expecting device dev-disk-by\x2duuid-edc1bdec\x2dbbbb\x2d4830\x2d81d8\x2d0f4a94bc74cf.device - /dev/disk/by-uuid/edc1bdec-bbbb-4830-81d8-0f4a94bc74cf.. Running all these commands show the swap is being used. swapon -s to see swap devices and sizes (where swapon is installed) Code:
└─$ swapon -s It looks like it's pointing to the wrong location but still loading somehow? /etc/fstab shows> I added the new UUID. Code:
# swap was on /dev/sda5 during installation |
:)UPDATE!!!
I just figured out what was causing my boot hiccup / slowdown after I moved / changed my SWAP UUID and also extended my .vdi using the unallocated space I mentioned at the beginning of this crazy adventure! It turns out this was causing my issues! Not only did I have to update the new UUID in /etc/fstab but I ALSO have to follow this guys info! https://linux-blog.anracom.com/2020/...the-initramfs/ My /etc/initramfs-tools/conf.d/resume file still had the old UUID for my swap when it was on /dev/sda5 I simply changed this to match my new UUID and now it boots super fast again!:) |
Quote:
|
Quote:
|
All times are GMT -5. The time now is 12:20 PM. |