'mount'에 해당되는 글 2건

  1. 2011.08.02 EXT4 파일 시스템 굽기
  2. 2011.06.01 mount 옵션비교 atime, noatime, relatime
리눅스2011. 8. 2. 20:39
dd if=/dev/zero of=ext4.img bs=1MB count=20  // 20mb 짜리 ext4.img라는 파일을 생성

mke2fs -T ext4 ext4.img  //ext4 타입으로 ext4.img를 포맷


mkdir test //테스트용 디렉토리 생성(마운트 포인트로 이용)

mount -t ext4 -o loop ext4.img test/   //마운트

마운트가 성공됬으면(mount 커맨드로 확인), 테스트로 파일을 막 써보자.
cd test
touch TEMPFILE
mkdir BABO
...

파일이 제대로 생성됐는지 확인해보고, 언마운트를 해보자
cd ..  //test 폴더 안에서 언마운트 할라면 device busy라고 불평한다.
umount /dev/loop0  //꼭 loop0이라는 보장은 없고 아마 마운트시 available한 loop이 잡히는 걸로 안다.
                             //이 부분은 losetup으로 체크할 수 있는 걸로 안다.
cd test/
ls -al 로 확인하면 텅 빈 걸 확인할 수 있다.

다시 마운트 해보자.
mount -t ext4 -o loop ext4.img test/ 
ls -al
해보면 아까 테스트로 막 만든 파일들이 보인다.

자 그럼 이걸 가지고 뭐에 써먹냐 ?  ext4.img 자체를 파티션에 그대로 구울 경우, ext4파일 시스템을 가진 루트파일 시스템 등을 구축 할 수 있는 것이다.  EXT4f라고 썼지만 다른 파일 시스템도 이렇게 해서 굽는게 가능하다.  물론 안드로이드용 파일 시스템을 만들 땐 이걸 안 썼다. 언제 저 짓해서 맨날 구워줄 수 있단 말인가?  다른 방법에 대해서는 다음 기회에~
Posted by code cat
atime, noatime, relatime는 ext2, ext3와 같은 파일 시스템을 위한 마운트 옵션이다.  Debian 계열에선 default로 atime으로 설정되어 있다.

 참고로 안드로이드에서는 system과 data 이미지를 yaffs2로 마운트 할 때 noatime 옵션을 쓴다.


atime
이 옵션을 설정할 경우, 리눅스는 특정 파일이 마지막으로 엑세스되었던 때를 기록한다. sysadmins이나 메일 프로그램같은 프로그램에서 유용하게 쓰일 수 있다.  하지만 항상 엑세스 할때마다 write을 해주어야 하므로(기록을 해야 하므로), 퍼포먼스 이슈가 있다.

noatime
이 옵션을 사용시, atime처럼 파일이 엑세스될때마다 기록하는 것과 달리 파일이 변하거나 쓰기 오퍼레이션시에만 디스크에 기록된다. 비록 시스템 퍼포먼스를 크게 이끌어 올릴 수 있으나, 간혹 특정 프로그램이 제대로 동작하지 않는 경우가 있다.

relatime
이 옵션을 사용한 파일 시스템은 파일에 대한 엑세스 타임이 파일이 변환된 타임보다 오래 됬을경우에만 업데이트 한다. atime과 noatime 의 중간이다.

결론: relatime 을 활용하자.

'리눅스 > 스크립트/유틸' 카테고리의 다른 글

dd (주로 빈 파일 만들기, loopback 마운팅 할 때 쓰임)  (0) 2011.08.02
tee 커맨드  (0) 2011.06.19
엔디안 처리하는 함수  (0) 2011.06.06
busybox cross-compile  (0) 2011.06.01
xargs 사용법  (0) 2011.04.24
Posted by code cat