리눅스 / 하드디스크 파디션 만들기, 포맷하기, 마운트하기

리눅스에서 하드디스크 파티션 만들고, 포맷 하고, 마운트 하는 방법을 요약합니다.

장착된 하드디스크 확인하기

컴퓨터에 장착된 하드디스크 정보를 출력합니다.

fdisk -l

/dev/sda, /dev/sdb 등이 하드디스크입니다.

파티션 만들기

파티션을 관리하는 명령어는 fdisk입니다. /dev/sdb의 파티션을 관리하고 싶다면 다음과 같이 명령합니다.

fdisk /dev/sdb

도움말이 필요하면 m을 입력합니다.

새 파티션은 n을 입력하고 안내에 따라 만듭니다.

w를 입력해야 변경사항이 반영됩니다.

포맷하기

포맷하는 명령어는 mkfs입니다. 예를 들어 /dev/sdb1 파티션을 xfs 파일 시스템으로 포맷하려면 다음과 같이 명령합니다.

mkfs.xfs -f /dev/sdb1

마운트하기

파티션을 특정 디렉토리에 연결해야 그 파티션을 사용할 수 있습니다. 예를 들어 /dev/sdb1을 /home 디렉토리에 마운트하려면 다음과 같이 명령합니다.

mount /dev/sdb1 /home

마운트 된 파티션의 파일 시스템을 확인하려면 df 명령어를 이용합니다.

df -T

마운트를 해제할 때는 umount 명령어를 사용합니다.

umount /dev/sdb1

부팅 시 자동으로 마운트되도록 하려면 /etc/fstab 파일에 다음과 같은 코드를 추가합니다.

/dev/sdb1 /home xfs defaults 0 0

/dev/sdb1 파티션을 /home 폴더에 마운트하라는 뜻입니다. 파일 시스템 등 옵션은 적절히 변경합니다.

UUID 사용하기

하드디스크에 /dev/sdb 같은 이름이 붙고, 파티션에는 /dev/sdb1 같은 이름이 붙는데, 이 이름이 고정된 것은 아닙니다. 하드디스크 장착 위치를 바꾸거나, 인식 순서가 바뀌면 그 이름도 바뀝니다. 그런 경우 마운트가 제대로 되지 않을 수 있습니다.

그래서 마운트를 할 때는 하드디스크 고유값인 UUID를 사용하는 것이 좋습니다. UUID는 blkid 명령으로 확인할 수 있습니다.

[root@localhost ~]# blkid
/dev/sda1: UUID="69d9add5-2153-4bc2-ad99-1560fb205c4b" TYPE="ext4" PARTUUID="aa61ba4b-01"
/dev/sda2: UUID="PuMuNg-5YHg-qikJ-tc10-iPIM-7W1q-4fUqyc" TYPE="LVM2_member" PARTUUID="aa61ba4b-02"
/dev/mapper/cl-root: UUID="79c8cfcb-c9e2-4243-8cf2-cf10eab57c40" TYPE="xfs"
/dev/mapper/cl-swap: UUID="b69a5fc3-98db-4a27-b3d4-a7ef76244ad1" TYPE="swap"
/dev/mapper/cl-home: UUID="fd372a6b-ee76-41d6-b7e6-6e6a7cf8193b" TYPE="xfs"
/dev/sdb1: UUID="fd95c93f-03fc-418a-a6db-c26b921ec93b" TYPE="xfs" PARTUUID="e5f55ef6-01"

/etc/fstab에 마운트 정보를 넣을 때

/dev/sdb1 /home xfs defaults 0 0

대신 다음처럼 하면 됩니다.

UUID=fd95c93f-03fc-418a-a6db-c26b921ec93b /home xfs defaults 0 0

같은 카테고리의 다른 글

CentOS / 버전 확인하는 방법

CentOS / 버전 확인하는 방법

cat /etc/redhat-release # cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) cat /etc/*release* # cat /etc/*release* CentOS Linux release 7.4.1708 (Core) Derived from Red Hat Enterprise Linux 7.4 (Source) NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7" CentOS Linux release 7.4.1708 (Core) CentOS Linux release 7.4.1708 (Core) cpe:/o:centos:centos:7

Ubuntu 16.04 / root 계정으로 로그인하기, root 계정으로 ssh 접속하기

Ubuntu 16.04 / root 계정으로 로그인하기, root 계정으로 ssh 접속하기

우분투(Ubuntu)는 보안상의 이유로 root 계정으로 로그인하는 것을 막아두었습니다. 만약 root 계정으로 접속하여 관리하고 싶다면 추가적인 작업이 필요합니다. root 계정으로 접속하기 설치할 때 만든 사용자 계정으로 로그인한 후 다음과 같이 명령하여 root 계정의 비밀번호를 생성합니다. sudo passwd root 비밀번호를 만들면 root 계정으로 로그인할 수 있습니다. root 계정으로 ssh 접속하기 root 계정으로 ssh 접속을 하기 위해서는 /etc/ssh/sshd_config 파일을 수정해야 ...

Ubuntu 18.04 / 고정 IP 설정하는 방법

Ubuntu 18.04 / 고정 IP 설정하는 방법

네트워크 설정 파일 우분투 18.04의 네트워크 설정 파일은 /etc/netplan 디렉토리 안에 있는 yaml 파일입니다. 고정 IP로 설정하기 DHCP로 설치했다면, 설정 파일 내용은 다음과 같습니다. network: ethernets: enp0s3: addresses: ...

Ubuntu 16.04 / ufw로 방화벽 설정하는 방법

