NTFS write 해보신분 ~ 안계신가여 ? ^^;;
NTFS write 때문에 몇가지 질문드리려구 하는데요. ^^
제가 커널 2.4.22 버전에서 sourceforge의 ntfs소스를 다운받아 ntfs 하드디스크를 마운트 해보았습니다.
커널 설정은 ntfs rw support 하도록 하였구요. read는 성공적이었습니다. 하지만 역시 쓰기가 문제였는데요.
과정을 보여드리면여..
먼저 마운트..
:/# mount -t ntfs -o nls=cp949,uid=501,gid=500,umask=002 /dev/ide/host0/bus0/target0/lun0/part1 mnt
NTFS volume version 3.1.
결과..
/dev/ide/host0/bus0/target0/lun0/part1 on /mnt type ntfs (rw,uid=501,gid=500,umask=02,nls=cp949,errors=continue,mft_zone_multiplier=1)
쓰기 시도..
:/mnt# touch a
touch: a: Permission denied
퍼미션엔 문제가 없는데..
여기서 커널 2.6처럼 덮어쓰기만 가능한게 아닌가 하는 생각에 cp 시도 ^^;; ( HDD 내에 ac3.mpg이 이미 있는 상태입니다. )
:/mnt# cp /test/bin/media/ac3.mpg /mnt/ac3.mpg
NTFS-fs error (device 03:01): ntfs_setattr(): Changes in i_size are not supporte
d yet. Sorry.
cp: unable to open `/mnt/ac3.mpg': Operation not supported
이렇게 해보고 커널 컴파일도 이것저것 바꿔가며 시도해봐도 안되네요 ^^;;
제가 원하는 것은 dangerous한 현상이라도 보고 싶은건데여..
누가 해보신분 없나여 ?
여기서 ntfs 관련한건 다 읽어보았는데.. 쓰기 시도하면 위험하다는 정보밖엔 없고 .. 결과에 대한건 없어서..^^;;
부탁드려요 ~
궁금한 점은 sourceforge의 ntfs소스가 커널 2.6에서와 같이
덮어쓰기만 가능한 것인지 .. 지금 제가 한 것이 쓰기가 되는것인데 커널 2.4의 dangerous의 일종인지 ..^^;; 이건 아니겠져 ?
그리구 덮어쓰기가 제가한 것처럼 하는것인지... ㅡ,.ㅡ;;
아니면 통째로 쓰기 설정 과정 보여주시면 정말 정말 감사하구요 ..
제가 모르는게 너~~~~무 많아서 질문도 이해 안되실 수도 있겠네요 .. 말그대로 비기너입니당 ...
양해해 주시고 답변 부탁드려요.
아! 그리구 captive는 사용할 수가 없어여 .. 제가 보드 상에서 하는데 윈도우를 에뮬레이션 할 수 없거든요 .. ^^??
ntfs 땜에 잠을 못이룹니다... ㅜㅜ
Re: NTFS write 해보신분 ~ 안계신가여 ? ^^;;
현재 지원되고 있는 NTFS_RW는 덮어쓰기만 가능하고, 파일을 새로 만들거나, 파일 크기를 늘리거나 하는것은 가능하지 않습니다.
captive는 읽기/쓰기 모두 가능하지만, 커널에 기본적으로 포함된 RW는 사실 RW가 아니라 반쪽짜리 RW죠.
그러나, 덮어쓰기만 가능하다 할지라도, NTFS의 임의 파티션에 1GB 비어있는 파일을 미리 만들어두면 (윈도우즈 상태에서)
리눅스로 부팅해서 NTFS마운트 한 후에, NTFS의 파일을 loop디바이스로 활용해서 사용하실 수 있습니다.
답변 감사해여~ ^^그런데 덮어쓰기란 것이 어떻게 하는건가요 ?
답변 감사해여~ ^^
그런데 덮어쓰기란 것이 어떻게 하는건가요 ?
제가 한 방법이 맞는듯도, 아닌듯도 하고.. 다른 방법이 ??? ;;
또 윈도우에선 어떻게 빈 파일을 만드는지 알려주시면 안될까요 ?^^;; 죄송하지만 다시 한번 부탁드립니다.
> 그런데 덮어쓰기란 것이 어떻게 하는건가요 ?overwri
> 그런데 덮어쓰기란 것이 어떻게 하는건가요 ?
overwrite, 어떤 파일이 존재할 경우 그 파일을 변경하는 것만 할 수 있다는 뜻이었습니다.
> 또 윈도우에선 어떻게 빈 파일을 만드는지
우선 리눅스상에서 dd명령을 이용해서 적당한 크기의 비어있는 파일을 만듭니다.
dd if=/dev/zero of=file_100mb bs=1024kb count=100
(구글링해보시면 비슷한 방법이 나와있을겁니다)
얻어진 file_100mb 파일을 압축하면 1MB 크기정도 됩니다. 이 파일이 file_100mb.gz라고 하면, 이 파일을 USB로 복사하거나, ftp로 다른 곳에 이동시켜 둔 뒤, 윈도우즈로 재 부팅, 윈도우즈에서 압축된 빈 파일을 받아서 압축을 풉니다. 이렇게 하면 비어있는 파일을 원하는 크기로 만들 수 있습니다.
리눅스에서 이 파일을 쓰실 때는, swap으로 만드신다거나, loop 디바이스로 만드실 수 있습니다.
단, 이렇게 만들어 loop디바이스로 쓸 경우, 이것을 윈도우즈에서 읽거나 하는 방법은 모르겠군요.
안정성 등을 장담할 수는 없겠지만 [url]http://www.jankr
안정성 등을 장담할 수는 없겠지만 http://www.jankratochvil.net/project/captive/ 이런 것도 있습니다. ntfs 읽기를 구현 한 게 아니라, wine 쪽처럼 windows의 ntfs.sys를 이용해서 파일 억세스를 한다는군요. (제가 써 본 게 아니라서..) 핵심 구현이 다 구현 되었다는 이유로 2004년 1월 이후로는 더 개발 안되고 있네요.
https://wiki.ubuntu.com/KoreanTeam
Re: NTFS write 해보신분 ~ 안계신가여 ? ^^;;
커널에서 NTFS 쓰기를 활성화시켜서 vi j 후 :w 를 이용해 저장을 한적이 있는데 이건 어떤 건가요?
[quote]커널에서 NTFS 쓰기를 활성화시켜서 vi j 후 :w 를
기존의 파일에서 크기 변화가 작아서 해당 cluster 내에서
write가 가능했기 때문이 아닐까요?
댓글 달기