Aggiornamento necessario?

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
Toni
Linux 3.x
Linux 3.x
Messaggi: 999
Iscritto il: lun 30 gen 2006, 22:08
Slackware: slackware-14
Kernel: 3.10.5
Desktop: i3
Località: milano

Aggiornamento necessario?

Messaggio da Toni »

Ho notato che all'avvio vengono eseguiti i seguenti aggiornamenti :

Codice: Seleziona tutto

"Updating shared library links:  /sbin/ldconfig &"
"Updating X font indexes:  /usr/bin/fc-cache -f &"
"Updating icon-theme.cache in /usr/share/icons..."
"Updating gtk.immodules:  gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules"
è necessario effettuarli se non si è installato alcun nuovo software?
La risposta sembra essere no

infatti ho modificato lo script rc.M in questo modo

Codice: Seleziona tutto

# Update all the shared library links: 
if [ -x /sbin/ldconfig -a -x /etc/rc.d/upgradeboot  ]; then         #hack_T
  echo "Updating shared library links:  /sbin/ldconfig &"
  /sbin/ldconfig &
fi


# Update the X font indexes: 
if [ -x /usr/bin/fc-cache -a -x /etc/rc.d/upgradeboot ]; then  #hack_T
  echo "Updating X font indexes:  /usr/bin/fc-cache -f &"
  /usr/bin/fc-cache -f &
fi


