1 votes

.le profil n'est pas sourcé

Il y a quelque temps, j'ai installé byobu et j'ai exécuté byobu-enable et il n'a toujours pas démarré automatiquement, je l'ai ignoré car je pouvais simplement appuyer sur super et ouvrir le terminal byobu directement. Mais maintenant j'ai essayé de définir quelques variables et j'ai trouvé cette ligne sur ~/.profile :

byobu_sourced=1 . /usr/bin/byobu-launch 2>/dev/null || true

et même si je mets quelque chose à cet endroit, le ~/.profile n'est jamais sourcé. Je sais qu'il n'est jamais sourcé parce que mon $HOME/bin y est placé et echo $PATH des sorties :

/usr/local/clang_9.0.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

quand je cours source ~/.profile tout fonctionne exactement comme je l'avais prévu, mais ce n'est pas le comportement de .profile.

J'ai regardé aquí aquí aquí et d'autres messages et toujours rien.

mon ~/.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

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

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi

_byobu_sourced=1 . /usr/bin/byobu-launch 2>/dev/null || true

Des idées ?

éditer : J'ai le $HOME/bin répertoire

0voto

Caio Vieira Points 11

J'ai donc changé de distros (pour d'autres raisons) et j'ai trouvé le problème, au cas où quelqu'un en aurait besoin.

J'utilise zsh comme mon Shell principal et il utilise .zprofile au lieu de .profile qui est utilisée par bash. La solution est donc d'utiliser l'option .zprofile ou utiliser bash pour utiliser .profile et ensuite, après qu'il ait été sourcé, vous pouvez changer le Shell en zsh (ou ksh, dash, fish, etc), il vous suffit d'ajouter export SHELL=/bin/zsh sur votre .profile

vous pouvez facilement changer Shell avec chsh -s $(which bash) , compte tenu du fait que vous avez which installée.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X