Romulo Ceccon 이 제안한 Upstart 스크립트 사용 아이디어 는 훌륭합니다. 그러나, 불분명 한 스크립트 안에 마법을 숨기고 싶지 않을 수도 있습니다. fstab 안에 마운트를 추가해도됩니다. 예 :
LABEL=cloudimg-rootfs / ext4 defaults 0 0
# auto mount ephemeral storage (if any)
# init contents in /etc/init/mounted-local*.conf
/dev/xvdb /mnt/local1 auto defaults,nofail,nobootwait,comment=cloudconfig 0 2
/dev/xvdc /mnt/local2 auto defaults,nofail,nobootwait,comment=cloudconfig 0 2
/dev/xvdd /mnt/local3 auto defaults,nofail,nobootwait,comment=cloudconfig 0 2
/dev/xvde /mnt/local4 auto defaults,nofail,nobootwait,comment=cloudconfig 0 2
# bind /tmp to /mnt/local1, might still be on / if no ephemeral storage
/mnt/local1 /tmp none bind
그리고 이것은 Upstart 스크립트입니다 :
# File /etc/init/mounted-local1.conf
# mounted-local1 - init ephemeral storage in /mnt/local1
description "Initializes ephemeral storage in /mnt/local1"
start on mounted MOUNTPOINT=/mnt/local1
# provide defult, see /etc/init/mounted-tmp.conf for details
env MOUNTPOINT=/mnt/local1
task
script
# fix permissions if needed
test -d $MOUNTPOINT && chmod 1777 $MOUNTPOINT
# log to /var/log/upstart/mounted-local1.log
#echo "initialized $MOUNTPOINT"
end script
이런 식으로 모든 디렉토리 구조와 임시 스토리지에없는 디렉토리 구조를 작성할 수 있습니다.
남아있는 것은 mkdir -p /mnt/local{1..4}
다시 시작하고 다시 시작합니다 (현재 파일을 숨기지 않고는 / tmp를 마운트하지 않습니다).
touch
및ls -l
?를 사용하여 예상 출력의 예를 제공 할 수 있습니까 ?