하드디스크관리2

2024. 11. 20. 18:42b정리/이것이 리눅스다-우분투-3판

728x90
반응형

LVM 개념과 실습

https://www.youtube.com/watch?v=9wvc_SoORpQ&list=PLqTUMsvO70nnPQ42mtOKCgzlXeIy8GB0U&index=40

 

apt -y install lvm2

root@ServerA:~# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.
root@ServerA:~# pvcreate /dev/sdc1
  Physical volume "/dev/sdc1" successfully created.
  
  
root@ServerA:~# vgcreate myVG /dev/sdb1 /dev/sdc1
  Volume group "myVG" successfully created


root@ServerA:~# vgdisplay
  --- Volume group ---
  VG Name               myVG
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               4.99 GiB
  PE Size               4.00 MiB
  Total PE              1278
  Alloc PE / Size       0 / 0
  Free  PE / Size       1278 / 4.99 GiB
  VG UUID               7nWlpU-nRah-1mdP-wYJF-Ufw3-1RBx-YgUDf8

root@ServerA:~# lvcreate --size 1G --name myLG1 myVG
  Logical volume "myLG1" created.
  
root@ServerA:~# lvcreate --size 3G --name myLG2 myVG

  Logical volume "myLG2" created.

root@ServerA:~# lvcreate --extents 100%FREE --name myLG3 myVG
  Logical volume "myLG3" created.


root@ServerA:~# ls -l /dev/myVG
합계 0
lrwxrwxrwx 1 root root 7 11월 16 11:23 myLG1 -> ../dm-0
lrwxrwxrwx 1 root root 7 11월 16 11:23 myLG2 -> ../dm-1
lrwxrwxrwx 1 root root 7 11월 16 11:24 myLG3 -> ../dm-2
root@ServerA:~# mkfs.ext4 /dev/myVG/myLG1
mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 262144 4k blocks and 65536 inodes
Filesystem UUID: dd76922e-6edf-4f7f-8cb3-1e02a9631e6c
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376

Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

root@ServerA:~# mkfs.ext4 /dev/myVG/myLG2
mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 786432 4k blocks and 196608 inodes
Filesystem UUID: 5443c085-8bf0-4be9-b5c1-b8d0f92a6c9a
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

root@ServerA:~# mkfs.ext4 /dev/myVG/myLG3
mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 260096 4k blocks and 65024 inodes
Filesystem UUID: a29a5c9e-0785-42e7-86fd-65931ab6dca2
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376

Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

root@ServerA:~# mkdir /lvm1 /lvm2 /lvm3


root@ServerA:~# mount /dev/myVG/myLG1 /lvm1
root@ServerA:~# mount /dev/myVG/myLG2 /lvm2
root@ServerA:~# mount /dev/myVG/myLG3 /lvm3
root@ServerA:~# df
파일 시스템             1K-블록     사용     가용 사용% 마운트위치
tmpfs                    396104     1856   394248    1% /run
/dev/sda2              81984920 10655388 67119000   14% /
tmpfs                   1980500        0  1980500    0% /dev/shm
tmpfs                      5120        0     5120    0% /run/lock
tmpfs                    396100      100   396000    1% /run/user/0
/dev/mapper/myVG-myLG1   996780       24   927944    1% /lvm1
/dev/mapper/myVG-myLG2  3021608       24  2847916    1% /lvm2
/dev/mapper/myVG-myLG3  1005120       24   936696    1% /lvm

root@ServerA:~# vi /etc/fstab
root@ServerA:~# reboot

root@ServerA:~# df
파일 시스템             1K-블록     사용     가용 사용% 마운트위치
tmpfs                    396100     1876   394224    1% /run
/dev/sda2              81984920 10661380 67113008   14% /
tmpfs                   1980492        0  1980492    0% /dev/shm
tmpfs                      5120        0     5120    0% /run/lock
/dev/mapper/myVG-myLG1   996780    14628   913340    2% /lvm1
/dev/mapper/myVG-myLG3  1005120    14628   922092    2% /lvm3
/dev/mapper/myVG-myLG2  3021608    14628  2833312    1% /lvm2
tmpfs                    396096      104   395992    1% /run/user/0

사용자별 공간 할당(쿼터)

 

apt -y install quota

mkdir /userHome
vi /etc/fstab
## dev/sdb1 /userHome ext4 defaults 0 0 추가
systemctl daemon-reload # 변경내용 저장
tune2fs -O quota /dev/sdb1 # 쿼터 환경 설정
reboot

##사용자 만들기

root@ServerA:~# adduser --home /userHome/karina karina
info: Adding user `karina' ...
info: Selecting UID/GID from range 1000 to 59999 ...
info: Adding new group `karina' (1001) ...
info: Adding new user `karina' (1001) with group `karina (1001)' ...
info: Creating home directory `/userHome/karina' ...
info: Copying files from `/etc/skel' ...
신규 비밀번호:
잘못된 비밀번호: 암호는 8 개의 문자 보다 짧습니다
신규 비밀번호 재 입력:
죄송하지만, 비밀번호가 일치하지 않습니다.
신규 비밀번호:
잘못된 비밀번호: 암호는 8 개의 문자 보다 짧습니다
신규 비밀번호 재 입력:
passwd: 암호를 성공적으로 업데이트했습니다
karina의 사용자의 정보를 바꿉니다
새로운 값을 넣거나, 기본값을 원하시면 엔터를 치세요
        이름 []:
        방 번호 []:
        직장 전화번호 []:
        집 전화번호 []:
        기타 []:
