QNAP controllo RAID

Per controllare la corsa RAID

cat /proc/mdstat

Per impostare la velocità di manuel

eco 100000 > /proc/sys/dev/raid/speed_limit_max

Per Manuel impostare il raid per controllare

echo check > /sys/block/md0/md/sync_action

 

Raspberry Pi: Installare VNC Server

Chi ha la sua Raspberry Pi in quanto tale esposizione, ancora voglia di utilizzare una sola console, per il server VNC è il diritto. VNC trasmette l'immagine dell'interfaccia grafica sulla rete, o port forwarding tramite Internet. In alternativa, è possibile installare Remote Desktop, e io i pro- Non entro nel ei contro dei due protocolli, a questo punto, in quanto questi sono discussi altrove sulla rete dettaglio. Qui di seguito descrivo come ottenere un server VNC sulla sua Raspberry Pi in esecuzione.
requisito: la distribuzione Raspbian o simili installato

Passo 1
Come un server VNC per il Raspberry Pi è consigliabile stretta VNC pacchetto, che può essere installato mediante il gestore di pacchetti APT.

sudo apt-get install tightvncserver

Passo 2

Ora installiamo o precarico, un piccolo strumento, che prevede, quali programmi e le dipendenze vengono aperti dopo e li carica in precedenza nella RAM. Questo ha il vantaggio, che l'interfaccia grafica è molto più veloce. è precaricamento non raccomandato per il funzionamento di Raspberry Pi come un server puro.

sudo apt-get install precarico

Passo 3

Successivamente, adattiamo una configurazione di precarico, quindi l'uso della RAM viene gestita efficacemente.

sudo sed -i 's / sortstrategy = 3 / sortstrategy = 0 / g' /etc/preload.conf

Passo 4

Ora iniziamo il server VNC per la prima volta. Ci viene chiesto di inserire una password per accedere. Quindi è possibile definire, se si desidera impostare una visualizzazione Solo password, consentire a terzi senza arrendersi o modificare propria password, a guardare il desktop del Raspberry Pi.

tightvncserver

Passo 5

Ora ci fermiamo nuovamente il server VNC, per rendere ulteriori servizi.

vncserver -kill :1

Passo 6

Ora poniamo uno script di avvio per il server VNC con il nome vnc.sh, in cui si entra seguenti comandi. Qui si può sostituire 1280 × 720 con la risoluzione desiderata. Tuttavia, vi consiglio senza overclock / overclock sopra 1280 × 720 di uscire, in quanto questo è chiaramente la performance.

nano vnc.sh

 

#!/bin / sh
vncserver :1 -geometria 1280x720 -depth 24

Passo 7
Ora diamo i permessi del file appena creato per l'esecuzione.

chmod + x vnc.sh

Se si vuole fare automaticamente VNC quando si avvia il Raspberry Pi iniziare quindi dobbiamo adottare le seguenti misure.

Passo 8 (opzionale)
Creiamo uno script di avvio / arresto in /etc/init.d nome vncboot e aggiungere il seguente script di avvio in questa. Come nel passaggio 6 la risoluzione può essere regolata nuovamente.

sudo nano /etc/init.d/vncboot

### BEGIN INIT INFO
# Fornisce: vncserver
# Required-Start: networking
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-stop: 0 1 6
# Breve descrizione: avvia VNC
# Descrizione:
### END INIT INFO

export USER = 'pi'

eval cd ~ $ USER

# controllare lo stato
Astuccio "$1" in
inizio)
su $ -c USER '/ usr / bin / vncserver :1 -geometria 1280x720 -depth 24'
eco "vncserver di partenza per $ USER"
;;
Stop)
pkill Xtightvnc
eco "vncserver fermato"
;;
*)
eco "uso: /etc / init.d / vncboot {inizio|Stop}"
Uscita 1
;;
esac

Uscita 0

 

Passo 9 (opzionale)
Ora abbiamo il file creato ancora una volta di più la concessione di diritti.

sudo chmod 755 /etc / init.d / vncboot

Passo 10 (opzionale)

Infine, abbiamo bisogno di includere lo script nella Startup.

sudo update-rc.d default vncboot

