Diese kleine Neuerung stellt mich gerade vor ein kleines Problem:
In einem Skript benutze ich den Befehl cp $SERVERHOME/Einstellungen/monitors.xml $HOME/.config/monitors.xml
Das klappt leider nicht mehr, da echo $SERVERHOME das liefert:
/home/infok/media/infok (H:)
Da ist ein Leerzeichen drin (und auch „(“ und „:“ )
Kannst du mir einen Tipp geben, wie ich die Befehlszeile richtig formulieren muss?
Hallo Arnaud,
vielen Dank für deine schnelle Reaktion und auch für das Verschieben meine Frage.
Ich zeig mal kurz mein ganzes Skript:
#!/bin/bash
#Monitorprofile
if [ -e $SERVERHOME/Einstellungen/monitors.xml ]; then
cp $SERVERHOME/Einstellungen/monitors.xml $HOME/.config/monitors.xml
else
mkdir -p $SERVERHOME/Einstellungen
cp $HOME/.config/monitors.xml $SERVERHOME/Einstellungen/monitors.xml
fi
#Monitor-Watchdog
/usr/bin/watchexec -w .config/monitors.xml /etc/linuxmuster-linuxclient7/scripts/checkMonitors.sh &
Das Problem tritt bereits bei if [ -e $SERVERHOME/Einstellungen/monitors.xml ]; then auf.
Das wird zu if [ -e /home/infok/media/infok (H:)/monitors.xml ]; then
vielen Dank für deinen Tipp.
Mein Skript sieht jetzt so aus:
#!/bin/bash
#Monitorprofile
if [ -e "$SERVERHOME/Einstellungen/monitors.xml" ]; then
cp "$SERVERHOME/Einstellungen/monitors.xml" "$HOME/.config/monitors.xml"
else
mkdir -p "$SERVERHOME/Einstellungen"
cp "$HOME/.config/monitors.xml" "$SERVERHOME/Einstellungen/monitors.xml"
fi
#Monitor-Watchdog
/usr/bin/watchexec -w .config/monitors.xml /etc/linuxmuster-linuxclient7/scripts/checkMonitors.sh &
Bei der Ausführung von /etc/linuxmuster-linuxclient7/onLogin.d/30_Monitor.sh bekomme ich diese Meldungen:
infok@lz-r98:~$ cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werdencp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werdenreguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
Irgendwie scheint aus /home/infok/media/infok (H:)/Einstellungen/monitors.xml/home/infok/media/infok/Einstellungen/monitors.xml zu werden.
Das (H:) scheint rausgeschmissen zu werden?!?
infok@lz-r98:~$ /etc/linuxmuster-linuxclient7/onLogin.d/30_Monitor.sh
cp /home/infok/media/infok (H:)/Einstellungen/monitors.xml /home/infok/.config/monitors.xml
infok@lz-r98:~$ cp: reguläre Datei '/home/infok/media/infok/Einstellungen/monitors.xml' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
ich habe jetzt mal die Laufwerksbuchstaben aus den Sharenamen raus genommen. Die Skripte laufen wieder.
Das ist natürlich auch keine saubere Lösung. Denn nach jedem Update von linuxmuster-linuxclient7 muss ich die Änderungen wieder von Hand einpflegen.
Eigentlich sollte das funktionieren. @rettich wie hast du das „reingehackt“? Hast du einfach die Python-Scripte geändert? Würde als Workaroud sicher auch kurzfristig für andere helfen.
Die Idee hinter den Buchstaben war eine Vereinheitlichung mit Windows. Ich hatte damals viel getestet und keine Probleme gefunden. Ich schau mir das gerne nochmal an, bin aber die nächsten vier Wochen im Urlaub.
Auch eine Configoption, die die Buchstaben deaktiviert, ist natürlich denkbar.
Aber solange ich im Urlaub bin, passiert da nichts, außer jemand anders nimmt sich der Sache an.
keine Lösung für das Share-Problem, aber vielleicht eine Anregung: Bei mir bekommen die Clients einfach die monitors.xml per postsync, und das funktioniert für meinen Beamer-Zoo.
Hallo Winfried,
vielen Dank für deinen Tip.
Das monitor.xml - Problem ist bereits gelöst siehe hier. So kann jeder User seine Einstellungen speichern…
Für das hier diskutierte Problem habe ich einen Workaround (siehe Beitrag 14).
Gruß,
Mathias