정보가 올바릅니까? [Y/n] y
info: Adding new user `karina' to supplemental / extra groups `users' ...
info: Adding user `karina' to group `users' ...
root@ServerA:~# adduser --home /userHome/winter winter
info: Adding user `winter' ...
info: Selecting UID/GID from range 1000 to 59999 ...
info: Adding new group `winter' (1002) ...
info: Adding new user `winter' (1002) with group `winter (1002)' ...
info: Creating home directory `/userHome/winter' ...
info: Copying files from `/etc/skel' ...
신규 비밀번호:
잘못된 비밀번호: 암호는 8 개의 문자 보다 짧습니다
신규 비밀번호 재 입력:
passwd: 암호를 성공적으로 업데이트했습니다
winter의 사용자의 정보를 바꿉니다
새로운 값을 넣거나, 기본값을 원하시면 엔터를 치세요
        이름 []:
        방 번호 []:
        직장 전화번호 []:
        집 전화번호 []:
        기타 []:
정보가 올바릅니까? [Y/n]
info: Adding new user `winter' to supplemental / extra groups `users' ...
info: Adding user `winter' to group `users' ...
root@ServerA:~# /cd /userHome/
-bash: /cd: 그런 파일이나 디렉터리가 없습니다
root@ServerA:~# cd /userHome/
root@ServerA:/userHome# pwd
/userHome
root@ServerA:/userHome# cp /boot/vmlinuz
vmlinuz                   vmlinuz-6.8.0-47-generic  vmlinuz-6.8.0-48-generic  vmlinuz.old
root@ServerA:/userHome# cp /boot/vmlinuz-6.8.0-48-generic testFile
root@ServerA:/userHome# chmod 777 testFile
root@ServerA:/userHome# ls -l
합계 14628
drwxr-x--- 2 karina karina     4096 11월 18 13:06 karina
drwx------ 2 root   root      16384 11월 18 13:04 lost+found
-rwxrwxrwx 1 root   root   14952840 11월 18 13:09 testFile
drwxr-x--- 2 winter winter     4096 11월 18 13:07 winter

quotaon -va # 쿼터시작
/dev/sdb1 [/userHome]: group quotas turned on
/dev/sdb1 [/userHome]: user quotas turned on

edquota -u karina
  • a(ALL) : 모든 파일 시스템을 켜거나 끈다.
  • f(OFF) : 쿼터를 끈다.
  • u(User) : 사용자 쿼터를 운영한다.
  • g(Group) : 그룹 쿼터를 운영한다.
  • p(print-state) : 처리 결과를 출력
  • v(Verbose) : 파일 시스템의 상태를 보여준다.

 

soft 40mb / hard 50mb 적용

  • 소프트 최대 용량
  •  하드는 약 7일동안 소프트에서 ~하드까지 조금 넘는건 허용하지만 7일안에 정리해야 함

root@ServerA:/userHome# edquota -u karina
root@ServerA:/userHome# su - karina
karina@ServerA:~$ whoami
karina
karina@ServerA:~$ pwd
/userHome/karina
karina@ServerA:~$
karina@ServerA:~$
karina@ServerA:~$ cp /userHome/testFile test1
karina@ServerA:~$ cp /userHome/testFile test2
karina@ServerA:~$ cp /userHome/testFile test3
karina@ServerA:~$ ls -l
합계 43812
-rwxrwxr-x 1 karina karina 14952840 11월 18 13:13 test1
-rwxrwxr-x 1 karina karina 14952840 11월 18 13:14 test2
-rwxrwxr-x 1 karina karina 14952840 11월 18 13:14 test3
karina@ServerA:~$ cp /userHome/testFile test4
cp: '/userHome/testFile'을(를) 'test4'(으)로 복사 오류: 디스크 할당량이 초과됨
karina@ServerA:~$ ls -l
합계 51184
-rwxrwxr-x 1 karina karina 14952840 11월 18 13:13 test1
-rwxrwxr-x 1 karina karina 14952840 11월 18 13:14 test2
-rwxrwxr-x 1 karina karina 14952840 11월 18 13:14 test3
-rwxrwxr-x 1 karina karina  7548928 11월 18 13:14 test4

### test3는 허용되어 복사됬지만 7일안에 정리
### test4는 반만 복사가 된 상태 용량이 부족하기 때문

##용량 확인
quota
Disk quotas for user karina (uid 1001):
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
      /dev/sdb1   51200*  40960   51200   6days       8       0       0
      
#root 용량 확인
root@ServerA:/userHome# repquota /userHome/
*** Report for user quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --   14624       0       0              3     0     0
karina    +-   51200   40960   51200  6days       9     0     0
winter    --      16       0       0              4     0     0

##winter 똑같이 적용
root@ServerA:/userHome# edquota -p karina winter
root@ServerA:/userHome# repquota /userHome/
*** Report for user quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --   14624       0       0              3     0     0
karina    +-   51200   40960   51200  6days       9     0     0
winter    --      16   40960   51200              4     0     0

 

반응형