[How To] Telnet Prompt mit Pfadangabe

Status
Für weitere Antworten geschlossen.

Blade26

Benutzer
Mitglied seit
30. Nov 2008
Beiträge
37
Punkte für Reaktionen
0
Punkte
0
Heute erkläre ich euch, wie ihr in der Telnet console den Pfad wo ihr euch gerade aufhaltet angezeigt bekommt.

Beispiel:
/var/services/web >

1. Müssen wir bash installieren.

ipkg install bash

2. Öffnet die Datei /etc/profile und kommentiert die Zeile mit PS1 aus. Einfach # davor setzen. Anschließen fügt ihr ans ende die Zeile: export PS1='\w > ' hinzu, und speichert sie.

3. Öffnet die Datei /etc/passwd und passt den Pfad für den root user an bash an.

profile.JPG


Default ist: root:x:0:0:root:/root:/bin/ash
Ändert den Pfad in /opt/bin/bash (WICHTIG: auf richtige Schreibweise und richtigen Pfad zu bash achten, sonst sperrt ihr euch aus). Anschließend speichern.

passwd.JPG


Ergebnis:

telnet.JPG


PS: Keine statische Pfadangabe mehr.

Viel Spaß :)
 

Trolli

Benutzer
Mitglied seit
12. Jul 2007
Beiträge
9.848
Punkte für Reaktionen
1
Punkte
0
Sehr schön. Vielen Dank für die anschauliche Anleitung!
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Leider kann das die vorinstallierte Shell (ash) der BusyBox nicht ... daher ist dieser Tipp sehr sinnvoll.

Itari
 

Blade26

Benutzer
Mitglied seit
30. Nov 2008
Beiträge
37
Punkte für Reaktionen
0
Punkte
0
Kleines Update

Hier ein kleines update:

Telnet Promt mit Farbe.

Dazu öffnen wir die Datei /etc/profile und editieren die Zeile PS1 wie folgt.

PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

Anschließend speicher.

telnet2.JPG
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0

Blade26

Benutzer
Mitglied seit
30. Nov 2008
Beiträge
37
Punkte für Reaktionen
0
Punkte
0
Danke für den Link. Ich werde wahrscheinlich noch einiges davon verwenden.
Ich mag die Standard Shell net. :D
 

Mexx

Benutzer
Mitglied seit
27. Aug 2007
Beiträge
553
Punkte für Reaktionen
0
Punkte
42
leider ist dann immer alles weg nach einem firmwareupdate
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
hm... irgendwas muss wohl noch mehr geschehen, denn der prompt ändert sich hier nicht. Bash ist installiert und läuft auch, Änderungen wie beschrieben habe ich gemacht (beide probiert, einfachen prompt mit Pfad, farbig mit Benutzer und Pfad): Nix.
Neustart kann ja wohl nicht nötig sein, aus- und eingeloggt habe ich mich schon.

Ah, Moment: Gilt das ausschließlich für telnet? Ich bin über putty mit ssh eingeloggt... nee, ist auch nicht anders, wenn ich mich per telnet einlogge... Menno :(

Gruß
Peter
 
Zuletzt bearbeitet:

Blade26

Benutzer
Mitglied seit
30. Nov 2008
Beiträge
37
Punkte für Reaktionen
0
Punkte
0
hmmm... Komisch, sollte nach einem erneuten login eigentlich gehen.

Ah, Moment: Gilt das ausschließlich für telnet? Ich bin über putty mit ssh eingeloggt... nee, ist auch nicht anders, wenn ich mich per telnet einlogge... Menno :(

Nein, gilt für telnet und ssh. Gib mal bash oder ash ein und sag mir ob sich was geändert hat.
 

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
leider nein, weder noch, prompt bleibt gleich. Ich hatte mich auch im DMS mal abgemeldet, nur ein Neustart ist noch nicht erfolgt. Allerdings gibt es in /root ja auch noch eine Datei .profile, die die gleiche Einstellung für PS1 enthält wie die originale /etc/profile. Aber das ist ja wohl auf allen Kisten so und kann den Unterschied bei mir nicht wirklich erklären, oder?

Gruß
Peter
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.017
Punkte für Reaktionen
272
Punkte
393
Hallo Peter,
Du hast den Schuldigen schon gefunden. Die .profile im /root Verzeichnis überschreibt Dir Deine globale Einstellung.
Ruf mal set auf, dann sieht Du was an Systemvariablen wirklich gesetzt ist. Kommentier die PS1-Zeile in .profile einfach aus.

Gruß Götz
 

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
bingo. Ich dachte nicht, dass es wirklich so einfach ist, weil es die Werkseinstellung ist. Wieso das beim OP hier ohne Eingriff in der .profile funktioniert haben kann, ist mir deshalb rätselhaft.
Aber egal, jetzt geht es bei mir auch ;)...

Gruß
Peter
 

-007-ß

Benutzer
Mitglied seit
27. Apr 2009
Beiträge
103
Punkte für Reaktionen
0
Punkte
0
Es geht auch ohne Bash!!!

Es geht auch ohne Bash!!!
Dann zwar nicht in Farbe, aber immerhin:

Einfach
PS1="`hostname`: $(pwd)> "
in die .profile in /root schreiben, Sitzung neustarten und man hat die Pfadangabe auch ohne bash!!!
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Und wenn du das Verzeichnis wechselst, z. B. mit "cd /volume1", dann bekommst auch wirklich den Prompt geändert???

Itari
 

-007-ß

Benutzer
Mitglied seit
27. Apr 2009
Beiträge
103
Punkte für Reaktionen
0
Punkte
0
Ach, shit!
Daran hab ich nicht gedacht.
 

sh4dow.blade

Benutzer
Mitglied seit
13. Apr 2008
Beiträge
22
Punkte für Reaktionen
0
Punkte
0
Sollte man sich wirklich mal aussperren:
Bei PuTTY einfach unter SSH -> remote command -> "su -s /bin/ash" eingeben...

Optimal isses aber noch nicht: Ich verstehe nicht, warum ich z.B. nano oder ipkg nicht ausführen kann: "ash: nano: not found"
Und der Prompt ist über diese Shell auch nur "#" statt "DiskStation>".

Jedenfalls kann man dann mitm vi notfalls wieder die /etc/passwd ändern!
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Der Prompt ist ja nicht wirklich was wichtiges :D

Ansonsten einfach mal die PATH-Variable kontrollieren, wenn man die Kommandos/Tools nicht mit dem gesamten Pfad angeben möchte.

Itari
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ansonsten einfach mal die PATH-Variable kontrollieren, wenn man die Kommandos/Tools nicht mit dem gesamten Pfad angeben möchte.
A propos PATH Variable: Wo (in welcher Datei) setzt man einen PATH am besten, damit dieser beim Systemstart gesetzt wird? Ich habe mal in einem init-Script folgendes gesetzt, was aber ignoriert wird
Code:
PATH=/usr/syno/mailstation/sbin:$PATH
export PATH
nix passiert. Oder kann es sein, dass eine späteres Script den Pfad nochmals neusetzt? Also meine Anpassungen wieder überschreibt?
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat