해결책!

해결책!

삼바가 설치된 라즈베리 파이가 있습니다. 나는 조사했다자동 파일 시스템그리고 내 Windows 컴퓨터에서 네트워크를 통해 외장 하드 드라이브에 액세스할 때 자동으로 외장 하드 드라이브를 마운트할 수 있는 가능성을 확인했습니다.

분명히 제공된 auto.smb구성은 삼바 클라이언트 애플리케이션에 적합하지만 내 의도는 그 반대입니다. 네트워크를 통해 하드 드라이브에 액세스할 때 서버가 자동으로 하드 드라이브를 마운트하고 약 5분 후에 자동으로 마운트 해제하기를 원합니다. 또한 fstype을 NTFS로 설정해야 합니다.

현재 내가 이해하고 있는 바에 따르면, autofs내가 해야 할 일은 구성 파일을 생성하고 이름을 지정하는 것입니다 auto.ntfs.

콘텐츠 auto.ntfs:

driveA -uuid="UUID of my drive",fstype=ntfs,verbose=1 :/dev/sda1

auto.master그런 다음 해당 구성을 다음과 같은 항목 에 추가해야 합니다 .PATH MAP -options

구체적으로 말하면 내 PATH는 네트워크를 통해 액세스할 때마다 해당 디렉터리에 /share추가하여 /share /etc/auto.ntfs -t=60외부 하드 드라이브를 해당 디렉터리에 성공적으로 자동 마운트하는 방식입니다./etc/auto.master

올바른 작동 방식을 이해하고 있으며 구성 파일로 무엇을 해야 합니까? 이 작업을 수행할 때 고려해야 할 사항이 있나요? 가능합니까?

나는 이 질문에 대답할 기회를 갖고 싶습니다.(아니요, 삼바 외에 다른 솔루션은 필요하지 않습니다. 예, NTFS여야 합니다.)


고쳐 쓰다

구성 파일을 추가했습니다. 지금 내 문제는 내가 시도할 때 드라이브의 내용이 표시되지 않는다는 것입니다.로컬 액세스드라이버 자동 마운트는 기능 자체를 테스트하기 위한 것입니다.

자동 마스터 제어: /share /etc/auto.ntfs -t=60

자동 .ntfs: /share -uuid=E820DC6120DC3870,fstype=ntfs :/dev/sda1

이것은 작동하지 않습니다. /share 디렉토리로 이동하면 드라이브의 내용을 볼 수 없습니다. 이것은 다음의 출력입니다 $ service autofs status.

Jan 15 13:57:04 raspberrypi automount[529]: key ":" not found in map source(s). 
Jan 15 13:57:04 raspberrypi automount[529]: failed to mount /share/: 
Jan 15 13:57:04 raspberrypi automount[529]: re-reading map for /share

위의 문제를 해결하세요.

앞으로 이 문제에 관심이 있는 분들을 위해 dmesg위 문제를 해결하기 위해 관련 메시지를 확인하면 문제가 작동하지 않는다고 단순히 말하는 것이 아니라 문제의 실제 원인을 지적할 수 있었습니다. 이 명령은 찾는 데 도움이 될 수 있습니다.

$ dmesg -w | grep ntfs(다른 메시지 유형이 있는 경우 grep을 통해 찾아볼 수 있습니다.)

문제는 이 옵션이 -uuid지원되지 않는다는 것입니다. 이제 최종 구성은 다음과 같습니다.

자동 마스터 제어: /- /etc/auto.ntfs -t=60

자동 .ntfs: /sharing -fstype=ntfs :/dev/sda1


이러한 모든 버그 수정이 완료되었으므로 이제 마지막 주제를 다룰 시간입니다.삼바

현재 내 문제는 드라이브가 마운트될 때마다 권한이 부적절하게 변경된다는 것입니다. nautilus-share나는 적절한 옵션을 간단히 확인할 수 있으므로 를 사용하여 공유 디렉토리를 만들었습니다 .

$ stat sharing/다음은 autofs가 비활성화된 스니펫입니다.

방문: (0777/drwxrwxrwx) Uid: (0/ 루트) Gid: (0/ 루트)

다음은 autofs가 활성화된 동일한 명령의 조각입니다.

액세스 권한: (0500/dr-x------) Uid: ( 0/ 루트) Gid: ( 0/ 루트)

