Befehle funktionieren in Script nicht, auf der Bash schon
Twilo
- webserver
0 Christoph Schnauß0 Twilo
0 Mathias Brodala0 Twilo
Hallo,
führe ich folgende Befehle auf der Bash aus, werden die Passwörter in der Datenbank geändert
cd /root/installation/dateien/;vadmin=
cat /opt/pdadmin/etc/pdadmin.conf |grep "password" | cut -f 2 -d '"';sed "s/ROOTPW/
cat /opt/pdadmin/etc/mysql_rootpw.conf/" sql.txt > sql.txt1;sed "s/VADMINPW/$vadmin/" sql.txt1 > sql.txt2;mv /etc/inittab.bak /etc/inittab;kill -1 1;/usr/local/pd-admin2/bin/mysql -u root -p
cat /opt/pdadmin/etc/mysql_rootpw.conf.old --database=mysql --host=localhost < sql.txt2;
wenn ich die Befehle jedoch in ein Bash-Script schreibe, werden die Passwörter nicht geändert
woran könnte das liegen?
mfg
Twilo
hallo,
führe ich folgende Befehle auf der Bash aus
Wow, schönes Beispiel dafür, was man mit Pipes alles anfangen kann.
wenn ich die Befehle jedoch in ein Bash-Script schreibe, werden die Passwörter nicht geändert
Was hat das jetzt mit "Server" zu tun? Wie rufst du dein bash-Script auf? Was passiert, wenn du es auf der Konsole mit ./bashscript.sh laufen läßt - welche log-Einträge (eventuell ein tail mitlaufen lassen) gibt es da?
`
Grüße aus Berlin
Christoph S.
Hallo,
führe ich folgende Befehle auf der Bash aus
Wow, schönes Beispiel dafür, was man mit Pipes alles anfangen kann.
dann hast du noch nicht die anderen Scripte gesehen ;-)
ich habe einen kompletten Server nur per Scripte installiert, partitioniert, formatiert, per Aptitude Pakete de/installiert, Config-Dateien angepasst, Datenbanken, eMail und Home-Verzeichnisse per rsync rüberkopoiert, etc.
ich habe dabei gemerkt, dass die Bash ziemlich mächtig ist :-)
wenn ich die Befehle jedoch in ein Bash-Script schreibe, werden die Passwörter nicht geändert
Was hat das jetzt mit "Server" zu tun?
eine bessere Kategorie ist mit nicht eingefallen
Wie rufst du dein bash-Script auf? Was passiert, wenn du es auf der Konsole mit ./bashscript.sh laufen läßt - welche log-Einträge (eventuell ein tail mitlaufen lassen) gibt es da?
wenn diese Befehle in ein Bashscript drin stehen, wird das Passwort nicht geändert, ich denke mal, dass irgendeine Variable nicht richtig gesetzt wird, tippe ich jedoch alles direkt auf der Bash ein, wird das Passwort geändert
da der Serverwechsel um 6:30 abgeschlossen sein mußte, hatte ich diese Befehle direkt auf der Shell ausgeführt.
Grüße aus Berlin! :)
mfg
Twilo
Hallo Twilo.
Da es dir beim letzten Mal offenbar nicht aufgefallen ist hier noch einmal in Worten:
Hallo,
führe ich folgende Befehle auf der Bash aus, werden die Passwörter in der Datenbank geändert
vadmin=
cat /opt/pdadmin/etc/pdadmin.conf |grep "password" | cut -f 2 -d '"';
$ cat datei | grep muster
… ist „useless use of cat“. Folgendes genügt vollkommen:
$ grep datei muster
Das nur als Anmerkung am Rande.
Einen schönen Dienstag noch.
Gruß, Mathias
Hallo,
Da es dir beim letzten Mal offenbar nicht aufgefallen ist hier noch einmal in Worten:
führe ich folgende Befehle auf der Bash aus, werden die Passwörter in der Datenbank geändert
vadmin=
cat /opt/pdadmin/etc/pdadmin.conf |grep "password" | cut -f 2 -d '"';
$ cat datei | grep muster
… ist „useless use of cat“. Folgendes genügt vollkommen:
$ grep datei muster
Das nur als Anmerkung am Rande.
das war mir schon aufgefallen, jedoch habe ich es wohl versäumt auch in diesem Script (diesen Befehl hab ich in mehreren Scripten) abzuändern
in dieser Version hatte es auch nur direkt auf der Bash funktioniert
cd /root/installation/dateien/;vadmin=
grep '$password' /opt/pdadmin/etc/pdadmin.conf | cut -f 2 -d '"';sed "s/ROOTPW/
cat /opt/pdadmin/etc/mysql_rootpw.conf/" sql.txt > sql.txt1;sed "s/VADMINPW/$vadmin/" sql.txt1 > sql.txt2;mv /etc/inittab.bak /etc/inittab;kill -1 1;/usr/local/pd-admin2/bin/mysql -u root -p
cat /opt/pdadmin/etc/mysql_rootpw.conf.old --database=mysql --host=localhost < sql.txt2;
mfg
Twilo