먼저 파티션의 뜻을 알아보자

"partition" 칸막이, 분할 등의 뜻으로 쓰인다
리눅스 운영체제에서 파티션도 같은 의미로 쓰인다 물리적인 디스크를 논리적 공간을 나누어서 저장 공간을 효율적으로 활용할 수 있게 해준다
예를 들어

이런 식의 저장 공간이 있으면
C: 드라이브에는 운영체제가 움직이기 위한 저장 공간이고
D: 드라이브에는 여러 가지 다운로드한 것들을 저장하는 공간이고
E: 드라이브에는 서류 같은 것들을 저장하기 위한 공간이다
이런 식으로 공간을 나누어서 효율적으로 저장 공간을 사용하기 위해 있는 게 "파티션"이다.
하드 디스크에는 여러 가지 타입이 있습니다 우리가 알기 쉽게 크고 간단하게
두 가지의 종류로 나눌 수 있습니다.
1. 일반 하드디스크
일반적인 하드디스크는


이런 식으로 동그란 팬에 내용을 저장하는 형태입니다 레코드와 같은 원리?라고 생각하시면 편합니다 이 하드디스크에도 여러 가지 종류들이 존재합니다.
IDE(병렬): 최초로 나온 가장 오래된 하드디스크 타입
리눅스 ex) hd(a, b, c, d) hda, hdb, hdc, ...
SCSI(직렬):서버나 워크스테이션 등에 쓰이는 고속 인터페이스다. 무엇보다 안정성이 높은 것이 최대의 장점이다
리눅스 ex) sd(a, b, c, d) sda, sdb, sdc, ...
하지만 이 팬들이 아무리 빨리 돌아봤자 속도의 한계가 존재합니다 그 한계를 깨고 나온 게 바로 ssd입니다
2.SSD(solid state drive)
하드디스크의 한계를 부시고 나온 디스크입니다 우리가 저장 공간에서 무엇을 불러올 때
일반적인 하드디스크는 팬 빙빙 돌려가며 찾아주지만 이 ssd는 전기 신호로 엄청 빠른 속도로 전달해 주기 때문에 요즘 pc를 맞추면 꼭 ssd를 포함해서 구입하는 이유입니다
서론이 정말 길었지만 이제 리눅스로 돌아가서 파티션을 나눠봅시다
우선 vmware에 SCSI 타입의 하드디스크를 한 장 더 껴줍니다.

Edit vittual machine settings 클릭

Add 클릭


hard Disk -> SCSI 타입 선택 후 next


create a new 용량은 가볍게 10GB 설정 후 next


이렇게 하시면 가상머신의 하드디스크를 하나 추가해줬습니다 실제 pc로 생각하면

pc 뜯어서 10기가짜리 이거 하나 달아줬다고 생각하시면 됩니다.

리눅스의 접속해서 #> ls -l /dev/sd*를 하시면 sda 외에도 sdb 라는게 보입니다
sd~ 앞에 숫자가 붙은 것은 파티션을 설정한 것이고
sda , sdb , sdc 등 다음으로 넘어가면 물리적 디스크를 표현하는 것입니다 우리는 방금 10gb 짜리 SCSI 타입의 하드디스크를 넣어줬기 때문에 기존에 있던 sda 외에 sdb 가 보이는 것을 확인할 수 있습니다.
이 sdb를 파티션 설정을 해 봅시다.
파티션 설정 (Partition)
연속된 저장 공간을 하나 이상의 독립된 영역으로 나누어
사용할 수 있도록 정의한 규약
1) 주 파티션(Primary Partition)
최대 4개까지 생성 가능
파티션 번호 : 1 ~ 4
2) 확장 파티션(Extended Partition)
파일 저장 용도 X ( 논리 파티션을 생성하기 위한 공간(바구니 역할) )
파티션 번호 : 1 ~ 4
3) 논리 파티션( Logical Partition)
주파티션과 같은 역할
확장 파티션 내에서만 생성 가능한 파티션
파티션 번호 : 5 ~ ( 개수 제한 없음 )
[command] fdisk
#>fdisk [dev_path]
m menu(help)
n 파티션 추가
d 파티션 삭제
p 파티션 테이블 확인
t 파티션 시스템 ID 변경
w 저장하고 종료
q 저장하지 않고 종료

fdisk 명령어는 다른 명령어들과 다르게 fdisk [파티션 생성 하드디스크] 명령어를 치면
새로운 커맨드를 칠 수 있게 나온다 저 창에서 n 을 치게 되면 파티션을 추가할 수 있다

n 을 치면 p, e 둘 중에 치라고 나온다 p는 primary 파티션으로 최대 4개까지 생성할 수 있으며 주파티션이라고 부른다
e는 디스크당 한 개만 생성할 수 있으며 바구니 같은 역할이라고 생각하면 된다 e를 만든 후 그 e 안에 다른 파티션들을 생성할 수 있다. 생성 개수에는 제한이 없으며 안정성이 떨어져서 가급적이면 사용하지 않도록 하는 것이 좋다.

이런 식이라고 생각하면 아주 편하다.
https://lifegoesonme.tistory.com/357
(extended, logical) 파티션의 이해를 돕기 위한 블로그

p를 눌러 primary 파티션을 생성해주자 그러면 1~4중에 몇 번째 번호로 생성할 것이냐고 물어본다 1번이 없으니 1을 치고 넘어가면 2048-20971519 kb 공간 안에서 사용할 공간을 지정할 수 있습니다 시작 공간을 정해주고 사용할 공간을 KB, MB, GB 단위로 정해주시면 됩니다. 1GB 만 사용하고 싶으니 +1G 입력하시면 2048KB~+1GB의 공간을 사용할 수 있습니다.

