Linux/기본

Linux 관리자를 위한 명령어

no-na 2026. 5. 30. 16:00
  • RHEL 계열 리눅스에서 패키지를 설치할 때 가장 많이 사용되는 것은 RPM과 DNF(또는 YUM)다.

 

RPM

  • 소프트웨어를 설치, 삭제, 업그레이드 및 관리하는 패키지 표준 포맷이자 도구
  • 확장자명은 *.rpm이다.
  • rpm 파일의 형식은 일반적으로 다음과 같다.
    [패키지이름-버전-릴리스번호.Rocky 리눅스 버전.아키텍처.rpm]
    예)
항목 설명
패키지 이름 gzip 패키지(프로그램)의 이름이다.
버전 1.10 대체로 2자리 또는 3자리 수로 구성된다.
주 버전, 부 버전, 패치 버전 순이다.
릴리즈 번호 9 문제점을 개선할 때마다 붙는 번호이다.
Rocky Linux 버전 el9_9 Redhat Enterprise Linux 9를 의미
아키텍처 x86_64 x86 계열의 64비트 CPU를 의미한다.
이 파일을 설치할 수 있는 CPU를 뜻한다.

 

rpm 명령 옵션

  1. 설치
    • rpm -Uvh 패키지파일이름.rpm
      • U (대문자) : 패키지가 설치되어 있지 않았다면 설치하고, 패키지가 설치되어 있다면 업데이트한다.
        i 옵션을 사용하면 패키지가 설치되어 있을 때 오류가 발생하므로 U 옵션 사용을 권장한다.
      • v : 설치 과정을 확인한다.
      • h : 설치 진행 과정을 # 기호를 붙여 화면에 출력한다.
  2. 삭제
    • rpm -e 패키지이름
      • e : erase(지움)의 약자
  3. 이미 설치된 패키지 조회
    •  
      명령어 설명
      rpm -qa 패키지 이름 시스템에 패키지가 설치되었는지 확인
      rpm -qf 파일의 절대경로 이미 설치된 파일이 어느 패키지에 포함된 것인지 확인
      rpm -ql 패키지 이름 특정 패키지에 어떤 파일이 포함되었는지 확인
      rpm -qi 패키지 이름 설치된 패키지의 상세 정보
  4. 아직 설치되지 않은 rpm 파일 조회
    • 명령어 설명
      rpm -qlp 패키지파일이름.rpm 패키지 파일에 어떤 파일이 포함되었는지 확인
      rpm -qip 패키지파일이름.rpm 패키지 파일에 상세 정보

DNF

  • DNF(Dandified Yum)
  • rpm 패키지를 편리하게 설치할 수 있게 도와주는 도구
  • Rocky Linux가 제공하는 rpm 파일 저장소에서 설치할 rpm 파일과 함께 의존성이 있는 다른 rpm 파일까지 모두 다운 및 설치
  • 다운로드 URL은 /etc/yum.repos.d/ 디렉터리의 파일에 저장되어 있다.

 

DNF의 기본 사용법

  1. 기본 설치 방법
    • dnf -y install 패키지이름
      • -y 옵션을 붙이면 사용자에게 yes/no를 묻는 부분에서 무조건 yes를 입력한 것으로 간주된다.
  2. rpm 파일 설치 방법
    • dnf install rpm파일이름.rpm
      • 파일을 인터넷에서 자동으로 다운로드해 설치를 한다.
  3. 업데이트 가능 목록 보기
    • dnf check-update
      • 시스템에 설치된 패키지 중 업데이트 가능한 패키지의 목록을 출력한다.
      • 실행 전 dnf clean all 명령을 실행해 기존 임시 파일을 지우는 것이 좋다.
  4. 업데이트
    • dnf update 패키지이름
      • 아무 옵션 지정하지 않고 update를 할 경우 업데이트 가능한 모든 패키지를 업데이트 하므로 시간이 무척 오래 걸림
  5. 삭제
    • dnf remove 패키지이름
      • 설치된 패키지를 제거한다.
  6. 정보 확인
    • dnf info 패키지이름
      • 패키지의 요약 정보를 출력한다.

 

DNF 고급 사용법

  1. 패키지 그룹 설치
    • dnf groupinstall "패키기그룹이름"
      • 패키지 그룹에 포함되는 패키지들을 통째로 설치할 때 사용한다.
    • 패키지 그룹의 종류는 dnf grouplist 명령으로 확인할 수 있다.
  2. 패키지 리스트 확인
    • dnf list 패키지이름
      • Rocky Linux에서 제공하는 패키지 리스트를 표시한다.
  3. 특정 파일이 속한 패키지 이름 확인
    • dnf provides 파일이름
      • 특정 파일이 어느 패키지에 있는지 확인할 수 있다.
  4. GPG키 검사 생략
    • dnf install --nogpgcheck rpm파일이름.rpm
      • Rocky Linux에서 인증되지 않은 rpm 패키지를 설치할 때 사용한다.
  5. 기존 저장소 목록 지우기
    • dnf clean all
      • 기존에 다운로드한 패키지 목록을 지운다.

 

DNF의 작동 방식과 설정 파일

  • dnf 명령과 관련된 설정 파일을 /etc/yum.conf/etc/yum.repos.d/ 디렉터리에 있다.
  • /etc/yum.repos.d/ 파일들에는 dnf 명령 실행 간 해당 패키지 파일을 검색하는 네트워크 주소가 있다.

repo파일 구성

구성 설명
대괄호([])  저장소 식별자(identifier)
# 주석
name (필수) 저장소의 이름이다.
$releasever dnf 명령을 실행하는 Rocky Linux의 버전을 의미하는 시스템 변수
baseurl (필수) Rocky Linux의 저장소 URL
gpgcheck (필수) 서명 확인 진행 여부를 1(사용), 0(사용 안 함)으로 지정하는 부분
mirrorlist (생략 가능) baseurl에 설정 값(URL)이 생략되어 있으면 이 부분에 적힌 URL이 사용된다.
enabled (생략 가능) 특정 저장소의 사용 여부를 1(사용), 0(사용 안 함)으로 지정하는 부분
  • GPG 서명은 GnuPG(Gnu Privacy Guard)라고도 불리며 rpm 패키지가 정상적인 패키지임을 인증할 때 사용되는 암호화된 서명을 의미한다.

 


파일 압축과 묶기

파일 압축

  • 리눅스를 사용할 때 쓰는 압축 파일의 확장명은 xz, bz2, zip, Z 등이다.
  1. xz
    • 확장명 xz로 파일을 압축하거나 xz파일을 압축 해제한다.
    • 비교적 최신 압축 명령으로 압축률이 뛰어나다.
    • [사용 예]
      • xz 파일이름
        - '파일이름' 파일을 '파일이름.xz' 파일로 압축. (압축 대상 파일은 삭제)
      • xz -d 파일이름.xz(d는 Decompress의 의미)
        - '파일이름.xz' 파일을 '파일이름' 파일로 압축 해제
      • xz -l 파일이름.xz(l은 List의 의미)
        - '파일이름.xz' 압축 파일에 포함된 파일 목록과 압축률 등을 출력
      • xz -k 파일이름(k는 Keep의 의미)
        - 압축 후 기존 파일을 삭제하지 않음
  2. bzip2
    • 확장명 bz2로 파일을 압축하거나 bz2 파일을 압축 해제한다.
    • [사용 예]
      • bzip2 파일이름
        - '파일이름' 파일을 '파일이름.bz2' 파일로 압축
      • bzip2 -d 파일이름.bz2
        - '파일이름.bz2' 파일을 '파일이름' 파일로 압축 해제
  3. bunzip2
    • bz2 압축 파일을 푼다.
    • bzip2 -d 와 동일한 명령이다.
  4. gzip
    • 확장명 gz로 파일을 압축하거나 gz파일을 압축 해제한다.
    • [사용 예]
      • gzip 파일이름
      • gzip -d 파일이름.gz
  5. gunzip
    • gz 파일을 압축 해제한다.
    • gzip -d 와 동일한 명령이다.
  6. zip
    • Windows와 호환되는 확장명 zip으로 압축한다.
    • [사용 예]
      • zip 생성할파일이름.zip 압축할 파일이름
  7. unzip
    • zip 파일을 압축 해제한다.

 

파일 묶기

  • 윈도우와 달리 리눅스/유닉스에서는 원칙적으로 '파일 압축'과 '파일 묶기'를 별개의 프로그램으로 처리해야 한다.
  • 파일 묶기 명령어는 tar이다.
  • 확장명 tar로 파일을 묶거나 tar 묶음 파일을 푼다.

[동작]

명령어 설명
c (소문자) 새로운 묶음 파일 생성
x 묶음 파일을 품
묶음 파일 해제 전에 묶인 경로를 표시
C (대문자) 지정된 디렉터리에 묶음 파일을 품.
지정하지 않으면 묶을 때와 동일한 디렉터리에 해제

 

[옵션]

명령어 설명
f (필수) 묶음 파일의 이름을 지정.
원래 tar는 테이프(tape) 장치 백업이 기본(생략하면 테이프로 보냄)
v 파일이 묶이거나 풀리는 과정을 표시 (생략 가능). visual의 약자
J (대문자) tar + xz
tar + gzip
j (소문자) tar + bzip2

 

[사용 예]

명령어 설명
tar cvf my.tar /etc/sysconfig/ 묶기
tar cvfJ my.tar.xz /etc/sysconfig/ 묶기 + xz 압축
tar cvfz my.tar.gz /etc/sysconfig/
묶기 + gzip 압축
tar cvfj my.tar.bz2 /etc/sysconfig/ 묶기 + bzip2 압축
tar tvf my.tar 파일 확인
tar xvf my.tar
tar 풀기
tar cxvf newdir my.tar newdir에 tar 풀기
tar xfJ my.tar.xz xz 압축 해제 + tar 풀기
tar xfz my.tar.gz gzip 압축 해제 + tar 풀기
tar xfj my.tar.bz2 bzip2 압축 해제 + tar 풀기

 


파일 위치 검색

    1. find 경로옵션조건 action
      • 옵션
        -name, -user(소유자), -newer(전, 후), -perm(허가권), -size(크기)
      • action
        -print(기본값), -exec(외부 명령 실행)
      • [기본 사용 예]
        명령어 설명
        find /etc -name "*.conf" /etc 디렉터리 하위의 확장명이 *.conf인 파일 검색
        find /home -user rocky /home 디렉터리 하위의 소유자가 rocky인 파일 검색
        find ~ -perm 644 현재 사용자 홈 디렉터리 하위의 허가권이 644인 파일 검색
        find /usr/bin -size +10k -size -100k /usr/bin 디렉터리 하위의 크기가 10KB~100KB인 파일 검색
      • [고급 사용 예]
        명령어 설명
        find ~ -size 0k -exec ls -l { } \; 현재 사용자의 홈 디렉터리 하위의 크기가 0인 파일 목록을 상세히 출력
        find /home -name "*.swp" -exec rm { } \; /home 홈 디렉터리 하위의 확장명이 *.swp인 파일 삭제
    2. which 실행파일 이름
      • PATH에 설정된 디렉터리만 검색한다.
      • 절대 경로를 포함한 위치를 검색한다.
    3. whereis 실행파일이름
      • 실행 파일 및 소스, man 페이지 파일까지 검색한다.
    4. locate 파일이름
      • 파일 목록 데이터베이스에서 실행 파일을 검색한다.
      • updatedb 명령을 1회 실행해야 사용할 수 있다.

방화벽 설정

  • firewall-config 명령으로 실행.
  • 주로 외부 서비스하기 위해 포트를 열 때 사용하는 명령이다.

 


서비스 설정

  • 서비스(데몬)을 설정하려면 ntsysv 명령을 실행한다.
  • 서비스(데몬)의 시작, 중지, 재시작 및 사용 여부를 설정할 때 사용하는 명령이다.

 


시스템 예약(cron, at)

cron

  • 시스템 작업을 예약하는 소프트웨어
  • cron과 관련된 서비스(데몬)는 crond이다.
  • 관련 파일은 /etc/crontab 이다.
  • /etc/crontab 의 형식은 다음과 같다.
    분 시 일 월 요일 사용자 실행명령
    예) 00 05 1 * * root cp -r /home /backup
    예) 42 4 1 * * root run-parts /etc/cron.monthly
        run-parts는 디렉터리 안의 모든 명령을 실행하는 명령이다.
    • 분 : 0~59
    • 시 : 0~23
    • 일 : 1~31
    • 월 : 1~12
    • 요일 : 0~6 (0=일요일, 6=토요일)
    • * : all

 

at

  • 일회성 작업을 예약하는 명령이다.
  • 해당 명령은 예약 후 한 번만 실행되고 소멸된다.
  • [사용 예]
    at 일시 -> 작업 예약
    1. at 일시 명령을 입력 후 [Enter] 누름
      명령어 설명
      at 3:00am tomorrow 내일 새벽 3시
      at 11:00pm January 1월 30일 오후 11시
      at now + 1 hours  1시간 후
    2. at> 프롬프트에서 예약할 명령을 입력 후 [Enter] 누름
    3. 예약할 명령을 모두 입력했다면 [Ctrl] + [D]를 누름
  • at -l    # 작업 확인
  • atrm 작업번호    # 작업 취소

'Linux > 기본' 카테고리의 다른 글

Linux 파이프, 필터, 리디렉션  (0) 2026.06.01
Linux 네트워크 관련 설정과 명령어  (0) 2026.06.01
Linux 사용자 관리와 파일, 링크  (0) 2026.05.29
Linux 기본 사용법 정리  (0) 2026.05.29
Linux 기본 명령어  (0) 2026.05.28