Você pode usar o shell do Linux todos os dias, mas como você o usa determina muito sobre seu comportamento. Você pode ter ouvido falar sobre a diferença entre um shell de login e um shell sem login. E embora possa não parecer tão óbvio no início, existem várias diferenças entre os dois tipos de conchas.

Aqui está tudo o que você precisa saber sobre shells de login no Linux.

O que é um shell de login?

Um shell de login é exatamente isso: um shell que é iniciado quando você efetua login diretamente na máquina Linux. Quando você faz login em seu sistema a partir de um console virtual ou sobre SSH, o shell que inicia é um shell de login.

Por outro lado, se você iniciar uma janela de terminal, essa sessão de shell normalmente não é um shell de login. O mesmo acontece quando você inicia um subshell digitando o nome do shell na linha de comando. Este shell é apenas um shell interativo.

A principal diferença entre os dois está no comportamento do shell. O shell geralmente lê apenas alguns arquivos na inicialização. Bash vai ler o

instagram viewer
/etc/profile, então o .bash_profile, .bash_login, e arquivos .profile em seu diretório inicial apenas se for invocado como um shell de login.

Como saber se você está usando um shell de login

É fácil ver se você está executando um shell de login ou não. Se você iniciou seu shell a partir do aplicativo de terminal da área de trabalho, provavelmente não está, a menos que esteja em outro ambiente de terminal, como WSL ou o terminal macOS.

Você pode verificar se está executando um shell de login com este comando;

eco$0

Se você estiver usando um shell de login, verá o nome do shell precedido por um hífen (-). Caso contrário, você verá apenas o nome do shell.

Configurando seu shell de login no Linux

Para definir seu shell de login, use o comando chsh. Você pode definir seu shell de login para o caminho absoluto de qualquer shell listado em /etc/shells.

Para iniciar qualquer shell como um shell de login, geralmente você pode usar uma opção de linha de comando. Por exemplo, para iniciar o Bash como um shell de login:

festança --Conecte-se

Se estiver usando um desktop Linux, muitas vezes você pode especificar qual comando é executado ao abrir uma janela de terminal. Se você quiser que seu shell seja executado como um shell de login, você pode colocar essa opção lá.

Agora você sabe sobre shells de login

Agora você deve entender o que são shells de login. Iniciar seu shell, diretamente do console ou de uma janela de terminal, determinará como ele se comportará.

Se você é novo no Linux, pode se perguntar qual shell é o melhor. Você pode ficar com o Bash padrão ou explorar os recursos especiais oferecidos por shells alternativos, como Fish ou Zsh.