[How To] Telnet Prompt mit Pfadangabe

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

Blade26

Benutzer
Registriert
30. Nov. 2008
Beiträge
37
Reaktionspunkte
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ß :)
 
Sehr schön. Vielen Dank für die anschauliche Anleitung!
 
Leider kann das die vorinstallierte Shell (ash) der BusyBox nicht ... daher ist dieser Tipp sehr sinnvoll.

Itari
 
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
 
Danke für den Link. Ich werde wahrscheinlich noch einiges davon verwenden.
Ich mag die Standard Shell net. :D
 
leider ist dann immer alles weg nach einem firmwareupdate
 
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:
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.
 
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
 
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
 
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
 
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!!!
 
Und wenn du das Verzeichnis wechselst, z. B. mit "cd /volume1", dann bekommst auch wirklich den Prompt geändert???

Itari
 
Ach, shit!
Daran hab ich nicht gedacht.
 
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!
 
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
 
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