Shellscript ohne execute-flag im Terminal ausführen

Normalerweise muss zum Ausführen einer Datei unter Linux zuerst mit chmod das execute-flag gesetzt werden. Also z.B. chmod +x Dateiname, oder chmod 744 Dateiname. Damit wird die Datei für alle, oder nur dem Besitzer der Datei, ausführbar gemacht. Versucht man ein Skript  direkt auszuführen, für welches dieses Flag nicht gesetzt ist erhält man eine Fehlermeldung.

Möchte man ein Shellscript ausführen, für welches man das Execute-Flag aus Sicherheits- oder sonstigen Gründen nicht setzen möchte, so kann man dies tun indem das Script im Terminal mit dem Befehl sh aufgerufen wird.

sh skriptname.sh

Auf diese Weise lassen sich auch andere Skripte wie PHP oder Python Skripte im Terminal ausführen, sofern der entsprechende Interpreter installiert ist.

python skriptname.py

php skriptname.php


88x31_CC_by
Dieser Text ist lizensiert unter einer Creative Commons Namensnennung 4.0 International Lizenz.
Titelbild „linux-window-terminal-command-154766“ von Pixabay steht unter Creative Commons CC0

Nextcloud/Owncloud File Cache aktualisieren

Ich hatte das Problem das meine Nextcloud-Installation Datein, welche nicht über das Webinterface hochgeladen wurden, sondern direkt auf dem Server erzeugt wurden nicht im Webinterface angezeigt hat.

Wenn Nextcloud/Owncloud vorhandene Dateien ignoriert hilf das manuelle aktualisieren des file caches mit folgendem Befehl:

sudo -u www-data php /pfad/zu/nextcloud/console.php files:scan --all

Je nach Größe der Nextcloud Installation kann der Scan eine ganze Weile dauern. Anschließend sind jedoch auch die bisher nicht erkannten Dateien im Webinterface sichtbar.

Weiterlesen

Mit mp3splt Audiodateien nach bestimmter Länge bei Stille schneiden

Leider sind die von mir genutzten Mediacenter nicht in der Lage sich bei Audiodateien die Stelle zu merken an welcher man aufgehört hat zu hören. Bei Filmen ist diese Funktion eine Selbstverständlichkeit, bei Audio leider nicht, was besonders bei sehr langen Audiodateien wie Hörbücher ein Problem ist.

Um nicht immer an die Stelle spulen zu müssen an der ich aufgehört habe zu hören wollte ich meine Hörbücher in mehrere kleine Stücke zerteilen, um schnell an eine bestimmte Stelle springen zu können. Noch schöner wären natürlich Kapitelmarken in Audiodateien, aber diese Funktion hat sich leider außerhalb von Podcasts noch nicht wirklich durchgesetzt.

Zum einfachen Zerteilen von Mp3 Dateien bietet sich unter Ubuntu das Programm mp3splt an, welches als Kommandozeilenwerkzeug einfach aus den Paketquellen installiert werden kann. Bis Ubuntu 15.10 war auch die GUI Version mp3splt-gtk in den Paketquellen enthalten. Wer möchte kann sich das .deb Paket aus dieser Version nach wie vor bei packages.ubuntu.com herunterladen und installieren, allerdings gibt es dann dafür keine Updates und ich fand die Kommandozeilenversion deutlich einfacher zu bedienen als das unübersichtliche GUI.

Weiterlesen

TOP – Ein Standardprogramm zum Anzeigen von Prozessen und Systemresourcen

Das Programm Top ist sicherlich den meisten ein Begriff. Beim Aufruf in einem Terminalfenster mit dem Befehl „top“ werden einem mehr oder weniger übersichtlich Informationen zu den Systemressourcen und den laufenden Prozessen angezeigt.

Im Gegensatz zum beliebten Htop, welches den gleichen Zweck etwas übersichtlicher erfüllt, ist Top bei den meisten Linuxdistributionen standardmäßig installiert. Das Vorhandensein von Top auf einem Linuxrechner kann quasi vorausgesetzt werden. Auch wenn man auf einem System arbeitet auf dem Htop nicht installiert ist und man nicht die Rechte hat Programme nachzuinstallieren, kann man mit Top einen Überblick über die verfügbaren und verwendeten Systemressourcen sowie die laufenden Prozesse gewinnen.

Ich dachte also dass es sich lohnt sich einmal etwas genauer mit Top auseinanderzusetzen.

Top kann ohne weitere Parameter mit dem Befehl top aufgerufen werden und empfängt einen dann mit folgender Übersicht

top-1

Weiterlesen

IP Adressen in Apache Logfiles anonymisieren

