LINUX 기초 개념 - 시작과 종료, 재부팅, 가상콘솔, 자동완성, history
System/OS - Linux

LINUX 기초 개념 - 시작과 종료, 재부팅, 가상콘솔, 자동완성, history

728x90

시작과 종료

종료

# shutdown -P now

# halt -p

# init 0 

# poweroff

 

재부팅

# shutdown -r now

# reboot

# init 6


# shutodwn [옵션] [시간]

(△ root 사용자에서 사용 가능한 명령어)

[옵션]

-p / -P poweroff 종료 (# halt -p, # init 0)
-r reboot 재부팅 (# reboot 도 가능)
-c cancel 예약된 shutdown 취소
-k 종료된다는 메시지를 보내지만 실제로는 종료되지 않음
; 시스템을 종료하지 않고 다른 사용자가 시스템 접속을 로그아웃하도록 유도

 

[시간]

+N        : N분 후에 동작 실행

NN:NN : NN시 NN분에 동작 실행

now     : 바로 실행


# init [런레벨]

[런레벨]

run level 영문 모드 설명  
0 Power Off 종료 shutdown 관련
1 Rescue 시스템 복구 단일 사용자 모드; multi-user login 불가능
2 Multi-User   실제로는 사용하지 않음
3 Multi-User 텍스트 모드의 다중 사용자 다중 사용자 모드로 사용하기 위해서는 꼭 가상 콘솔을 띄워 사용해야 함: 텍스트 모드
4 Multi-User   실제로는 사용하지 않음
5 Graphical 그래픽 모드의 다중 사용자 X 윈도우 모드
6 Reboot 재부팅 shutdown 관련

→ # init 6의 경우 # reboot 또는 # shutdown -r 명령어와 같은 역할을 수행하지만 지양하도록 한다. (교수님피셜..)

→ 실질적으로 booting에 관련된 모드들: 2, 3, 4, 5

 

로그아웃 (텍스트모드-Server(B))

$ logout

$ exit


로그아웃

(≠ 시스템 종료) = 현재 사용자의 시스템 접속을 끝낸다

 

리눅스는 multi-user system으로, 다수의 사용자가 동시접속해 사용할 수 있다. 따라서, 필요에 따라 사용자가 다른 사용자들에게 영향을 주지 않고 시스템 접속을 끝낼 때 로그아웃을 하게된다. 

 

X 윈도우 환경이라면 아이콘을 선택해 로그아웃을 선택하면 된다. X 윈도우 환경이 아닐 경우 graphic이 표현되지 않기 때문에 터미널 창에 # logout , # exit 명령을 실행하면 된다.


가상 콘솔

가상의 모니터, 컴퓨터 한 대에 모니터 최대 여섯 개를 연결하는 효과를 낼 수 있다.

그래픽 모드의 경우, 터미널을 여러 창 띄울 수 있지만 텍스트 모드의 경우 다중 사용자 모드로 사용하기 위해서는 꼭 가상 콘솔을 띄워 사용해야 한다.

Ctrl + Alt + F1 ~ F6 로 각 콘솔들로 이동할 수 있다. 또는 "chvt 가상콘솔번호"로 이동할 수 있다.

 

Ctrl + Alt + F1 : 로그인 창

Ctrl + Alt + F2 : X 윈도우 모드

Ctrl + Alt + F3 ~ F6: 텍스트 모드

▷ 최근에는 한 콘솔 창에서 여러 개의 터미널을 열 수 있어 잘 사용하지 않는 기능이다.

 

$ tty

현재 콘솔창이 몇 번 tty에 연결되어있는지 확인할 수 있다.

** tty (TeleTYpewriter)


자동완성과 히스토리

자동완성

파일 이름의 일부만 입력하고 [Tab]키를 눌러 나머지 파일 이름 또는 폴더 이름을 자동으로 완성하는 기능

 

도스 키

[↑]/[↓]를 눌러 이전에 입력한 명령을 다시 나타나게 하는 것

 

$ history

기존에 사용했던 명령을 모두 볼 수 있다. shutdown하기 이전의 명령어들도 모두

기록이 남는다.

 

$ history -c

저장되었던 명령을 모두 삭제한다.

 

 


실습1 - shutdown과 가상콘솔

1. Ctrl + Alt + F3, root 사용자로 로그인

텍스트 모드의 2번째 가상 콘솔 창이 나타난다. (첫 번째 콘솔 창은 Server에서 로그인 후 나타나는 X 윈도우 창이다.)

tty2에 연결되어 있음을 알 수 있다.

 

2. Ctrl + Alt + F4, 일반 사용자로 로그인

텍스트 모드의 3번쨰 가상 콘솔 창이 나타난다. 

 

3. root 사용자가 # shutdown -h 명령어 사용

2번 가상 콘솔
3번 가상 콘솔
2번 가상 콘솔에서 shutdown -c 후 3번 가상 콘솔 화면

4. root 사용자가 시스템을 종료하지 않고, 다른 사용자가 시스템 접속을 로그아웃하도록 유도하는 shutdown -k 명령어 사용

2번 가상 콘솔(root)

(시간을 지정해줄 때 +와 숫자를 붙여써줘야 오류가 생기지 않는다.)

3번 가상 콘솔(sjlee)

3번 가상 콘솔에서의 root가 아닌 다른 사용자는 가짜로 종료되는 것인지 확인할 수 없고, 반복적으로 시스템의 종료를 알리는 메시지가 나타난다.

 

≫ 다수의 사용자가 동시에 리눅스에 접속했을 때 # shutdown 등의 명령을 하나의 사용자가 실행하면 

 

실습2 - run level

1. 런레벨 모드 확인

2. 현재 런레벨 모드 확인

현재 default 모드는 graphical target으로 런레벨 5에 해당한다.

 

3. default target 변경

# ln -sf /libc/systemd/system/multi-user.target /lib/systemd/system/default.target

= default.target이 multi-user.target을 심볼릭 링크로 가리키도록 해라!

(-s: symbolic link, -f: 강제로 변경) 

 

# sync

# reboot

 

△ 재부팅후 텍스트모드로 진입

multi-user.target은 GUI 모드를 포함하고 있지 않기 때문에 위와 같은 X 윈도우 창이 뜨지 않고 텍스트 모드 창만 뜬다.

 

# startx

x윈도우를 띄운다.

 

다시 원상복귀 시켰다.

 

실습3 - 자동 완성 기능

1. [Tab] 1회; 자동완성

이 상태에서 [Tab]을 1회 치면

현재 디렉터리에서 a로 시작하는 파일의 이름으로 자동완성한다.

 

2. [Tab] 2회; 비슷한 이름이 여러 개 있는 경우

sys로 시작하는 파일명이 여러 개 있는 경우 sys까지만 타이핑한 상태에서 [Tab]을 1회 쳤을 때 아무런 변화도 생기지 않는다.

[Tab]을 2회 치면 위와 같이 sys를 포함하는 파일, 디렉터리 이름들이 출력된다.

 

만약 sysco까지 타이핑 한 후 [Tab]을 1회 칠 경우 'sysco'를 포함하는 디렉터리 명이 하나 뿐이기 때문에 3-1에서와 같이 바로 자동완성된다.

 


참고도서: 이것이 리눅스다 with RedHat CentOS 8 (개정판) _우재남 (한빛미디어)

SMALL