stoffepojken has quit [Read error: Connection reset by peer]
stoffepojken has joined #crux
stoffepojken has quit [Ping timeout: 260 seconds]
stoffepojken has joined #crux
stoffepojken has quit [Ping timeout: 272 seconds]
stoffepojken has joined #crux
ukky has quit [Quit: Benchmarking sysvinit boot time...]
stoffepojken has quit [Ping timeout: 258 seconds]
stoffepojken_ has joined #crux
ukky has joined #crux
stoffepojken_ has quit [Ping timeout: 240 seconds]
stoffepojken has joined #crux
stoffepojken has quit [Ping timeout: 260 seconds]
stoffepojken has joined #crux
lavaball has quit [Quit: lavaball]
lavaball has joined #crux
<ukky>
On avarage, how long does it take for you to get agetty login prompt from the beginning of /etc/rc processing? Of course it depends on SERVICES and other factors.
<SiFuh>
From my count a poorly configured CRUX system should have a maximum time of 32 seconds
<SiFuh>
My systems CRUX take less than 10 seconds but the BIOS takes 20 seconds ;-) which pisses me off
<ukky>
Mine gets to agetty in 53 seconds :-(
<SiFuh>
Many factors. The most common is bad ATA/SATA drives
<SiFuh>
You can use quiet on your boot command line to remove the kernel noise and then watch to see what is happening
<ukky>
dhcpcd takes a lot of time to release /etc/rc.d/net service
<SiFuh>
And if you disable it, the time to boot is?
<SiFuh>
I remember wlan having an issue for me in 3.5 so I moved 3.5 to an rc.local script with & after it to bypass rc.conf
<ukky>
I have to measure bott time without dhcpcd/net after sysup is finished...
<ukky>
s/bott/boot/
<SiFuh>
Understood
<ukky>
and I have '-t 10' for dhcpcd, and it still takes longer than 10 seconds
<ukky>
Verbose kernel messages should not affect boot time after /etc/rc gets sourced
<ivandi>
ukky: the default /etc/syslog.conf tells sysklogd to sync the logfile after every log message. i observed slow boots and a lot of disk activity on hdd. it should be better on ssd but my default syslog.conf disables syncing ex: -/var/log/messages, '-' before logfile disables syncing.
<remiliascarlet>
ukky: Networking always takes the longest to start up. Maybe Bluetooth takes longer, but not sure, because I always make sure that thing is disabled on all devices.
<ukky>
Slowdown comes mostly from fact that '/etc/init.d/net start' is blocking all other services until network is set up. Ideally, this should be made non-blocking.
<remiliascarlet>
They all block one other, it just takes longer to start.
<remiliascarlet>
Try measuring time between connect to ethernet-only, connect to WiFi-only, and connect to both.
<remiliascarlet>
In my case it doesn't bother me, because CRUX is still the fastest starting OS I've ever used. My Artix machine that has runit as its init system takes 3 times longer to boot up.
<ukky>
My point is that agetty should get control before network becomes available. Network can be available in 5 minutes if DHCP server is slow to start-up.
<remiliascarlet>
OpenBSD takes long too, but that's more due to the security mitigations.
<remiliascarlet>
In /etc/rc.conf, do you have "net" before "agetty"? Try swapping it around, order matters.
<ukky>
agetty is executed directly by /sbin/init from /etc/inittab
<remiliascarlet>
Alternatively, try disabling it. My /etc/rc.conf doesn't have it, so it might not even be that important. Also, had to look up what agetty even is, I recognize it from my Artix installation, but never really bothered looking into what it is for.
<ukky>
agetty provides console/serial login, you cannot disable it
<remiliascarlet>
What I have enabled: SERVICES=(lo network crond acpid sshd tor i2pd alsa dbus)
<remiliascarlet>
Out of which, only "network" takes a long time.
<remiliascarlet>
By the way, "network" is not the same as CRUX's default "net" script, I made my own, because the default one is too complex.
<ukky>
Type this to see what you have: ps aux | grep 'getty'
<remiliascarlet>
Oh wait, not too complex, I did that because I wanted to use WiFi, ethernet, and 2 different WireGuard proxies at the same time.
<remiliascarlet>
If you're worried about trying to disable it from the services, make sure you have a bootable USB drive ready, so you can then chroot into your existing installation, and re-enable it there if things would go wrong.
<ukky>
If agetty is disabled at boot, nobody will be able to login into system. Only chroot will help after that to fix the system.
<remiliascarlet>
I did some grepping, and found out that the only occurance of "agetty" in my entire /etc folder is in /etc/inittab.
<remiliascarlet>
Do you have it there too?
<ukky>
CRUX system by default has agetty in /etc/inittab.
<remiliascarlet>
Then it might be safe to disable in the services, I guess.
<ukky>
I don't have it in services. I made a reference to agetty in my comments as a point in boot sequence where user can login.
<remiliascarlet>
Oh, I thought you meant you had it as a service all this time.
<ukky>
When I was benchmarking boot time I considered boot finished when agetty displayed logon screen/message.
lavaball has quit [Remote host closed the connection]