change_owner.py

Standardmäßig werden bei all-inkl.com PHP-Scripte per mod_php und nicht per fast-cgi ausgeführt. Wird innerhalb eines per mod_php ausgeführten Scriptes eine Dateien oder Verzeichnisse angelegt, so gehören diese Daten dem User und der Gruppe www-data.  Dummerweise kann dann aber der FTP-User ggf. nicht mehr auf richtig auf die Dateien zugreifen, sodass die Dateien per SSH oder FTP nicht mehr abgeändert werden können.

Soll auf diese Dateien später per FTP zugegriffen werden (z.B. weil die Dateien gelöscht werden sollen), kann der Besitzer der Dateien im KAS-Frontend auf den FTP-User gesetzt werden. Die Änderungen werden dann in der Regel innerhalb der nächsten Minute umgesetzt und anschließend kann per FTP-Client oder per SSH gelöscht und beliebig geändert werden. Eine Änderung per chown (z.B. per SSH) ist leider nicht möglich. Das ganze Prozedere per KAS ist allerdings etwas umständlich; vor allem weil immer wieder zum Browser gewechselt muss, wenn eigentlich nur schnell eine Konfigurationsänderung per SSH durchgeführt werden soll.

Daher habe ich mir ein Python-Script geschrieben (change_owner.py), dass das Prozedere zumindest für meinen Workflow etwas vereinfacht.

Das Script kann z.B. auch auf dem all-inkl-Server abgelegt werden, so dass es direkt in einer SSH-Sitzung aufgerufen werden kann, wenn man es braucht. Dazu muss lediglich das Python-Modul auf dem Server eingerichtet werden. Wie das funktioniert ist dann Thema für einen eigenen Blog-Beitrag.