init=/bin/bash resistance?

Post here if you are a new Porteus member and you're looking for some help.
tom2238
Black ninja
Black ninja
Posts: 49
Joined: 15 Nov 2018, 14:52
Distribution: Porteus MATE v5.0 x86_64
Location: Czechia

init=/bin/bash resistance?

Post#1 by tom2238 » 29 Jan 2020, 14:45

Hi.

I tried to find out if bootchartd (https://wiki.archlinux.org/index.php/Bootchart) works in Porteus. It looks like it works, but the bootchard is started using init=/sbin/bootchartd . The system starts normally. And now my findings. If I boot with init=/bin/bash parameter, the terminal (bash) does not appear after startup, but the system is normally started (into GUI) and it looks like the parameter has no effect. Is Porteus immune to this feature?

Thomas.

User avatar
Rava
Contributor
Contributor
Posts: 5401
Joined: 11 Jan 2011, 02:46
Distribution: XFCE 5.01 x86_64 + 4.0 i586
Location: Forests of Germany

init=/bin/bash resistance?

Post#2 by Rava » 07 Mar 2020, 21:12

If your system is started into text mode (also Called Virtual Terminal ("VT") mode sometimes) or into GUI mode is not determined by what you use as init= cheatcode.

Porteus acts like most Linux OS do: either start in mode 3 (text mode aka VT mode) or mode 4 (GUI mode).

Usually the standard in Porteus is 4 (unlike what is is in Slackware, there it is 3), that is determined in /etc/inittab :

Code: Select all

# These are the default runlevels in Slackware:
#   0 = halt
#   1 = single user mode
#   2 = unused (but configured the same as runlevel 3)
#   3 = multiuser mode (default Slackware runlevel)
#   4 = X11 with KDM/GDM/XDM (session managers)
#   5 = unused (but configured the same as runlevel 3)
#   6 = reboot

# Default runlevel. (Do not set to 0 or 6)
id:4:initdefault:
The cheatcode of "3" added - best at the very end of the cheatcode list - changes the default runlevel to 3, aka "multiuser mode" aka "text mode" aka "VT mode".

HTH!
Cheers!
Yours Rava

beny
Full of knowledge
Full of knowledge
Posts: 2086
Joined: 02 Jan 2011, 11:33
Location: italy

init=/bin/bash resistance?

Post#3 by beny » 08 Mar 2020, 19:19

https://slackbuilds.org/repository/14.2 ... bootchart/ hi maybe try the slackware bootchart,if you run classic porteus,your link is usefull for neko system or nemesis based on arch system,but i can be wrong....

tom2238
Black ninja
Black ninja
Posts: 49
Joined: 15 Nov 2018, 14:52
Distribution: Porteus MATE v5.0 x86_64
Location: Czechia

init=/bin/bash resistance?

Post#4 by tom2238 » 09 Mar 2020, 12:26

If I tried use init=/bin/bash on Ubuntu with systemd, I got the root shell. When trying tutorial: https://linuxconfig.org/how-to-reset-lo ... erus-linux.
initrd.xz file used in Porteus contain:

Code: Select all

drwxr-xr-x 2 root root  4096 dub 16  2016 bin/
-rwxr-xr-x 1 root root  4048 dub 16  2016 cleanup*
drwxr-xr-x 2 root root  4096 dub 16  2016 dev/
drwxr-xr-x 2 root root  4096 dub 16  2016 etc/
-rw-r--r-- 1 root root   815 dub 16  2016 fatal
lrwxrwxrwx 1 root root     7 bře  9 13:20 init -> linuxrc*
drwxr-xr-x 3 root root  4096 dub 16  2016 lib/
-rwxr-xr-x 1 root root 21612 pro  3  2016 linuxrc*
drwxr-xr-x 2 root root  4096 dub 16  2016 m/
drwxr-xr-x 6 root root  4096 dub 16  2016 memory/
drwxr-xr-x 2 root root  4096 dub 16  2016 mnt/
drwxr-xr-x 3 root root  4096 dub 16  2016 opt/
drwxr-xr-x 2 root root  4096 dub 16  2016 porteus/
drwxr-xr-x 2 root root  4096 dub 16  2016 proc/
drwxr-xr-x 2 root root  4096 dub 16  2016 run/
drwxr-xr-x 2 root root  4096 dub 16  2016 sys/
drwxr-xr-x 2 root root  4096 dub 16  2016 tmp/
drwxr-xr-x 2 root root  4096 dub 16  2016 union/
drwxr-xr-x 5 root root  4096 dub 16  2016 usr/
drwxr-xr-x 4 root root  4096 dub 16  2016 var/
At the end of the file linuxrc:

Code: Select all

debug
echo """live system is ready now - starting Porteus"""
cp -f /union/sbin/init /bin
if [ $? -eq 0 ]; then
    pivot_root /union  /union/mnt/live
    exec bin/chroot . /mnt/live/bin/init "$@" <dev/console >dev/console 2>&1
else
    echo -e """!!ERROR!!\nSomething went wrong and I cannot continue.\nPress Ctrl+Alt+Del to reboot."""
    sh
fi
Chroot and force start /sbin/init always.

Is my idea correct??

Post Reply