← Older revision
Revision as of 17:14, 19 August 2012
(2 intermediate revisions by one user not shown)
Line 11:
Line 11:
{{Article summary wiki|Systemd/Services}}
{{Article summary wiki|Systemd/Services}}
{{Article summary end}}
{{Article summary end}}
−
'''
systemd
''' è un gestore di sistema e di servizi per Linux, compatibile con gli initscript SysV e LSB. Systemd fornisce una notevole capacità di parallelizzazione, usa socket e [[D-Bus]] per l'avvio dei demoni, offre un avvio su richiesta dei demoni, tiene traccia dei processi con l'utilizzo dei [[cgroups]] di Linux, supporta lo snapshotting e il restore dello stato del sistema, mantiene i punti di mount e di automount e implementa un elaborato servizio di controllo logico basato sulle relazioni delle dipendenze. Può funzionare come rimpiazzo totale di sysvinit.
+
'''
Systemd
''' è un gestore di sistema e di servizi per Linux, compatibile con gli initscript SysV e LSB. Systemd fornisce una notevole capacità di parallelizzazione, usa socket e [[D-Bus]] per l'avvio dei demoni, offre un avvio su richiesta dei demoni, tiene traccia dei processi con l'utilizzo dei [[cgroups]] di Linux, supporta lo snapshotting e il restore dello stato del sistema, mantiene i punti di mount e di automount e implementa un elaborato servizio di controllo logico basato sulle relazioni delle dipendenze. Può funzionare come rimpiazzo totale di sysvinit.
Leggi anche l'[http://en.wikipedia.org/wiki/Systemd articolo su Wikipedia] e la [http://freedesktop.org/wiki/Software/systemd pagina del progetto].
Leggi anche l'[http://en.wikipedia.org/wiki/Systemd articolo su Wikipedia] e la [http://freedesktop.org/wiki/Software/systemd pagina del progetto].
Line 131:
Line 131:
=== Sleep hooks ===
=== Sleep hooks ===
−
Systemd non usa [[pm-utils]] per mettere la macchina a riposo quando usa {{ic|systemctl suspend}} o {{ic|systemctl hibernate}}, Quindi gli hooks di [[Pm-utils_(Italiano)|Pm-utils]] incluso qualsiasi [[Pm-utils_(Italiano)#Creazione_di_un_Hook_personale|hook personalizzato]] si sia creato non funzionerà. Tuttavia, systemd fornisce un meccanismo simile per avviare script personali in base a questi eventi. Systemd
avvierà
tutti gli eseguibili in {{ic|/usr/lib/systemd/system-sleep/}} e
potrà passare
due
tipi di
argomenti a ognuno di essi:
+
Systemd non usa [[pm-utils]] per mettere la macchina a riposo quando usa {{ic|systemctl suspend}} o {{ic|systemctl hibernate}}, Quindi gli hooks di [[Pm-utils_(Italiano)|Pm-utils]] incluso qualsiasi [[Pm-utils_(Italiano)#Creazione_di_un_Hook_personale|hook personalizzato]] si sia creato non funzionerà. Tuttavia, systemd fornisce un meccanismo simile per avviare script personali in base a questi eventi. Systemd
avvia
tutti gli eseguibili in {{ic|/usr/lib/systemd/system-sleep/}} e
passa
due argomenti a ognuno di essi:
−
*
argument
1: o {{ic|pre}} o {{ic|post}}, a seconda che la macchina si stia addormentando o svegliando
+
*
Argument
1: o {{ic|pre}} o {{ic|post}}, a seconda che la macchina si stia addormentando o svegliando
−
*
argument
2: o {{ic|suspend}} o {{ic|hibernate}}, dipende da cosa è stato invocato.
+
*
Argument
2: o {{ic|suspend}} o {{ic|hibernate}}, dipende da cosa è stato invocato.
Al contrario di [[Pm-utils_(Italiano)|Pm-utils]], systemd avvierà questi scripts in parallelo e non uno dopo l'altro.
Al contrario di [[Pm-utils_(Italiano)|Pm-utils]], systemd avvierà questi scripts in parallelo e non uno dopo l'altro.
Line 142:
Line 142:
Vedi {{ic|man systemd.special}} e {{ic|man systemd-sleep}} per maggiori informazioni.
Vedi {{ic|man systemd.special}} e {{ic|man systemd-sleep}} per maggiori informazioni.
+
==== Esempi ====
{{hc|/usr/lib/systemd/system-sleep/example.sh|
{{hc|/usr/lib/systemd/system-sleep/example.sh|
case "$1" in
case "$1" in
pre )
pre )
−
command
+
echo going to $2
;;
;;
post )
post )
−
command
+
echo waking up from $2
;;
;;
esac
}}
esac
}}
Line 186:
Line 187:
Quando si usa {{ic|systemctl}}, occorre generalmente specificare sempre il nome completo dell'unità compreso il suffisso, per esempio {{ic|sshd.socket}}. Esistono tuttavia delle scorciatoie quando si specifica l'unità nei seguenti comandi {{ic|systemctl}}:
Quando si usa {{ic|systemctl}}, occorre generalmente specificare sempre il nome completo dell'unità compreso il suffisso, per esempio {{ic|sshd.socket}}. Esistono tuttavia delle scorciatoie quando si specifica l'unità nei seguenti comandi {{ic|systemctl}}:
* Se non si specifica il suffisso, per systemctl sarà sottointeso {{ic|.service}}. Per esempio, {{ic|netcfg}} e {{ic|netcfg.service}} sono equivalenti.
* Se non si specifica il suffisso, per systemctl sarà sottointeso {{ic|.service}}. Per esempio, {{ic|netcfg}} e {{ic|netcfg.service}} sono equivalenti.
+
{{Note|Attualmente non funzionante con i comandi {{ic|enable}} e {{ic|disable}}.}}
* I punti di montaggio saranno automaticamente tradotti nella appropriata unità {{ic|.mount}}. Per esempio, specificare {{ic|/home}} è equivalente a {{ic|home.mount}}.
* I punti di montaggio saranno automaticamente tradotti nella appropriata unità {{ic|.mount}}. Per esempio, specificare {{ic|/home}} è equivalente a {{ic|home.mount}}.
* Come i punti di montaggio, anche i dispositivi sono automaticamente tradotti nell'appropriata unità {{ic|.device}}, quindi specificare {{ic|/dev/sda2}} è equivalente a {{ic|dev-sda2.device}}.
* Come i punti di montaggio, anche i dispositivi sono automaticamente tradotti nell'appropriata unità {{ic|.device}}, quindi specificare {{ic|/dev/sda2}} è equivalente a {{ic|dev-sda2.device}}.
Line 270:
Line 272:
!SysV Runlevel!!Systemd Target!!Notes
!SysV Runlevel!!Systemd Target!!Notes
|-
|-
−
| 0 || runlevel0.target, poweroff.target ||
Halt the system
.
+
| 0 || runlevel0.target, poweroff.target ||
Ferma il sistema
.
|-
|-
−
| 1, s, single || runlevel1.target, rescue.target ||
Single
user
mode
.
+
| 1, s, single || runlevel1.target, rescue.target ||
Modalità utente singolo (single
user
)
.
|-
|-
−
| 2, 4 || runlevel2.target, runlevel4.target, multi-user.target ||
User-defined/Site-specific runlevels
.
By default, identical to
3.
+
| 2, 4 || runlevel2.target, runlevel4.target, multi-user.target ||
Definita dall'utente
.
Preconfigurata a
3.
|-
|-
| 3 || runlevel3.target, multi-user.target || Multi-user, non-graphical. Users can usually login via multiple consoles or via the network.
| 3 || runlevel3.target, multi-user.target || Multi-user, non-graphical. Users can usually login via multiple consoles or via the network.
|-
|-
−
| 5 || runlevel5.target, graphical.target || Multi-user,
graphical
.
Usually has all the services of
runlevel 3
plus a graphical
login.
+
| 5 || runlevel5.target, graphical.target || Multi-user,
grafica
.
Solitamente ha tutti i servizi del
runlevel 3
con l'aggiunta di un
login
grafico
.
|-
|-
−
| 6 || runlevel6.target, reboot.target ||
Reboot
+
| 6 || runlevel6.target, reboot.target ||
Riavvio
|-
|-
−
| emergency || emergency.target ||
Emergency shell
+
| emergency || emergency.target ||
Console di emergenza
|-
|-
|}
|}
Line 393:
Line 395:
Se occorre configurare la rete in modo statico, ma non si vuole usare [[netcfg]], c'é un servizio personalizzato disponibile alla [[Systemd/Services#Network|pagina dei servizi di systemd]].
Se occorre configurare la rete in modo statico, ma non si vuole usare [[netcfg]], c'é un servizio personalizzato disponibile alla [[Systemd/Services#Network|pagina dei servizi di systemd]].
−
−
{{Nota|Se si sta usando [[NetworkManager]] attivare {{ic|NetworkManager-wait-online.service}} per forzare l'unità da cui dipende {{ic|network.target}} ad aspettare affinché òa connessione alla rete sia completa prima di partire.}}
== Integrazione con Arch ==
== Integrazione con Arch ==
Line 411:
Line 411:
* CONSOLEMAP
* CONSOLEMAP
* HOSTNAME
* HOSTNAME
+
* DAEMONS
Variabili non supportate e configurazioni di systemd:
Variabili non supportate e configurazioni di systemd:
* TIMEZONE: fare un link simbolico {{Ic|/etc/localtime}} al proprio file con le informazioni di zona manualmente.
* TIMEZONE: fare un link simbolico {{Ic|/etc/localtime}} al proprio file con le informazioni di zona manualmente.
* HARDWARECLOCK: Vedere [[Systemd_(Italiano)#Orario_di_sistema|Orario di sistema]].
* HARDWARECLOCK: Vedere [[Systemd_(Italiano)#Orario_di_sistema|Orario di sistema]].
−
* USELVM: al suo posto usare {{ic|lvm.service}} fornito da {{Pkg|
systemd-arch-units
}}.
+
* USELVM: al suo posto usare {{ic|lvm.service}} fornito da {{Pkg|
lvm2
}}.
* USECOLOR
* USECOLOR
* MODULES
* MODULES
−
* DAEMONS
+
=== Conversione totale a systemd puro ===
=== Conversione totale a systemd puro ===