Pagina 1 di 1
Shell script per amministrazione startup sistema
Inviato: gio 19 ago 2010, 10:47
da Maurizio69
Ciao a tutti,
sono tornato a Slackware dopo diversi anni di Ubuntu ed ho rispolverato uno script che avevo realizzato per facilitare la gestione degli script di avvio del sistema.
Compito principale dello script è quello di organizzare il file rc.local come segue:
1. Creazione di una directory /etc/rc.d/local che conterrà UNO script per OGNI operazione da fare
2. Sostituzione del file /etc/rc.d/rc.local con un file apposito che contiene una semplice istruzione FOR che si occupa di lanciare gli eseguibili trovati in /etc/rc.d/local
In questo modo la gestione e l'organizzazione dei files di avvio personalizzati è parecchio semplificata.
Ultimamente ho aggiunto anche la possibilità di imputare l'eseguibilità degli script generici (quelli che si trovano in /etc/rc.d).
Mi piacerebbe migliorare ulteriormente questa cosa con altre diverse funzioni ma - prima di dedicare ore di lavoro a questo progetto - vorrei chiedere anche il vostro parere. Come? Se qualcuno volesse scaricare lo script per provarlo e valutarlo mi farebbe una grossa cortesia.
Ricordo che lo script si trova ancora in fase di test sebbene io abbia già fatto parecchie prove e non ho mai avuto problemi.
Se vi va di provarlo potete scaricarlo dal mio sito a questo indirizzo
http://www.mauriziopaglia.it/owl/browse ... &fileid=10 cliccando su (Anonymous Access) sulla maschera di autenticazione.
Vi ringrazio anticipatamente!