finalmente completato! Quando si avvia il Raspberry Pi, il server VNC verrà avviato automaticamente. Se si desidera utilizzare il Raspberry Pi in questa forma, Ti posso consigliare di overclock questo, perché l'interfaccia grafica verrà eseguito molto più agevole. Come fare questo ho spiegato nell'articolo Overclocking / overclock senza perdita di garanzia. può collegarsi ora nel client VNC sulla porta 5901. Come cliente, posso visualizzatore TightVNC per Windows, per Mac OS X e Linux RealVNC raccomandare la-java tightvnc pacchetto.

flusso multicast proxy su delega apache con l'autenticazione

Ho configurato un proxy per il multicast a http

questo è necessario ad esempio per l'inoltro modulo di traffico Telekom home entertainment

wget https://freefr.dl.sourceforge.net/project/udpxy/udpxy/Chipmunk-1.0/udpxy.1.0.23-0-prod.tar.gz
tar -xzvf udpxy.1.0.23-0-prod.tar.gz
rendere
make install

aggiungere al crontab

1 1 * * * radice udpxy -p 4022

creazione iniziale per l'autenticazione

htpasswd -c /etc/apache2/.htpasswd Sammy

aggiungere un utente supplementare

htpasswd /etc/apache2/.htpasswd sammy2

aggiungi ai vhost

        <Location / UDP>
                ProxyPass http://localhost:4022/udp
                ProxyPassReverse http://localhost:4022/udp
                AuthType di base
                AuthName "Password richiesta"
                AuthUserFile /etc/apache2/.htpasswd
                Richiede valid-user
                ordine negare,permettere
                Consentire da tutto
        </Posizione>

consentire di mod su apache se non già fatto

a2enmod delega proxy_http

modificare l'elenco dei canali, come per Telekom

#EXTM3U
#EXTINF:-1,(05) RTL
https://utente:password@server/udp/239.35.20.10:10000

#EXTINF:-1,(06) RTL2
https://utente:password@server/udp/239.35.20.22:10000

#EXTINF:-1,(07) RTLplus
https://utente:password@server/udp/239.35.20.57:10000

#EXTINF:-1,(08) Pro7
https://utente:password@server/udp/239.35.20.21:10000

#EXTINF:-1,(09) Kabel1
https://utente:password@server/udp/239.35.20.38:10000

#EXTINF:-1,(10) Vox
https://utente:password@server/udp/239.35.20.11:10000

#EXTINF:-1,(11) Super RTL
https://utente:password@server/udp/239.35.20.39:10000

#EXTINF:-1,(12) NTV
https://utente:password@server/udp/239.35.20.47:10000

#EXTINF:-1,(13) Sixx
https://utente:password@server/udp/239.35.20.9:10000

#EXTINF:-1,(14) Pro7maxx
https://utente:password@server/udp/239.35.20.33:10000

#EXTINF:-1,(15) RTLNITRO
https://utente:password@server/udp/239.35.20.59:10000

#EXTINF:-1,(16) arte
https://utente:password@server/udp/239.35.10.20:10000

#EXTINF:-1,(17) Fenice
https://utente:password@server/udp/239.35.10.22:10000

#EXTINF:-1,(18) 3sat
https://utente:password@server/udp/239.35.10.6:10000

#EXTINF:-1,(19) Kikka
Https://utente:password@server/udp/239.35.10.19:10000

#EXTINF:-1,(20) Tagesschau24
https://utente:password@server/udp/239.35.10.25:10000

#EXTINF:-1,(21) EinsFestival
https://utente:password@server/udp/239.35.10.21:10000

#EXTINF:-1,(22) EinsPlus
https://utente:password@server/udp/239.35.10.26:10000

#EXTINF:-1,(23) ARD-alfa
https://utente:password@server/udp/239.35.10.24:10000

#EXTINF:-1,(24) ZDF Kultur
https://utente:password@server/udp/239.35.10.23:10000

#EXTINF:-1,(25) ZDF Infokanal
https://utente:password@server/udp/239.35.10.28:10000

#EXTINF:-1,(26) neo ZDF
https://utente:password@server/udp/239.35.10.27:10000

#EXTINF:-1,(27) onda tedesco
https://utente:password@server/udp/239.35.20.44:10000

#EXTINF:-1,(28) BR Nord
https://utente:password@server/udp/239.35.10.13:10000

#EXTINF:-1,(29) hr-TV
https://utente:password@server/udp/239.35.10.8:10000

#EXTINF:-1,(30) MDR Sachsen
https://utente:password@server/udp/239.35.10.9:10000

#EXTINF:-1,(31) NDR
https://utente:password@server/udp/239.35.10.10:10000

#EXTINF:-1,(32) Radio Bremen TV
https://utente:password@server/udp/239.35.10.12:10000

#EXTINF:-1,(33) RBB Berlin
https://utente:password@server/udp/239.35.10.14:10000

#EXTINF:-1,(34) TV SR
https://utente:password@server/udp/239.35.10.15:10000

#EXTINF:-1,(35) SWR Fernsehen BW
https://utente:password@server/udp/239.35.10.16:10000

#EXTINF:-1,(36) WDR
https://utente:password@server/udp/239.35.10.18:10000

#EXTINF:-1,(37) Il primo HD
https://utente:password@server/udp/239.35.10.1:10000

#EXTINF:-1,(38) ZDF HD
https://utente:password@server/udp/239.35.10.2:10000

#EXTINF:-1,(39) ARTE HD
https://utente:password@server/udp/239.35.10.3:10000

#EXTINF:-1,(40) Phoenix HD
https://utente:password@server/udp/239.35.10.48:10000

#EXTINF:-1,(41) KIKA HD
https://utente:password@server/udp/239.35.10.11:10000

#EXTINF:-1,(42) 3sat HD
https://utente:password@server/udp/239.35.10.47:10000

#EXTINF:-1,(43) Tagesschau 24 HD
https://utente:password@server/udp/239.35.10.63:10000

#EXTINF:-1,(44) Eins HD Festival
https://utente:password@server/udp/239.35.10.58:10000

#EXTINF:-1,(45) One Plus HD
https://utente:password@server/udp/239.35.10.59:10000

#EXTINF:-1,(46) ZDF Kultur HD
https://utente:password@server/udp/239.35.10.54:10000

#EXTINF:-1,(47) ZDF neo HD
https://utente:password@server/udp/239.35.10.55:10000

#EXTINF:-1,(48) ZDF HD Infokanal
https://utente:password@server/udp/239.35.10.56:10000

#EXTINF:-1,(49) Bayern Sud HD
https://utente:password@server/udp/239.35.10.49:10000

#EXTINF:-1,(50) HR HD
https://utente:password@server/udp/239.35.10.60:10000

#EXTINF:-1,(51) MDR HD
https://utente:password@server/udp/239.35.10.61:10000

#EXTINF:-1,(52) NDR HD
https://utente:password@server/udp/239.35.10.50:10000

#EXTINF:-1,(53) RBB HD
https://utente:password@server/udp/239.35.10.62:10000

#EXTINF:-1,(54) SWR BW HD
https://utente:password@server/udp/239.35.10.51:10000

#EXTINF:-1,(55) WDR HD
https://utente:password@server/udp/239.35.10.53:10000

#EXTINF:-1,(56) SR HD
https://utente:password@server/udp/239.35.10.64:10000

#EXTINF:-1,(01) prima
https://utente:password@server/udp/239.35.10.4:10000

#EXTINF:-1,(02) ZDF
https://utente:password@server/udp/239.35.10.5:10000

#EXTINF:-1,(03) Sat 1
https://utente:password@server/udp/239.35.20.20:10000

#EXTINF:-1,(04) SAT1 oro
https://utente:password@server/udp/239.35.20.24:10000

 

WordPress AutoUpdater

installare wp-cli -> http://wp-cli.org/

utilizzare questo script

#!/bin/bash

updater(){
        wp core update --allow-root
        wp core update-db --allow-root
        wp plugin update --all --allow-root
        wp theme update --all --allow-root
        wp core language update --allow-root
        CGROUP=$(stat -c '% G' wp-cron.php)
        CUser = $(stat -c '% U' wp-cron.php)
        chown $ CUser:$cgroup ./* -Rf
}

for i in $(trovare / var / www / vhosts -name wp-cron.php); do
        wpdir=$(echo $ i | sed -r 's / wp-cron.php // g')
        echo $wpdir
        cd $wpdir
        updater
done

Funksteckdosen via Raspberry Pi tramite il terminale, Interfaccia Web o il controllo Siri – 433 mHz

occupazione

rpi2-pins

Raspberry PiTrasmettitoreRicevitore
perno 2 / 4 (5V) VCC VCC
perno 6 / 9 (GND) GND GND
perno 11 (GPIO17) - RPI Nr.1 UN PO
perno 13 (GPIO27) - RPI Nr.2 DATI (a fianco di GND)

Software

Veniamo ora al software. A tale scopo, è necessario prima avviare il Raspberry Pi, dove tutto è stato assemblato come descritto in precedenza. Collegamento si dovrebbe uniche volte

sudo apt-get update

eseguire. Questi i repository sono aggiornati. Poi git-core deve essere installato (se non già fatto comunque):

sudo apt-get install git-core

Al fine di realizzare il controllo del trasmettitore, c'è un progetto chiamatoWiringPi. Questo è installato sul Raspberry Pi come segue:

cd
git clone git://git.drogon.net/wiringPi
cd wiringPi
./build

Per i nostri scopi,, per controllare le prese esiste già un progetto. Questo viene da xkonni e chiamato Lampone-Remote. Il tuo installato così:

cd
git clone git://github.com/xkonni/raspberry-remote.git
cd raspberry-remote

E 'in esecuzione, si deve a voi, né il send.cpp compilazione, Quindi digitare il seguente:

make send
make demon

installare un sniffer

cd
git clone https://github.com/ninjablocks/433Utils.git
cd 433Utils/RPi_utils
make all

Per l'assegnazione dei pin

GPIO ReadAll

sniffer di prova

./RFSniffer
./codesend 1234

Interfaccia Web

Naturalmente è un po 'imbarazzante e scomodo, tutto avendo sempre preoccupare di terminale / SSH. Ma non è un problema! Lampone a distanza offre la stessa interfaccia Web con un abbinamento. Quindi, è possibile utilizzare la, deve la sua prima volta Apache e PHP installare sul vostro Raspberry:

sudo apt-get install apache2 php5

Qui andiamo all'interfaccia Web, ciò mitliefert xkonni direttamente. Inoltre ho la cartella

mkdir / var / www / html / remoto

una sottocartella a distanza creato. Poi il contenuto di ~ / lampone-remote / interfaccia web vi si trasferirono:

cp -Rf ~ / lampone-remote / interfaccia web / * / var / www / html / a distanza

Ora ha ancora in

abbiamo /var/www/html/remote/config.php

File l'indirizzo IP del Raspberry Pi da regolare: utilizzare semplicemente nano.

deamon

Ora manca ancora, il demone, si accede dallo script PHP l'interfaccia web. Per questo torniamo alla directory remota Raspberry: CD ~/lamponea distanza e compilare il demone: rendere demone
Ora possiamo iniziare questo:

sudo ./daemon &

il & cause, che il processo in esecuzione in background.

Ora siamo in grado di tentare la fortuna con l'interfaccia Web: Perciò noi chiamiamo da un'altra interfaccia web di computer / cellulare via http://192.168.11.44/a distanza/ (Inserisci il tuo IP) su. Se funziona e ci sono vari punti vendita visibili, poi si deve ora solo nelle prese config.php di nome e, eventualmente,. i codici, eccetera. regolare. La configurazione dovrebbe essere auto-esplicativo.screenshot_webinterface

Se si riceve un messaggio di errore del tipo "switch fuori portata: OTTENERE /:XY "ottiene, non ti preoccupare! Nel daemon.cpp sono per default solo i Codici Casa 00000 & 00001 & 00010 coperto. Questo può, tuttavia, cambiare facilmente. Vai alla directory di lampone Remote (con me /home / PI / lampone-remote /, anche tramite

cd / home / PI / lampone-remote /

e apre il daemon.cpp con nano. All'interno si trova la voce "nPlugs = 10;", che è sufficiente "nPlugs = 1110;". allorasudo make daemon ricompilare e sudo ./daemon & nuovo inizio. Ora dovrebbe funzionare con voi l'interfaccia web.

 

gonfiore:

Let lampone Pi di comunicare tra loro per segnali wireless 433MHz

https://alexbloggt.com/funksteckdosen-raspberry-pi-teil1/

https://alexbloggt.com/funksteckdosen-raspberry-pi-teil2/

 

Inoltre hanno ancora alcuni altri grandi progetti trovati

OK Google, Passa alla lista -> https://blog.medienman.de/blog/2017/08/20/google-home-steuert-433-mhz-funksteckdosen/

Lavorare efficacemente con iTerm2

Impostazioni Fine-Tune

iTerm lancio, aperto iTerm > Preferenze o semplicemente

Cmd + ,

Aprire la scheda / riquadro con la directory di lavoro corrente

Sotto Profili linguetta, vai a Generale sottoscheda, impostato Directory di lavoro a "Riutilizzare directory precedente di sessione".

consentire Meta chiave

Per abilitare il tasto Meta per Bash readline editing ad es.

Alt + b

per passare alla parola precedente, sottoProfili linguetta, vai a chiavi sottoscheda, impostato opzione di sinistra tasto funge: a "+ Esc".

Tasti di scelta rapida per attivare iTerm2

Sotto chiavi linguetta, in Tasti di scelta rapida sezione, consentire "Mostra / nascondi iTerm2 con un tasto di scelta rapida a livello di sistema" e inserire la combinazione di tasti di scelta rapida, ad es. Io uso

Ctrl + Shift + L

riquadro interruttore con il cursore del mouse

Sotto pointer, in Impostazioni varie sezione, consentire "Focus segue il mouse".

Handy Tasti di scelta rapida

Ecco una serie di I tasti di scelta rapida usano comunemente. Si può sempre cercare altri tasti di scelta rapida nel menu iTerm.

navigazione Tab

  • nuova scheda aperta
    Cmd + t
  • scheda successiva
    Cmd + Shift + ]
  • scheda precedente
    Cmd + Shift + [

navigazione Pane

  • riquadro diviso destra-sinistra
    Cmd + d
  • riquadro diviso alto-basso
    Cmd + Shift + d
  • riquadro successivo
    Cmd + ]
  • riquadro precedente
     Cmd + [

Ricerca

  • aperto barra di ricerca
    Cmd + f
  • trova il prossimo
    Cmd + g

Ingresso a tutti i riquadri

  • ingresso a tutti i riquadri scheda corrente
    Cmd + Alt + i

Schermo pulito

  • tampone chiaro
    Cmd + k
  • linee chiare (comando bash)
    Ctrl + l

Zoom / Font Resize

  • Toggle massimizzare la finestra
     Cmd + Alt + =
  • passare a schermo intero
    Cmd + Enter
  • fare carattere più grande
    Cmd + +
  • fare carattere più piccolo
    Cmd + -

Gli amanti iTerm, Mi sono perso qualcosa fuori?

letsencrypt su Apache e Linux

questa è una piccola guida su come configurare letsencrypt su Apache e su linux

prima abbiamo bisogno di scaricare uno strumento letsencrypt e spostare la configurazione di esempio per la giusta posizione

cd / opt
git clone https://github.com/lukas2511/letsencrypt.sh
mkdir -p /etc/letsencrypt.sh
mkdir -p /var/www/letsencrypt.sh/
chown www-data:www-data /var/www/letsencrypt.sh
cp /opt/letsencrypt.sh/docs/examples/config /opt/letsencrypt.sh/config
cp /opt/letsencrypt.sh/docs/examples/domains.txt /opt/letsencrypt.sh/domains.txt

configurare il file di configurazione letsencrypt

/opt / letsencrypt.sh / config.sh

BASEDIR ="/etc / letsencrypt.sh /"
= wellKnown"/var / www / letsencrypt.sh /"
private_key ="${BASEDIR}/private_key.pem"
HOOK ="${BASEDIR}/hook.sh"
CONTACT_EMAIL ="my@mail.com"

 

configurare theletsencrypt alias per apache

/etc / apache2 / conf.d / letsencrypt

Alias ​​/.well-known/acme-challenge /var/www/letsencrypt.sh/
Opzioni Nessuno
AllowOverride None
Order consentire,negare
Consentire da tutto

configurare il file hook.sh per ricaricare la apache

/etc / letsencrypt.sh / hook.sh

#!/bin / bash

Se [ ${1} == "deploy_cert" ]; poi
eco " + gancio: Riavvio Apache ..."
/etc / init.d / apache2 reload
altro
eco " + gancio: Niente da fare..."
fi

cambiare il mod di questo file

chmod + x /opt/letsencrypt.sh/hook.sh

configurare il file del dominio

/opt / letsencrypt.sh / domini

www.mosandl.eu
storage.mosandl.eu

eseguire letsencrypt

/opt / letsencrypt.sh / -c disidratato

creare un crontjob che i certs verranno generati ogni settimana

1  1	* * *	radice /opt/letsencrypt.sh/dehydrated -c

vhost

Su SSLEngine
SSLCertificateFile /etc/letsencrypt.sh/certs/storage.mosandl.eu/cert.pem
SSLCertificateKeyFile /etc/letsencrypt.sh/certs/storage.mosandl.eu/privkey.pem
SSLCertificateChainFile /etc/letsencrypt.sh/certs/storage.mosandl.eu/chain.pem
SSLCACertificateFile /etc/letsencrypt.sh/certs/storage.mosandl.eu/fullchain.pem
Su SSLHonorCipherOrder
SSLCipherSuite ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384

riscrive

RewriteEngine On
RewriteCond %{REQUEST_URI} !^ /. Ben noti
Alias ​​/.well-known/acme-challenge /var/www/letsencrypt.sh/
RewriteCond %{HTTPS} != on
RewriteRule ^ /?(.*) https://%{NOME DEL SERVER}/$1 [R,L]

passaggio delega

ProxyPass /.well-known !
Alias ​​/.well-known/acme-challenge /var/www/letsencrypt.sh/

Errori

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 --type = 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

NetworkManager.service stato systemctl

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:

[Unità]
Descrizione Service = Network Time

[Servizio]
ExecStart = / usr / bin / ntpd -n -u ntp:ntp -g

[Installare]
WantedBy = multi-user.target

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:

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

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:

systemd.unit = multi-user.target

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

systemctl isolare rescue.target

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:

systemctl spettacolo -p Wants multi-user.target

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:

Richiede = basic.target
Dopo = basic.target

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:

systemctl disable ntpd.service

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:

systemctl iniziare ntpd.service

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.log_target = kmsg systemd.log_level = di debug

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

systemctl kexec


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:

systemctl uccidere --signal = USR1 rsyslogd.service

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:

systemd-analyze plot > plot.svg

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

Riavviare il modo magico

Se avete mai avuto guasti del disco fisso su un server remoto si può ricordare la sensazione che si ha dopo aver tentato di eseguire i seguenti comandi:

    # reboot
    bash: /sbin/reboot: Input/output error
    # shutdown -r now
    bash: /sbin/shutdown: Input/output error

Ovviamente, c'è un problema con l'unità. Questi comandi stanno fallendo perché il kernel non è in grado di caricare il /sbin/reboot e /sbin/shutdown binari del disco in modo che si possa eseguire.

Un fsck al successivo avvio potrebbe essere in grado di correggere ciò che è sbagliato con il disco, ma in primo luogo è necessario per ottenere il riavvio del sistema. Se la macchina si trova a un provider di hosting gestito, allora si potrebbe inviare un biglietto di riavvio, ma dovrete aspettare che qualcuno che si prenda la responsabilità.

Non sarebbe bello se ci fosse un modo per chiedere al kernel di riavviare senza dover accedere all'unità in mancanza? Bene, c'è un modo, ed è molto semplice.

Il “chiave magica SysRq” fornisce un modo per inviare comandi direttamente al kernel attraverso il filesystem / proc. E 'abilitato tramite una opzione di compilazione del kernel, CONFIG_MAGIC_SYSRQ, che sembra essere standard sulla maggior parte delle distribuzioni. In primo luogo è necessario attivare l'opzione magia SysRq:

eco 1 > /proc/sys/kernel/sysrq

Quando si è pronti a riavviare la macchina semplicemente eseguire il seguente:

echo b > /proc/sysrq-trigger

Questo non tenta di smontare o file system di sincronizzazione, quindi dovrebbe essere usato solo quando è assolutamente necessario, ma se l'unità è già fallendo poi che non può essere una preoccupazione.

In aggiunta al riavvio del sistema il trucco sysrq può essere utilizzato per scaricare informazioni sulla memoria alla console, sincronizzare tutti i file system, rimontare tutti i file system in sola lettura in modalità, inviare SIGTERM o SIGKILL a tutti i processi, tranne init, o spegnere la macchina del tutto, tra le altre cose.

Anche, invece di eco in /proc/sys/kernel/sysrq ogni volta che è possibile attivare la chiave magica SysRq al momento del boot del sistema usando sysctl, dove supportato:

eco "kernel.sysrq = 1" >> /etc/sysctl.conf

Se volete saperne di più su SysRq magia si può leggere il sysrq.txt depositare nella documentazione del kernel.

azioni mappa di server oltre sshfs

Installazione su Debian

apt-get install sshfs
mkdir /media/xxx
ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa.pub username@xxx.com

VI /etc/rc.local (questo file verrà eseguito dopo rete è abilitata)

sshfs -o allow_other xxx@xxx:/var/www/ /media/xxx
sshfs -o allow_other xxx@xxx:/var/www/ /media/xxx1