이 정도의 공간을 primary partition 1 번에 지정해주었습니다 꼭 지정해주고 w를 눌러 저장을 해주셔야 합니다

다 해주시면 아까는 없었던 sdb1 이 생성된 것을 볼 수 있습니다 저게 방금 저희가 만든 파티션입니다 하지만 여기서.. 이 공간을 사용하려면 먼저 포맷을 해줘야 하며
mount (마운트)라는 것을 해줘야 합니다 참 불편하죠? 저도요 >3<
윈도 같은 경우에는 물리적 디스크를 끼우기만 해도 바로

이런 식으로 올라와서 사용할 수 있지만 리눅스의 경우 저 공간을 사용하려면 포맷을 하고 사용할 공간을 또 만들어 mount를 해줘야 합니다.
우선 포맷을 시켜줍시다
1) 파일시스템 생성 ( 포맷 )
#>mkfs -t [type] [dev_path]
[option]
-t 파일시스템 형식 지정
[type]
xfs: 64비트 고성능 저널링 파일시스템 ( 저널링 파일시스템 : 백업 및 복구 능력이 있는 파일시스템 )
ext3: 저널링 파일시스템, ext2 보다 보안기능이 향상
ext4: 저널링 파일시스템, ext3 보다 더큰 용량을 지원하며 속도가 훨씬 빨라짐
swap: swap공간으로 사용되는 파일시스템
ext 종류의 파일시스템이 궁금하시다면
https://blog.naver.com/v_lovepooh_v/221334065116
위 글을 한번 읽어보시는 걸 추천합니다.

#> mkfs -t ext3 /dev/sdb1
ext3 타입으로 sdb1 파티션을 포맷시켜 주었습니다.
2) 확인
#>file -s [dev_path]
file 명령어는 예전에도 한번 배웠었죠? file의 속성을 확인하는 명령어인데 옵션-s는 해당 디스크의 파일시스템을 확인할 수 있습니다.

#> file -s /dev/sdb1 ext3이라고 출력되는 걸 볼 수 있습니다.
마운트 (mount)
#>mount [dev_path] [mount_point]
장치와 파일을 연결해주는 작업
[주의사항]
- 한 개의 장치는 한 개의 마운트 포인트만 사용( 1:1 )
- 반드시 포맷(파일시스템 생성) 후 사용
- 마운트 포인트는 임의의 디렉터리여야 한다.
- 마운트 해제 시, 작업 디렉터리가 마운트 포인트면 안된다
마운트를 하기 위해 [mount_point] 마운트 포인트를 만들어줍시다 위에 쓰여있는 것처럼 임의의 디렉터리에 마운트를 하면 되니 마운트 포인트를 만들어 줍시다.

#> mkdir /mp1로 마운트 해줄 마운트 포인트 생성해주고
#> mount /dev/sdb1 /mp1로 mp1이라는 곳에 아까 생성한 파티션을 마운트 해주었습니다.
이제 우리는 이 mp1이라는 공간을 아까 설정해둔 영역만큼 사용할 수 있게 되는 겁니다.
마운트 확인
#> df [option] [path] <- 경로 생략 가능
-h, --human-readable : 사람이 읽을 수 있는 형태의 크기로 출력한다(예를 들어 1K, 234M, 2G).
-H, --si : 1KB는 1,024바이트이지만 사용자가 보기 편하도록 1,000 단위로 용량을 표시한다.
-i, --inodes : 아이 노드의 남은 공간, 사용 공간, 사용 퍼센트 정보를 출력한다.
-k, --kilobytes : 1KB 단위로 출력한다.

df 명령어를 사용하여 마운트 목록들을 확인할 수 있다 우리가 방금 마운트 해준 /dev/sdb1 이 보인다 반가운 니까 인사해주자 안녕~
이어서 밑에 옵션 -h를 사용해서 마운트 목록을 확인해 보니 밑줄 친 것처럼 사람이 이해할 수 있게 size Avail 등 쉽게 읽을 수 있게 해준다

경로를 지정해주면 해당 mount만 확인할 수 있다.
이 마운트 된 저장 공간은 컴퓨터를 껐다 킬 시에 매번 다시 마운트 해줘야 사용할 수 있다.
자동 마운트 기능이 있는데 이건 다음번에 알아봅시다 ㅇㅅㅇ
마운트 해제
#>umount [dev_path( or mount_point)]

umount 명령어로 dev 경로나 마운트 포인트 경로를 이용해 마운트를 해제할 수 있다.
파티션 삭제

똑같이 fdisk 명령어의 삭제할 디스크를 선택해준 후 커맨드 창에서 d 옵션을 사용하면 된다. 파티션을 설정할 때와 마찬가지로 w로 저장을 해줘야 적용이 된다.
'Linux 2급' 카테고리의 다른 글
리눅스 그래픽 환경으로 바꾸기[CentOS] CLI -> GUI (Gnome desktop, run level) (0) | 2023.11.02 |
---|---|
리눅스 파일 압축, 압축 풀기, 아카이브 생성, 해제 (tar, gzip, bzip2, xz) (1) | 2023.11.02 |
리눅스 ACL(Access Control List) (getacl, setacl) (0) | 2023.11.02 |
리눅스 기초[특수 권한] (sudo, setuid, setgid, sticky bit) (0) | 2023.11.02 |
리눅스 기본 명령어 그룹관리, password 관리 (groupmod,groupadd, groupdel, groupmems, chage, id, passwd) (0) | 2023.11.02 |