実用的な方法はありますか?共有名だけでなく、ローカル共有ディレクトリへのフルパスもリストするLinuxサーバー(Ubuntuディストリビューション)で定義されたすべての共有のリストを取得するnetコマンドまたは他のcli? samba構成ファイルやユーザー共有ファイルを確認する必要はありません。
いいえ、できません
smbclient -L
共有を表示しますが、パスを見つけるにはsmb.confでこれを検索する必要があります。
このスクリプトを試してください...お気軽に改善してください
#!/bin/bash
while read line; do
[[ "$line" =~ ^\[ ]] && name="$line"
[[ "$line" =~ ^[[:space:]]*path ]] && echo -e "$name\t$line"
done </etc/samba/smb.conf
はい、できます。
解決策( http://ubuntuforums.org/showthread.php?t=1304277&p=8186452#post8186452 のおかげで見つかりました)は、ディレクトリ/var/lib/samba/usershares
を調べることです。共有し、各ファイルにはローカルパスを含むpath=
で始まる行があります