systemd – lezione

Il nuovo strumento di init systemd è già diverse distribuzioni come alternativa al Upstart o Sysvinit polveroso. alcuni Sysvinit- e le distribuzioni Upstart comandi noti e trucchi per lavorare attraverso misure di compatibilità sotto systemd. Per utilizzare le funzionalità di systemd correttamente, l'amministratore deve sapere, tuttavia, anche gli strumenti e parametri di systemd.

Lo strumento più importante per interagire con il programma a riga di comando systemctl di systemd. Per modifiche alla configurazione o il riavvio di servizi in background che richiede i privilegi di root; alcune chiamate diagnostiche possono anche eseguire semplici utenti. Chi chiama il programma senza alcun parametro, riceve un elenco di “unità”, fare il All'avvio utilizzato compiti. Oltre alla integrazione e test dei volumi comprende i servizi di inizio sfondo o impostazione di hardware.

In una installazione predefinita di Fedora 16 liste systemctl centinaio di sessanta unità attive in dieci diverse varietà. Tra le unità di servizio più importanti. Si prendono cura dei servizi in background, una distribuzione Sysvinit inizia in genere sugli script di init. Montare- e Unità automount associare un file system. Socket-Locale legen Zoccoli un; cominciano le dipendenze indirette un'altra unità, si accede quando il socket. (Una spiegazione dettagliata del concetto Unit, vedere la prima parte dell'articolo.)

è possibile indicare parametro systemctl A, elencare solo le unità di un tipo particolare, su tutte le unità di servizio:

Systemctl indirizza automaticamente la sua uscita più a meno; Utilizzare i tasti freccia può essere non solo alta- e scorrere verso il basso, ma anche verso destra, perché a volte ci nascondono ulteriori informazioni.

L'avvio non systemd con Unità. Il venire in diverse varietà, il systemctl può elencare separatamente. VergrößernNella prima colonna di uscita troviamo il nome dell'unità. La seconda colonna indica, se systemd potrebbe invitare l'Unità-Definition, il terzo, se l'unità è attiva. Inattivo - installato, ma non iniziare previsto - Le unità sono il programma solo con l'interruttore -a da; Lo stesso vale per unità, che era in grado di caricare il sistema di init circa a causa di un errore nel file unità.

Colonna quattro dà lo stato attuale. “uscito” visualizza, che il processo è stato completato senza errori. Questo è per esempio il caso dei servizi, l'esecuzione in background - ad esempio nel gruppo manutenzione, il file Sysvinit noto esegue ragioni di compatibilità /etc/rc.local all'avvio del sistema. “in esecuzione” si distingue per i servizi, esecuzione in background: cron, dbus, sshd, udev e altro.

La quinta colonna è una descrizione di unità. Se con “LSB” o “SYSV” inizia, Systemd generato automaticamente l'unità, lavorare fuori uno script di init tradizionale.

per i servizi, che non ha potuto essere iniziato o hanno precipitato in seguito, è nella quarta colonna “fallito” - Evidenziati in rosso, a condizione che i controlli di uscita della console colorato. il status-Comando della sytemctl è il tempo della cancellazione e il codice di errore restituito del programma, per esempio

Il comando di stato di systemctl fornisce il tempo di taglio e servizi di codice di errore dopo incidente. In Fedora appena installato 16 liste systemctl il 60 unità di servizio su. Tra loro ci sono i processi di login per console di testo (agetty), perché a differenza di Sysvinit Systemd gestisce questo tramite unità di servizio come un normale servizio in background.

unità …

I file di configurazione per gruppi elettrogeni, il systemd porta, liegen in / lib / systemd / system /; un stesso file in / etc / systemd / system / ma ha la precedenza.

Definizione Unità sono di solito molto più brevi rispetto ai classici script di init Sys V. lungo Un file unità per il servizio di sincronizzazione dell'ora di rete via NTP è solo poche righe:

Tutti i file unità contenuti da un [Unit] sezione introdotta con le impostazioni generali, compresa una breve descrizione. nella sezione [Service] seguire le informazioni specifiche del servizio; con NTP che è solo il comando, per avviare il servizio. Se un comando speciale per uscire è necessario, questo può essere un ExecStop-definire dichiarazione. Nel demone NTP che è inutile, perché può essere risolto in buona tradizione Unix da un segnale SIGTERM; l'invio di systemd per terminare, quando non viene specificato alcun altro comando.

