gdisk 명령으로 사용해 GPT 방식으로 파티션 하는 방법이다. GPT는 128개의 파티션을 만들 수 있다. 0번 섹터는 호환을 위해 MBR로 사용한다. 1~2048은 GPT 메타정보가 저장되어 있고 맨 마지막 부분에 이 내용을 백업을 해두었기 때문에 사용이 불가능하다.
용량설정에서 + or -가 있는데 +는 fdisk와 똑같고 -는 뒤에서 설정한 용량만큼 빼서 준다는 의미이다.
저장 후 확인해보면 disk label type이 gpt인 것을 알 수 있다.
파티션 만들고 포맷까지 진행하면 inode 비트맵 구역과 데이터 블록 비트맵 구역으로 나누는데 이를 파일시스템을 만든다고 보면 된다. 파일은 inode로 관리되고 디렉터리는 단순히 파일의 목록을 가지고 있는 파일일 뿐이다. 특수 파일을 통해 장치에 접근이 가능하다. 일반적으로 블록은 4KB이다.
슈퍼블록: 파일 시스템과 관련된 다양한 정보가 저장됨(inode 개수, 전체 블록수, 블록 크기, 마운트 시간 등등), 이 블록에 문제가 생길 시 전체 파일 시스템을 사용할 수 없게된다. 따라서 슈퍼블록은 다른 블록 그룹에 백업을 해둔다.
lsblk
lsblk -f
mkfs -t ext4 디스크 파티션(/dev/sdb1)
mkfs.xfs 디스크(/dev/sdb2)
-----> ' . ' 과 ' -t ' 둘다 가능
파일시스템을 생성한 후 파일시스템에 접근할 수 있는 경로를 생성하는 과정을 마운트라 한다. 즉 파일 시스템을 디렉터리 계층구조의 특정 디렉터리와 연결하는 것을 의미한다.
파일 시스템이 마운트 할때 디렉터리 계층 구조에서 파일 시스템이 연결되는 디렉터리를 마운트 포인트 라 한다. 리눅스의 파일 시스템은 /부터 시작하여 하위 디렉터리들이 연결되어있는 계층적 구조이다. 따라서 새로운 파일 시스템을 추가로 연결할 경우 /아래에 파일 시스템이 연결될 수 있는 경로를 생성하거나 지정하여 연결한다. (ex < /uer: 마운트 포인트 > 밑에 파일시스템2)
mount / umount
파일 시스템 4개를 각각의 디렉터리에 마운트 할것이다. 마운트한 디렉터리에 들어가서 파일을 하나 만든다. 나가서 확인해서보면 파일이 만들어진 것을 확인할 수 있다. lost+found 는 깨진 파일을 복구할때 사용하는 디렉터리이다.
umount명령을 실행하면 만들어진 파일이 들어있지 않은 것을 확인할 수 있다. 그후 sdb1를 다른 디렉터리에 마운트하게 되었을때 그 디렉터리에 전에 만들었던 파일이 연결된 것을 확인할 수 있다. 즉 파일이 파일 시스템에 생성이 된다는 것이다.
mount -t iso9660 -o ro /dev/cdrom 마운트포인트(/cdrom)
가상머신의 cd인 iso9660를 마운트한다.
장치명: 파일시스템 장치명, 특정 디스크를 지정한다.
마운트 포인트: 파일시스템이 마운트 될 마운트 포인트를 설정
옵션: 파일 시스템의 속성을 지정하는데 보통 defaults, ro와 rw가 주로 사용된다
덤프관련 설정: 0-덤프 불가, 1-덤프 가능
파일점검옵션: 0-부팅시 fsck안함, 1-루트 파일시스템, 2-루트 파일시스템 이외
메모리는 주 기억장치로 속도는 빠르지만 전원을 끄면 데이터가 사라지는 휘발성 기억장치이다. RAM이라고 불리며 가격이 비싼 장치이다.
디스크(스토리지)는 보조 기억장치로 속도는 메모리에 비해 느리지만 전원을 꺼도 데이터가 유지되는 비휘발성 기억장치이다. 가격도 메모리보다 싸다.
리눅스의 가상 메모리 = 실제 물리 메모리(RAM) + SWAP(디스크 장치에 생성되는 영역, 실제 메모리의 2배정도로 세팅)
💡 페이징 기법 - Paged-in 과 Paged-out를 통틀어서 말함
CPU는 스왑영역에 있는 데이터를 물리 메모리처럼 직접 읽을 수 없기 때문에 이런 기법들이 필요하다.
페이지 인: 프로세스가 스왑 영역에 존재한다면 스왑 영역의 데이터를 물리메모리 영역으로 이동시키는 작업
페이지 아웃: 물리 메모리에 위차한 프로세스를 많이 사용하지 않은 경우, 다른 프로세스를 위해 스왑영역으로 이동시키는 작업