Konsole은 /etc/passwd에 지정된 쉘을 실행하지 않습니다.

Konsole은 /etc/passwd에 지정된 쉘을 실행하지 않습니다.

저는 오랫동안 Fedora와 Gnome에서 Bash를 사용해 왔으며 최근에는 Arch Linux, Plasma 및 ZSH로 전환했습니다. zsh, 파일을 설정하고 사용했는데 chsh -s $(which zsh)작동합니다. 그러나 Konsole bash를 실행할 때마다 자동으로 실행되므로 수동으로 호출해야 합니다 zsh. 제가 아는 내용은 다음과 같습니다.

echo $SHELL/bin/bash로 돌아가기

cat /etc/passwd | grep $LOGNAME내 쉘을 /usr/bin/zsh로 표시

ZSH는 tty(비그래픽)에 로그인하면 기본적으로 실행됩니다.

업데이트 1: "기본 설정/구성/일반" 탭에 "명령" 옵션이 없으며 사용자 설정에 내 셸과 관련된 GUI 옵션이 없습니다.

답변1

바라보다 Settings>Configure Konsole>Profiles.

관련 구성 파일을 편집하고 Command필드를 변경합니다.

답변2

제 생각에는 KDE와 Konsole이~해야 한다기본 옵션을 존중하십시오. 이를 시행하려면 다음 작은 스크립트를 사용할 수 있습니다.

$ sudo vi /usr/local/bin/shell.sh

#!/bin/sh

PSHELL=$(getent passwd $USER|cut -d: -f7)

eval "$PSHELL"

실행을 허용합니다:

$ sudo chmod +x /usr/local/bin/shell.sh

그럼 널 엿먹여위로윤곽

Settings>Configure Konsole>Profiles>Edit Profile>General Tab>Command

/bin/bash로 변경/usr/local/bin/shell.sh

이제부터 chsh -s /bin/someshell사용 하시면위로당신의 선택을 존중하겠습니다.

사용 가능한 쉘을 보려면 다음을 사용하십시오.

cat /etc/shells

예제 출력:

# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/bin/dash
/usr/bin/dash
/usr/bin/tmux
/bin/zsh
/usr/bin/zsh

참고 1: shell.sh추가 하지 않는 것이 좋습니다 /etc/shells. 그냥 그렇게 놔둬위로구성.

참고 2: 원하는 경우 다른 폴더에 저장할 수 있습니다. 예를 들어, 사용자가 한 명뿐이라면 ~/bin/shell.sh이제 sudo가 필요하지 않은 것부터 시작하는 것이 좋습니다 .

관련 정보