You are not logged in.
Pages: 1
I am trying to increase the size of my partition, but due to the horrendous partitioning done on my disk, simply resizing it won't work. I have already moved over my entire / to the new partition, all I believe needs to be done is to make my system use the new partition as root, how can I do that?
I also used archinstall to install Arch, not sure if it's against the rules because it wasn't mentioned in the list.
Offline
If you've moved everything correctly, then all you need to do is mount the new root as / in fstab or whatever permanent mount mechanism you use and point your bootloader at the new root partition, depending on your bootloader and general boot setup.
I'd also check if you've actually copied everything correctly. How did you "move" your data?
Offline
"I'd also check if you've actually copied everything correctly. How did you "move" your data?"
I meant to say copy, I mounted both partitions and ran "sudo rsync -axHAX --numeric-ids ---info=progress2 /mnt/old-place /mnt/new-place/" where old-place is the original partition. I checked the partition and it looks pretty identical in my file manager.
I'll go and do what you said to point Arch to it, thank you
Last edited by ArchMisspelled (Yesterday 12:07:27)
Offline
Well, there's progress. When I boot into the new Arch Linux entry in my grub, it panics and gives "VFS: Unable to mount root fs on unknown-block(0,0)". How can I fix that?
Offline
Some details
The fstab on the old partition (which works and I am typing this on it) marks root on its own partition
The fstab on the new partition (which doesn't work) marks root on itself too, which is where I want to boot into
I for some reason do not have a grub directory in /boot, it is in /efi/grub instead
Offline
Please post the output of
lsblk -fyour old and new fstab and the grub.cfg
Online
lsblk -f[archie@archie-machine ~]$ lsblk -f
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
zram0 swap 1 zram0 49e3a041-51d1-4130-819d-237fa3791abe [SWAP]
nvme0n1
├─nvme0n1p1 vfat FAT32 C284-EBCD
├─nvme0n1p2 ext4 1.0 11383ee4-5546-4f21-9a5c-0f57a741f7d0
├─nvme0n1p3 ext4 1.0 34e03703-08aa-4e8a-9e24-df76cff7d2e7
├─nvme0n1p4 vfat FAT32 BAFE-09EF
├─nvme0n1p5 ext4 1.0 bb492f3a-d22a-41df-aa35-592f25c26981 29.3G 74% /
├─nvme0n1p6 vfat FAT32 18E8-DC21 964.6M 3% /boot
├─nvme0n1p7 vfat FAT32 EE02-EF52
└─nvme0n1p8 vfat FAT32 18E8-40DD 860.7M 14% /eficontents of old fstab (Works and I am writing this on it)
[archie@archie-machine ~]$ cat /etc/fstab
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/nvme0n1p5
UUID=bb492f3a-d22a-41df-aa35-592f25c26981 / ext4 rw,relatime 0 1
# /dev/nvme0n1p6
UUID=18E8-DC21 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
# /dev/nvme0n1p8
UUID=18E8-40DD /efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
/swapfile none swap defaults 0 0contents of new fstab (Doesn't work but I want to switch to it)
[archie@archie-machine temporary_mount_point]$ cat etc/fstab
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/nvme0n1p2
UUID=11383ee4-5546-4f21-9a5c-0f57a741f7d0 / ext4 rw,relatime 0 1
# /dev/nvme0n1p6
UUID=18E8-DC21 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
# /dev/nvme0n1p8
UUID=18E8-40DD /efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
/swapfile none swap defaults 0 0grub.cfg contents (of old partition which works and I am on it right now)
[archie@archie-machine ~]$ cat /efi/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${env_block}" ] ; then
set env_block="(${root})${env_block}"
export env_block
load_env -f "${env_block}"
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
if [ "${env_block}" ] ; then
save_env -f "${env_block}" next_entry
else
save_env next_entry
fi
set boot_once=true
else
set default="0"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
if [ "${env_block}" ] ; then
save_env -f "${env_block}" saved_entry
else
save_env saved_entry
fi
fi
}
function load_video {
if [ x$grub_platform = xefi ]; then
insmod efi_gop
insmod efi_uga
elif [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root bb492f3a-d22a-41df-aa35-592f25c26981
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_US
insmod gettext
fi
terminal_input console
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=10
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-bb492f3a-d22a-41df-aa35-592f25c26981' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
echo 'Loading Linux linux-zen ...'
linux /vmlinuz-linux-zen root=/dev/nvme0n1p5 rw loglevel=3 quiet
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-bb492f3a-d22a-41df-aa35-592f25c26981' {
menuentry 'Arch Linux, with Linux linux-zen' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-advanced-bb492f3a-d22a-41df-aa35-592f25c26981' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
echo 'Loading Linux linux-zen ...'
linux /vmlinuz-linux-zen root=/dev/nvme0n1p5 rw loglevel=3 quiet
}
menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-bb492f3a-d22a-41df-aa35-592f25c26981' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
echo 'Loading Linux linux ...'
linux /vmlinuz-linux root=/dev/nvme0n1p5 rw loglevel=3 quiet
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/15_ostree ###
### END /etc/grub.d/15_ostree ###
### BEGIN /etc/grub.d/15_uki ###
if [ "$grub_platform" = "efi" ]; then
uki
fi
### END /etc/grub.d/15_uki ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
insmod bli
fi
### END /etc/grub.d/25_bli ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Arch Linux (rolling) (on /dev/nvme0n1p2)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
linux /vmlinuz-linux-zen root=/dev/nvme0n1p2
}
submenu 'Advanced options for Arch Linux (rolling) (on /dev/nvme0n1p2)' $menuentry_id_option 'osprober-gnulinux-advanced-11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
menuentry 'Arch Linux (rolling) (on /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/vmlinuz-linux-zen--11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
linux /vmlinuz-linux-zen root=/dev/nvme0n1p2
}
menuentry 'Arch Linux (rolling) (on /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/vmlinuz-linux--11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
linux /vmlinuz-linux root=/dev/nvme0n1p2
}
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
fwsetup --is-supported
if [ "$?" = 0 ]; then
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
fi
fi
### END /etc/grub.d/30_uefi-firmware ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###I am unable to provide grub.cfg of the new partition as it does not have a grub directory in /efi.
nvme0n1p2 is the partition I wish to switch to, and the one being referred to as "new" here.
Offline
I am unable to provide grub.cfg of the new partition as it does not have a grub directory in /efi.
You're not supposed to have multiple grub.cfg's - there's the one where you installed grub.
The one you posted has what seems to be a useful entry "Arch Linux (rolling) (on /dev/nvme0n1p2)" - is that what you're currently trying and failing to boot?
Online
The one you posted has what seems to be a useful entry "Arch Linux (rolling) (on /dev/nvme0n1p2)" - is that what you're currently trying and failing to boot?
Yes
Offline
With that label and from that ESP? (You're not switching between boot partitions in the UEFI between the successful boot of 'Arch Linux, with Linux linux-zen' and failing 'Arch Linux (rolling) (on /dev/nvme0n1p2)'?
Edit the boot label to prove to yourself that this is the relevant file (add a random marker like "POC")
You *might* be lacking "insmod gzio" but both entries are booting from 18E8-DC21 (same kernel and initramfs)
Online
(You're not switching between boot partitions in the UEFI between the successful boot of 'Arch Linux, with Linux linux-zen' and failing 'Arch Linux (rolling) (on /dev/nvme0n1p2)?
That's what I am trying to do, yes. If it's a bad idea, tell me and I will try to adjust.
Edit the boot label to prove to yourself that this is the relevant file (add a random marker like "POC")
I don't know how to do that, I went into grub.cfg (I shouldn't edit it) and added a "POC" suffix to the "Arch Linux (rolling) (on /dev/nvme0n1p2)" entry in the menu and it did show up when I rebooted.
You *might* be lacking "insmod gzio" but both entries are booting from 18E8-DC21 (same kernel and initramfs)
I probably am, based on this output.
[archie@archie-machine ~]$ insmod gzio
insmod: ERROR: could not load module gzio: No such file or directoryOffline
That's what I am trying to do, yes.
Using the ESP you already have? That's a reasonable approach.
it did show up when I rebooted.it did show up when I rebooted.
Good, means that's the relevant grub.cfg
insmod: ERROR: could not load module gzio: No such file or directory
No, that would go into the grub.cfg - check the section for your old installation.
Online
Here's the new grub.cfg, I added
insmod gzioto the start of the broken "Arch Linux (Rolling)" entry. Still panics with the same error unfortunately.
[archie@archie-machine ~]$ sudo cat /efi/grub/grub.cfg
[sudo] password for archie:
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${env_block}" ] ; then
set env_block="(${root})${env_block}"
export env_block
load_env -f "${env_block}"
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
if [ "${env_block}" ] ; then
save_env -f "${env_block}" next_entry
else
save_env next_entry
fi
set boot_once=true
else
set default="0"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
if [ "${env_block}" ] ; then
save_env -f "${env_block}" saved_entry
else
save_env saved_entry
fi
fi
}
function load_video {
if [ x$grub_platform = xefi ]; then
insmod efi_gop
insmod efi_uga
elif [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root bb492f3a-d22a-41df-aa35-592f25c26981
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_US
insmod gettext
fi
terminal_input console
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=10
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-bb492f3a-d22a-41df-aa35-592f25c26981' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
echo 'Loading Linux linux-zen ...'
linux /vmlinuz-linux-zen root=/dev/nvme0n1p5 rw loglevel=3 quiet
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-bb492f3a-d22a-41df-aa35-592f25c26981' {
menuentry 'Arch Linux, with Linux linux-zen' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-advanced-bb492f3a-d22a-41df-aa35-592f25c26981' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
echo 'Loading Linux linux-zen ...'
linux /vmlinuz-linux-zen root=/dev/nvme0n1p5 rw loglevel=3 quiet
}
menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-bb492f3a-d22a-41df-aa35-592f25c26981' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
echo 'Loading Linux linux ...'
linux /vmlinuz-linux root=/dev/nvme0n1p5 rw loglevel=3 quiet
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/15_ostree ###
### END /etc/grub.d/15_ostree ###
### BEGIN /etc/grub.d/15_uki ###
if [ "$grub_platform" = "efi" ]; then
uki
fi
### END /etc/grub.d/15_uki ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
insmod bli
fi
### END /etc/grub.d/25_bli ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Arch Linux (rolling) (on /dev/nvme0n1p2) POC' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
insmod gzio
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
linux /vmlinuz-linux-zen root=/dev/nvme0n1p2
}
submenu 'Advanced options for Arch Linux (rolling) (on /dev/nvme0n1p2)' $menuentry_id_option 'osprober-gnulinux-advanced-11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
menuentry 'Arch Linux (rolling) (on /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/vmlinuz-linux-zen--11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
linux /vmlinuz-linux-zen root=/dev/nvme0n1p2
}
menuentry 'Arch Linux (rolling) (on /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/vmlinuz-linux--11383ee4-5546-4f21-9a5c-0f57a741f7d0' {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root 18E8-DC21
linux /vmlinuz-linux root=/dev/nvme0n1p2
}
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
fwsetup --is-supported
if [ "$?" = 0 ]; then
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
fi
fi
### END /etc/grub.d/30_uefi-firmware ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###Offline
Mounting nvme0n1p2 otherwise is no problem? No errors?
https://wiki.archlinux.org/title/Genera … l_messages and link a video/screenshot of the error.
Online
Video: https://youtu.be/q2LIsLKjmOo
Before that, I edited the GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub to be
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=8 debug earlyprintk=vga,keep"then ran
sudo grub-mkconfigAlso so far, I'd like to thank you for persisting this long.
Offline
If you don't have a tripod, you can makeshift one out of two books: -\_
But you actually get a kernel panic w/ a QR-code, it'll explain what's going wrong.
Online
Oh, you're right. I thought the QR-Code would bring me to some generic page that's like "oh since your root fs couldn't mount, it means it didn't mount."
The full page: https://pastebin.com/1u7wCzgH
What I *believe* happened is that it's trying to access "/dev/nvme0n1p2" instead of its UUID, but it's probably not that.
Offline
[ 0.929698] Console: switching to colour frame buffer device 240x67
[ 0.929963] VFS: Cannot open root device "/dev/nvme0n1p2" or unknown-block(0,0): error -6
[ 0.929972] Please append a correct "root=" boot option; here are the available partitions:
[ 0.929980] List of all bdev filesystems:
[ 0.929981] ext3
[ 0.929983] ext2
[ 0.929984] ext4
[ 0.929985] fuseblk
[ 0.929985] btrfsThe nvme isn't detected at all - if you were not using the same initramfs I'd say you don't have the nvme modules in the initramfs…
ls -l /boot/initramfs*
for name in /boot/initramfs*; do echo $name; lsinitcpio $name | grep nvme; doneI'll point out that you're booting grub from nvme0n1p8 but are booting nvme0n1p2 from nvme0n1p6
Online
ls -l /boot/initramfs*
for name in /boot/initramfs*; do echo $name; lsinitcpio $name | grep nvme; done[archie@archie-machine ~]$ ls /boot
vmlinuz-linux vmlinuz-linux-zenUh..... my /boot is missing initramfs, it only contains my Linux kernels, I believe.
I'll point out that you're booting grub from nvme0n1p8 but are booting nvme0n1p2 from nvme0n1p6
How would I fix that?
Offline
"--set=root 18E8-40DD" (but leave the working config alone)
ls -lR /efiOnline
Pages: 1