Re: Shell script per amministrazione startup sistema
Inviato: gio 19 ago 2010, 14:36
da Mario Vanoni
Maurizio69 ha scritto:sono tornato a Slackware dopo diversi anni di Ubuntu ed ho rispolverato uno script che avevo realizzato per facilitare la gestione degli script di avvio del sistema.
Compito principale dello script è quello di organizzare il file rc.local come segue:
1. Creazione di una directory /etc/rc.d/local che conterrà UNO script per OGNI operazione da fare
2. Sostituzione del file /etc/rc.d/rc.local con un file apposito che contiene una semplice istruzione FOR che si occupa di lanciare gli eseguibili trovati in /etc/rc.d/local
In questo modo la gestione e l'organizzazione dei files di avvio personalizzati è parecchio semplificata.
Ultimamente ho aggiunto anche la possibilità di imputare l'eseguibilità degli script generici (quelli che si trovano in /etc/rc.d).
Incuriosito, l'ho scaricato.
- per utenti Slackware 12.2 non decomprimibile
- avendo xz, con le opzioni -df risulta un *.tar
- tar *.tar e` una catastrofe, ti fa` cinque dirs ... (*)
> un programma decente crea una dir mrcl-versione e li scarica li`!
(*) ovviamente da vecchia volpe, mkdir mrcl e cp il *.tar li`.
Con find -type f -exec less {} \;
ho sfogliato i vari files, ben scritti, complimenti,
ma troppo bash'ish, non necessariamente portabili.
Ricorda che sotto Linux si usa ash/bash/chs/ksh ed altri minori.
Unica domanda che mi rimane,
perche' non mettere tutto in rc.local soltanto?
Dove rimane la semplificazione con tante/i dirs/files?
Re: Shell script per amministrazione startup sistema
Inviato: gio 19 ago 2010, 20:35
da metrofox
È vero, ne sono rimasto anche io incuriosito, l'ho scaricato ed ho comunque visto che il è scritto abbastanza bene, però io, come Mario, mi chiedo perché non mettere tutto in un rc.local che è creato appositamente per questi scopi e perché smistare il tutto.
Re: Shell script per amministrazione startup sistema
Inviato: gio 19 ago 2010, 22:55
da Maurizio69
Ciao,
non credevo di ricevere due risposte in così poco tempo.
Quando iniziai a realizzare lo script avevo un rc.local zeppo di istruzioni e - allora - pensai che forse la cosa potesse essere semplificata sostituendo ad un unico file una serie di file (ognuno deputato ad una sola operazione).
Per abilitare o disabilitare una funzione occorre solo mettere/togliere il flag di eseguibile ad uno script anzichè trovare le righe giuste e commentarle/decommentarle.
Inoltre - essendo gli script richiamati da un ciclo FOR - sarebbe sufficienti chiamarli con un prefisso numerico (ad es. 00rc.hdparm, 01rc.setleds, ecc) per poter modificare in modo facile e veloce l'ordine di esecuzione. Questa cosa è una caratteristica che avrei voluto inserire nello script appena possibile.
Ringrazio entrambi per aver detto che il codice è ben scritto: non avendo alcuna base tecnica (sono totalmente autodidatta) la cosa mi ha fatto molto piacere.
Gran parte di ciò che ho imparato lo devo proprio a Slackware (gli anni passati su Ubuntu mi hanno ricordato un po' troppo il pigro 'punta e clicca' che avevo abbandonato nel lontano 1998...).
Grazie nuovamente per le risposte.
Se qualcun'altro ha diversi suggerimenti... sono tutti ben accetti.
Saluti a tutti e happy Slack!
Maurizio
Re: Shell script per amministrazione startup sistema
Inviato: ven 20 ago 2010, 11:51
da Maurizio69
Incuriosito, l'ho scaricato.
- per utenti Slackware 12.2 non decomprimibile
- avendo xz, con le opzioni -df risulta un *.tar
- tar *.tar e` una catastrofe, ti fa` cinque dirs ... (*)
> un programma decente crea una dir mrcl-versione e li scarica li`!
(*) ovviamente da vecchia volpe, mkdir mrcl e cp il *.tar li`.
Ciao Mario,
ieri sera, nella fretta, non ho prestato la giusta attenzione a questa cosa.
Io ho creato il pacchetto con 'makepkg': credevo fosse sufficiente.
E' pertanto meglio creare un pacchetto .tgz?
O - forse - per fare l'elegante dovrei rilasciarne DUE (uno .tgz e l'altro .txz)?
Grazie di nuovo.
Maurizio
Re: Shell script per amministrazione startup sistema
Inviato: ven 20 ago 2010, 13:33
da Mario Vanoni
Maurizio69 ha scritto:
E' pertanto meglio creare un pacchetto .tgz?
O - forse - per fare l'elegante dovrei rilasciarne DUE (uno .tgz e l'altro .txz)?
Se vuoi interessare utenti <=12.2 ed anche >13.0, .tgz _E_ .txz,
io rimango fermo al 12.2 per ora:
- finche' non esce il 13.2 o magari il 13.3
- o non sono costretto a cambiare una delle tre macchina, ma se il 12.2 va` ???
Avendo 3 macchine stabilissime con 12.2 e kernel 2.6.35.2, perche' rischiare?
Re: Shell script per amministrazione startup sistema
Inviato: ven 20 ago 2010, 14:18
da Mario Vanoni
Maurizio69 ha scritto:
Per abilitare o disabilitare una funzione occorre solo mettere/togliere il flag di eseguibile ad uno script anzichè trovare le righe giuste e commentarle/decommentarle.
Curiosita`/domanda: quante cose fai partire al boot con rc.local?
Sulle mie tre macchine i file rc.local sono identici, commentando righe inutili.
Tutte le cose non necessarie al boot le delego a crontab(1),
ogni minuto (statistiche), ogni 10 minuti certe cose,
ad ore definite altre, ecc. ecc.
Anche /usr/sbin/ntpd -g -q lo ho tolto da rc.local,
ragione: se il server era lento, rallentava il boot.
Messo in crontab(1) ogni 10 minuti, non e` il secondo dopo il boot che importa.
Dal punto di vista utilita`:
- vecchio sysadm dal 1985, piu` veloce con vi(1) su rc.local, [de]commentare una voce
- per gente venuta da M$, forse piu` comprensibile togliere il flag con uno schermo dialog(1)
Gusti diversi ...
Re: Shell script per amministrazione startup sistema
Inviato: ven 20 ago 2010, 16:52
da Maurizio69
Grazie ancora!
In effetti io avvio solo un paio di servizi da rc.local (modificato alla miamaniera) e nulla più...
Condivido però pienamente con la tua conclusione ovvero lo script può comunque interessare chi si avvicina a Slackware da sistemi 'punta e clicca'.
Proseguirò in ogni caso con lo sviluppo (anche solo per puro esercizio).
Maurizio
Re: Shell script per amministrazione startup sistema
Inviato: ven 20 ago 2010, 21:31
da metrofox
Proseguirò in ogni caso con lo sviluppo (anche solo per puro esercizio).
In quel caso è utilissimo...