Bei Apache auf einem Ubuntu Server wird in der Standardeinstellung von jedem Besucher die vollständige IP Adresse in den Logfiles gespeichert und erst nach einem Jahr gelöscht.
Wenn man IP Adressen speichert befindet man sich nach wie vor in einer rechtlichen Grauzone (BGH bestätigt: Webserver-Logfiles nicht nach § 100 Abs. 1 TKG erlaubt) Aber schon aus Rücksicht vor der Privatsphäre der eigenen Besucher sollten deren IP Adressen nicht komplett gespeichert werden. Außerdem gilt wie immer: Je weniger sensible Daten man vorhält desto weniger können einem auch abhanden kommen.
Man kann nun die Logfiles komplett deaktivieren, die IP Adressen von Apache entfernen lassen oder mithilfe eines Skripts die IP Adressen zu anonymisieren. Apache selbst biete nur die Möglichkeit eine IP Adresse komplett durch Nullen zu ersetzen. Die Möglichkeit die Adresse nur zu anonymisieren indem ein Teil der IP Adresse durch Nullen ersetzt wird gibt es nicht.

Diese Möglichkeit bietet ein Skript der Swiss Privacy Foundation, welches hier heruntergeladen werden kann: Anonip ist ein Tool zur Anonymisierung von IP-Adressen in Logdateien

Im Gegensatz zu vielen anderen Methoden die ich im Internet gefunden habe funktioniert diese Skript zuverlässig sowohl mit IPv4 als auch mit IPv6 Adressen.

Weiterlesen

Die gleichen Pakete auf mehreren Ubuntu Maschinen installieren

Wenn man ein System umzieht, oder man mehrere Systeme mit den gleichen Aufgaben aufsetzt muss man auch auf allen Systemen die gleichen Pakete installieren. Dpkg (Debian Package) bietet die Möglichkeit eine Liste mit installierten Paketen zu exportieren und auf einem anderen System wieder zu importieren. Damit spart man sich das manuelle abtippen und installieren einer evtl. sehr großen Paketliste.

Zuerst exportiert man die Paketliste auf dem bereists eingerichteten System mit

$ dpkg --get-selections > package.list

Weiterlesen

sshuttle: einfache und schnelle VPN Alternative

Über die Einrichtung und Nutzung eines virtuellen privaten Netzwerks mit OpenVPN habe ich bereits einige Beiträge geschrieben. Unter bestimmten Umständen kann man sich jedoch die Einrichtung eines VPNs sparen und stattdessen einfahc einen SSH-Tunnel mit dem Programm sshuttle nutzen. Dies bietet einige Vorteile, z.B. benötigt man auf dem Server keinen Rootzugriff. Sshuttle erwartet auf dem Server nur einen installierten SSH-Server und Python 2.7. Nach der Installation auf dem Client kann sofort ein Tunnel zu oder über einen beliebigen Server aufgebaut werden, auf den man per SSH Zugriff hat.
Ein Nachteil ist u.U. die Nutzung des Kommandozeilenprogramms sshuttle selbst. Für Smartphones und Tablets ist diese VPN Alternative also kaum sinnvoll nutzbar. Außerdem unterstützt sshuttle nur TCP Verbindungen. UDP Verbindungen oder ein Ping per ICMP funktionieren durch den sshuttle Tunnel nicht.
Einzige Ausnahme ist die Weiterleitung von DNS Anfragen über UDP bei Verwendung des Parameters –dns.

Weiterlesen

Netzwerktraffic einzelner Prozesse anzeigen mit nethogs

Wenn der Netzwerkverkehr plötlzich ansteigt, oder man einfach herausfinden möchte welches Programm am meisten Traffic verursacht hilft einem das Kommandozeilentool nethogs.

Im Gegensatz zu anderen Programmen die den Netzwerkverkehr beobachten zeigt nethogs den ein- und ausgehenden Netzwerkverkehr nach Prozessen an und nicht z.B. nach dem verwendeten Protokol. Außerdem zeigt es den Programmnamen und den User an, welcher das Programm ausführt.

Weiterlesen

command-not-found: Vorschläge welches Paket ein fehlendes Programm enthält

Wenn man unter Ubuntu auf der Kommandozeile versucht ein Programm auszuführen welches nicht installiert ist erhält man logischweise eine Fehlermeldung, wie die folgende:

$ iostat
-bash: iostat: Befehl nicht gefunden

Wenn man command-not-found installiert hat erhält man stat der Fehlermeldung einen Vorschlag welches Paket man installieren muss um das gewünschte Programm auszuführen.

$ iostat
Die Anwendung »iostat« ist momentan nicht installiert. Sie können sie durch folgende Eingabe installieren:
sudo apt-get install sysstat

Command-not-found ist bei Ubuntu standardmäßig installiert, nicht jedoch wenn es sich um eine Minimalinstallation handelt. In diesem Fall kann das hilfreiche Tool einfach aus den Ubuntu Paketquellen nachinstalliert werden mit:

sudo apt-get install command-not-found

Weiterlesen

1 2