我有一堆文件想要在我的第二个内置驱动器上共享。
我有主(系统)驱动器工作文件的文件共享 - 创建了一个 samba 共享用户,我可以右键单击我想要共享的文件夹并打开共享并且它可以正常工作。
但是当我对辅助驱动器上的任何文件夹执行相同的操作时,它似乎可以正常工作。然后,当我尝试通过网络访问它时,共享会出现,但连接到文件夹时,我收到一条消息,“无法完成操作,因为找不到‘ShareName’的原始项目。”其中“ShareName”是我的共享的名称。那是在 OS/X 盒子上,但当我尝试通过我的蓝光播放器访问它时,我遇到了类似的问题(在之前安装的 Ubuntu 上可以正常访问共享)。
这个问题似乎与我的类似,但没有答案:https://askubuntu.com/questions/111943/sharing-external-drive
我想可能是因为驱动器是自动安装的,所以我添加了以下行,但fstab
无济于事:
/dev/sda1 /media/StorageDrive ext4 rw,nosuid,nodev,uhelper=udisks 0 0
然后我认为这可能是我的第二块硬盘上的挂载权限(因为我使用专门为此创建的帐户进行远程登录):
drwx------ 6 mainuser mainuser 4096 May 6 12:46 StorageDrive
但是当我sudo chmod a+r StorageDrive
这样做时它仍然不起作用,尽管该挂载会话的权限已经发生了变化:
drwxr--r-- 6 mainuser mainuser 4096 May 6 12:46 StorageDrive
有什么想法吗?
所需信息
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 1.8T 0 disk
└─sda1 8:1 0 1.8T 0 part /media/StorageDrive
sr0 11:0 1 1024M 0 rom
sdb 8:16 0 83.9G 0 disk
├─sdb1 8:17 0 71.9G 0 part /
├─sdb2 8:18 0 1K 0 part
└─sdb5 8:21 0 12G 0 part [SWAP]
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc nodev,noexec,nosuid 0 0
# / was on /dev/sda1 during installation
UUID=4f2a50b6-078a-4a7f-b194-db2f3d66a050 / ext4 errors=remount-ro,user_xattr 0 1
# swap was on /dev/sda5 during installation
UUID=f7925973-e0e7-4b52-a449-0097230d4aa0 none swap sw 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0
# StorageDrive (UUID so it always identifies the right drive)
UUID="1fe509d8-f4d8-454d-83cc-b74bfb1f1731" /media/StorageDrive ext4 rw,nosuid,nodev,uhelper=udisks,gid=media 0 0
答案1
我刚刚为此浪费了 40% 的声誉,我相信这毕竟可能是权限问题。将权限设置为:
drwxr--r-- 6 media media 4096 May 6 12:46 StorageDrive
似乎已使共享工作。 media
是一个由用户组成的组mainuser,media
,也是media
我登录共享的用户。
所以现在我只需要使其永久生效,同时fstab
不授予用户访问整个驱动器的权限media
(存储媒体文件的子目录除外)。
答案2
您可能可以使用类似这样的配置来完成它,这不一定是安全的,但它表明 CHMOD 很可能不是必需的:
## smb.conf file
...
security = share
guest account = publicuser
passdb backend = tdbsam
...
[extshare]
comment = External Share
path = /media/mountpoint
public = yes
writable = yes
write list = +publicuser
browseable = yes
hosts allow = 192.168.10.10
以及 /etc/samba/smbusers 文件:
# Unix_name = SMB_name1 SMB_name2 ...
# root =
publicuser = Administrator smbguest pcguest guest
# nobody = guest pcguest smbguest