Sambaの共有とシンボリックリンクに関する質問への多くの回答で推奨されているように、「フォローシンボリックリンク」を明示的に有効にして(ドキュメントにはデフォルトでオンになっていると記載されています)、「ワイドリンク」と「安全でないワイドリンクを許可」(これらは共有フォルダの外部を指し、シンボリックリンクをオンまたはオフにしないシンボリックリンクに関連しています)...これらの設定を変更しても、シンボリックリンクの作成は有効になっていません。
Samba共有は、Debian 8ホストから提供され、Debian 9クライアントからアクセスされます。
これは、マウントされた共有にシンボリックリンクを作成しようとしたときに表示される出力の例です。
$ touch hello.txt
$ ln -s hello.txt hello.sl
ln: failed to create symbolic link ‘hello.sl’: Operation not supported
アイデアや検索結果が足りないので、どんな入力でも大歓迎です。
編集1:
ホストsmb.conf:
[global]
security = USER
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
server min protocol = SMB2
client min protocol = SMB2
panic action = /usr/share/samba/panic-action %d
idmap config * : backend = tdb
[share_name]
path = /path/to/folder
force user = hostusername
force group = hostgroupname
read only = No
force create mode = 0660
force directory mode = 0770
case sensitive = Yes
クライアントマウントコマンド:
Sudo mount -t cifs //ip.add.re.ss/share_name /path/to/mount -o username=hostusername,vers=3.0,uid=clientusername,gid=clientgroupname,soft,rsize=8192,wsize=8192
私の問題がプロトコルのバージョンに関連している可能性があることを示唆してくれた@grawityに感謝します。次のようにmfsymlinks
オプションをマウントコマンドに追加することで、SMB3とのシンボリックリンクを有効にするソリューションを見つけました。
Sudo mount -t cifs //ip.add.re.ss/share_name /path/to/mount -o username=hostusername,vers=3.0,uid=clientusername,gid=clientgroupname,soft,rsize=8192,wsize=8192,mfsymlinks
通常のシンボリックリンクとMinshall + Frenchシンボリックリンクの違いを完全には理解していませんが、私の場合はうまくいくようです。
出典:
https://www.systutorials.com/docs/linux/man/8-mount.cifs/
https://wiki.samba.org/index.php/UNIX_Extensions#Minshall.2BFrench_symlinks )。
この方法は私にとってはうまくいきます:
Sudo mount -t cifs -o user=user,pass=pass,vers=3.0,uid=987,gid=0,soft,rsize=8192,wsize=8192,mfsymlinks //10.10.10.10/git /var/opt/gitlab/git-data/repositories