웹에서 유용한 것을 찾을 수 없습니다.
여기에 이야기가 있습니다. Debian(Raspbian, 하지만 상관없음)에 Samba(버전 4.5.12)를 설치하려고 합니다. 데비안은 읽기 전용 파일 시스템에 설치됩니다. 설치는 괜찮지만 삼바가 RO 모드(읽기 전용)에서 실행되지 않습니다. /var/lib/samba files
외부 HDD(읽기-쓰기)에 필요한 데이터( )의 심볼릭 링크를 만들려고 했지만 Samba 시작 시 오류가 발생했습니다. systemctl이 smdb.service를 시작하지 못했습니다. 흥미로운 것은 없었 습니다 systemctl status
. 그러나 samba/log.
나는 다음을 발견했습니다.
[2018/04/01 17:11:55.333301, 0] ../lib/util/util.c:270(directory_create_or_exist_strict)
directory /var/lib/samba/private/msg.sock isn't a directory
[2018/04/01 17:12:35.116576, 0] ../lib/util/util.c:270(directory_create_or_exist_strict)
directory /var/lib/samba/private/msg.sock isn't a directory
[2018/04/01 17:42:24.843043, 0] ../lib/util/util.c:216(directory_create_or_exist)
mkdir failed on directory /var/lib/samba/private/msg.sock: Read-only file system
[2018/04/01 18:04:41.824892, 0] ../lib/util/util.c:216(directory_create_or_exist)
mkdir failed on directory /var/lib/samba/private/msg.sock: No such file or directory
directory_create_or_exist_strict
인터넷 검색을 통해 Samba 소스 코드의 기능이 디렉터리(내 경우에는 /var/lib/samba/private/msg.sock
)가 실제인지 확인한다는 사실을 알아내는 데 도움이 되었습니다 .
리눅스 방식의 솔루션이 있습니까? 함수를 다시 작성해야 합니까 , 아니면 외장 HDD의 디렉터리 directory_create_or_exist_strict
에 대한 절대 경로를 만들어야 합니까 ? msg.sock
아니면 해당 폴더를 외장 HDD에 미러링하는 다른 방법이 있습니까? 저에게 몇 가지 팁을 공유해 주세요.
답변1
문제는 아마도 소프트링크를 사용하여 Samba var 폴더를 다른 디스크로 리디렉션하고 있다는 것입니다.
소프트링크는 실제 폴더와 다소 다르게 동작하며 삼바 소켓 생성 코드에서 허용되지 않을 수 있습니다.
귀하와 같은 설정에서 제가 할 일은 전체 /var 파일 시스템을 다른 디스크(또는 tmpfs)에 놓고 부팅 시 간단히 마운트하는 것입니다.
또는 끝까지 진행하고 싶지 않다면 부팅 시 tmpfs 파일 시스템을 만들고 /var/lib/samba에 마운트하세요.
마운트 지점이 정상이어야 합니다. 그렇지 않으면 어떤 Linux 시스템도 /var를 다른 파일 시스템에 넣을 수 없습니다.