SSH Befehle: Unterschied zwischen den Versionen
| (44 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
[[Category:SSH]] | |||
=Dienste und Prozesse= | =Dienste und Prozesse= | ||
===Calculates the total CPU usage percentage of all running processes=== | |||
<code>ps aux | awk '{sum+=$3}; END{print "Total CPU usage:"; print sum}'</code> | |||
===Show top 10 processes sorted by memory usage=== | |||
<code>ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head</code> | |||
===System Usage & Resource Consumption=== | |||
<code>while true | |||
do | |||
clear | |||
echo "====== System Usage & Resource Consumption ======" | |||
echo "CPU Usage" | |||
echo "------------------------------------------------" | |||
top -b -n1 | head -10 | |||
echo " " | |||
echo "Free Memory" | |||
echo "------------------------------------------------" | |||
free -h | |||
echo " " | |||
echo "Disk Usage" | |||
echo "------------------------------------------------" | |||
df -h | |||
sleep 5 | |||
done</code> | |||
===Dienste neustarten=== | ===Dienste neustarten=== | ||
;zum Neustarten kopiere eine Zeile und füge diese auf der Shell ein (ohne Klammern) weitere Optionen statt ''restart'' wären z.B. ''stop'' und ''start'' | ;zum Neustarten kopiere eine Zeile und füge diese auf der Shell ein (ohne Klammern) weitere Optionen statt ''restart'' wären z.B. ''stop'' und ''start'' | ||
====OPEN VPN Dienst neustarten==== | ====OPEN VPN Dienst neustarten==== | ||
<code>/etc/init.d/openvpnas restart</code> | :<code>/etc/init.d/openvpnas restart</code> | ||
====HTTP/Webserver/Apache==== | ====HTTP/Webserver/Apache==== | ||
<code>service httpd restart</code> | :<code>service httpd restart</code> | ||
====HTTP/Webserver/Nginx==== | ====HTTP/Webserver/Nginx==== | ||
<code>service nginx | :<code>service nginx restart</code> | ||
====FTP==== | ====FTP==== | ||
<code>service xinetd restart</code> | :<code>service xinetd restart</code> | ||
====Datenbank/Sql/MariaDB==== | |||
:<code>service mariadb restart</code> | |||
:<code>service mysqld restart</code> | |||
====Authentifzierung Posteingang==== | ====Authentifzierung Posteingang==== | ||
<code>service courier-authdaemon restart</code> | :<code>service courier-authdaemon restart</code> | ||
====Authentifizierung Postausgang==== | ====Authentifizierung Postausgang==== | ||
<code>service saslauthd restart</code> | :<code>service saslauthd restart</code> | ||
====Postfix/Postausgang==== | |||
:Wenn der Maildienst komplett neu gestartet werden soll, dann am Besten immer Postfix und auch die folgenden 4 Dienste neu starten | |||
:<code>service postfix restart</code> | |||
:<code>service postfix restart && service courier-imapd restart && service courier-imaps restart && service courier-pop3d restart && service courier-pop3s restart</code> | |||
====IMAP ohne SSL==== | ====IMAP ohne SSL==== | ||
<code>service courier-imapd restart</code> | :<code>service courier-imapd restart</code> | ||
====IMAP mit SSL==== | ====IMAP mit SSL==== | ||
<code>service courier-imaps restart</code> | :<code>service courier-imaps restart</code> | ||
====POP3 ohne SSL==== | ====POP3 ohne SSL==== | ||
<code>service courier-pop3d restart</code> | :<code>service courier-pop3d restart</code> | ||
====POP3 mit SSL==== | ====POP3 mit SSL==== | ||
<code>service courier-pop3s restart</code> | :<code>service courier-pop3s restart</code> | ||
====Cronjobs==== | ====Cronjobs==== | ||
<code>service crond restart</code> | :<code>service crond restart</code> | ||
====Netzwerkverbindungen==== | ====Netzwerkverbindungen==== | ||
<code>service network restart</code> | :<code>service network restart</code> | ||
====Zabbix Agenten neustart==== | |||
:<code>service zabbix-agent restart</code> | |||
====Plesk==== | ====Plesk==== | ||
<code>service psa restart</code> | :<code>service psa restart</code> | ||
====Plesk-Dienst==== | ====Plesk-Dienst==== | ||
<code>service sw-cp-server restart</code> | :<code>service sw-cp-server restart</code> | ||
====Plesk-Dienst==== | ====Plesk-Dienst==== | ||
<code>service sw-engine restart</code> | :<code>service sw-engine restart</code> | ||
===Dr. Web Virusdatenbank manuell updaten=== | |||
:<code>/opt/drweb/update.pl</code> | |||
===laufende Prozesse/Dienste einsehen=== | ===laufende Prozesse/Dienste einsehen=== | ||
<code>htop</code> oder <code>top</code> | :<code>htop</code> oder <code>top</code> (zeigt auch die RAM und CPU Auslastung an) | ||
<code>ps auxf</code> | :<code>ps auxf</code> | ||
:<code>free -m</code> (zeigt den aktuell tatsächlich freien Arbeitsspeicher an) | |||
===E-Mail versenden via SSH=== | |||
<code>echo "MAILTEXT" | mail -s "BETREFF" EMPFÄNGERADRESSE</code> | |||
===Server-Status bei den Plesk-Servern öffnen=== | ===Server-Status bei den Plesk-Servern öffnen=== | ||
<code>lynx --dump --width 200 -auth=monitor:MsdorRf2p3f http://localhost:7080/server-status | less</code> | <code>lynx --dump --width 200 -auth=monitor:MsdorRf2p3f <nowiki>http://localhost:7080/server-status</nowiki> | less</code> | ||
===Plesk_AdminPasswort ändern=== | |||
<code>plesk bin admin --set-admin-password -passwd '*****'</code> | |||
===Speicherplatz einzelner Accounts neu berechnen=== | |||
<code>/usr/local/psa/admin/sbin/statistics --calculate-one --domain-name=name.wwwXX.hostkraft.de</code> | |||
===Speicherplatz aller Abo´s neu berechnen=== | |||
<code>/usr/local/psa/admin/sbin/statistics –calculate-all</code> | |||
===Webstats für Domain entfernen=== | |||
<code>plesk bin domain --update example.com -webstat none</code> | |||
=Alles rund um Dateien= | =Alles rund um Dateien= | ||
| Zeile 48: | Zeile 96: | ||
<code>find /var/www/vhosts/andreaswehner.www81.hostkraft.de/httpdocs/logfiles -type f -name "error*.*.log.gz" -print0 | xargs -0 rm</code> | <code>find /var/www/vhosts/andreaswehner.www81.hostkraft.de/httpdocs/logfiles -type f -name "error*.*.log.gz" -print0 | xargs -0 rm</code> | ||
===Rechte/Ordner und Dateien Testshops richtig zuweisen bei fehler 404 Permissions denied....=== | ===Rechte/Ordner und Dateien Testshops richtig zuweisen bei fehler 404 Permissions denied....=== | ||
<code>find /var/www/vhosts/marcusklopp.www72.hostkraft.de/httpdocs/ -type f -print0 | xargs -0 chmod 644</code> | :<code>find /var/www/vhosts/marcusklopp.www72.hostkraft.de/httpdocs/ -type f -print0 | xargs -0 chmod 644</code> | ||
<code>find /var/www/vhosts/marcusklopp.www72.hostkraft.de/httpdocs/ -type d -print0 | xargs -0 chmod 755</code> | :<code>find /var/www/vhosts/marcusklopp.www72.hostkraft.de/httpdocs/ -type d -print0 | xargs -0 chmod 755</code> | ||
===Größe von Dateien und Ordner berechnen=== | ===Größe von Dateien und Ordner berechnen=== | ||
<code>du -h --max-depth=1</code> | <code>du -h --max-depth=1</code> | ||
===Verzeichnisgröße berechnen=== | |||
<code>du -sch /var</code> | |||
===Daten via SSH von Shared auf anderen Shared verschieben=== | ===Daten via SSH von Shared auf anderen Shared verschieben=== | ||
<code>rsync -arvuP -e ssh /var/www/vhosts/#########/httpdocs/gx2/ root@www##. | <code>rsync -arvuP -e ssh /var/www/vhosts/#########/httpdocs/gx2/ root@www##.hostingprimus.de:/var/www/vhosts/#############/httpdocs/gx2</code> | ||
:Im Anschluss Benutzer anpassen: | :Im Anschluss Benutzer anpassen: | ||
<code>find /var/www/vhosts/#####.www####.hostkraft.de/ -type f -exec ls -la --full-time {} \;|grep "2015-07-02 17:35"</code> | <code>find /var/www/vhosts/#####.www####.hostkraft.de/ -type f -exec ls -la --full-time {} \;|grep "2015-07-02 17:35"</code> | ||
===Dateien zählen=== | ===Dateien zählen=== | ||
<code>cd /var/www/vhosts/sebastianmeier.www70.hostkraft.de/httpdocs/ && for i in `ls -a -1`; do echo "$i: `find $i|wc -l`"; done | sort -n -k2</code> | <code>cd /var/www/vhosts/sebastianmeier.www70.hostkraft.de/httpdocs/ && for i in `ls -a -1`; do echo "$i: `find $i|wc -l`"; done | sort -n -k2</code> | ||
===neue Zeile am Ende der Datei einfügen ---> $a muss bestehen bleiben!=== | ===neue Zeile am Ende der Datei einfügen ---> $a muss bestehen bleiben!=== | ||
<code>sed -i '$aNeue Zeile' /root/inodes.txt</code> | <code>sed -i '$aNeue Zeile' /root/inodes.txt</code> | ||
===Zeichen aus der Anzeige einer Datei ausschließen=== | |||
Konfigurationsdateien können so ohne die lästigen Hinweise angezeigt werden. So dass man nur die tatsächlichen Parameter angezeigt bekommt.<br> | |||
Allerdings dann auch ohne die auskommentierten Zeilen. Also immer schön prüfen. | |||
:<code>cat /etc/zabbix/zabbix_proxy.conf |grep -v "^#$"</code> | |||
:<code>cat /etc/zabbix/zabbix_proxy.conf |grep -v "#"</code> | |||
=Alles rund um Datenbanken= | =Alles rund um Datenbanken= | ||
===Db Dump via SSH=== | ===Db Dump via SSH=== | ||
mysqldump -uadmin -p`cat /etc/psa/.psa.shadow` hierdbname > /var/www/vhosts/hierdiedomain/httpdocs/hierderneuedbname.sql</code> | <code>mysqldump -uadmin -p`cat /etc/psa/.psa.shadow` hierdbname > /var/www/vhosts/hierdiedomain/httpdocs/hierderneuedbname.sql</code> | ||
===Datenbank kopieren=== | ===Datenbank kopieren=== | ||
| Zeile 73: | Zeile 130: | ||
===alte, entpackte Datenbank löschen=== | ===alte, entpackte Datenbank löschen=== | ||
<code>rm -f tmp/####.sql</code> | <code>rm -f tmp/####.sql</code> | ||
==Arbeiten auf dem Datenbankserver via SSH== | |||
Im Prinzip muss man nicht häufig via SSH auf den Datenbankserver zugreifen, da wir dies zumeist bequem über Plesk lösen. Jedoch gibt es die Möglichkeit, hier schnell und gezielt Informationen zu erhalten oder umzusetzen. | |||
===Öffnen einer Sitzung:=== | |||
<code>plesk db</code> | |||
:Ausgabe: | |||
::''Welcome to the MariaDB monitor. Commands end with ; or \g.'' | |||
::''Your MariaDB connection id is 489180'' | |||
::''Server version: 10.2.26-MariaDB MariaDB Server'' | |||
::''Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.'' | |||
::''Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.'' | |||
;Innerhalb der Datenbanksitzung ändert sich die Eingabeaufforderung zu folgender Ansicht: | |||
:MariaDB [psa]> | |||
===Ein einfacher Befehl könnte nun z.B. lauten:=== | |||
Alle Datenbanken auf dem Server auflisten | |||
:MariaDB [psa]> <code>show databases;</code> | |||
Beachte: der Befehl wird mit einem Semikolon (;) beendet | |||
===Ein etwas komplexerer Befehl zum Anzeigen bestimmter Parameter=== | |||
Auflisten aller verwendeter SQL Modi | |||
:MariaDB [psa]> <code>SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE;</code> | |||
===Beenden der Datenbanksitzung=== | |||
:MariaDB [psa]> <code>exit</code> | |||
=Alles rund um LOGS= | =Alles rund um LOGS= | ||
===Wo sind welche Logs=== | |||
;Maillog | |||
:<code>cat /var/log/maillog | grep postfach@domain.tld</code> | |||
;Ftplog - Logins | |||
:<code>cat /var/log/secure | grep ftpuser</code> | |||
;Ftplog - Transfer | |||
:<code>cat /var/log/plesk/xferlog | grep ftpuser</code> | |||
===Logging Reparieren=== | |||
;Sofern div. Prozesse / Befehle ( screen/weget/usw )nicht ordnungsgemäß durchlaufen. | |||
:<code>rm -rf /var/log/journal/*</code> | |||
:nach dem Löschen ist ein <code>reboot</code> unumgänglich | |||
===LOG Live überprüfen=== | |||
:<code>watch 'tail -n 20 /var/log/maillog'</code> | |||
===FTP Log überprüfen=== | ===FTP Log überprüfen=== | ||
<code>cat /var/log/secure | grep hierderuser</code> | :<code>cat /var/log/secure | grep hierderuser</code> | ||
===Zugriffe von Bots sortieren=== | ===Zugriffe von Bots sortieren=== | ||
<code>cat /var/www/vhosts/system''/hierdiedomain''/logs/access_log.processed | grep bot | awk -F\" '{print $6}' | sort | uniq -c | sort -n</code> | :<code>cat /var/www/vhosts/system''/hierdiedomain''/logs/access_log.processed | grep bot | awk -F\" '{print $6}' | sort | uniq -c | sort -n</code> | ||
===Ordner für Statistiken neu anlegen=== | |||
:<code>/usr/local/psa/admin/sbin/relink-vhost-logs --domain-name andreaskaser.wwwXX.hostkraft.de --sys-user-login andreaskaser --create</code> | |||
=Nützliches= | |||
===Farbe der SSH Sitzung ändern=== | |||
;<code>printf '\e[38;5;34m Foreground color: green\n'</code> | |||
; | |||
===Passwörter von Postfächern auslesen=== | |||
;<code>/usr/local/psa/admin/bin/mail_auth_view | grep 'domain.tld'</code> | |||
==IP auslesen aus mehrfacher Anzeige== | |||
;<code>ip a | grep "venet0:0" | awk '{print $4}'</code> | |||
:"ip a" als Grundbefehl , "grep" auf den zutreffensten Ausdruck der jeweilgen Zeile , "awk" hier auf den 4 Asudruck den geGREPten Zeile | |||
Aktuelle Version vom 19. Dezember 2023, 23:18 Uhr
Dienste und Prozesse
Calculates the total CPU usage percentage of all running processes
ps aux | awk '{sum+=$3}; END{print "Total CPU usage:"; print sum}'
Show top 10 processes sorted by memory usage
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
System Usage & Resource Consumption
while true
do
clear
echo "====== System Usage & Resource Consumption ======"
echo "CPU Usage"
echo "------------------------------------------------"
top -b -n1 | head -10
echo " "
echo "Free Memory"
echo "------------------------------------------------"
free -h
echo " "
echo "Disk Usage"
echo "------------------------------------------------"
df -h
sleep 5
done
Dienste neustarten
- zum Neustarten kopiere eine Zeile und füge diese auf der Shell ein (ohne Klammern) weitere Optionen statt restart wären z.B. stop und start
OPEN VPN Dienst neustarten
/etc/init.d/openvpnas restart
HTTP/Webserver/Apache
service httpd restart
HTTP/Webserver/Nginx
service nginx restart
FTP
service xinetd restart
Datenbank/Sql/MariaDB
service mariadb restartservice mysqld restart
Authentifzierung Posteingang
service courier-authdaemon restart
Authentifizierung Postausgang
service saslauthd restart
Postfix/Postausgang
- Wenn der Maildienst komplett neu gestartet werden soll, dann am Besten immer Postfix und auch die folgenden 4 Dienste neu starten
service postfix restartservice postfix restart && service courier-imapd restart && service courier-imaps restart && service courier-pop3d restart && service courier-pop3s restart
IMAP ohne SSL
service courier-imapd restart
IMAP mit SSL
service courier-imaps restart
POP3 ohne SSL
service courier-pop3d restart
POP3 mit SSL
service courier-pop3s restart
Cronjobs
service crond restart
Netzwerkverbindungen
service network restart
Zabbix Agenten neustart
service zabbix-agent restart
Plesk
service psa restart
Plesk-Dienst
service sw-cp-server restart
Plesk-Dienst
service sw-engine restart
Dr. Web Virusdatenbank manuell updaten
/opt/drweb/update.pl
laufende Prozesse/Dienste einsehen
htopodertop(zeigt auch die RAM und CPU Auslastung an)ps auxffree -m(zeigt den aktuell tatsächlich freien Arbeitsspeicher an)
E-Mail versenden via SSH
echo "MAILTEXT" | mail -s "BETREFF" EMPFÄNGERADRESSE
Server-Status bei den Plesk-Servern öffnen
lynx --dump --width 200 -auth=monitor:MsdorRf2p3f http://localhost:7080/server-status | less
Plesk_AdminPasswort ändern
plesk bin admin --set-admin-password -passwd '*****'
Speicherplatz einzelner Accounts neu berechnen
/usr/local/psa/admin/sbin/statistics --calculate-one --domain-name=name.wwwXX.hostkraft.de
Speicherplatz aller Abo´s neu berechnen
/usr/local/psa/admin/sbin/statistics –calculate-all
Webstats für Domain entfernen
plesk bin domain --update example.com -webstat none
Alles rund um Dateien
Wörter in Dateien finden und ausgeben lassen
find /var/www/vhosts/hierdiedomain/httpdocs/ -type f -print0 |xargs --null grep -i "h
Dateinamen auslesen
ls -la /var/www/vhosts/andreaswehner.www81.hostkraft.de/httpdocs/logfiles | less
Dateien löschen
find /var/www/vhosts/andreaswehner.www81.hostkraft.de/httpdocs/logfiles -type f -name "error*.*.log.gz" -print0 | xargs -0 rm
Rechte/Ordner und Dateien Testshops richtig zuweisen bei fehler 404 Permissions denied....
find /var/www/vhosts/marcusklopp.www72.hostkraft.de/httpdocs/ -type f -print0 | xargs -0 chmod 644find /var/www/vhosts/marcusklopp.www72.hostkraft.de/httpdocs/ -type d -print0 | xargs -0 chmod 755
Größe von Dateien und Ordner berechnen
du -h --max-depth=1
Verzeichnisgröße berechnen
du -sch /var
rsync -arvuP -e ssh /var/www/vhosts/#########/httpdocs/gx2/ root@www##.hostingprimus.de:/var/www/vhosts/#############/httpdocs/gx2
- Im Anschluss Benutzer anpassen:
find /var/www/vhosts/#####.www####.hostkraft.de/ -type f -exec ls -la --full-time {} \;|grep "2015-07-02 17:35"
Dateien zählen
cd /var/www/vhosts/sebastianmeier.www70.hostkraft.de/httpdocs/ && for i in `ls -a -1`; do echo "$i: `find $i|wc -l`"; done | sort -n -k2
neue Zeile am Ende der Datei einfügen ---> $a muss bestehen bleiben!
sed -i '$aNeue Zeile' /root/inodes.txt
Zeichen aus der Anzeige einer Datei ausschließen
Konfigurationsdateien können so ohne die lästigen Hinweise angezeigt werden. So dass man nur die tatsächlichen Parameter angezeigt bekommt.
Allerdings dann auch ohne die auskommentierten Zeilen. Also immer schön prüfen.
cat /etc/zabbix/zabbix_proxy.conf |grep -v "^#$"cat /etc/zabbix/zabbix_proxy.conf |grep -v "#"
Alles rund um Datenbanken
Db Dump via SSH
mysqldump -uadmin -p`cat /etc/psa/.psa.shadow` hierdbname > /var/www/vhosts/hierdiedomain/httpdocs/hierderneuedbname.sql
Datenbank kopieren
cp -a /mnt/var/lib/mysql-gzdumps/#####.sql.gz /tmp/ && gunzip /tmp/####.sql.gz
Datenbank wiederherstellen
mysql -uadmin -p`cat /etc/psa/.psa.shadow` ##### < /tmp/####.sql
alte, entpackte Datenbank löschen
rm -f tmp/####.sql
Arbeiten auf dem Datenbankserver via SSH
Im Prinzip muss man nicht häufig via SSH auf den Datenbankserver zugreifen, da wir dies zumeist bequem über Plesk lösen. Jedoch gibt es die Möglichkeit, hier schnell und gezielt Informationen zu erhalten oder umzusetzen.
Öffnen einer Sitzung:
plesk db
- Ausgabe:
- Welcome to the MariaDB monitor. Commands end with ; or \g.
- Your MariaDB connection id is 489180
- Server version: 10.2.26-MariaDB MariaDB Server
- Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
- Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
- Innerhalb der Datenbanksitzung ändert sich die Eingabeaufforderung zu folgender Ansicht
- MariaDB [psa]>
Ein einfacher Befehl könnte nun z.B. lauten:
Alle Datenbanken auf dem Server auflisten
- MariaDB [psa]>
show databases;
Beachte: der Befehl wird mit einem Semikolon (;) beendet
Ein etwas komplexerer Befehl zum Anzeigen bestimmter Parameter
Auflisten aller verwendeter SQL Modi
- MariaDB [psa]>
SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE;
Beenden der Datenbanksitzung
- MariaDB [psa]>
exit
Alles rund um LOGS
Wo sind welche Logs
- Maillog
cat /var/log/maillog | grep postfach@domain.tld
- Ftplog - Logins
cat /var/log/secure | grep ftpuser
- Ftplog - Transfer
cat /var/log/plesk/xferlog | grep ftpuser
Logging Reparieren
- Sofern div. Prozesse / Befehle ( screen/weget/usw )nicht ordnungsgemäß durchlaufen.
rm -rf /var/log/journal/*- nach dem Löschen ist ein
rebootunumgänglich
LOG Live überprüfen
watch 'tail -n 20 /var/log/maillog'
FTP Log überprüfen
cat /var/log/secure | grep hierderuser
Zugriffe von Bots sortieren
cat /var/www/vhosts/system/hierdiedomain/logs/access_log.processed | grep bot | awk -F\" '{print $6}' | sort | uniq -c | sort -n
Ordner für Statistiken neu anlegen
/usr/local/psa/admin/sbin/relink-vhost-logs --domain-name andreaskaser.wwwXX.hostkraft.de --sys-user-login andreaskaser --create
Nützliches
Farbe der SSH Sitzung ändern
printf '\e[38;5;34m Foreground color: green\n'
Passwörter von Postfächern auslesen
/usr/local/psa/admin/bin/mail_auth_view | grep 'domain.tld'
IP auslesen aus mehrfacher Anzeige
ip a | grep "venet0:0" | awk '{print $4}'- "ip a" als Grundbefehl , "grep" auf den zutreffensten Ausdruck der jeweilgen Zeile , "awk" hier auf den 4 Asudruck den geGREPten Zeile