There’s simply no way
chsh did anything to grub, this would be a different issue.
That being said to change your shell is very simple
It will ask you to enter which shell you want, the default is
/usr/bin/zsh you want
Regarding the system’s current state.
Yes, the best (possibly only) way to fix your system would be to
arch-chroot into it from a live session.
Depending on whether the system has seperate partitions that must be mounted in the right places
For most you would do something like:
# first mount the main root partition
mount /dev/YOUR_ROOT_PARTITION /mnt
PLEASE READ: you need to mount the boot part in the right location if at all, the best way to do that is to read your
/etc/fstab to see where your system wants it mounted. Use
# check your fstab with cat
# Below is my fstab as a visual example
# /etc/fstab: static file system information.
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=3A7B-175A /boot/efi vfat defaults,noatime 0 2
# This is my boot partition ^^^^^^^^ THIS is where you want to mount it in /mnt
If you only have one partition and no boot partition then you can skip this, otherwise
now we know where to mount it
# mount the boot partition
mount /dev/YOUR_BOOT_PARTITION /mnt/PATH_FROM_FSTAB_ABOVE
Now you can just chroot into the system
# probably just reinstall grub and kernel then rebuild everything
pacman -S grub linux
grub-mkconfig -o /boot/grub/grub.cfg
mkinitcpio -p linux
# last thing, exit the chroot.. DON'T forget this like I almost did :P
This should fix most common boot issues with standard installs