#hack_T
if [ -x /etc/rc.d/upgradeboot ]; then
   # Update any existing icon cache files:
   if find /usr/share/icons 2> /dev/null | grep -q icon-theme.cache ; then
     for theme_dir in /usr/share/icons/* ; do
       if [ -r ${theme_dir}/icon-theme.cache  ]; then
         echo "Updating icon-theme.cache in ${theme_dir}..."
         /usr/bin/gtk-update-icon-cache -t -f ${theme_dir} 1> /dev/null 2> /dev/null
       fi
     done
     # This would be a large file and probably shouldn't be there, but if it is
     # then it must be kept updated, too:
     if [ -r /usr/share/icons/icon-theme.cache ]; then
       echo "Updating icon-theme.cache in /usr/share/icons..."
       /usr/bin/gtk-update-icon-cache -t -f /usr/share/icons 1> /dev/null 2> /dev/null
     fi
   fi


   # Update mime database:
   if [ -x /usr/bin/update-mime-database -a -d /usr/share/mime ]; then
     echo "Updating MIME database:  /usr/bin/update-mime-database /usr/share/mime &"
     /usr/bin/update-mime-database /usr/share/mime &
   fi
fi


# SCIM and other GTK+ input methods like this file kept updated: 
if [ -x /usr/bin/gtk-query-immodules-2.0 -a -x /etc/rc.d/upgradeboot  ]; then   #hack_T
  echo "Updating gtk.immodules:  gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules"
  /usr/bin/gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules 2> /dev/null
fi

creato il file

/etc/rc.d/upgradeboot

quindi
chmod +x /etc/rc.d/upgradeboot # slowboot
oppure
chmod -x /etc/rc.d/upgradeboot # fastboot


risparmiando una decina di secondi nei tempi di avvio.
Lo so che sono ridicoli e che ho sporcato lo script rc.M , ma non installo nuovo software molto spesso :lol:

cosa ne pensate?

EDIT : esattamente risparmio 18 secondi all'avvio e tutto sembra funzionare perfettamente

Avatar utente
conraid
Staff
Staff
Messaggi: 13630
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: Aggiornamento necessario?

Messaggio da conraid »

Più che nuovo software dipende dallo script.
ldconfig aggiorna la cache delle librerie, ma normalmente lo fa il pacchetto.
fc-cache se installi nuovi font
gli altri le icone gtk e immodules non ho ancora capito bene a dire il vero

anche io gli ho disabilitatiti

Avatar utente
ildiama
Linux 3.x
Linux 3.x
Messaggi: 536
Iscritto il: mar 27 dic 2005, 16:49
Slackware: mine
Kernel: 2.6.alto..
Desktop: KDE4
Località: Senigallia
Contatta:

Re: Aggiornamento necessario?

Messaggio da ildiama »

Lo faccio anch'io, non come te, ma eliminando esattamente le stesse cose. Se ne era già parlato, mi pare. Le debian-based eseguono ldconfig alla fine dell'installazione di un (o di una serie di) pacchetto. Quella mi sembra una buona soluzione. Analogamente puoi eseguire fc-cache dopo aver installato nuovi fonts (ogni anno?). E l'unica app gtk che mi capita di usare è gimp. Non ho mai capito bene perché Pat le inserisca all'avvio. Però è da slack 10 che io faccio così e non ho mai notato nessun problema.

Avatar utente
Toni
Linux 3.x
Linux 3.x
Messaggi: 999
Iscritto il: lun 30 gen 2006, 22:08
Slackware: slackware-14
Kernel: 3.10.5
Desktop: i3
Località: milano

Re: Aggiornamento necessario?

Messaggio da Toni »

ok .
Caso mai se ci fosse richiesta facciamo un How-To_risparmia-18secondi(circa)all'avvio :lol: :lol: :lol:

allego la patch :lol:

EDIT: per applicarla copiate la patch in /etc/rc.d
meglio prima fare un backup ;)

Codice: Seleziona tutto

#cd /etc/rc.d
#cp rc.M rc.M.backup
e quindi applicare la patch

Codice: Seleziona tutto

patch -p0<patch-rc.M-fastboot.diff.txt
Allegati
patch-rc.M-fastboot.diff.txt
(3.23 KiB) Scaricato 44 volte

Bart
Staff
Staff
Messaggi: 4249
Iscritto il: lun 9 ago 2004, 0:00
Località: Rimini

Re: Aggiornamento necessario?

Messaggio da Bart »

Toni ha scritto:ok .
Caso mai se ci fosse richiesta facciamo un How-To_risparmia-18secondi(circa)all'avvio :lol: :lol: :lol:

allego la patch :lol:

EDIT: per applicarla copiate la patch in /etc/rc.d
meglio prima fare un backup ;)

Codice: Seleziona tutto

#cd /etc/rc.d
#cp rc.M rc.M.backup
e quindi applicare la patch

Codice: Seleziona tutto

patch -p0<patch-rc.M-fastboot.diff.txt
C'è già tutto su S4D. ;)

samiel
Staff
Staff
Messaggi: 5511
Iscritto il: ven 16 gen 2004, 0:00
Nome Cognome: Mauro Sacchetto
Slackware: 13.0
Kernel: 2.26
Desktop: KDE
Distribuzione: anche Debian
Località: Venezia

Re: Aggiornamento necessario?

Messaggio da samiel »

Infatti senza complicarsi troppo la vita
basta commentare qualche riga....

M.

Avatar utente
slucky
Iper Master
Iper Master
Messaggi: 2419
Iscritto il: mar 1 mag 2007, 15:30
Slackware: 14.2
Desktop: xfce4

Re: Aggiornamento necessario?

Messaggio da slucky »

Infatti senza complicarsi troppo la vita
basta commentare qualche riga....
quando si dice vita da slacker..."simplicity is divine" :D

SAluti

Avatar utente
Toni
Linux 3.x
Linux 3.x
Messaggi: 999
Iscritto il: lun 30 gen 2006, 22:08
Slackware: slackware-14
Kernel: 3.10.5
Desktop: i3
Località: milano

Re: Aggiornamento necessario?

Messaggio da Toni »

ho inventato l'acqua calda :D
e comunque il mio era più che altro un esercizietto. :lol: :lol: :lol:

per quanto riguarda commentare le righe non sono d 'accordo.

- quando installo un nuovo software cosa faccio mi metto a decommentare?
-oppure dovrei ricordarmi quali sono i comandi che dovrei lanciare?

mi sembra più semplice dare da terminale
chmod +x upgradeboot

ciao

Avatar utente
danix
Staff
Staff
Messaggi: 3289
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 6.12.13 x86_64
Desktop: i3
Località: Verona (VR)
Contatta:

Re: Aggiornamento necessario?

Messaggio da danix »

@Toni:
in alternativa potresti commentare tutto quello che hai modificato nell'rc.M e scriverti uno script come questo che mi sono fatto io...

Codice: Seleziona tutto

#! /bin/bash
# update - bash script to update various services in the system

### EXIT STATUS ###
E_NOARGS=21

update_library () {
	echo "Updating shared library links:  /sbin/ldconfig &"
	/sbin/ldconfig &
}

update_fonts () {
	echo "Updating X font indexes:  /usr/bin/fc-cache -f &"
	/usr/bin/fc-cache -f &
}

update_icons () {
	for theme_dir in /usr/share/icons/* ; do
		if [ -r ${theme_dir}/icon-theme.cache ]; then
			echo "Updating icon-theme.cache in ${theme_dir}..."
			/usr/bin/gtk-update-icon-cache -t -f ${theme_dir} 1> /dev/null 2> /dev/null
		fi
	done
	if [ -r /usr/share/icons/icon-theme.cache ]; then
		echo "Updating icon-theme.cache in /usr/share/icons..."
		/usr/bin/gtk-update-icon-cache -t -f /usr/share/icons 1> /dev/null 2> /dev/null
	fi
}

update_mime_db () {
	echo "Updating MIME database:  /usr/bin/update-mime-database /usr/share/mime &"
	/usr/bin/update-mime-database /usr/share/mime &
}

update_input_methods () {
	echo "Updating gtk.immodules:  gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules"
	/usr/bin/gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules 2> /dev/null
}

usage () {
	echo "`basename $0` - by danix < danix@netsons.org >";echo
	echo -e "USAGE:\t`basename $0` {-l| -f | -i | -m | -n | -h}";echo
	echo -e "\t`basename $0` -l\t- update shared library links"
	echo -e "\t`basename $0` -f\t- update font-indexes"
	echo -e "\t`basename $0` -i\t- update icons cache"
	echo -e "\t`basename $0` -m\t- update mime database"
	echo -e "\t`basename $0` -n\t- update imput methods"
	echo -e "\t`basename $0` -h\t- shows this help and exit";echo
	echo -e "If the program is launched without options shows this help and exits";echo
	exit $E_NOARGS
}

if [ $# -eq 0 ];then
	usage
fi

while getopts ":lfimnh" option;do
	case $option in
		l )
			update_library
			;;
		f )
			update_fonts
			;;
		i )
			update_icons
			;;
		m )
			update_mime_db
			;;
		n )
			update_input_methods
			;;
		h )
			usage
			;;
		* )
			usage
			;;
	esac
done
shift $(($OPTIND - 1))

exit 0

in questo modo senza doverti ricordare tutti i comandi a memoria o dover decommentare niente ti basterà lanciarlo con una delle opzioni per aggiornare quel dato servizio... lo puoi lanciare anche con più opzioni per volta se devi aggiornare più cose... :D
Io l'ho messo in /usr/sbin con proprietario root:root ed eseguibile solo dal proprietario...

L'ho scritto abbastanza velocemente, ma dovrebbe funzionare... dagli un'occhiata se vuoi... ;)


Ciau
danix
danix ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
Toni
Linux 3.x
Linux 3.x
Messaggi: 999
Iscritto il: lun 30 gen 2006, 22:08
Slackware: slackware-14
Kernel: 3.10.5
Desktop: i3
Località: milano

Re: Aggiornamento necessario?

Messaggio da Toni »

grazie :D

Rispondi