La sezione [Install] include istruzioni, il systemd in (de-)installazione interpretato; , La voce nella NTP Esempio, che la sincronizzazione di tempo con la conduzione del bersaglio “Multi utente” essere chiamato.

… e obiettivi

Le unità di destinazione offrono un concetto, simile a runlevel Sysvinit; Per motivi di compatibilità è capito Systemd runlevel anche nomi per il controllo degli obiettivi equivalenti. Come prima si possono dunque a Fedora 16 il kernel nel parametro boot loader single dare a; controlli systemd poi rescue.target un, il minimo, le modalità utente singolo corrispondenti zona offre.

anche 3 fabbrica, per controllare la modalità multi-utente senza login manager grafico. Rappresenta è questa modalità in systemd dall'unità di destinazione multi-utente. un multi-user.target a diventare lo standard, Link sottopone:

Se il gestore di login grafico più tardi, ma si avvia di default di nuovo, si può allo stesso modo graphical.target elevare il target standard; è l'equivalente di runlevel 5 Fedora e OpenSuse. In alternativa alle vecchie denominazioni runlevel può dare al kernel, il nome del bersaglio partendo:

Per guidare una unità bersaglio diversa in funzione, serve il isolate-Comando della systemctl:

La variazione interessante di salvataggio di destinazione per attività di amministrazione, perché è finita Systemd tutti i login degli utenti e servizi in background, lasciando solo i servizi di sistema eseguiti - come quelli per il monitoraggio dei volumi logici (lvm2-Monitor). A volte devono essere chiuso per lavori di ristrutturazione, ciò con la modalità di emergenza emergency.target avere successo; qui eseguito solo i fili del kernel.

desiderio

il show-Comando di systemctl offre alcune delle parti interne alle unità attuali e il lavoro svolto su di loro. Può essere utilizzato anche trascorrere, le chiamate che unità systemd nel guidare gli obiettivi multi-utente:

Nel numero di altri obiettivi si trovano - a circa multi-user.target basic.target. Questo a sua volta dipende sysinit.target da, il local-fs.targetpresuppone. Questi tre obiettivi preoccupano la configurazione di base del sistema; questi includono l'integrazione del sistema di file e l'avvio di Udev. Per specificare la funzione del bersaglio di base contiene il file di configurazione multi-user.target seguenti informazioni:

da After-Indicazione impara Systemd, che non solo chiamare il bersaglio, ma deve aspettare il suo lancio completo. prossimo Requires vi è anche la più debole Wants. In specificato Unità chiama systemd a anche, imposta l'inizio ma anche continuato, se uno di loro non si avvia.

Questo tipo di funzione può anche link ai file di unità specificare, che vengono creati in una directory, il cui nome composto dal nome dell'unità di destinazione e un .wants allegate, su

.../systemd/system/multi-user.target.wants/

Ausknipsen

Chi vuole disabilitare Unità NTPD Servizio, in modo che il sistema in fase di avvio non è sincronizzato tramite NTP, può fare il seguente comando:

Qui systemctl non fa nulla, per rimuovere il link al file unità di servizio nelle directory Wants; quando si attiva un servizio con enablelo strumento creerà un collegamento. Entrambi può essere fatto manualmente, alle unità di (di)casella di controllo per abilitare.

Se un servizio non è di un'Unità, ma ha iniziato uno script di init tradizionale, passa systemctl richiesto di attivare il programma chkconfig più. In Fedora è il caso, se è stato installato Apache e attivato tramite systemctl.

il (di)Attivare un servizio ha effetto solo dopo il prossimo avvio o di arresto del sistema. Il comando seguente avvia un servizio unico immediatamente:

I parametri stop terminato il servizio. il comando status Systemctl fornisce informazioni sull'unità, compreso lo stato corrente e il nome del file specificandoli. Inoltre, il programma dà, se e per quanto tempo fa il servizio già e quali processi appartengono a lui; il processo principale ha systemctl così esplicitamente dal.

Circa l'appartenenza al gruppo può essere visto, a cui il servizio ha un processo.
Appartenente alla scala di gruppi di controllo systemd può essere abbastanza facile da trovare, i processi utilizzati e da quale servizio per iniziare. La scala della gerarchia cgroup systemd dà il comando systemd-cgls da; mostra alternativamente l'appartenenza al gruppo di ps:ps greggio -eour pid,args,cgroup

