- 디스크 파티션 방법
- 전원 오프
- $ poweroff
- 디스크 삽입
- Add -> SCSI -> 5GB
- 파티셔닝 : 하나의 디스크를 논리적으로 분할
- # fdisk -l : 모든 디스크 확인
- # fdisk 장치명(p : 파티션 테이블 확인, n : 새로운 파티션 생성, w : 설정값 저장하고 나가기, d : 파티션 삭제) : 파티셔닝 -> 파티셔닝 후 fdisk -l로 확인
- sda1(a : 디스크 순서, 1 : 파티션 순서)
- 포맷팅 : 파일 시스템을 구축
- # mkfs -t 파일시스템유형 디스크파티션 or mkfs.ext4 디스크파티션
- 마운트 : 물리적 장치를 특정 위치에 연결해 사용가능 하게 함
- $ mkdir 디렉터리 : mount point 생성
- $ mount 디스크파티션 마운트포인트 : 마운트 -> mount point에 lost+found(저널링) 생성
- /etc/fstab : 파일 시스템 테이블(부팅 시 마운트 정보 저장)
- 파일시스템 마운트포인트 파일시스템유형 옵션 덤프(백업) 파일체크옵션(루트파일시스템점검)
- mount -a : fstab을 참조해서 모두 마운트
※ 장애 발생 시
/etc/fstab 수정
- RAID(Redundant Array of Inexpensive Disks)
여러 개의 디스크를 하나의 디스크처럼 사용함
비용 절감 + 신뢰성 향상 + 성능 향상의 효과를 냄
하드웨어 RAID : 하드웨어 제조업체에서 여러 개의 하드디스크를 가지고 장비를 만들어서 그 자체를 공급(조금 더 안정적이지만, 고가)
소프트웨어 RAID : 고가의 하드웨어 RAID의 대안, 운영체제에서 지원하는 방식(저렴한 비용으로 좀 더 안전한 데이터 저장 가능)
Linear RAID, RAID0, RAID1, RAID5, RAID6 등
- RAID 방법
sdb
sdc -> RAID 0
sdd
sde -> RAID 1
sdf
sdg
sdh -> RAID 5
# fdisk /dev/sdb
n -> t -> L -> fd -> -> w : t는 id 변경, L은 id 리스트 출력, fd는 raid id
# sfdisk -d /dev/sdb > /tmp/sdb.dmp -> /dev/sdb에 파티션 정보를 dump파일로 저장
# sfidsk -f /dev/sdc < /tmp/sdb.dmp -> /dev/sdc에 저장한 파일을 덮어쓰기
# mdadm --create md명 --level=0 --raid-devices=2 파티션명 파티션명 -> b와 c는 RAID0이기 때문에 level=0, 디바이스 개수는 2개
※ 만약 mount 된 파티션이 있다면 busy로 오류 발생, umount로 마운트 해제시킨 후 다시 진행
# cat /proc/mdstat 으로 확인
# mdadm --detail md명 으로 확인
# mkfs -t 파일유형 md명 으로 포맷팅(안하면 bad superblock 오류가 뜸)
# mount 파티션명 마운트포인트 로 마운트
※ md는 multiple device의 약어, RAID를 보통 md라고 부름
나머지 RAID도 parameter 변경해서 동일하게 진행
# mdadm md명 --add 파티션명 -> raid volume에 추가
※ Rocky9의 경우, 리부트 시 장치명이 변경될 수 있기 때문에 UUID로 fstab 설정(# blkid 장치명)
- io 테스트(디스크 속도 벤치마크)
io테스트 툴인 bonnie++ 다운
다운 경로 이동
# ./configure --prefix=/usr/local/bonnie ; make ; make install
# /usr/local/bonnie/sbin/bonnie++ -d /md0 -s 2048:1024 -n 100 -m mirror -r 1024 -u0:0 > /tmp/md0.txt
# cat /tmp/md0.txt로 결과 확인
- ubuntu some index files failed to download 오류 시 해결 방법
- LVM(Logical Volume Manage)
여러 개의 하드디스크를 합쳐서 한 개의 파일시스템으로 사용하는 것으로 필요에 따라서 다시 나눌 수 있음
물리 볼륨(Pysical Volume) : /dev/sda1, /dev/sdb1 등의 파티션
볼륨 그룹(Volume Group) : 물리 볼륨을 합쳐서 1개의 물리 그룹으로 만드는 것
논리 볼륨(Logical Volume) : 볼륨 그룹을 1개 이상으로 나눠서 논리 그룹으로 나눈 것
- LVM 방법
- 디스크 추가
- 파티셔닝(type = 8e)
- 물리 볼륨 생성
# pvcreate 장치명 - 볼륨 그룹 생성
# vgcreate 그룹명 장치명 장치명 - 확인
# vgdisplay - 논리 볼륨 생성
# lvcreate --size 원하는 용량 --name 논리 볼륨명 그룹명
# lvcreate --extents 100%free --name 논리 볼륨명 그룹명(남은 용량 전체 사용) - 확인
# ls -l /dev/그룹명/장치명* - 포맷팅
- 마운트
- 확인
# df -Th
- quota
파일시스템마다 사용자나 그룹이 생성할 수 있는 파일의 용량 및 개수를 제한하는 것
파일시스템을 "/"로 지정하는 것보다는, 별도의 파일시스템을 지정해서 해당 부분을 쓰도록 하는 것이 좋음
"/"파일시스템을 많은 사용자가 동시에 사용하게 되면, CentOS 서버를 운영하기 위해서 디스크를 읽고 쓰는 작업과 일반 사용자가 디스크를 읽고 쓰는 작업이 동시에 발생하므로 전반적으로 시스템의 성능이 저하됨
- quota 방법
- 디스크 추가
- 파티셔닝
- 포맷팅
- 마운트(마운트포인트는 quota 디렉터리)
- 사용자 추가
# useradd -d 유저디렉터리 유저명
# adduser --home 유저디렉터리 유저명(ubuntu버전) - 비밀번호 설정
# passwd 유저명 - fstab에 옵션추가
defaults, usrjquota=aquota.user,jqfmt=vfsv0 - 리마운트
# mount -o remount quota디렉터리 - quota 끄기
# quotaoff -avug - quota 점검
# quotacheck -augmn - aquota.user 파일 제거
# rm -rf aquota.user - quota 점검
# quotacheck -augmn - aquota.user, group 파일 생성
# touch aquota.user aquota.group - 권한 설정
# chmod 600 aquota.* - quota 점검
# quotacheck -augmn - quota 켜기
# quotaon -avug - 사용자별 quota 편집
# edquota -u 사용자명
block soft hard inodes 설정 및 저장 - 사용자 로그인
# su ben - 테스트(파일 생성으로 용량 제한 넘기기)
- 확인
# repquota quota디렉터리 - 옵션 복붙
# edquota -p 옵션 적용된 사용자 옵션 적용할 사용자
'🔐 [정보보안] 모의해킹 침해대응 전문가 취업캠프 > Server' 카테고리의 다른 글
[Linux] Web Server 구축 (0) | 2023.09.12 |
---|---|
[Linux] Telnet, SSH (0) | 2023.09.12 |
[Linux] 리눅스 개요 (0) | 2023.08.30 |
[Linux] 기본 명령어 (0) | 2023.08.30 |
[Server] 환경 설정 (0) | 2023.08.29 |