Linux Notizen / Gebissen
 
StartSeite | LinuxNotizen/ | Neues | TestSeite | ForumSeite | Teilnehmer | Kategorien | Index | Hilfe | Einstellungen | Ändern

Beginn einer Sammlung. Nicht als Kritik an Linux bzw. Unix, sondern um die Umstellungschwierigkeiten zu dokumentieren.

aktuelles Verzeichnis im Pfad

Gestern hat mich das von mir in die PATH-Variable eingefügte aktuelle Verzeichnis gebissen. Vermutlich werde ich jetzt den Empfehlungen folgen und das aktuelle Verzeichnis wieder entfernen.

Situation: Über crontab werden auf meinem Webserver verschiedene Wiki-Aktivitäten automatisch zu bestimmten Zeiten durchgeführt. crontab ist eine Super-Sache, typisch Unix, einfach und mächtig. Nur dass auf einmal ein Script, das auf der Kommandozeile funktioniert, nicht geht. Mit den ganzen Beobachtungsschwierigkeiten solcher getimeter Hintergrund-Vorgänge hat mich das einige Stunden gekostet.

Ursache war, dass ein Script ein anderes Script "script2" aus dem aktuellen Verzeichnis direkt aufgerufen hat. Zwar waren User und Rechte zwischen Terminal-Fenster und crontab ident, aber die Environment-Initialisierung findet nicht gleichartig statt (klarerweise), sodass "script2" nicht auffindbar war. Ändern der Scriptzeile in "./script2" hat das Problem behoben.

Im allgemeinen werden mögliche Sicherheitsprobleme als Gegenargumente angeführt. Aus meiner heutigen Sicht (als bejahrter Linux-Neuling) würde ich die Argumente so formulieren:

-- HelmutLeitner

Würde ich so nicht stehenlassen. Es ist Tradition, dass man deinem Vorschlag folgt, wenn man als root arbeitet. Ansonsten würde ich den gewohnten Komfort ohne ./ nicht missen wollen. Immerhin kann man ja über die Reihenfolge der im Pfad vorkommenden Verzeichnisse gewisse Sicherheitsrisiken minimieren. Crontab-Skripte muss man generell in einer Shell testen, die der entspricht, in der das Skript später laufen soll. Ansonsten kämen neben dem PATH auch andere Environmentvariablen als potentielle Fehlerquelle in Frage. (Nebenbei bemerkt kann man ähnliche Betrachtungen auch für Windows anstellen ;-) -- SDö

Das hat nichts mit Unix vs. Windows zu tun (siehe Disclaimer am Beginn der Seite). Linux ist in dem von mir betrachteten Bereich viel mächtiger und flexibler als Windows. Mir geht es um die Umstellung. Wenn man mal Experte ist, macht man alles instinktiv richtig und hat die Anfangsschwierigkeiten vergessen.

Als Benutzer und Entwickler (auf meiner Maschine) habe ich es auch immer so empfunden wie du. Allerdings ergibt das Mehr an Bequehmlichkeit eben mehr Testaufwand oder ein höheres Fehlerrisiko für portable Scripte. -- HelmutLeitner


StartSeite | LinuxNotizen/ | Neues | TestSeite | ForumSeite | Teilnehmer | Kategorien | Index | Hilfe | Einstellungen | Ändern
Text dieser Seite ändern (zuletzt geändert: 16. Januar 2004 16:21 (diff))
Suchbegriff: gesucht wird
im Titel
im Text