This site uses cookies! Learn More

Ce site utilise des cookies !

En continuant à utiliser ce site, vous vous engagez à nous permettre de stocker des cookies sur votre ordinateur.

r0m1

Prompt Ash

Messages recommandés

Bonjour

Dans le fichier /root/.profile il y a une variable PS1 qui comporte la chaine du prompt pour l'utilisateur root dans un terminal.

J'aimerai que le prompt affiche l'emplacement courant exemple :

/volume1/web >

Je ne pense pas qu'un fichier dans /bin renvoi cette information mais sinon existe t'il une librairie disponible dans IPKG qui pourrai me retourner cette information ?

Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir

il suffirait que syno fasse une mise a jour de busybox pour le prompt ce pb m'existe plus sur les version recente de BB

Bonsoir,

Voici ma petite manip pour modifier ce fameux prompt :

comme la variable PS1 est initialisée au démarrage de la session, il faut la rafraîchir à chaque commande "cd".

partant de ce principe, j'ai appliqué la procédure suivante :

1. On commence par supprimer (ou plutôt renommer) le fichier "/etc/profile" afin d'utiliser le ".profile" du répertoire "/root"

2. On utilise ensuite un alias qui remplace la commande "cd" par le script "monCD".

Le script sera placé dans le répertoire "/root"

Dans ce script, commence par supprimer temporairement l'alias (sinon, on boucle ...)

Ensuite, on exécute la vraie commande "cd"

On actualise le prompt par l'intermédiaire de la variable PS1

On se repositionne sur le répertoire actuel pour afficher ce nouveau prompt

Et on termine en recréant l'alias cd pour la prochaine commande.

fichier monCD :

--------------------------------------------------------------

#!/bin/bas

unalias cd

cd $1

PS1="`whoami`@`hostname` `pwd` $ " cd `pwd`

alias cd=". monCD"

---------------------------------------------------------------

3. Une fois ce fichier enregistré, on le rend exécutable :

chmod +x monCD

4. Il ne reste plus qu'à modifier le fichier ".profile" du répertoire "/root" afin que les changements soient pris en compte :

on édite ce fichier et on rajoute les lignes suivantes (lignes en rouge) :

fichier .profile :

--------------------------------------------------------------

#/etc/profile: system-wide .profile file for ash. PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/syno/bin:/usr/syno/sbin:/usr/local/bin:/usr/local/sbin

umask 022

#This fixes the backspace when telnetting in.

#if [ "$TERM" != "linux" ]; then

# stty erase

#fi

PATH=~:$PATH export PATH

HOME=/root

export HOME

TERM=${TERM:-cons25}

export TERM

PAGER=more

export PAGER

PS1="`whoami`@`hostname` `pwd` $ "

alias dir="ls -al"

alias ll="ls -la"

alias cd=". monCD"

ulimit -c unlimited

--------------------------------------------------------------

5. en principe, en ré-ouvrant un terminal telnet, on doit obtenir l'écran suivant :

--------------------------------------------------------------

BusyBox v1.1.0 (2009.04.21-14:52+0000) Built-in shell (ash)

Enter 'help' for a list of built-in commands.

root@DiskStation /root $ cd /usr/syno

root@DiskStation /usr/syno $ cd /

root@DiskStation / $ cd

root@DiskStation /root $

--------------------------------------------------------------

Partager ce message


Lien à poster
Partager sur d’autres sites

ouais, pas mal.

mais bon, un simple ipkg install bash et la modification de /etc/passwd pour mettre bash dans le shell de root donne une solution plus efficace

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui, c'est sur, y'a mieux ... mais c'est plus cher rolleyes.gif...

Effectivement, j'ai un 109j ... et donc je chasse la place. En plus, je ne suis vraiment pas un as en linux, alors, je fais avec les moyens du bord. Mais c'est vrai que ash est assez limit

Partager ce message


Lien à poster
Partager sur d’autres sites

coucou je viens de découvrir ce fil, le seul truc qui me manque c'est le bon vieux bash history, ben vi quand tu compile en natif, c'est bien pratique de reprendre tes commandes de la veille ou du week end dernier, sans avoir à tout noter, il suffit que j'édite cet historique sous debian et hop j'ai ma liste de commandes, bien pratique tout de même pour eviter de tout re taper et debuguer ma syntaxe

tu as un truc dans le genre là pour pas cher, sinon je déstocke une caisse de glutes glacées sur le bar du fofo ? ikeke a oublié les clés, shutttt ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

coucou je viens de d

Partager ce message


Lien à poster
Partager sur d’autres sites

merci je vais regarder ca de plus près ce week end :)

en fait il n'y a aucun historique, tu garde en gros tes 5 ou 6 dernières lignes de commandes le temps de la cession, si tu te déconnecte/re connecte tu perds tout, et aucun rappel possible

sur syno je voulais parler de ash, habitué au bash sur ma debian

Partager ce message


Lien à poster
Partager sur d’autres sites

merci je vais regarder ca de plus pr

Partager ce message


Lien à poster
Partager sur d’autres sites

D

Partager ce message


Lien à poster
Partager sur d’autres sites

Non c'est bon en fait !!!

MERCI !

il suffit juste de saisir bash dans le prompt

par contre qd on se connecte on peut arriver direct sur le bash ?

oui, il faut modifier le shell de l'utilisateur dans /etc/passwd

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant