Grundlegende Befehle auf der Kommandozeile: Unterschied zwischen den Versionen

Aus
Zeile 80: Zeile 80:


=== Dateien ===
=== Dateien ===
===Eine Datei suchen===
====Eine Datei suchen====
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
|-
|-
Zeile 87: Zeile 87:
|}
|}


===Löschen einer Datei===
====Löschen einer Datei====
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
|-
|-
Zeile 94: Zeile 94:
|}
|}


===Löschen eines Verzeichnisses mit Inhalt===
====Löschen eines Verzeichnisses mit Inhalt====
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
|-
|-
Zeile 102: Zeile 102:
*Achtung: nur mit größter Vorsicht verwenden
*Achtung: nur mit größter Vorsicht verwenden


===Umbenennen oder Verschieben einer Datei===
====Umbenennen oder Verschieben einer Datei====
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
|-
|-
Zeile 109: Zeile 109:
|}
|}


===Datei kopieren===
====Datei kopieren====
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
|-
|-
Zeile 116: Zeile 116:
|}
|}


===Mehrere Dateien kopieren===
====Mehrere Dateien kopieren====
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
|-
|-
Zeile 129: Zeile 129:
|}
|}


===Ein Verzeichnis mit Unterverzeichnissen kopieren===
====Ein Verzeichnis mit Unterverzeichnissen kopieren====
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
|-
|-
Zeile 136: Zeile 136:
|}
|}


===Ein nicht-komprimiertes tar-Archiv (.tar) erstellen===
=== tar-Archive (.tar) ===
====Ein nicht-komprimiertes tar-Archiv (.tar) erstellen====
Erstellt ein nicht-komprimiertes tar-Archiv aller Dateien und Unterverzeichnisse im aktuellen Verzeichnis:
Erstellt ein nicht-komprimiertes tar-Archiv aller Dateien und Unterverzeichnisse im aktuellen Verzeichnis:
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
Zeile 144: Zeile 145:
|}
|}


===Ein komprimiertes tar-Archiv (.tgz) erstellen===
====Ein komprimiertes tar-Archiv (.tgz) erstellen====
Erstellt ein komprimiertes tar-Archiv aller Dateien und Unterverzeichnisse im aktuellen Verzeichnis:
Erstellt ein komprimiertes tar-Archiv aller Dateien und Unterverzeichnisse im aktuellen Verzeichnis:
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"
Zeile 152: Zeile 153:
|}
|}