abgesoffen

In caso di problemi durante i problemi di avvio, dove systemd sembra coinvolto direttamente o indirettamente, si dovrebbe dare al kernel, i seguenti parametri del boot loader:

Systemd poi scrive le informazioni dettagliate di debug sulla console e nel buffer dei messaggi del kernel, al più tardi dmesg in grado di leggere.

Per systemd includere gli strumenti della riga di comando poweroff, halt e reboot; In alternativa, è possibile arrestare il sistema tramite i comandi systemctl omonime o riavvio. Un riavvio si ottiene anche con il comando


Lo strumento “systemd-cgls” , Il gruppo di controllo e le loro processi associati Mostra.
Dopo l'arresto di tutti i servizi è systemd il kernel in esecuzione, direttamente per avviare un kernel Linux configurato in precedenza - senza BIOS auto-test e boot loader. Se nessun kernel Kexec configurato, effettuato un riavvio normale.

Ranholen

In attività di amministrazione comuni per ottenere solo con il servizio- e le unità di destinazione a diretto contatto; le altre unità sono particolarmente importanti per le caratteristiche speciali di systemd o fanno all'avvio tutte quelle cose, intorno al quale a Sysvinit- hanno curato e distribuzione distribuzioni Upstart script specifici. Tra di loro è l'inclusione di in file / etc / fstab sistemi specificati, L'attivazione di spazio di swap o la pulizia occasionale la directory / tmp.

Per alcune di queste opere systemd porta una funzione automount, la pseudo-mount può investire per i file system in / etc / fstab configurati; effettivamente coinvolti sono, tuttavia, solo al primo accesso. Aggiunta “comment=systemd.automount” in / etc / fstab trasforma ogni punto di montaggio in una macchina punto di montaggio. Questo può accelerare il processo di avvio ed è utile ad esempio per le condivisioni di rete, se la connessione di rete attraverso il Network Manager è configurato solo quando si accede a un utente.

la ricerca causa

A proposito di systemctl può systemd per trasmettere un segnale di chiamata, senza conoscere l'ID di processo del servizio. Il seguente comando Offset rsyslogd in modalità debug; Questo è terminato, se si invoca il comando una seconda volta:

Se si omette l'indicazione del segnale da trasmettere, invia un segnale systemctl normale termine, dopo di che tutti i processi devono finire, appartenente ad un servizio.

Systemd porta un programma con, di visualizzare il processo di avvio; le aree rosso scuro, la fase di avvio di servizi da. Vergrößern
il comando systemd-analyze uscite, quanto tempo l'avvio preso e quanto tempo a costo di kernel, omesso initramfs e impostazione della userland da systemd. il comando systemd-analyze blame sono gli orari di inizio delle singole unità di. Per un esame più dettagliato del processo di avvio, il programma può creare un file in formato SVG, die Start dove Unità visualizzate:

A volte si ottiene così Unità in pista, la forte attrazione l'avvio della lunghezza. Alcune note per quanto riguarda la corretta interpretazione di questi risultati fornisce la settima parte della serie di blog “Systemd per gli amministratori”. La precedente serie di dodici-stranded comprende anche molti altri consigli e suggerimenti per l'uso pratico da systemd:

  1. Verifica Bootup
  2. Quale servizio possiede quali processi?
  3. Come faccio a convertire un SysV Init script in un file di servizio systemd?
  4. uccidere Servizi
  5. I tre livelli di “via”
  6. Modifica delle Radici
  7. Il gioco di colpa
  8. Il file di nuova configurazione
  9. On / etc / sysconfig e / etc / default
  10. Servizi istanziati
  11. Conversione Servizi inetd
  12. Protezione dei Servizi

su Homepage Lennart Poettering anche trovato numerosi altri articoli con sfondi per il sistema di init. Sono terzo “Stato aggiornamento systemd” Poettering ha anche elencato alcune delle innovazioni di recente, che sono stati inseriti negli ultimi diciotto mesi a systemd.

 

Quelle: http://www.heise.de/open/artikel/Das-Init-System-Systemd-Teil-2-1563461.html

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *