... | ... | @@ -22,14 +22,19 @@ Es kann vorkommen, wenn auch sehr selten und dann immer mit Ankündigung per E-M |
|
|
|
|
|
Dazu öffnet man seine persönliche `cron`-Tabelle:
|
|
|
|
|
|
$ crontab -e
|
|
|
```bash
|
|
|
$ crontab -e
|
|
|
```
|
|
|
|
|
|
Danach trägt man die gewünschten Befehle, welche die Server starten mit dem Prefix `@reboot` in die Datei ein. Hier ist ein Beispiel für den lokalen nginx-Server und PHP-FPM:
|
|
|
|
|
|
# Start the web server and related FastCGI process manager automatically
|
|
|
# after the system has booted.
|
|
|
@reboot ~/bin/php5-fpm start; ~/bin/nginx
|
|
|
```bash
|
|
|
# Start the web server and related FastCGI process manager automatically
|
|
|
# after the system has booted.
|
|
|
@reboot $HOME/bin/php5-fpm start; $HOME/bin/nginx
|
|
|
```
|
|
|
|
|
|
Bei cronjobs kann man nicht davon ausgehen, dass die gleiche Bash-Umgebung wie bei einem SSH-Login geladen wird. Deshalb sollten Pfade möglichst komplett angegeben werden.
|
|
|
|
|
|
Lokales ~/run Verzeichnis als tmpfs
|
|
|
-----------------------------------
|
... | ... | @@ -41,42 +46,58 @@ Um das Dateisystem für den lokalen `~/run` Ordner zu verwenden macht man folgen |
|
|
|
|
|
Als erstes stopt man alle Prozesse, welche auf das `~/run` Verzeichnis und dessen Dateien zugreifen:
|
|
|
|
|
|
$ nginx -s stop
|
|
|
$ php5-fpm stop
|
|
|
```bash
|
|
|
$ nginx -s stop
|
|
|
$ php5-fpm stop
|
|
|
```
|
|
|
|
|
|
Danach löscht man das Verzeichnis:
|
|
|
|
|
|
$ rmdir ~/run
|
|
|
```bash
|
|
|
$ rmdir ~/run
|
|
|
```
|
|
|
|
|
|
Sollte das Verzeichnis nicht leer sein, vergiewissert man sich, welche Dateien und Verzeichnisse noch vorhanden sind und wägt ab, ob diese gelöscht werden können. Wenn ja, kann man das Verzeichnis mit folgendem Befehl rekursiv löschen:
|
|
|
|
|
|
$ rm -R ~/run
|
|
|
```bash
|
|
|
$ rm -R ~/run
|
|
|
```
|
|
|
|
|
|
Jetzt legt man einen eigenen eigenen Ordner im globalen `tmpfs` an. Dabei ist darauf zu achten, dass am besten nur selbst Schreib- und Leserechte hat und anderen den Zugriff verbietet:
|
|
|
|
|
|
$ mkdir -p /run/shm/$USER/run
|
|
|
```bash
|
|
|
$ mkdir -p /run/shm/$USER/run
|
|
|
```
|
|
|
|
|
|
Danach erstellt man einen Symlink im eigenen Home-Verzeichnis auf das gerade angelegt Verzeichnis
|
|
|
|
|
|
$ ln -s /run/shm/$USER/run ~/run
|
|
|
```bash
|
|
|
$ ln -s /run/shm/$USER/run ~/run
|
|
|
```
|
|
|
|
|
|
Jetzt kann man alle Server und Pozess Manager wieder starten
|
|
|
|
|
|
$ nginx
|
|
|
$ php5-fpm start
|
|
|
```bash
|
|
|
$ nginx
|
|
|
$ php5-fpm start
|
|
|
```
|
|
|
|
|
|
### Verzeichnis nach einem Neustart autoatmisch anlegen
|
|
|
Nach einem Neustart existiert das angelegt Verzeichnis im globalen tmpfs nicht mehr. Daher müsste es nach jedem Neustart wieder angelegt werden, *bevor* man den Web Server startet. Auch das kann man wieder durch einen `cron`-Job Automatisieren:
|
|
|
|
|
|
$ cron -e
|
|
|
```bash
|
|
|
$ cron -e
|
|
|
```
|
|
|
|
|
|
und trägt folgenden Job ein. Sollte man bereits den Web Server und Prozess Manager autoatmisch starten, muss dieser Job *vor* dem Starten des servers angelegt werden. `<username>` ist hierbei durch den eigenen Username zu ersetzen.
|
|
|
|
|
|
# Create the user ~/run directory inside the system-wide tmpfs.
|
|
|
# ~/run is a symlink to this directory. We do this because the
|
|
|
# information inside this directory are volatile.
|
|
|
#
|
|
|
# Note:
|
|
|
# We do not need to execute umask 0027 before the mkdir command, because
|
|
|
# 0027 is the default setting on Thorin
|
|
|
@reboot mkdir --parents /run/shm/<username>/run |
|
|
\ No newline at end of file |
|
|
```bash
|
|
|
# Create the user ~/run directory inside the system-wide tmpfs.
|
|
|
# ~/run is a symlink to this directory. We do this because the
|
|
|
# information inside this directory are volatile.
|
|
|
#
|
|
|
# Note:
|
|
|
# We do not need to execute umask 0027 before the mkdir command, because
|
|
|
# 0027 is the default setting on Thorin
|
|
|
@reboot mkdir --parents /run/shm/<username>/run; <other commands>
|
|
|
``` |
|
|
\ No newline at end of file |