Skip to content

Commit c2574ee

Browse files
committed
update cmdline parsing to handle rootfs type
Signed-off-by: Zen <[email protected]>
1 parent 7b71158 commit c2574ee

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/ugrd/base/cmdline.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
11
__author__ = 'desultory'
2-
__version__ = '0.8.3'
2+
__version__ = '1.0.0'
33

44

55
def parse_cmdline(self) -> str:
66
""" Returns bash script to parse /proc/cmdline """
77
return ['echo "Parsing /proc/cmdline: $(cat /proc/cmdline)"',
88
r'grep -oP "(?<=root=)[^\s]+" /proc/cmdline > /run/CMDLINE_ROOT',
9-
r'''echo "$(grep -oP '(?<=rootflags=)[^\s]+' /proc/cmdline || echo 'defaults,ro')" > /run/CMDLINE_ROOTFLAGS''']
9+
r'''echo "$(grep -oP "(?<=roottype=)[^\s]+" /proc/cmdline || echo 'auto')" > /run/CMDLINE_ROOT_TYPE''',
10+
r'''echo "$(grep -oP '(?<=rootflags=)[^\s]+' /proc/cmdline || echo 'defaults,ro')" > /run/CMDLINE_ROOT_FLAGS''']
1011

1112

1213
def mount_cmdline_root(self) -> str:
1314
""" Returns bash script to mount root partition based on /proc/cmdline """
1415
return ['if [ -n "$(cat /run/CMDLINE_ROOT)" ]; then',
15-
' echo "Mounting root partition based on /proc/cmdline: $(cat /run/CMDLINE_ROOT) -o $(cat /run/CMDLINE_ROOTFLAGS)"',
16-
' mount $(cat /run/CMDLINE_ROOT) $(cat /run/MOUNTS_ROOT_TARGET) -o $(cat /run/CMDLINE_ROOTFLAGS)',
16+
' echo "Mounting root partition based on /proc/cmdline: $(cat /run/CMDLINE_ROOT) -t $(cat /run/CMDLINE_ROOT_TYPE) -o $(cat /run/CMDLINE_ROOT_FLAGS)"',
17+
' mount $(cat /run/CMDLINE_ROOT) $(cat /run/MOUNTS_ROOT_TARGET) -t $(cat /run/CMDLINE_ROOT_TYPE) -o $(cat /run/CMDLINE_ROOT_FLAGS)',
1718
'fi',
1819
'if [ $? -ne 0 ] || [ -z "$(cat /run/CMDLINE_ROOT)" ]; then',
1920
' echo "Failed to mount the root parition using /proc/cmdline"',

0 commit comments

Comments
 (0)