Linux 서버 관리 – 전체 노트 (CIITM Dhanbad)

발행: (2025년 12월 3일 오후 01:45 GMT+9)
7 min read
원문: Dev.to

Source: Dev.to

UNIT – I : Linux 소개, 파일 시스템 및 기본 명령

1. Linux 소개

  • Linux는 무료, 오픈소스, 안전하고 안정적인 운영 체제입니다.
  • UNIX 기반이며, 다음 분야에서 널리 사용됩니다:
    • 서버
    • 클라우드 시스템
    • 네트워킹
    • 사이버 보안
    • 개발
  • 특징:
    • 높은 보안성
    • 빠른 성능
    • 바이러스 저항성
    • 다중 사용자 환경

2. Linux의 기본 특징

  • 다중 사용자 및 다중 작업
  • 이식성 및 오픈소스
  • 강력한 네트워킹 지원
  • 높은 커스터마이징 가능성
  • 강력한 쉘 및 스크립팅

3. Linux 배포판 (디스트리뷰션)

일반적인 Linux 배포판:

  • Ubuntu
  • Debian
  • RedHat (RHEL)
  • Fedora
  • CentOS
  • Kali Linux
  • Linux Mint

4. Linux의 장점

  • 무료 및 오픈소스
  • 매우 안정적
  • 바이러스 없음
  • 강력한 명령줄
  • 프로그래밍 및 서버 지원
  • 커뮤니티 지원

5. Linux가 파일에 접근하는 방식

Linux는 inode 기반 파일 시스템을 사용하며, 각 파일은 다음을 가집니다:

  • inode 번호
  • 파일 유형
  • 파일 권한
  • 소유자 및 그룹
  • 크기
  • 저장 위치

Linux는 모든 것을 파일로 취급합니다. 여기에는 다음이 포함됩니다:

  • 장치
  • 디렉터리
  • 프로세스
  • 소켓

6. Linux 표준 디렉터리

DirectoryPurpose
/루트 디렉터리
/home사용자 홈 디렉터리
/root루트 사용자 홈
/bin기본 사용자 명령
/sbin시스템 관리자 명령
/etc설정 파일
/dev장치 파일
/var로그 및 가변 데이터
/usr설치된 소프트웨어
/tmp임시 파일

7. 기본 파일 및 디렉터리 명령

CommandDescription
pwd현재 디렉터리 표시
cd디렉터리 변경
ls파일 목록
cp파일 복사
mv이동 / 이름 변경
rm파일 삭제
mkdir디렉터리 생성
rmdir디렉터리 삭제
file파일 유형 표시
more, less긴 파일 보기

8. cat을 이용한 파일 만들기 및 보기

cat > file.txt        # create
cat file.txt          # view

9. 파일 비교 명령

  • cmp file1 file2 – 바이트 단위 비교
  • comm file1 file2 – 라인 단위 비교

10. 디스크 관련 명령

  • df -h – 디스크 사용량 표시
  • du -sh folder – 폴더 크기
  • mount – 디스크 마운트
  • umount – 디스크 언마운트

UNIT – II : 쉘, 프로세스, 파이프, 필터, 스케줄링 및 VI 편집기

1. 쉘 이해하기

은 명령 인터프리터입니다. 대표적인 쉘:

  • Bash (기본)
  • Zsh
  • Ksh
  • Tcsh

2. Linux의 프로세스

프로세스 = 실행 중인 프로그램. 일반적인 명령:

ps        # 프로세스 표시
top       # 실시간 모니터링
kill PID  # 종료
jobs      # 백그라운드 작업 표시

3. 파이프를 이용한 프로세스 연결

ls | wc -l

파이프는 한 명령의 출력다른 명령의 입력으로 전달합니다.

4. 입출력 리다이렉션

OperatorMeaning
>파일로 출력
>>출력 추가
2>오류 리다이렉트
&>출력 + 오류

5. 도움말 명령

  • man command
  • help command
  • info command

6. 백그라운드 처리

command &
jobs
bg %1
fg %1

7. 다중 프로세스 관리

  • ps
  • pgrep
  • htop
  • kill

8. 프로세스 우선순위 변경

nice -n 10 program
renice 5 PID

9. 명령 스케줄링

cron 사용

crontab -e

at 사용

at 5pm

10. 파일 및 유틸리티 명령

CommandDescription
touch빈 파일 생성
wc라인/단어/문자 수 세기
cut열 추출
dd데이터 복사/변환
expr수학 명령
bc계산기 도구

11. VI / VIM 편집기

모드

  • 명령 모드
  • 입력 모드
  • 마지막 라인 모드

유용한 명령

i      " 입력
x      " 문자 삭제
:w     " 저장
:q     " 종료
:wq    " 저장 후 종료
/text  " 텍스트 검색

12. 간단한 필터 명령

  • pr
  • head
  • tail
  • cut
  • paste
  • sort
  • uniq
  • tr

13. 정규식 필터

  • grep – 패턴 검색
  • egrep – 확장 grep
  • sed – 검색 및 치환

예시:

sed 's/old/new/g' file.txt

UNIT – III : 쉘 프로그래밍 및 시스템 관리 기본

1. 쉘 프로그래밍 소개

쉘 스크립트는 Linux 명령을 담은 텍스트 파일입니다.

예시:

#!/bin/bash
echo "Hello Linux"

실행:

chmod +x script.sh
./script.sh

2. 쉘 프로그래밍 개념

변수

name="Abhishek"
echo $name

조건문

if [ $a -gt 10 ]; then
  echo "OK"
fi

반복문

for i in 1 2 3; do echo $i; done

함수

hello(){ echo "Hello"; }

3. 시스템 관리 작업

  • 사용자 관리
  • 디스크 관리
  • 네트워크 설정
  • 패키지 설치
  • 백업 및 복원
  • 시스템 모니터링

4. 설정 및 로그 파일

로그는 다음에 저장됩니다:

/var/log/

주요 파일:

  • /etc/passwd
  • /etc/shadow
  • /etc/fstab
  • /etc/hosts

5. Linux 설치 과정

  • USB/DVD로 부팅
  • 파티션 생성
  • 기본 시스템 설치
  • 부트로더 설치
  • 재부팅

6. 시스템 시작 / 종료

shutdown -h now
reboot
systemctl reboot

UNIT – IV : 사용자 관리, 파일 시스템, 권한 및 네트워킹

1. 사용자 계정 관리

사용자 추가

useradd username
passwd username

사용자 삭제

userdel username

2. 권한 및 소유권

권한 종류

  • 읽기 (r)
  • 쓰기 (w)
  • 실행 (x)

권한 변경

chmod 755 file

소유자 / 그룹 변경

chown user file
chgrp group file

3. 그룹 관리

groupadd group
groupdel group

4. 사용자 계정 비활성화

usermod -L user

5. 파일 시스템 생성 및 마운트

mkfs.ext4 /dev/sdb1
mount /dev/sdb1 /mnt

6. 슈퍼유저 (su / sudo)

su
sudo command

7. 백업 및 복원

  • cp
  • rsync
  • tar
  • scp

8. 패키지 설치 및 제거

Ubuntu/Debian

apt install package
apt remove package

RHEL/CentOS

yum install package
yum remove package
Back to Blog

관련 글

더 보기 »