Ubuntu 16.04 / ufw로 방화벽 설정하는 방법

우분투의 방화벽 설정 프로그램은 ufw입니다. ufw로 방화벽을 활성화시키고 관리하는 방법을 메모합니다. 방화벽 활성화 ufw enable 방화벽 비활성화 ufw disable 방화벽 상태 확인 ufw status 53 포트 허용 ufw allow 53 53 포트 tcp 패킷 허용 ufw allow 53/tcp 53 포트 udp 패킷 허용 ufw allow 53/udp 53 포트 거부 ufw deny 53 53 포트 tcp 패킷 거부 ufw deny 53/tcp 53 포트 udp 패킷 거부 ufw deny 53/udp 53 ...

Ubuntu 18.04 / 백신 프로그램 ClamAV 설치 및 사용법

Ubuntu 18.04 / 백신 프로그램 ClamAV 설치 및 사용법

ClamAV ClamAV는 우분투에 사용할 수 있는 백신 프로그램입니다. 패키지에 포함되어 있으므로 쉽게 설치하고 사용할 수 있습니다. 설치 apt install clamav 사용법 데이터베이스 업데이트 데이터베이스 업데이트는 자동으로 됩니다. 만약 수동으로 업데이트를 해야한다면 freshclam 와 같이 명령합니다. 만약 Can't find or parse configuration file /etc/clamav/clamd.conf와 같은 에러가 난다면 대몬을 설치해야 한다고 합니다. apt install clamav-daemon 에러가 나도 바이러스 정의는 업데이트되는 거 같습니다. 꼭 설치해야 ...

Ubuntu 20.04 / Apache, PHP, MariaDB 설치하는 방법

Ubuntu 20.04 / Apache, PHP, MariaDB 설치하는 방법

Ubuntu 20.04에 웹서버 Apache, 웹프로그래밍 언어 PHP, 데이터베이스 MariaDB를 설치하는 방법입니다. 웹서버 운영을 위한 최소한의 설치로, 실제로 서비스할 때는 더 많은 패키지가 필요할 수 있습니다. 설치 Apache, PHP, MariaDB를 설치합니다. php-mysql은 PHP와 MariaDB 연동을 위한 패키지입니다. apt install apache2 mariadb-server php php-mysql MariaDB 설정 다음과 같이 명령하여 몇 가지 설정을 합니다. mysql_secure_installation MariaDB의 root 계정 비밀번호를 입력하라고 ...

Ubuntu / 특정 패키지만 업그레이드 하기, 보안 업데이트만 업그레이드 하기

Ubuntu / 특정 패키지만 업그레이드 하기, 보안 업데이트만 업그레이드 하기

우분투 서버에 접속하면 업데이트가 필요한 패키지가 있는지 알려줍니다. 두 가지 분류로 알려주는데, 하나는 패키지 업데이트, 또 하나는 보안 업데이트입니다. 소프트웨어는 보통 최신 버전을 유지하는 것이 좋지만, 업그레이드했을 때 문제가 없는지 충분히 확인을 해야 합니다. 따라서 특정 패키지만 업그레이드를 하거나, 보안 업데이트만 해야 하는 경우가 발생하는데, 어떻게 그런 작업을 하는지 알아보겠습니다. 특정 ...

Ubuntu 18.04 / Apache 사용자 인증 만드는 방법

Ubuntu 18.04 / Apache 사용자 인증 만드는 방법

웹사이트의 콘텐츠를 특정 사용자만 볼 수 있게 하는 방법은 여러 가지가 있습니다. 만약 웹서버에 대한 충분한 권한이 있다면, Apache를 이용하여 구현할 수 있습니다. 비밀번호 파일 만들기 비밀번호 파일은 htpasswd 명령어로 만듭니다. /home/auth/ 디렉토리에 passwords라는 이름의 파일을 만들고, 사용자 user1의 비밀번호를 정하고 싶다면 다음과 같이 명령합니다. htpasswd -c /home/auth/passwords user1 .htaccess 파일 만들기 웹사이트의 루트 디렉토리에 ...

Ubuntu 18.04 / 시간대(time zone) 설정하는 방법

Ubuntu 18.04 / 시간대(time zone) 설정하는 방법

우분투를 설치할 때 시간대 설정을 합니다. 그런데 AWS 같이 OS가 설치된 상태의 가상 서버를 사용하면, 서버의 시간대와 내가 원하는 시간대가 맞지 않을 수 있습니다. 시간대를 어떻게 설정하는지 알아보겠습니다. 현재 서버의 시간대 확인 현재 서버에 설정된 시간대는 date 명령어로 확인할 수 있습니다. root@jb-dev-01:~# date Mon Dec 3 17:03:06 UTC 2018 시간대 설정 - 방법 1 시간대를 ...

리눅스 / 명령어 / ls - 디렉토리와 파일 목록 출력하는 명령어

리눅스 / 명령어 / ls - 디렉토리와 파일 목록 출력하는 명령어

ls ls는 list의 약어로, 디렉토리와 파일 목록 출력하는 명령어입니다. ls 디렉토리명 디렉토리에 속한 디렉토리와 파일 목록을 출력합니다. 숨김 파일은 나오지 않습니다. 디렉토리명을 생략하면 현재 디렉토리에 속한 디렉토리와 파일 목록을 출력합니다. ls /var /var 디렉토리에 속한 디렉토리와 파일 목록을 출력합니다. ls -a, ls -l -a 옵션을 붙이면 숨김 파일도 출력합니다. -l 옵션을 붙이면 소유자, 파일 크기 등 자세한 정보도 같이 출력합니다. -al ...