Как определить с какого диска загрузились?
Всплыла задачка сабж. В каком-нибудь линуксе, например а-ля дебиан, убунту и т.п. Вот в системе есть с пяток дисков и как в bash определить, с какого загрузились? Какие тут подводные камни, сразу перечислю: а если грузимся с nvme, а если диски в raid, а если есть grub не только в том, с которого загрузились, а если загрузились с efi, а если это гипервизор(например prox). И вот со всеми этими если как то не удаётся найти работающего решения ни загуглив, ни через ИИ - решения в каких то условиях, да не работают. Может есть гуру, у которых знания, умения позволяют решить такую вроде бы несложную задачку? На выходе решения пусть будет переменная со значением типа "/dev/sdh"
P.s. уважаемые, я понимаю, что на частности можно написать коротенькое решение, но надо чтобы скрипт сам определил где он и выдал результат.
Примерно вот так. Вытащил куски из своих скриптов и соединил. Возможно есть ошибки, не преследовал цели написать полностью рабочее решение. Воспринимай это как алгоритм и путь.
root_dev можно определить по разному - mount, /proc/cmdline, /etc/fstab, lsblk, efibootmgr, и т.д.
А... Еще... Может быть не диск указан как uuid, тогда смотреть в /dev/by-uuid и/или blkid. И дальше как в скрипте.
Одной готовой команды нет.