[Risolto] boot lento e altre noie

Salve a tutti, ho appena installato Fedora 19 64bit Gnome su un notebook Hp Pavilion dv6-3016sl. Da subito ho notato che il boot è lento (ero abituato con debian testing, che so usare bene e l’avevo tirato il più possibile). Ho cercato soluzioni su internet e su questo forum, alcune funzionano, altre no. Ho seguito anche questa guida: “http://www.harald-hoyer.de/personal/blog/fedora-17-boot-optimization-from-15-to-3-seconds”, notando qualche leggero miglioramento. Il comando systemd-analyze mi da come risultato un tempo di boot intorno ai 18-20 secondi, che sarebbe abbastanza accettabile se non fosse che il dato non corrisponde alla realtà (33-36 secondi cronometrati). Posto qualche output:

[root@lokaz ~]# systemd-analyze Startup finished in 778ms (kernel) + 3.831s (initrd) + 17.161s (userspace) = 21.771s [root@lokaz ~]# systemd-analyze blame 7.124s firewalld.service 3.566s dmraid-activation.service 3.400s accounts-daemon.service 2.692s plymouth-start.service 1.663s gdm.service 1.646s systemd-logind.service 1.595s rtkit-daemon.service 1.250s polkit.service 1.181s mnt-6489041A303967ED.mount 878ms NetworkManager.service 783ms systemd-udev-settle.service 631ms colord.service 545ms rpcbind.service 543ms dev-disk-by\x2duuid-21e24720\x2d21c2\x2d4868\x2d9fb1\x2de2c2484a4129.swap 506ms sys-fs-fuse-connections.mount 501ms tmp.mount 485ms systemd-udev-trigger.service 474ms systemd-tmpfiles-setup-dev.service 449ms systemd-tmpfiles-clean.service 299ms systemd-fsck-root.service 229ms systemd-tmpfiles-setup.service 185ms systemd-readahead-replay.service 166ms systemd-readahead-collect.service 132ms systemd-update-utmp-runlevel.service 97ms systemd-udevd.service 76ms systemd-remount-fs.service 57ms udisks2.service 49ms systemd-user-sessions.service 41ms home.mount 29ms upower.service 26ms lvm2-lvmetad.service 12ms systemd-vconsole-setup.service 4ms systemd-fsck@dev-disk-by\x2duuid-2af36889\x2d8dde\x2d4824\x2d9813\x2d89d3541b593c.service 3ms wpa_supplicant.service 3ms systemd-sysctl.service 2ms systemd-journal-flush.service 2ms systemd-readahead-done.service 1ms systemd-random-seed-load.service
Se può essere utile, dopo aver disabilitato plymouth (rimuovendo ‘rhgb quiet’ da /etc/default/grub) il boot è ancora più lento (di circa 3s) e ho visto che rimane fermo per lungo tempo alla voce ‘Started Accounts Service’, dopodichè si carica gdm. Devo attendere aggiornamenti o si può risolvere in qualche modo??
Grazie in anticipo!

[EDIT]: ho scordato di dire che ho installato fedora con btrfs

Avevi gà sperimentato un’altra fedora con boot più veloce?
Dai tuoi output non penso sia un “boot lento”, ecco il mio:

[root@localhost ~]# systemd-analyze Startup finished in 1.546s (kernel) + 3.026s (initrd) + 26.575s (userspace) = 31.147s

Certo, avevo testato per quasi 6 mesi Fedora 17, stessa versione (64bit, gnome), stesso computer. E il tempo di boot era di circa 10s. L’unica differenza è che usavo Ext4, anche se non so quanto conti, vista la maturità di btrfs…
Aggiungo anche quest’output:

[code][alessio@lokaz ~]$ systemctl --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
rngd.service loaded failed failed Hardware RNG Entropy Gatherer Daemon

LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.

1 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use ‘systemctl list-unit-files’.[/code]
Ma comunque sarebbe accettabile anche un tempo di boot di 18s (come mi dice systemd-analyze), il problema è che 33-36s sono davvero troppo, persino winzozz 7 è più rapido!!
Aggiungo anche il partizionamento, magari ho sbagliato in quello:

[code][root@lokaz ~]# fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes, 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Identificativo disco: 0x000be5ac

