* [PATCH] Pass init argument(s) to real init
@ 2010-01-30 14:57 Andrey Borzenkov
[not found] ` <201001301757.49473.arvidjaar-JGs/UdohzUI@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Andrey Borzenkov @ 2010-01-30 14:57 UTC (permalink / raw)
To: initramfs-u79uwXL29TY76Z2rM5mHXA
[-- Attachment #1.1: Type: Text/Plain, Size: 183 bytes --]
I was rather surprised why all my attempts to enter single user were not
successful :) Simple patch to collect and pass to real init what _looks_
like init arguments.
-andrey
[-- Attachment #1.2: initargs --]
[-- Type: message/rfc822, Size: 1312 bytes --]
From: Andrey Borzenkov <arvidjaar-JGs/UdohzUI@public.gmane.org>
Subject: [PATCH] Pass init argument(s) to real init
Common wisdom to enter single user on Linux is to edit command
line and add "single". This was not possible because switch_root
was always called with empty init arguments. Collect them from
command line and pass to real init when switching root.
Signed-off-by: Andrey Borzenkov <arvidjaar-JGs/UdohzUI@public.gmane.org>
---
modules.d/99base/init | 12 +++++++++++-
1 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/modules.d/99base/init b/modules.d/99base/init
index ab033a7..e5158f8 100755
--- a/modules.d/99base/init
+++ b/modules.d/99base/init
@@ -259,10 +259,10 @@ done
initargs=""
+read CLINE </proc/cmdline
if getarg init= >/dev/null ; then
ignoreargs="console BOOT_IMAGE"
# only pass arguments after init= to the init
- read CLINE </proc/cmdline
CLINE=${CLINE#*init=}
set $CLINE
shift
@@ -273,6 +273,16 @@ if getarg init= >/dev/null ; then
initargs="$initargs $x"
done
unset CLINE
+else
+ set $CLINE
+ shift
+ for x in "$@"; do
+ case "$x" in
+ [0-9]|s|S|single|emergency|auto )
+ initargs="$initargs $x"
+ ;;
+ esac
+ done
fi
# Debug: Copy state
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] Pass init argument(s) to real init
[not found] ` <201001301757.49473.arvidjaar-JGs/UdohzUI@public.gmane.org>
@ 2010-03-01 18:12 ` Andrey Borzenkov
[not found] ` <201003012112.58174.arvidjaar-JGs/UdohzUI@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Andrey Borzenkov @ 2010-03-01 18:12 UTC (permalink / raw)
To: initramfs-u79uwXL29TY76Z2rM5mHXA
[-- Attachment #1: Type: Text/Plain, Size: 288 bytes --]
On Saturday 30 of January 2010 17:57:45 Andrey Borzenkov wrote:
> I was rather surprised why all my attempts to enter single user were
> not successful :) Simple patch to collect and pass to real init what
> _looks_ like init arguments.
>
Ping.
Was it bad, is it unnecessary?
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Pass init argument(s) to real init
[not found] ` <201003012112.58174.arvidjaar-JGs/UdohzUI@public.gmane.org>
@ 2010-03-04 13:07 ` Harald Hoyer
0 siblings, 0 replies; 3+ messages in thread
From: Harald Hoyer @ 2010-03-04 13:07 UTC (permalink / raw)
To: Andrey Borzenkov; +Cc: initramfs-u79uwXL29TY76Z2rM5mHXA
On 03/01/2010 07:12 PM, Andrey Borzenkov wrote:
> On Saturday 30 of January 2010 17:57:45 Andrey Borzenkov wrote:
>> I was rather surprised why all my attempts to enter single user were
>> not successful :) Simple patch to collect and pass to real init what
>> _looks_ like init arguments.
>>
>
> Ping.
>
> Was it bad, is it unnecessary?
no, pushed
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2010-03-04 13:07 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-30 14:57 [PATCH] Pass init argument(s) to real init Andrey Borzenkov
[not found] ` <201001301757.49473.arvidjaar-JGs/UdohzUI@public.gmane.org>
2010-03-01 18:12 ` Andrey Borzenkov
[not found] ` <201003012112.58174.arvidjaar-JGs/UdohzUI@public.gmane.org>
2010-03-04 13:07 ` Harald Hoyer
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.