이 결과는 df -k
다음 과 같습니다.
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/xvda1 10317860 7059008 2734732 73% /
none 847584 0 847584 0% /dev/shm
/dev/xvdb 153899044 192068 145889352 1% /mnt/ephemeral
Centos EBS 부팅 이미지를 사용하고 있습니다.
이에 관한 다양한 질문을 읽었지만 새 드라이브를 마운트하라고 지시합니다. 그러나 드라이브는 이미에 마운트되어 있다고 생각합니다 /dev/xvdb
. 제가 맞습니까?
나는 이것을 사용할 수 있습니까?
mkswap -f /dev/xvdb
#add in /etc/fstab
/dev/xvdb swap swap defaults 0 0
swapon /dev/xvdb
작동합니까?
답변
/ dev / xvdb는 실제로 마운트되어 있기 때문에 임시 드라이브에 중요한 내용을 유지하는 것이 실제로 나쁜 생각이지만 유지하려는 항목이 있는지 확인해야합니다.
/ dev / xvdb를 마운트 해제해야합니다.
당신이 할 수있는 동안
mkswap /dev/xvdb
임시 드라이브 전체의 스왑 공간을 만들므로 거의 필요하지 않습니다. 또한 스왑을 분할하면 나머지 임시 드라이브를 tmp 폴더와 같은 작업이나 세션 저장 (호스트가 웹 서버 인 경우)에 사용할 수 있습니다. 임시 드라이브는 매우 빠르지 만 슬프게도 영구적이지 않습니다.
어쨌든, 스왑 파티션으로 돌아갑니다!
Abhishek가 언급 한대로 sfdisk를 사용하거나 fdisk를 사용하여 스왑 파티션을 수동으로 작성하는 것이 좋습니다.
fdisk /dev/xvdb
Press N to create a new partition
P for primary
1 for the first partition
Press Enter to accept the first location
Enter +xG where x is the size of the swapspace you want. I typically use twice the amount of RAM, but this is not a hard and fast rule
Enter T to change the type
Enter 82 for Linux Swap
Enter W to write the changes
Enter q to quit
이제 스왑 공간을 만들 수 있습니다
mkswap /dev/xvdb1
그런 다음
swapon /dev/xvdb1
그러나 경고의 한 단어, 그리고 나는 “나는 할머니에게 달걀을 빨아 먹는 법을 가르치는”사과합니다하지만 이름에서 알 수 있듯이, 임시 드라이브는 … 음, 임시입니다. 인스턴스를 종료 한 경우 스왑 파티션을 다시 생성하고 활성화해야합니다. 이런 이유로 fstab에 새로 작성된 스왑 공간을 추가하지 마십시오.
그러나 재부팅은 괜찮습니다.
답변
임시 장치에서 스왑을 만드는 데 도움이되는 스크립트 를 만들었습니다 . lvm을 사용하여 스왑 볼륨을 만들고 / tmp로 유용 할 수있는 볼륨을 만듭니다. cloud-init를 사용하여 트리거 할 수 있습니다.
bootcmd:
- [ cloud-init-per, once, mk-eph, /usr/local/sbin/mk-eph.sh]
# Filesystem setup
fs_setup:
- label: 'tmp'
filesystem: 'xfs'
device: '/dev/ephemeral/tmp'
partition: 'auto'
mounts:
- [ /dev/ephemeral/tmp, /tmp, auto, "defaults,nobootwait" ]
- [ ephemeral0, null ]
runcmd:
- [ chmod, 1777, /tmp ]
답변
먼저 당신의 epermal 스토리지를 마운트 해제하고 아래와 같이 다시 마운트하십시오
umount /dev/xvdb # in case it is already mounted
sfdisk /dev/xvdb << EOF
,1024,82
,
;
;
EOF
mkswap /dev/xvdb1 && swapon /dev/xvdb1
mkfs.xfs -f /dev/xvdb2 && mount /dev/xvdb2 /mnt