Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 09-03-2018 15:38:23

gargamel79
Membre
Lieu : Bressuire
Distrib. : wheezy jessie Stretch
Noyau : 4.9.0-6-686-pae
(G)UI : xfce ou mate
Inscription : 15-11-2009

[Résolu] ~/.profile non exécuté

Il semblerait que ~/.bashrc soit "sourcé' à partir de ~/.profile


if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi
 


Et pourtant ~/.profile n'est jamais exécuté au démarrage : toute modification du "PATH" est ignoré. Sauf si on source .profile


$ source ~/.profile
 


Donc, à partir de quoi est est exécuté ~/.bashrc ? roll
Jusqu'ici, je fais mes modifs. de PATH dans .bashrc (elles sont bien prise en compte...) mais ce n'est pas très Unix...

Dernière modification par gargamel79 (13-03-2018 10:18:06)

Hors ligne

#2 09-03-2018 21:03:10

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian stretch 9.8
Noyau : Linux 4.9.0-8-amd64
(G)UI : Gnome 3.22
Inscription : 29-04-2015

Re : [Résolu] ~/.profile non exécuté

Utilise le fichier : ".bash_profile", s'il existe c'est ce fichier qui est sourcé en priorité par bash.

".profile" est lancé par sh (bourne shell)

Chaque siècle fera son œuvre, aujourd’hui civique, demain humaine. Aujourd’hui la question du droit, demain la question du salaire. Salaire et droit, au fond c’est le même mot. L’homme ne vit pas pour n’être point payé ; Dieu en donnant la vie contracte une dette ; le droit, c’est le salaire inné ; le salaire, c’est le droit acquis.
             Quatrevingt-treize
             Victor Hugo.

Hors ligne

#3 10-03-2018 08:41:46

MicP
Membre
Inscription : 29-02-2016

Re : [Résolu] ~/.profile non exécuté

Bonjour

michel@debg53sw:~$ head ~/.profile


# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

michel@debg53sw:~$


gargamel79 a écrit :

…pourtant ~/.profile n'est jamais exécuté au démarrage…

Le "jamais" ne concerne que les émulateurs de terminal lancés depuis l'environnement de bureau
qui a été lancé par une ouverture de session, et donc, identification (donc, pour ce terminal, ce n'est pas un "login" shell) du compte utilisateur.

head ~/.profile a écrit :

# ~/.profile: executed by the command interpreter for login shells. …

Mais il faut s'identifier (donc, ce sera un "login" shell)
pour ouvrir une session en utilisant l'émulateur de terminal de l'interface en mode texte
qui est accessible depuis le mode graphique par le raccourci clavier Ctrl+Alt+F1 à F6
et dans ce cas, le fichier ~/.profile sera pris en compte (si tant est qu'en même temps, les fichiers ~/.bash_profile ou/et ~/.bash_login ne soient pas présents).

Dernière modification par MicP (10-03-2018 16:21:41)

Hors ligne

#4 10-03-2018 09:39:28

gargamel79
Membre
Lieu : Bressuire
Distrib. : wheezy jessie Stretch
Noyau : 4.9.0-6-686-pae
(G)UI : xfce ou mate
Inscription : 15-11-2009

Re : [Résolu] ~/.profile non exécuté

Merci pour les réponses. Si je comprends bien, à l'ouverture d'un terminal en mode graphique, seul ~/.bashrc est exécuté.
Question triviale, exist-il une autre façon de définir le "PATH" qu'en modifiant ~/bashrc . J'exclue le fait de modifier /etc/profile par root

Hors ligne

#5 10-03-2018 10:51:19

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian stretch 9.8
Noyau : Linux 4.9.0-8-amd64
(G)UI : Gnome 3.22
Inscription : 29-04-2015

Re : [Résolu] ~/.profile non exécuté

gargamel79 a écrit :


Question triviale, exist-il une autre façon de définir le "PATH" qu'en modifiant ~/bashrc . J'exclue le fait de modifier /etc/profile par root



Voir réponse au post #2


Chaque siècle fera son œuvre, aujourd’hui civique, demain humaine. Aujourd’hui la question du droit, demain la question du salaire. Salaire et droit, au fond c’est le même mot. L’homme ne vit pas pour n’être point payé ; Dieu en donnant la vie contracte une dette ; le droit, c’est le salaire inné ; le salaire, c’est le droit acquis.
             Quatrevingt-treize
             Victor Hugo.

Hors ligne

#6 10-03-2018 15:25:22

gargamel79
Membre
Lieu : Bressuire
Distrib. : wheezy jessie Stretch
Noyau : 4.9.0-6-686-pae
(G)UI : xfce ou mate
Inscription : 15-11-2009

Re : [Résolu] ~/.profile non exécuté

Philou92 a écrit:
Utilise le fichier : ".bash_profile", s'il existe c'est ce fichier qui est sourcé en priorité par bash.


Chez moi il n'existe pas. J'ai créé un ~/.bash_profile mais il ne semble pas exécuté au login. Faut-il le rendre exécutable ?

Dernière modification par gargamel79 (10-03-2018 15:27:13)

Hors ligne

#7 10-03-2018 15:52:19

MicP
Membre
Inscription : 29-02-2016

Re : [Résolu] ~/.profile non exécuté

…J'ai créé un ~/.bash_profile mais il ne semble pas exécuté au login.

C'est exactement la même prise en compte que pour le fichier ~/.profile :

Le fichier ~/.bash_profile n'est aussi pris en compte que pour les "login shell"

voir la page man de bash :

man --pager='less -p "^[ ]*Lorsque[ ]*bash[ ]*est[ ]*lancé"' bash



pour la version originale de la page man de bash :

man -LC --pager='less -p "^[ ]*When[ ]*bash[ ]*is[ ]*invoked"' bash

Dernière modification par MicP (10-03-2018 15:55:33)

Hors ligne

#8 10-03-2018 15:59:39

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian stretch 9.8
Noyau : Linux 4.9.0-8-amd64
(G)UI : Gnome 3.22
Inscription : 29-04-2015

Re : [Résolu] ~/.profile non exécuté

gargamel79 a écrit :


Chez moi il n'existe pas. J'ai créé un ~/.bash_profile mais il ne semble pas exécuté au login. Faut-il le rendre exécutable ?



S'il ne s'exécute pas, c'est que bash en prend un autre à la place ou alors il est lancé avec l'option --noprofile ou alors il est lancé avec un groupe différent de l'utilisateur ou autre ??

Tout en gardant le fichier ~/.bash_profile peux-tu donner le résultat de la commande :


bash -v
 


Chaque siècle fera son œuvre, aujourd’hui civique, demain humaine. Aujourd’hui la question du droit, demain la question du salaire. Salaire et droit, au fond c’est le même mot. L’homme ne vit pas pour n’être point payé ; Dieu en donnant la vie contracte une dette ; le droit, c’est le salaire inné ; le salaire, c’est le droit acquis.
             Quatrevingt-treize
             Victor Hugo.

Hors ligne

#9 10-03-2018 16:47:04

gargamel79
Membre
Lieu : Bressuire
Distrib. : wheezy jessie Stretch
Noyau : 4.9.0-6-686-pae
(G)UI : xfce ou mate
Inscription : 15-11-2009

Re : [Résolu] ~/.profile non exécuté

la commande :
bash -v

est très "diarrhéerique" ! Y a-t-il des items particuliers à considérer ?
D'autre part :

MicpP a écrit
Le fichier ~/.bash_profile n'est aussi pris en compte que pour les "login shell"


Donc un ~/.bash_profile n'atteindra pas mon objectif : modifier le PATH en dehors du ~/.bashrc kernal_panic.gif
Le plus simple, est peut-être de garder cette solution, dans le cas d'un xterm lancé en mode graphique cool

Hors ligne

#10 10-03-2018 17:34:48

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian stretch 9.8
Noyau : Linux 4.9.0-8-amd64
(G)UI : Gnome 3.22
Inscription : 29-04-2015

Re : [Résolu] ~/.profile non exécuté

gargamel79 a écrit :

la commande : bash -v est très "diarrhéerique


Verbeux ou diarrhéique, tout dépend par quel coté on s’exprime. tongue

Les items, je ne sais pas a priori, mais avec cette commande tu pourras pister exactement ce que charge ton ~/.bashrc.

Sinon j'ai trouvé la réponse à ton problème, pour exécuter le fichier ~/.bash_profile  il faut forcer bash à ce lancer comme interpréteur de connexion avec la commande :.

bash -l




voir le man bash.

Dernière modification par Philou92 (10-03-2018 17:35:16)


Chaque siècle fera son œuvre, aujourd’hui civique, demain humaine. Aujourd’hui la question du droit, demain la question du salaire. Salaire et droit, au fond c’est le même mot. L’homme ne vit pas pour n’être point payé ; Dieu en donnant la vie contracte une dette ; le droit, c’est le salaire inné ; le salaire, c’est le droit acquis.
             Quatrevingt-treize
             Victor Hugo.

Hors ligne

#11 12-03-2018 15:16:43

gargamel79
Membre
Lieu : Bressuire
Distrib. : wheezy jessie Stretch
Noyau : 4.9.0-6-686-pae
(G)UI : xfce ou mate
Inscription : 15-11-2009

Re : [Résolu] ~/.profile non exécuté

Merci pour ta suggestion, mais c'est un problème purement esthétique:
Si je lance cette commande à partir d'un terminal, c'est que ~/.bashrc s'est déjà exécuté, donc autant faire la modif. de PATH dans ce dernier cool

Hors ligne

#12 12-03-2018 23:36:52

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian stretch 9.8
Noyau : Linux 4.9.0-8-amd64
(G)UI : Gnome 3.22
Inscription : 29-04-2015

Re : [Résolu] ~/.profile non exécuté

Comme tu veux, j'ai juste donné une piste.

Je ne sais pas ce que tu exécutes comme terminal. Il y a probablement un moyen d'y parvenir
Par exemple avec gnome-terminal, tu as un paramètre de profil "Lancer la commande en tant que shell de connexion" dans le menu "Commande".

Ou plus simple, tu places dans ton fichier ~/.bashrc un

source ~/.bash_profile



et PATH le wiscot.png. mrgreen.gif


Chaque siècle fera son œuvre, aujourd’hui civique, demain humaine. Aujourd’hui la question du droit, demain la question du salaire. Salaire et droit, au fond c’est le même mot. L’homme ne vit pas pour n’être point payé ; Dieu en donnant la vie contracte une dette ; le droit, c’est le salaire inné ; le salaire, c’est le droit acquis.
             Quatrevingt-treize
             Victor Hugo.

Hors ligne

#13 13-03-2018 10:17:02

gargamel79
Membre
Lieu : Bressuire
Distrib. : wheezy jessie Stretch
Noyau : 4.9.0-6-686-pae
(G)UI : xfce ou mate
Inscription : 15-11-2009

Re : [Résolu] ~/.profile non exécuté

Effectivement je vois que l'option lancer en tant que shell de connexion existe aussi sous les interfaces "mate" et "xfce"
Merci pour l'info wink

Hors ligne

Pied de page des forums