본문 바로가기
OS/Linux

CentOS 에서 ksh 콘쉘 설치하기

by yazasus 2020. 4. 13.

CentOS 버전 6.10

 

리눅스엔 기본으로 bash 쉘이 깔려있지만

여러가지 이유로 ksh 쉘을 사용해야 하는 경우

 

 

1. 우선 chsh -l 으로 ksh 설치가 되어있는지 확인

[root@localhost ~]# chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh

 

2. root 계정으로 콘쉘 설치 yum install ksh

[root@localhost ~]# yum install ksh
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Install Process
Determining fastest mirrors
 * base: mirror.kakao.com
 * extras: mirror.kakao.com
 * updates: mirror.kakao.com
Resolving Dependencies
--> Running transaction check
---> Package ksh.x86_64 0:20120801-38.el6_10 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===========================================================================================================
 Package              Arch                    Version                        Repository                Size
===========================================================================================================
Installing:
 ksh                  x86_64                  20120801-38.el6_10             updates                 762 k

Transaction Summary
===========================================================================================================
Install       1 Package(s)

Total download size: 762 k
Installed size: 1.7 M
Is this ok [y/N]: y
Downloading Packages:
ksh-20120801-38.el6_10.x86_64.rpm                                                   | 762 kB     00:00
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Importing GPG key 0xC105B9DE:
 Userid : CentOS-6 Key (CentOS 6 Official Signing Key) <centos-6-key@centos.org>
 Package: centos-release-6-10.el6.centos.12.3.x86_64 (@anaconda-CentOS-201806291108.x86_64/6.10)
 From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : ksh-20120801-38.el6_10.x86_64                                                           1/1
  Verifying  : ksh-20120801-38.el6_10.x86_64                                                           1/1
Installed:
  ksh.x86_64 0:20120801-38.el6_10

Complete!

 

3. root 계정으로 /etc/passwd 파일을 vi 로 열기

[root@localhost ~]# vi /etc/passwd

 

4. 변경할 계정을 찾아 /bin/bash 를 /bin/ksh 으로 변경 후 저장

yazasus:x:500:500::/home/yazasus:/bin/ksh

키보드 방향키로 콘쉘로 변경할 계정 줄의 오른쪽 끝으로 가서 bash 의 b 위에 커서를 올리고 x를 눌러 bash 삭제

i 를 눌러 / 오른쪽에 커서를 두고 ksh 입력 후 esc

키보드로 : (shift + ;)누르고 wq 입력 후 엔터누르면 수정 완료

 

5. Switch User 한다

쉘을 변경할 계정으로 로그인

[root@localhost ~]# su - yazasus
$
$
$

잘 변경된 것 같다.

 

6. 계정 홈에서 vi .profile 하여 .profile 파일을 만들어 아래 내용 입력

$ vi .profile
export PS1='$LOGNAME@:$PWD>'
export EDITOR=vi

PS1 : 프롬프트 설정

EDITOR : bash 에서 기본으로 제공하는 텝 자동완성 등을 콘쉘에서도 사용하기 위한 설정이니 원하면 넣으면 됨.

 

7. 변경된 사항을 반영하기 위해 Switch user 로 다시 접속

변경한 사항이 반영된다. (혹은 source .profile)

chsh -l 으로 설치된 것까지 확인하면 끝

$ su - yazasus
Password:
yamasus@:/home/yamasus>
yamasus@:/home/yamasus>chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh
/bin/ksh

 

끝 !