우분투를 새로 깔고 외장하드를 연결했습니다
바로 인식이 되더군요
그런데, 이상하게 외장하드에서 작업을 하면 실행이 안되네요
포트란 코드를 실행 시키면, 컴퓨터 본체에서는 잘 되는데, 외장하드에서 실행하면 실행파일을 인식도 못하고 '권한이 없습니다’라고 나옵니다
아무래도 외장하드 권한에 문제가 있는 것 같습니다
예전에 우분투 사용할 때는 외장하드에서 이런 문제가 없었는데, 왜 이러는지 모르겠네요 ㅠㅠ
외장 하드의 파일 시스템이 무엇인가요?
ls -ald 마운트위치
하셔서 소유주및 권한을 확인해 보세요.
외장하드는 msdos로 나오는 걸 보니, fat32 같구요,
ls -ald해보니까, drwx------ 11 이렇게 나옵니다
마운트를 다시 해야하는지, 아니면 권한만 변경할 수 있는지… 잘 모르겠네요 ㅠㅠ
[quote="hschoi":16r7ma55]외장하드는 msdos로 나오는 걸 보니, fat32 같구요,
ls -ald해보니까, drwx------ 11 이렇게 나옵니다
마운트를 다시 해야하는지, 아니면 권한만 변경할 수 있는지… 잘 모르겠네요 ㅠㅠ[/quote:16r7ma55]
아이구 머 숨길것이 있다고 drwx------ 11요렇게만 적어 주신겁니까?
그옆의 소유자 및 그룹 정보가 필요해서 확인해 보라고 한 것인데요.
해당디스크가 마운트될때 일정 사용자및 그룹으로 마운트되기 때문에…
그것은 일반 로그인 사용자가 아니라 일반적으로 plugdev나 nobody등의
계정의 소유주를 갖습니다.
댓글 감사합니다
뒤쪽은 필요 없을 줄 알고 안 적었는데요…^^;;;;
ls -ald하면…
drwx------ 11 hschoi hschoi 16384 1970-01-01 09:00
이렇게 나옵니다
지금 계속 검색해보고 있는데, fat32라서 그런걸까요…ㅡㅡ;;;
그런데 예전에 사용할 때는 fat32에서도 코드 돌리면 실행 다 되고, 파일 전송도 다 되었거든요… ㅠㅠ
이것은 디렉토리인데…
그것말고… 실행파일의 권한을 올려주세요.
아… 저는 외장하드 전체의 권한을 바꾸고 싶은건데요…^^;;;
참고로 모든 실행 파일들은 "-rw-r–r-- 1 hschoi hschoi …" 이렇게 되어 있습니다
아… rw---- 에서 x권한이 빠져있으니
실행 권한이 없다고 나오는 것입니다.
사용자권한으로 마운트 된것으로 봐서, 노틸러스에서 자동으로 마운트 한것으로 보입니다.
노틸러스는 사실 gnome-vfs를 이용하여 마운트하는데 마운트 옵션은 하드코딩되어 있는 것으로 압니다.
그러나 사실 FAT32파일 시스템에는 실행권한이라는 속성은 없습니다.
아카이브,읽기전용,시스템,숨김 이렇게만 존재합니다.
잘 생각해 보세요… XP 사용할때 실행속성을 부여한 적이 있나요?
단지 파일확장자로만 판단해서 알아서 실행합니다.
그러니 FAT32에 없는 실행속성을 우분투는 무슨 수로 파일에 실행 속성을 부여할 수 있겠습니까?
마운트할때
sudo mount -t fat32 /dev/sdb1 -o user=사용자,group=사용자그룹, fmask=007,dmask=117
이렇게 옵션을 준다면
소유자는 사용자, 그룹은 사용자그룹, 파일권한은 770, 디렉토리권한은 660으로 지정됩니다.
하지만 이것은 FAT32파일시스템 내에 저장되는 것이 아니라, 마운트시에 설정되는 것입니다.
그러니까 작업을 리눅스파티션에서 하시고, 실행도 리눅스파티션에서 하세요.
윈도우즈에 저장하고 싶다면… 압축해서 백업하시는 것이 좋지요…
** 편법을 알려드리자면 **
이름뒤에 .exe를 붙이시던지 .bat를 붙이면 자동으로 실행속성이 추가됩니다.
그리고 그냥 실행하시면 되요.
아 그렇군요 친절하게 알려주셔서 감사합니다
말씀하신대로 그냥 우분투에서 실행하고 외장하드는 데이터백업용으로 써야겠어요^^