다음 dmesg 메시지를 기반으로 설치 중 액세스 권한을 편집합니다.

ntfs: (장치 sda1): load_system_files(): 볼륨이 더러워졌습니다. 읽기 전용으로 설치하세요. Windows에서 chkdsk를 실행하고 마운트합니다.

ntfs: (device sda1): load_system_files(): $LogFile이 깨끗하지 않습니다. 읽기 및 쓰기는 다시 마운트할 수 없습니다. Windows에 설치합니다.

나는 지금 무엇을 해야할지 모르겠습니다. 내가 뭘 잘못했나요? autofs의 구성 파일에서 권한을 구성해야 할 수도 있지만 위의 메시지로 인해 확실하지 않습니다.

ntfs를 공유 마운트로 사용하는 것이 권장되지 않는 경우 파티션 형식을 더 적절한 형식으로 변경하라는 제안을 받아들입니다!

답변1

해결책!

이제 알아냈어요. 오류 메시지는 (다시) 올바른 방향을 알려주었고 Google 검색을 통해 이 ntfs-3g패키지와 이 ntfs-config패키지를 찾았습니다. 후자는 다음을 제공합니다.쓰다NTFS 드라이브 기능, 다음과 같은 메시지

롤이 더럽습니다. 읽기 전용으로 설치하세요. Windows에서 chkdsk를 실행하고 마운트합니다.
다시 나타나지 않았습니다. Windows 시스템에서 공유 드라이브에 액세스하는 것도 매우 쉽습니다.

또 다른 큰 도움은노틸러스파일 관리자를 사용하면 디렉토리 경로로 이동하여 선택하기만 하면 권한 처리가 훨씬 쉬워집니다.마우스 오른쪽 버튼으로 클릭->특성"라고 간단히 편집하면 됩니다.권한그리고공유하다거기에서 옵션을 선택하세요. (이것은 분명히 가장 쉬운/초보자의 방법입니다)

나중에 참고할 수 있도록 제가 가지고 있는 것은 여기까지입니다.구성 파일그리고 CLI에서 수행한 단계는 다음과 같습니다.

자동 마스터 제어: /- /etc/auto.ntfs -t=60

auto.master에 대한 Linux 매뉴얼 페이지

자동.ntfs: /sharing -fstype=ntfs :/dev/sda1

자동 설치 프로그램 매핑을 위한 Linux 매뉴얼 페이지

smb.conf:

표준 구성을 편집하고 모든 콘텐츠에 주석을 답니다.아니요필요와해시태그또는세미콜론. 아래는 제가 편집한 버전입니다.

[global]
workgroup = WORKGROUP # This was irrelevant for me but I left it activated
wins support = yes # Tells samba to act as WINS Server
#Recycle bin for mounted drive (useful feature, but not mandatory)
recycle:keeptree = yes
recycle:touch = yes
recycle:versions = y
recycle:maxsize = 0
#======================= Share Definitions =======================
#I've commented evverything here except the one I've created myself, 
#since I didn't want any of those default share definitions.
#Shared network drive
[share]
comment = Pi shared folder
path = /sharing
available = yes
browseable = yes
writeable = Yes
only guest = no
create mask = 0777
directory mask = 0777
force group = sambashare

서버 유형에 대한 유용한 링크

Samba 구성 파일에 대한 설명서

명령줄 인터페이스:

$ cd /
$ mkdir sharing

생성된 디렉터리와 해당 권한에 대한 정보를 표시하려면 다음 $ stat directory/file명령을 사용할 수 있습니다.

다음은 제어 명령이다자동 파일 시스템그리고삼바제공하다. 구성을 변경하고 이를 적용하려면 언제든지 다시 시작해야 합니다.

$ service autofs {start|forcestart|stop|restart|forcerestart|reload|force-reload|status}
$ /etc/init.d/samba {start|stop|reload|restart|force-reload|status}

디렉토리가 생성되면 입력하여 노틸러스를 실행 $ nautilus하고 디렉토리로 이동한 다음 위에서 언급한 대로 "권한" 및 "공유" 옵션을 편집합니다(확인란은 설명이 필요하지 않습니다). 로컬 및 Windows 사용자 모두에 대해 읽기 및 쓰기를 활성화했습니다.

관련 정보