Linux

CH.4 서버를 구축하는 데 알아야 할 필수 개념과 명령-1

낑깡꺙냥 2024. 3. 18. 00:58

4.1 리눅스를 운영하는 데 있어서 먼저 알아야 할 개념

4.1.1 시작과 종료

시작

3장에서 설치한 Server와 Client를 부팅하면 *X 윈도가 자동으로 실행된다.

*X 윈도란 Microsoft사의 Window와 같은 GUI를 리눅스에 제공한다. (하나의 편리한 유틸리티일 뿐이지 반드시 필요한 것은 아님, Rocky Linux는 기본적으로 GNOME(그놈)이라는 데스크톱 환경을 제공)

 

종료

  1. [전원 아이콘] -> [전원 아이콘] -> <컴퓨터 끄기>
  2. 터미널/콘솔에서 시스템 종료 명령 실행 
    • poweroff
    • shutdown -P(대문자) now
      • shutdown -P +10 = shutdown -h +10     10분 후 종료(P: Poweroff)
      • shutdown -r 22:00   오후 10시에 재부팅(r: reboot)
      • shutdown -c            예약된 shutdown취소(c: cancel)
      • shutdown -k +15     현재 접속한 사용자에게 15분 후 종료된다는 메세지를 보내지만 실제로는 종료되지 않음
    • halt -p
    • init 0

4.1.2 시스템 재부팅

  1. [전원 아이콘] -> [전원 아이콘] -> <다시 시작>
  2. 터미널/콘솔에서 시스템 재부팅 명령 실행 
    • shutdown -r now
    • reboot
    • init 6

4.1.3 로그아웃

로그아웃은 시스템 종료와 의미가 다르다. 리눅스는 다중 사용자 시스템이므로 자신만 접속을 끝내는 로그아웃이 필요하다.

  1. [전원 아이콘] -> [사용자 확장] -> <로그아웃>
  2. logout 또는 exit(터미널을 닫는다는 의미)   <-텍스트 모드

4.1.4 가상 콘솔

가상콘솔이란 '가상의 모니터'이다.

X 윈도가 가동된 화면은 n개의 가상 콘솔 중 첫 번째(F2)라고 생각하면 된다. 나머지 가상 콘솔은 텍스트 모드로 제공된다.

각각의 가상 콘솔로 이동하는 단축키는 "Ctrl+Alt+F1~F6" 이다. (호스트OS로 포커스를 이동하려면 Ctrl+Alt)

 

4.1.5 런레벨 <- 시스템 상태 정의

init 명령 뒤에 붙는 숫자를 런레벨(runlevel)이라고 부른다. 리눅스는 7가지 런레벨로 나눌 수 있다.

런레벨 영문 모드 설명 비고
0 Power Off 종료 모드  
1 Rescue 시스템 복구 모드 단일 사용자 모드
2 Multi-User   사용하지 않음
3 Multi-User 텍스트 모드의 다중 사용자 모드  
4 Multi-User   사용하지 않음
5 Graphical 그래픽 모드의 다중 사용자 모드  
6 Reboot    

- 런레벨 2, 4: multi-user 호환성 유지를 위해 남겨 놓았다.

- 런레벨 모드를 확인하려면 /lib/ststemd/system 디렉터리의 runlevel?.target 파일(링크 파일)을 확인한다.

- 현재 시스템에 설정된 런레벨은 링크 파일인 /etc/ststemd/system/default.target을 확인한다.

- 시스템 런레벨 변경:  ln -sf /lib/ststemd/system/바꿀 런레벨  /etc/ststemd/system/default.target 입력 후 reboot

더보기

현재는 런레벨이라는 말은 사용하지 않으려 한다.

systemctl get -default 현재 런레벨(target) 확인

systemctl set-default graphical.target 런레벨 변경

 

4.1.6 자동 완성과 히스토리

자동 완성이란. 파일 이름의 일부만 입력하고 Tab을 눌러 나머지 파일 이름 또는 폴더 이름을 자동으로 완성하는 기능을 말한다. 자동 완성 기능을 사용하면 적은 키보드 입력만으로도 빠르게 글자를 입력할 수 있을 뿐만 아니라, 오타없이 결과를 나타낼 수 있다.

도스키란 이전에 입력한 명령을 ↑/↓를 눌로 다시 나타나게 하는 것을 말한다.

history: 지금까지 썼던 명령어 출력

 

4.1.7 에디터 사용

gedit: Windows의 메모장처럼 X 윈도에저 제공하는 편리한 에디터, 터미널에서 gedit 파일_이름 명령을 입력하면 해당 파일을 편집할 수 있다. 그러나 X 윈도에서만 사용가능하다. 

vi: 전통적으로 사용되어 온 에디터, 모든 유닉스/리눅스 시스템에 기본으로 포함되어 있다.

설명 설명
i 현재 커서의 위치부터 입력 I 현재 커서 줄의 맨 앞부터 입력
a 현재 커서의 위치 다음부터 입력 A 현재 커서 줄의 맨 마지막부터 입력
o 현재 커서의 다음 줄에 입력 O 현재 커서의 이전 줄에 입력
s 현재 커서 위치의 한 글자를 지우고 입력 S 현재 커서의 한 줄을 지우고 입력

명령 모드에서 입력 모드로 전환하기 위한 키 입력

 

설명 설명
h 커서를 왼쪽으로 한 칸 이동 j 커서를 아래로 한 칸 이동
k 커서를 위로 한 칸 이동 l 커서를 오른쪽으로 한 칸 이동
Ctrl+F 다음 화면으로 이동 Ctrl+B 이전 화면으로 이동
^ 현재 행의 처음으로 이동 $ 현재 행의 마지막으로 이동
gg 제일 첫 행으로 이동 G 제일 끝행으로 이동
숫자G 해당 숫자의 행으로 이동 :숫자ENTER 해당 숫자의 행으로 이동

명령 모드에서 커서를 이동하기 위한 키

 

설명 설명
x 현재 커서가 위치한 글자 삭제 X 현재 커서가 위치한 앞 글자 삭제
dd 현재 커서의 행 삭제 숫자dd 현재 커서부터 숫자만큼의 행 삭제
yy 현재 커서가 있는 행을 복사 숫자yy 현재 커서부터 숫자만큼의 행으로 복사
p 복사한 내용을 행 이후에 붙여넣기 P 복사한 내용을 현재 행 이전에 붙여넣기

명령 모드에서 삭제, 숫자, 붙여넣기 관련 키

 

설명 설명
/문자열ENTER 해당 문자열을 찾음(현재 커서 이후로) n 찾은 문자 중에서 다음 문자로 이동

명령 모드에서 문자열 찾기

 

- 문자열을 치환 ":%s/기존문자열/새문자열"

- 행 번호 표시 ":set number"

 

4.1.8 도움말 사용법

'man' 명령어(manual의 약자) - 리눅스에 포함된 체계화된 도움말

특정 단어 검색 "/단어" 실행

종료: "Q"

 

4.1.9 마운트와 CD/DVD/USB의 활용

리눅스에서 하드디스크의 파티션, CD/DVD, USB 메모리 등을 사용하려면 지정한 위치에 연결해야 한다. 이렇게 물리적인 장치를 특정한 위치(대개는 폴더)에 연결시키는 과정을 '마운트'라고 한다.

  • mount ->현재 마운트된 장치들을 확인
  • umount -> 이전 마운트를 해제(ex. umount /dev/cdrom(sr0는 cdrom과 동일 취급)), 현재 작업 중인 디렉터리가 DVD가 마운트된 하위 디렉터리일 경우, 마운트 해제에 실패하게 되므로 cd 등의 명령어를 입력해 디렉터리를 이동 후 해제해야 한다.

X 윈도가 있는 경우 자동으로 연결되지만, X 윈도가 없는 경우 직접 마운트시켜야 한다.(ex. mount /dev/cdrom  /media/cdrom -> cd/dvd마운트(dev 밑에 cdrom을 media밑에 cdrom폴더에 마운트시킨다.))

* CD/DVD는 읽기만 가능, USB는 읽기, 쓰기 모두 가능

* 장치는 복수의 마운트 포인트를 가질 수 있다

 

연구 과제. /mycdrom 디렉터리에 설치 디스크를 마운트하시오.
mkdir /mycdrom
mount /dev/cdrom /mycdrom

 

 

NOTE

  • 절대 경로 /isolinux : 루트(최상단) 아래
  • 상대 경로 isolinux : 현재 디렉터리 아래
  • .rpm : 가장 작은 패키지 단위
  • 주소+포트번호: Socket address
  • umount 경로
  • umount 장치명: 마지막부터 하나씩 unmount