🐧
Linux (Ubuntu) 기초
  • 교육 안내
  • Ubuntu 22.04 설치 (PC에 직접 설치)
  • Windows 10/11 WSL2 설치
  • Linux 개요
  • 리눅스 쉘 기본 명령어(Basic Shell Commands)
  • 자주쓰는 명령어 정리 (Ubuntu 사용)
  • 자주 사용하는 터미널 명령어
  • Linux Package 에 대한 이해
  • su와 sudo 명령어 활용법
  • 리눅스 파일 시스템 이해하기
  • 리눅스 파일과 디렉토리
  • 리눅스 권한에 대한 이해
  • 빌드 시스템에 대한 이해
  • CMake 의 이해
  • Make(Makefile) 사용 가이드
  • CMake 사용 가이드
Powered by GitBook
On this page
  • 리눅스 파일 시스템의 중요성
  • 리눅스 파일 시스템 기본 개념
  • 리눅스에서 파일 시스템 확인하는 방법
  • 파일 시스템 문제 해결 방법
  • 리눅스 파일 시스템 관리의 중요성

리눅스 파일 시스템 이해하기

원문 : https://www.infracody.com/2023/09/understanding-linux-file-systems-guide-to-checking-file-systems.html

리눅스는 운영 체제의 핵심인 커널을 기반으로 한 소프트웨어 모음입니다. 이 중 하나가 바로 파일 시스템인데, 이는 운영 체제가 데이터를 저장하고 검색하는 방법을 결정합니다.

이 글에서는 리눅스 파일 시스템의 중요성, 기본적인 개념, 확인하는 방법, 그리고 문제를 해결하는 방법에 대해 상세히 설명하겠습니다.

리눅스 파일 시스템의 중요성

리눅스 파일 시스템의 역할과 중요성

파일 시스템은 데이터를 효율적으로 저장하고 검색하는 데 필수적인 운영 체제의 주요 구성 요소입니다.

리눅스 파일 시스템은 사용자 데이터와 시스템 데이터를 조직화하고 관리하는 데 중추적인 역할을 수행합니다.

또한, 파일 시스템은 데이터 보호, 공유, 백업 등 다양한 기능을 제공합니다.

파일 시스템 확인이 필요한 이유

파일 시스템 검사의 필요성 파일 시스템을 검사하는 것은 디스크 공간을 효율적으로 관리하고, 시스템 성능을 향상시키며, 데이터 손실을 방지하는 데 중요한 역할을 합니다.

예를 들어, 디스크 공간이 부족하다면 새로운 애플리케이션의 설치나 중요한 데이터의 저장에 문제가 생길 수 있습니다.

그래서 이러한 문제를 미리 방지하기 위해 파일 시스템을 정기적으로 검사하는 것이 중요합니다.

리눅스 파일 시스템 기본 개념

파일 시스템이란 무엇인가?

파일 시스템은 운영 체제가 데이터를 디스크에 어떻게 저장하고 검색할지를 결정하는 방식입니다.

더 자세히는 파일 시스템은 데이터를 파일과 디렉터리로 조직화하고, 이들을 디스크에 어떻게 배치할지를 정합니다.

그리고 파일 시스템은 사용자가 데이터에 접근하고 수정할 수 있는 권한을 관리하는 역할도 합니다.

리눅스에서 사용되는 주요 파일 시스템 종류

리눅스에서는 다양한 종류의 파일 시스템을 지원하며, 그 중에서도 ext4, XFS, Btrfs는 가장 널리 사용되는 파일 시스템입니다. 각각의 파일 시스템은 특징과 장단점을 가지고 있습니다.

ext4는 리눅스에서 가장 일반적으로 사용되는 파일 시스템으로, 대용량 파일과 디렉터리, 저널링 기능 등을 지원합니다. 그러나 확장, 동적 할당, inode 및 블록 하위 할당에 대한 기본 기능이 부족하며, 삭제된 파일을 복구하기 어렵다는 단점이 있습니다.

XFS는 대용량 데이터를 처리하는 데 특화된 파일 시스템입니다. 이 파일 시스템은 64비트 파일 시스템으로 900만 TB까지 지원하며, 파일 수에 관계없이 예상치 못한 상황으로부터 신속한 복구 및 재시작이 가능합니다.

Btrfs는 스냅샷, 복제 등 고급 기능을 제공하는 최신 파일 시스템입니다. 실시간 오류 정정 기능과 스냅샷을 이용하여 볼륨 복원이 가능하며, 드라이브 압축이 가능하여 속도가 빠른 SSD에 사용 시 탁월한 읽기 와 쓰기 성능을 제공합니다. 그러나 스냅샷 이미지의 저장을 위해 디스크 공간을 추가로 사용하며 스냅샷 용량 증가의 특성상 디스크 사용량 예측이 어려운 것이 단점입니다.

이러한 다양한 파일 시스템은 각각의 특징과 장단점을 가지고 있으며, 사용자의 요구에 따라 적절한 파일 시스템을 선택할 수 있습니다.

리눅스에서 파일 시스템 확인하는 방법

df 명령어를 사용한 디스크 공간 확인

df 명령어의 장점과 단점에 대해 알아보겠습니다.

  • df 명령어 장점

    • 전체적인 디스크 사용량 확인 : df 명령어는 리눅스 시스템 전체의 디스크 사용량을 확인할 수 있습니다. 파일 시스템별로 마운트된 디스크의 전체 크기, 사용 중인 공간, 사용 가능한 공간, 사용률, 마운트된 위치 등의 정보를 제공합니다.

    • 사용자 친화적 : df -h 옵션을 사용하면, 파일 시스템의 정보를 사람이 읽기 쉬운 형식으로 출력하기에 디스크 사용량을 한눈에 파악하는 데 도움이 됩니다.

  • df 명령어 단점

    • 디렉토리별 디스크 사용량 불가능 : df 명령어는 시스템 전체의 디스크 사용량만을 확인할 수 있으며, 특정 디렉토리나 파일에 대한 디스크 사용량은 확인할 수 없습니다.

    • 삭제된 파일에 대한 정보 불충분 : df 명령어는 삭제된 파일이나 열린 파일 디스크립터에 대한 정보를 제공하지 않습니다. 이로 인해 df와 du 명령어의 출력 결과가 일치하지 않을 수 있습니다.

예를 들어, df -h 명령을 실행하면, 파일 시스템의 정보를 사용자가 읽기 쉬운 형식으로 출력하며, 디스크 사용량을 한눈에 파악할 수 있습니다.

df -h

실행 결과

Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                  32G     0   32G   0% /dev
tmpfs                     32G  1.7M   32G   1% /dev/shm
tmpfs                     32G  3.2G   29G  11% /run
tmpfs                     32G     0   32G   0% /sys/fs/cgroup
/dev/mapper/centos-root   20G  1.6G   17G   9% /
/dev/sda1                488M  162M  291M  36% /boot
/dev/mapper/centos-tmp   3.9G   18M  3.6G   1% /tmp
/dev/mapper/centos-var    14G  2.5G   11G  20% /var
/dev/mapper/data-pub     493G  148G  320G  32% /pub
tmpfs                    6.3G     0  6.3G   0% /run/user/866
tmpfs                    6.3G     0  6.3G   0% /run/user/901

du 명령어를 사용한 디렉토리별 용량 확인

du 명령어의 장점과 단점에 대해 알아보겠습니다.

du 명령어 장점

  • 디렉토리별 디스크 사용량 확인 : du 명령어는 특정 디렉토리를 기준으로 디스크 사용량을 확인할 수 있습니다. 해당 디렉토리에서 얼마나 많은 디스크 공간이 사용되고 있는지 쉽게 파악하는 데 도움이 됩니다.

  • 사용자 친화적 : du -sh 옵션을 사용하면, 지정된 디렉토리에서 사용된 디스크 공간을 사람이 읽기 쉬운 형식으로 출력합니다. 디렉토리별로 얼마나 많은 디스크 공간이 사용되고 있는지 쉽게 파악하는 데 도움이 됩니다.

특정 파티션 사용량이 증가했을 때 어떤 디렉토리가 공간을 많이 사용하고 있는지 확인 할 수 있으므로, du 명령어는 디스크 공간 관리에 필수적으로 사용됩니다.

du -sh /home
1.7M    /home

디렉터리가 여러 개 있으면 아래와 같이 와일드카드를 사용하여 사용량을 확인할 수 있습니다.

du -sh /var/spool/*
8.0K    /var/spool/at
4.0K    /var/spool/audit
4.0K    /var/spool/cron
4.0K    /var/spool/lpd
4.0K    /var/spool/mail
4.0K    /var/spool/plymouth
64K     /var/spool/postfix

lsblk와 blkid 명령어를 사용한 블록 장치 정보 확인

lsblk 명령어 특징

  • 블록 장치 정보 제공 : lsblk 명령어는 시스템의 블록 장치 정보를 제공합니다. 블록 장치의 이름, 타입, 크기, 마운트된 위치 등의 정보를 제공합니다.

  • 상세 정보 제공 : lsblk -f 옵션을 사용하면, 블록 장치의 파일 시스템 타입과 UUID도 함께 출력합니다. 블록 장치의 상세한 정보를 한눈에 파악하는 데 도움이 됩니다.

lsblk 명령어 장점

  • 디스크 관리 용이 : lsblk 명령어는 디스크 관리와 문제 해결에 매우 유용합니다. 블록 장치의 상세한 정보를 한눈에 파악할 수 있기 때문입니다.

예를 들어, lsblk -f 명령을 실행하면, 블록 장치의 파일 시스템 타입과 UUID도 함께 출력합니다. 이렇게 하면 블록 장치의 상세한 정보를 한눈에 파악할 수 있으며, 디스크 관리와 문제 해결에 매우 유용합니다.

lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   40G  0 disk
├─sda1            8:1    0  512M  0 part /boot
└─sda2            8:2    0 39.5G  0 part
  ├─centos-root 253:0    0 19.5G  0 lvm  /
  ├─centos-swap 253:1    0    2G  0 lvm
  ├─centos-tmp  253:2    0    4G  0 lvm  /tmp
  └─centos-var  253:3    0   14G  0 lvm  /var
sdb               8:16   0  500G  0 disk
└─data-pub      253:5    0  500G  0 lvm  /pub
sdc               8:32   0  100G  0 disk
└─swap-disk     253:4    0  100G  0 lvm  [SWAP]
sr0              11:0    1 1024M  0 rom

blkid 명령어 특징

  • 블록 장치 속성 식별 : blkid 명령어는 블록 장치의 속성을 식별하는 데 사용됩니다. 블록 장치에 대해 사용 가능한 속성, 예를 들어 고유 식별자(UUID), 파일 시스템 유형(TYPE), 볼륨 레이블(LABEL) 등을 표시합니다.

  • UUID 출력 : blkid 명령어는 리눅스 블록 디바이스의 UUID를 출력하는 데 사용됩니다. 파일 시스템 정보를 기술하는 /etc/fstab 파일에 마운트 정보를 설정할 때 /dev/sda1 같은 블록 디바이스보다는 UUID를 적는 것을 권장하고 있습니다.

blkid 명령어를 실행하면, 볼륨 레이블(LABEL), 고유 식별자(UUID), 파일 시스템 유형(TYPE) 순으로 출력하는 것을 확인할 수 있습니다.

blkid
/dev/sda1: UUID="67fe761d-0d23-4801-898b-cbd65df35b77" TYPE="ext4"
/dev/sda2: UUID="XZdC4c-bcl5-J0di-ldNy-3A90-xFUa-jsKWiH" TYPE="LVM2_member"
/dev/sdb: UUID="FVZGD4-oZFJ-J6YE-Oqxt-MWIg-6VM2-sXJ4Tq" TYPE="LVM2_member"
/dev/sdc: UUID="UNT33l-rlYj-y3lQ-oTvY-VDJe-Lt9H-VFPqne" TYPE="LVM2_member"
/dev/mapper/centos-root: UUID="0647d3e5-0a88-4b7a-99c0-befa1a35f720" TYPE="ext4"
/dev/mapper/centos-swap: UUID="f9d6bb8f-db6b-4789-832d-f48dcd749043" TYPE="swap"
/dev/mapper/centos-tmp: UUID="0dcf6f4d-2239-497d-ae03-ffe6cc5a8eba" TYPE="ext4"
/dev/mapper/centos-var: UUID="d5a9184e-1199-40ec-8519-12f98737393b" TYPE="ext4"
/dev/mapper/swap-disk: UUID="4e1f5d51-e283-4228-b70d-f6f55376f7f4" TYPE="swap"
/dev/mapper/data-pub: UUID="fcfda2a3-f4e0-4b8b-9a71-389338f548d0" TYPE="ext4"

findmnt 명령어를 사용한 마운트된 파일 시스템 정보 확인

findmnt 명령어 특징

  • 마운트 정보 제공 : findmnt 명령어는 파일 시스템과 마운트 정보를 제공합니다. 파일 시스템의 마운트 위치, 타입, 옵션 등의 정보를 제공합니다.

  • bind 옵션 지원 : findmnt 명령어는 bind 옵션으로 마운트된 파티션을 확인하는 데 사용될 수 있습니다.

findmnt 명령어를 실행하면, TARGET, SOURCE, FSTYPE, OPTIONS 열로 표시되며, bind 옵션으로 마운트되어 있는 파티션 정보를 확인할 수 있습니다.

findmnt
TARGET                                SOURCE                         FSTYPE         OPTIONS
/                                     /dev/mapper/centos-root        ext4           rw,noatime,nodiratime,discard,data=ordered
├─/sys                                sysfs                          sysfs          rw,nosuid,nodev,noexec,relatime
│ ├─/sys/kernel/security              securityfs                     securityfs     rw,nosuid,nodev,noexec,relatime
│ ├─/sys/fs/cgroup                    tmpfs                          tmpfs          ro,nosuid,nodev,noexec,mode=755
│ │ ├─/sys/fs/cgroup/systemd          cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd
│ │ ├─/sys/fs/cgroup/cpu,cpuacct      cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,cpuacct,cpu
│ │ ├─/sys/fs/cgroup/net_cls,net_prio cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,net_prio,net_cls
│ │ ├─/sys/fs/cgroup/blkio            cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,blkio
│ │ ├─/sys/fs/cgroup/pids             cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,pids
│ │ ├─/sys/fs/cgroup/perf_event       cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,perf_event
│ │ ├─/sys/fs/cgroup/devices          cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,devices
│ │ ├─/sys/fs/cgroup/hugetlb          cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,hugetlb
│ │ ├─/sys/fs/cgroup/memory           cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,memory
│ │ ├─/sys/fs/cgroup/freezer          cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,freezer
│ │ └─/sys/fs/cgroup/cpuset           cgroup                         cgroup         rw,nosuid,nodev,noexec,relatime,cpuset
│ ├─/sys/fs/pstore                    pstore                         pstore         rw,nosuid,nodev,noexec,relatime
│ ├─/sys/kernel/config                configfs                       configfs       rw,relatime
│ ├─/sys/kernel/debug                 debugfs                        debugfs        rw,relatime
│ └─/sys/fs/fuse/connections          fusectl                        fusectl        rw,relatime
├─/proc                               proc                           proc           rw,nosuid,nodev,noexec,relatime
│ └─/proc/sys/fs/binfmt_misc          systemd-1                      autofs         rw,relatime,fd=22,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=18838
├─/dev                                devtmpfs                       devtmpfs       rw,nosuid,size=32966908k,nr_inodes=8241727,mode=755
│ ├─/dev/shm                          tmpfs                          tmpfs          rw,nosuid,nodev
│ │ └─/dev/shm/FlexNetFs.58815        FlexNetFs                      fuse.FlexNetFs rw,nosuid,nodev,relatime,user_id=866,group_id=865,allow_other
│ ├─/dev/pts                          devpts                         devpts         rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000
│ ├─/dev/hugepages                    hugetlbfs                      hugetlbfs      rw,relatime
│ └─/dev/mqueue                       mqueue                         mqueue         rw,relatime
├─/run                                tmpfs                          tmpfs          rw,nosuid,nodev,mode=755
│ ├─/run/user/901                     tmpfs                          tmpfs          rw,nosuid,nodev,relatime,size=6595720k,mode=700,uid=901,gid=901
│ └─/run/user/866                     tmpfs                          tmpfs          rw,nosuid,nodev,relatime,size=6595720k,mode=700,uid=866,gid=865
├─/boot                               /dev/sda1                      ext4           rw,noatime,nodiratime,discard,data=ordered
├─/tmp                                /dev/mapper/centos-tmp         ext4           rw,noatime,nodiratime,discard,data=ordered
├─/var                                /dev/mapper/centos-var         ext4           rw,noatime,nodiratime,discard,data=ordered
│ └─/var/opt                          /dev/mapper/data-pub[/var/opt] ext4           rw,noatime,nodiratime,discard,data=ordered
├─/pub                                /dev/mapper/data-pub           ext4           rw,noatime,nodiratime,discard,data=ordered
└─/opt                                /dev/mapper/data-pub[/opt]     ext4           rw,noatime,nodiratime,discard,data=ordered

mount 명령어를 사용한 마운트된 파일 시스템 정보 확인

이 명령어를 실행하면, 각각의 연결된 파일 시스템에 대한 장치 이름, 연결 지점, 파일 시스템 유형 등을 확인할 수 있습니다.

mount 명령어 특징

  • 마운트 정보 제공 : mount 명령어는 파일 시스템과 마운트 정보를 제공합니다. 전체 파일 시스템의 마운트 위치, 타입, 옵션 등의 정보를 제공합니다.

  • 다양한 파일 시스템 지원 : mount 명령어는 ext2, ext3, xfs, jfs, vfs, reiserfs 등 다양한 파일 시스템을 지원합니다.

  • USB 장치 인식 가능 : USB 장치나 외장 하드 디스크 등도 mount 명령어를 통해 마운트할 수 있습니다.

mount 명령어를 실행하면, 마운트 되어 있는 블록 장치명, 마운트 위치, 파일 시스템 타입, 마운트 옵션을 확인할 수 있습니다.

mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,size=32966908k,nr_inodes=8241727,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mapper/centos-root on / type ext4 (rw,noatime,nodiratime,discard,data=ordered)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=22,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=18838)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
/dev/sda1 on /boot type ext4 (rw,noatime,nodiratime,discard,data=ordered)
/dev/mapper/centos-tmp on /tmp type ext4 (rw,noatime,nodiratime,discard,data=ordered)
/dev/mapper/centos-var on /var type ext4 (rw,noatime,nodiratime,discard,data=ordered)
/dev/mapper/data-pub on /pub type ext4 (rw,noatime,nodiratime,discard,data=ordered)
/dev/mapper/data-pub on /var/opt type ext4 (rw,noatime,nodiratime,discard,data=ordered)
/dev/mapper/data-pub on /opt type ext4 (rw,noatime,nodiratime,discard,data=ordered)
tmpfs on /run/user/866 type tmpfs (rw,nosuid,nodev,relatime,size=6595720k,mode=700,uid=866,gid=865)
FlexNetFs on /dev/shm/FlexNetFs.58815 type fuse.FlexNetFs (rw,nosuid,nodev,relatime,user_id=866,group_id=865,allow_other)
tmpfs on /run/user/901 type tmpfs (rw,nosuid,nodev,relatime,size=6595720k,mode=700,uid=901,gid=901)

/etc/fstab 파일을 사용한 파일 시스템 정보 확인

/etc/fstab 파일 특징

  • 파일 시스템 정보 제공 : /etc/fstab 파일은 마운트 된 파일 시스템의 장치 이름, 마운트 포인트, 파일 시스템 타입, 마운트 옵션 등의 정보를 제공합니다.

  • 부팅 시 자동 마운트 설정 : /etc/fstab 파일에 등록된 파일 시스템은 시스템 부팅 시 자동으로 마운트됩니다. 디스크를 추가하거나 파티션 정보를 변경한 경우에도 해당 정보를 이 파일에 등록하면 부팅 시 자동으로 마운트할 수 있습니다.

/etc/fstab 파일 장점

  • 디스크 관리 용이 : /etc/fstab 파일은 디스크 관리와 문제 해결에 매우 유용합니다. 파일 시스템의 상세한 정보를 한눈에 파악할 수 있기 때문입니다.

  • UUID 지원 : /etc/fstab 파일에서는 UUID로 식별되는 파일 시스템을 사용할 수 있습니다. 특정 장치가 연결될 때마다 특정 장소에 자동으로 마운트되어야한다는 것을 설정할 수 있습니다.

/etc/fstab 파일 단점

  • 수동 설정 필요 : /etc/fstab 파일은 사용자가 직접 편집해야 합니다. 실수로 잘못된 설정을 입력하면 시스템 부팅에 문제를 일으킬 수 있습니다.

  • 동적 장치 인식 미지원 : /etc/fstab 파일은 고정된 장치에 대한 정보만을 담고 있으며, 동적으로 추가되거나 제거되는 장치(예: USB 메모리)에 대한 정보는 자동으로 갱신되지 않습니다.

cat /etc/fstab 명령어를 실행하면 /etc/fstab 파일의 내용을 확인할 수 있습니다.

cat /etc/fstab
# /etc/fstab
# Created by anaconda on Mon Jan 25 13:07:09 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       ext4    defaults,noatime,nodiratime,discard        1 1
UUID=67fe761d-0d23-4801-898b-cbd65df35b77 /boot                   ext4    defaults,noatime,nodiratime,discard        1 2
/dev/mapper/centos-tmp  /tmp                    ext4    defaults,noatime,nodiratime,discard        1 2
/dev/mapper/centos-var  /var                    ext4    defaults,noatime,nodiratime,discard        1 2
#/dev/mapper/centos-swap swap                    swap    defaults        0 0
/dev/mapper/data-pub    /pub                    ext4    defaults,noatime,nodiratime,discard        1 2
/pub/opt                /opt                    none    bind
/pub/var/opt            /var/opt                none    bind
UUID=4e1f5d51-e283-4228-b70d-f6f55376f7f4               swap            swap    defaults,noatime,nodiratime,discard        1 2

파일 시스템 문제 해결 방법

fsck 명령어를 사용한 파일 시스템 오류 검사 및 복구

이 명령어를 실행하면, 지정된 파일 시스템에 대해 일관성 검사를 수행하고 발견된 오류를 자동으로 수정합니다.

badblocks 명령어를 사용한 디스크 블록 검사

이 명령어를 실행하면, 지정된 디스크 장치에 대해 표면 검사를 수행하고 손상된 블록을 찾아냅니다.

badblocks 명령어의 사용 예제는 다음과 같습니다.

  • 비파괴 읽기 전용 테스트를 사용하여 디스크에서 불량 블록을 검색합니다.

  • badblocks -s /dev/sda2
    
    Checking for bad blocks (read-only test): done

리눅스 파일 시스템 관리의 중요성

정기적인 파일 시스템 확인의 중요성

파일 시스템은 운영 체제의 핵심 구성 요소이며, 이를 관리하는 것은 시스템의 안정성과 성능에 큰 영향을 미칩니다.

따라서, 정기적으로 파일 시스템을 확인하고 필요한 유지 보수 작업을 수행하는 것이 중요합니다.

리눅스 시스템 관리자로서의 역할

리눅스 시스템 관리자로서, 우리는 파일 시스템을 효과적으로 관리하고 문제를 빠르게 해결할 수 있는 능력이 필요합니다.

이를 위해, 우리는 파일 시스템의 기본 개념을 이해하고, 다양한 명령어와 도구를 사용하여 파일 시스템을 확인하고, 문제를 해결하는 방법을 알아야 합니다. 이러한 지식과 기술은 우리가 리눅스 시스템을 효과적으로 관리하고 최적의 성능을 달성하는 데 도움이 됩니다.

Previoussu와 sudo 명령어 활용법Next리눅스 파일과 디렉토리

Last updated 1 year ago

명령어는 디스크 사용량을 확인하는 데 사용되는 효과적인 도구입니다. 이 명령어를 실행하면, 파일 시스템의 총 공간, 사용된 공간, 사용 가능한 공간, 사용률, 그리고 마운트된 위치를 확인할 수 있습니다.

명령어는 디렉토리별로 사용된 디스크 공간을 확인하는 데 사용되는 효과적인 도구입니다. 이 명령어를 실행하면, 지정된 디렉토리와 그 하위 디렉토리에서 사용된 디스크 공간을 확인할 수 있습니다.

명령어는 시스템의 블록 장치 목록을 보여주는 데 사용되는 효과적인 도구입니다. 이 명령어를 실행하면, 블록 장치의 이름, 타입, 크기, 마운트된 위치 등을 확인할 수 있습니다.

명령어는 블록 장치의 속성을 식별하는 데 사용되는 효과적인 도구입니다. 이 명령어를 실행하면 블록 장치에 대해 사용 가능한 속성, 예를 들어 고유 식별자(UUID), 파일 시스템 유형(TYPE), 볼륨 레이블(LABEL) 등을 표시합니다.

명령어는 리눅스 시스템에서 파일 시스템의 마운트 정보를 확인하는 데 사용되는 효과적인 도구입니다. 이 명령어를 실행하면, /etc/fstab, /etc/mtab, 또는 /proc/self/mountinfo 파일에서 마운트 정보를 찾아 출력하여 보여줍니다.

명령어는 리눅스 시스템에서 파일 시스템의 마운트 정보를 확인하는 데 사용되는 명령어입니다.

파일은 시스템 부팅시 마운트할 파일 시스템 정보를 담고 있습니다. 이 파일을 확인하면, 마운트 되어 있는 파일 시스템의 장치 이름, 마운트 포인트, 파일 시스템 타입, 마운트 옵션 등을 알 수 있습니다.

명령어는 파일 시스템 오류를 검사하고 복구하는 데 사용됩니다.

명령어는 디스크에 손상된 블록이 있는지 검사하는 데 사용됩니다.

df
du
lsblk
blkid
findmnt
mount
/etc/fstab
fsck
badblocks