Dispositivo Boot Start End Blocks Id System
/dev/sda1 * 2048 294914047 147456000 7 HPFS/NTFS/exFAT
/dev/sda2 294914048 347342847 26214400 7 HPFS/NTFS/exFAT
/dev/sda3 347342848 352462847 2560000 82 Linux swap / Solaris
/dev/sda4 352462848 976773167 312155160 5 Extended
/dev/sda5 352464896 976773119 312154112 83 Linux[/code]

  • sda1 è la partizione di windows
  • sda2 partizione condivisa
  • sda3 è la swap
  • sda4 è la partizione estesa con all’interno ‘/’ e ‘/home’ in btrfs (sda5).
    è la prima volta che uso btrfs…

I tempi mi sembrano buoni. Il disco è meccanico immagino.
Hai bisogno di dmraid-activation.service?

$ cat /etc/fstab $ grep CMDLINE /etc/default/grub

Sì sì, il disco è meccanico, 7200rpm. I tempi sembrano buoni sulla carta, ma 36s mi pare davvero tanto… Non so cosa sia dmraid-activation.service, per cui presumo di non averne bisogno! :slight_smile:
Ecco gli output:

[code][alessio@lokaz ~]$ cat /etc/fstab

/etc/fstab

Created by anaconda on Sun Jul 14 20:49:03 2013

Accessible filesystems, by reference, are maintained under ‘/dev/disk’

See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

UUID=2af36889-8dde-4824-9813-89d3541b593c / btrfs subvol=root 1 1
UUID=2af36889-8dde-4824-9813-89d3541b593c /home btrfs subvol=home 1 2
UUID=21e24720-21c2-4868-9fb1-e2c2484a4129 swap swap defaults 0 0
/dev/disk/by-uuid/6489041A303967ED /mnt/6489041A303967ED auto nosuid,nodev,nofail,x-gvfs-show 0 0
[alessio@lokaz ~]$ grep CMDLINE /etc/default/grub
GRUB_CMDLINE_LINUX=“rd.md=0 rd.lvm=0 rd.dm=0 $( -x /usr/sbin/rhcrashkernel-param ] && /usr/sbin/rhcrashkernel-param || :slight_smile: rd.luks=0 vconsole.font=latarcyrheb-sun16 vconsole.keymap=it2 rhgb quiet”[/code]
Rimuovendo ‘rghb quiet’ non cambia niente… Su un forum avevo letto che si può disabilitare initramfs perché il kernel riesce a fare il boot da una partizione ext4 senza di esso. Inoltre veniva suggerito di settare la partizione di root e specificare il filesystem in /etc/grub2.cfg. Disabilitando initramfs e settando la partizione (con btrfs, ovviamente), ottengo un kernel panic.

ovvio.
non puoi far partire fedora senza il ramdisk, tranne se vuoi farti del male.

infatti, mi pareva un po’ sospetto! nessuna soluzione per diminuire il tempo di boot?

prova http://forum.fedoraonline.it/viewtopic.php?pid=213953#p213953

Btrfs rispetto a ext4 è (ancora? necessariamente?) più lento. Btrfs è un filesystem specializzato con molte interessanti funzionalità; su un notebook ext4 è una soluzione solida.
Non hai nemmeno differenziato un punto di mount per /boot in ext4 vedo.
Puoi considerare di aggiungere defaults,compress=lzo alle opzioni di montaggio btrfs.
Ovviamente questa non è una macchina di produzione.
cough se poi rimuovessi quelle due partizioni bizzarre in testa al disco sarebbe perfetto cough

@Virus, avevo già provato quella soluzione, sulla carta il tempo scende a 13s:

[alessio@lokaz ~]$ systemd-analyze Startup finished in 733ms (kernel) + 3.221s (initrd) + 9.563s (userspace) = 13.518s
ma nella realtà resta sempre uguale (33s) e non riesco a spiegarmi questa discrepanza…

@tempus, quindi mi consigli ancora ext4? (non ho nessun problema a reinstallare, ho usato btrfs solo per provarlo). Il punto di mount ‘/boot’ non l’ho mai usato… di solito partizionavo così:
1- NTFS per winzozz (la partizione ‘strana’ in testa al disco, che sono obbligato a tenere per colpa di alcuni programmi)
2- ext4 montata su ‘/’
3- partizione estesa con all’interno:
- swap
- NTFS (condivisa con winzozz)
- ext4 monatat su ‘/home’
secondo te come potrei migliorare?

[EDIT]: ho notato che se provo a disabilitare plymouth-start.service con il comando ‘systemctl disable plymouth-start.service’, il servizio non si disabilita… Bug?

Rimuovere quiet incremente i tempi di boot. ( http://freedesktop.org/wiki/Software/systemd/Optimizations/; nota che molte di quelle opzioni sono tutt’altro che raccomandate all’infuori del testing, non disabilitare SELinux né rimuovere initramfs - non ne vale la pena, anzi. )

[quote=aloka]…]partizione estesa con all’interno…][/quote]Se sei in vena di sperimentazioni, puoi tentare la conversione in GPT e avere solo partizioni primarie (con una partizione bios_grub non è necessario UEFI). L’altro OS può non gradire. Non te lo sto suggerendo.
Considererei un differenziato punto di mount /boot in ext4 (se fosse in testa al disco tanto meglio).

Giusto per curiosità,

$ ll -h /var/log/journa*/*/ $ cat /etc/systemd/journald.conf

[code]# cd /lib/systemd/system

for i in plymouth-.; do systemctl mask “$i”; done[/code]

ok, intanto ecco gli output:

[code][alessio@lokaz ~]$ ll -h /var/log/journa*/*/
totale 24M
-rw-r-----+ 1 root systemd-journal 17M 15 lug 15.12 system.journal
-rw-r-----+ 1 root systemd-journal 4,3M 15 lug 15.11 user-1000.journal
-rw-r-----+ 1 root systemd-journal 3,7M 15 lug 14.33 user-42.journal

[alessio@lokaz ~]$ cat /etc/systemd/journald.conf

This file is part of systemd.

systemd is free software; you can redistribute it and/or modify it

under the terms of the GNU Lesser General Public License as published by

the Free Software Foundation; either version 2.1 of the License, or

(at your option) any later version.

See journald.conf(5) for details

[Journal]
#Storage=auto
#Compress=yes
#Seal=yes
#SplitMode=login
#SyncIntervalSec=5m
#RateLimitInterval=10s
#RateLimitBurst=200
#SystemMaxUse=
#SystemKeepFree=
#SystemMaxFileSize=
#RuntimeMaxUse=
#RuntimeKeepFree=
#RuntimeMaxFileSize=
#MaxRetentionSec=
#MaxFileSec=1month
#ForwardToSyslog=yes
#ForwardToKMsg=no
#ForwardToConsole=no
#TTYPath=/dev/console
#MaxLevelStore=debug
#MaxLevelSyslog=debug
#MaxLevelKMsg=notice
#MaxLevelConsole=info[/code]
Quindi per il partizionamento, mi consiglieresti ‘/boot’, ‘/’, ‘/home’ e swap, giusto? Una domanda: sulla documentazione di fedora (però penso sia obsoleta) mi pareva di aver letto che grub non supporta il punto di mount ‘/boot’ in ext4 e btrfs, ma solo ext3… Corrisponde al vero?

No. La guida F19 mostra alcune opzioni https://docs.fedoraproject.org/en-US/Fedora/19/html/Installation_Guide/s2-diskpartrecommend-x86.html. Nel forum l’argomento relativo al partizionamento http://forum.fedoraonline.it/viewtopic.php?id=21234

sì, infatti mi pareva assurdo… ok, grazie, allora quasi quasi provo a reinstallare e vediamo se cambia qualcosa!
Comunque, dopo aver dato questi comandi:

[code]# cd /lib/systemd/system

for i in plymouth-.; do systemctl mask “$i”; done[/code]

il logo di fedora durante il boot compare all’inizio per 5-6 secondi, poi scompare lasciando una schermata nera (non quella con il boot testuale). Però con systemd-analyze blame lo vedo ancora tra i processi, a quanto pare non c’è verso di levarlo… Il tempo di boot è aumentato di 2 secondi, sia sulla carta, sia secondo systemd.

# dracut -f -v -H -o plymouth --xz

Riavvia.

ok, ora è sparito tra i servizi e secondo systemd il tempo di boot è di circa 12s (nella realtà sempre 32-33s)

Potresti confrontare con un DE alternativo.

Alla fine ho reinstallato con partizione swap, /boot, / e /home. Senza operare nessuna modifica ottengo un tempo di avvio, secondo systemd-analyze, di 18s. Nella realtà cresce leggermente, a 23-25s. Direi molto meglio di prima, per cui penso che il problema che avevo prima sia dovuto ad un errato partizionamento con btrfs. Secondo voi posso mettere ‘Risolto’? :slight_smile:

[EDIT]: se può interessare, ho notato che ora, con EXT4, il trasferimento di file è più lento rispetto a btrfs

si.

Scusate ho un dubbio… lapartizione /boot serve in qualche modo a velocizzare il boot o comunque a migliorare le prestazioni del sistema, oppure non cambia nulla farla o non farla? (io non l’ho mai fatta…)