===.tar Archive entpacken===
====.tar Archive entpacken====
Für nicht-komprimierte .tar Archive:
Für nicht-komprimierte .tar Archive:
{| border="0" cellpadding="0" style="text-align:left"
{| border="0" cellpadding="0" style="text-align:left"

Version vom 8. Juni 2015, 13:27 Uhr

Vorbemerkung

Wenn man sich z. B. über Telnet in der Kommandozeile der DiskStation befindet, kann man mit folgenden Befehlen grundlegende Funktionen ausführen.

Normalerweise kann man die Bearbeitung der Befehle mit Strg+C abbrechen.

Sicherheitshinweis zu TELNET und FTP

Telnet ist OK, solange man sich im eigenen Intranet befindet, wenn man sich jedoch aus einem anderen Netzwerk einloggen will sollte man den sicheren SSH Dienst (Port 22) nutzen, bzw. FTPES. Unverschlüsselte Protokolle wie FTP und Telnet sowie deren Ports, Port 20,21 (ftp) und Port 23 (telnet) sollten NIE von außen sichtbar sein. Ausser man setzt FTPES ein, welches die Firmware im Gegensatz zu SFTP (FTP via SSH) von Hause aus bietet

Ein schlauer Zug ist es in der SSH config den Port zu verlegen, z.B. auf einen sehr hohen Port, wie 22022 (soweit scannt dann kein Portscanner mehr). Das Problem ist nur dass Synology euch gnadenlos die Einstellung nach jedem Update wieder auf 22 setzen wird. Warum Synology das tut ist mir bis heute ein Rätsel.

Wichtiger als der Port von SSH ist es ein sicheres Passwort zu haben oder gleich nur Zertifikats-Login zuzulassen!

Midnight Commander

Kommandozeile Bearbeitung macht man am besten mit dem Midnight Commander, einer Norton Commander klone.
Installation per 'ipkg install mc'.
Er enthält 2 Wichtige Komponenten:

  1. Das Hauptprogramm, als eine Art Verzeichnis Explorer. Man startet Midnight Commander mit dem Befehl:
mc -c
  1. Der Midnight Editor, als Alternative zum vi (vollster Respekt, und tiefste Verbeugung vor vi :q!)
mcedit /pfad/zu/datei

Dateiverwaltung

Verzeichnisse

In ein Verzeichnis wechseln

cd /directoryName

Wo befinde ich mich?

pwd

Verzeichnis erstellen

mkdir /directoryName

Verzeichnis anzeigen

dir
bzw.
ls

Größe eines Verzeichnisses mit Unterverzeichnissen anzeigen

du -ah /path/to/dir

Anzahl der Dateien eines Verzeichnisses mit Unterverzeichnissen anzeigen

find /path/to/dir -type f | wc -l

find listet alle Files auf (- type f), der Output wird in den wc geschickt, der mit -l die Zeilen zählt. Ausgegeben wird nur die Anzahl der Files.

Dateien

Eine Datei suchen

find / -name fileName

Löschen einer Datei

rm fileName

Löschen eines Verzeichnisses mit Inhalt

rm -r directoryName
  • Achtung: nur mit größter Vorsicht verwenden

Umbenennen oder Verschieben einer Datei

mv /sourceDirectory/sourceFile /destination

Datei kopieren

cp /sourceDirectory/sourceFile /destination

Mehrere Dateien kopieren

cp /sourceDirectory/*.* /destination

stand 2011 lautet der Befehl:

cp /sourceDirectory/* /destination

Ein Verzeichnis mit Unterverzeichnissen kopieren

cp -r -p /sourceDirectory /destinationpath

tar-Archive (.tar)

Ein nicht-komprimiertes tar-Archiv (.tar) erstellen

Erstellt ein nicht-komprimiertes tar-Archiv aller Dateien und Unterverzeichnisse im aktuellen Verzeichnis:

tar -cvf archivefilename.tar *

Ein komprimiertes tar-Archiv (.tgz) erstellen

Erstellt ein komprimiertes tar-Archiv aller Dateien und Unterverzeichnisse im aktuellen Verzeichnis:

tar -cvzf archivefilename.tgz *

.tar Archive entpacken

Für nicht-komprimierte .tar Archive:

tar xvf file.tar

Für gzip komprimierte .tar.gz (oder .tgz) Archive:

tar xvzf file.tar.gz

System Verwaltung

Neustart der Synology Station

reboot

Herunterfahren der Synology Station

poweroff

Einen Prozess beenden

kill processID

Ein Programm beenden

killall programName

Aktuell laufende Prozesse anzeigen

top

Alle Prozesse anzeigen

ps -w

Sich das System-Logbuch anschauen

more /var/log/messages

Und wenn man das dynamisch haben will, quasi um eine log in realtime zu verfolgen

tail -f /var/log/messages

Sich das System-Start-Logbuch anschauen

dmesg | more

Ein IPKG-Programm suchen

ipkg list fileName

der Befehl "list" such nach einem genauen Pattern. Deswegen empfiehlt sich :

ipkg list *fileName*

Ein IPKG-Programm installieren

Voraussetzung dafür ist eine Installation von IPKG selbst

ipkg install fileName

grundsätzlich davor immer ipkg update

Ein IPKG-Programm deinstallieren

ipkg remove filename

Dienste neu starten

Diese Seite ist unvollständig oder wird noch erstellt.

Notizen: Ab DSM 5 werden User-Dienste wohl mit synoservicectl --restart <Dienst> neugestartet. Sollte verifiziert und überarbeitet werden.--EL Duderino 00:25, 11. Apr. 2014 (CEST)

apache

Ab DSM 5 mit

synoservicectl --restart httpd-user

Für ältere DSM-Versionen:

/usr/syno/etc/rc.d/S97apache-user.sh restart

zur Kompatibilität mit anderen LINUX-en kann man sich einen kleinen Script basteln der dann auf apachectl [start|restart|stop] hört, und der dann auch in der $PATH ist.
(dazu einfach auf der Konsole als root folgende Befehle nacheinander eingeben.)

touch /usr/local/bin/apachectl
echo "#!/bin/sh">/usr/local/bin/apachectl
echo '/usr/syno/etc/rc.d/S97apache-user.sh $1'>>/usr/local/bin/apachectl
chmod 755 /usr/local/bin/apachectl

danach kann man den Webserver wie gewohnt mit apachectl [start|restart|stop] steuern

appletalk

/usr/syno/etc/rc.d/S81atalk.sh restart

cron

/usr/syno/etc/rc.d/S04crond.sh stop
/usr/syno/etc/rc.d/S04crond.sh start

oder

ps |grep crond|grep -v grep|awk '{print $1}'|xargs kill -HUP

ftp

/usr/syno/etc/rc.d/S99ftpd.sh restart

index

/usr/syno/etc/rc.d/S66synoindexd.sh restart

iTunes

/usr/syno/etc/rc.d/S99iTunes.sh restart


ldap

/usr/syno/etc/rc.d/S10slapd.sh restart

zur Kompatibilität mit anderen LINUX-en kann man sich einen kleinen Script basteln der dann auf ldapctl [start|restart|stop] hört, und der dann auch in der $PATH ist.
(dazu einfach auf der Konsole als root folgende Befehle nacheinander eingeben.)

touch /usr/sbin/ldapctl
echo "#!/bin/sh">/usr/sbin/ldapctl
echo "/usr/syno/etc/rc.d/S10slapd.sh \$1">>/usr/sbin/ldapctl
chmod 755 /usr/sbin/ldapctl

danach kann man den LDAP Server wie gewohnt mit ldapctl [start|restart|stop] steuern

mysql

DSM < 5.0:

/usr/syno/etc/rc.d/S21mysql.sh restart

DSM ≥ 5.0:

/usr/share/mysql/mysql.server restart

nfs

/usr/syno/etc/rc.d/S83nfsd.sh restart

postgresql

/usr/syno/etc/rc.d/S20pgsql.sh restart

samba

/usr/syno/etc/rc.d/S80Samba.sh restart

SSH

/usr/syno/etc.defaults/rc.d/S95sshd.sh restart

VPN Client

poff -a
pppd file /etc/ppp/peers/connect_*

Benötigt > DSM 4.0 und das Webinterface zeigt leider nicht an, dass man eine VPN Verbindung benutzt.

System Informationen

Systemspeicher

cat /proc/meminfo

CPU Infos

cat /proc/cpuinfo

Verwendete Interrupts

cat /proc/interrupts

Verwendete Dateisysteme

cat /proc/filesystems

Linux Version

cat /proc/version

Geräte

cat /proc/mdstat

Umgebungsvariabeln

env

Physische und logische Partitionen

Für Systeme mit mehreren Laufwerken und erweiterte Infos
cat /proc/diskstats

oder für alle Systeme

cat /proc/partitions

Sonstiges

Terminal/Konsole Bildschirm löschen

clear

Einen Dump in eine Datenbank importieren

/usr/syno/mysql/bin/mysql --user=root --password=mein-pw meine-db < /volume1/dir/mein-dump.sql

mein-pw, meine-db und mein-dump sind dabei entprechend zu ersetzen. Wenn der Dump utf-8-kodiert ist, kann ein zusätzliches --default-character-set=utf8 notwendig sein.

Unnötige Dienste stoppen

Konvertierung der Bilder stoppen (convert)

Bremst stark das Kopieren der großen Datenmengen und verbraucht Arbeitsspeicher auch wenn Photostation abgeschaltet ist.

/usr/syno/etc/rc.d/S77synomkthumbd.sh stop