标签归档:Samba

MacOS上iscsi的替代方案

有时候,MacOS想要扩容,而且不是单纯的存放文件,而是要存放应用软件之类的,这时候,samba就不好使了,文件读写权限什么的,非常难搞。所以就需要考虑一下从基于文件的网络共享切换到基于块的网络共享了。

但是众所周知,MacOS不像windows那样,内置iscsi-initiator,而支持iscsi-initiator的软件,我在网上搜索一番之后,并没有找到什么开源(可以白嫖)的方案。唯一有的一两个看起来也是安装使用非常麻烦的那种,其他的商用方案,价格都比较离谱。唯一价格比较亲民点的DAEMON tools(没错!就是很久之前装机必备的虚拟光驱!),价格不贵,如果单纯只要iscsi-initiator一个功能的话,最低可以只买1个高级版,价格只要2.99刀,价格完全可以接受。不过网上有评论说DAEMON-tools的iscsi功能性能存在问题,千兆以太网只能跑到50MB/s左右,这就有点难受了。

在继续溜达的时候,偶尔看到一篇帖子,里面提到一种解决方案,就是不考虑iscsi,而是使用一种MacOS特有的磁盘格式——稀疏捆绑磁盘映像。

这种稀疏捆绑磁盘映像,就是Time Machine目前在使用的磁盘格式,可以存放在任意MacOS支持的文件系统上,这就包括了cifs(也就是samba啦)。所以,四舍五入一下,也算是另类的块共享了。

使用方法很简单,先从“启动台-其他”文件夹里面启动“磁盘工具”,然后新建一个空白映像。

然后,就是设置磁盘映像的具体属性:

  • 格式选择“稀疏捆绑磁盘映像”
  • 存储为这里是磁盘映像在文件系统上的名字,后续默认是.sparsebundle
  • 大小是这个磁盘映像的大小,稀疏捆绑磁盘映像实际上是一个文件夹,里面是一堆小的文件块,是按实际使用增长的,不是分配了就立马占用的。
  • 格式建议选择MacOS扩展(区分大小写,日志式)
  • 是否需要加密就看你自己需要
  • 分区随便选择
  • 最后位置选择在你的smb共享上

点击存储确认。

在访达可以看到这个磁盘映像的属性。

双击可以在磁盘工具打开。可以在访达看到已经挂载,在磁盘工具也能看到这个磁盘映像的属性。

如果需要调整大小,可以先卸载磁盘映像,然后在磁盘工具的菜单“映像-调整大小”,然后选择对应的磁盘映像,再输入变更后的大小,就可以了。

linux挂载samba储存

入手了RaspberryPi之后,发现容量果断的不足,这时候就是挂载文件系统的时候了。由于不同的系统之间的差异,软件包维护的不同,造成了挂载的命令稍微有点不一样。

RaspberryPi的话,samba并没有注册smbfs,而是使用了cifs(或许这个才是正常通用版?),所以,mount的用法稍微有点不一样

mount.cifs <remotetarget> <dir> -o <options>
Options:
 user=<arg>
 pass=<arg>
 dom=<arg>

挂载之后就能在mount表里面看到了

root@raspberrypi:~# df -h
文件系统             容量  已用  可用 已用% 挂载点
rootfs               7.2G  6.4G  409M   95% /
/dev/root            7.2G  6.4G  409M   95% /
devtmpfs             188M     0  188M    0% /dev
tmpfs                 38M  696K   37M    2% /run
tmpfs                5.0M     0  5.0M    0% /run/lock
tmpfs                 75M   68K   75M    1% /run/shm
/dev/mmcblk0p1        56M   17M   40M   30% /boot
/dev/sda1            7.4G  4.9G  2.2G   70% /media/16b2d773-3813-4672-99b8-6fc9be6cbed9
//192.168.11.1/Work   30G   27G  1.3G   96% /mnt/Openwrt/Work

如果想自动挂载的话,就需要写到fstab里面,格式如下

//SERVER/SHARENAME /mnt/MOUNTPOINT cifs noauto,noatime,username=USER,password=PASSWORD,workgroup=WORKGROUP 0 0

就能实现开机自动加载了。

给RaspberryPi装上Samba服务器

果断地,在Pi入手之后必须的工作之一就是samba了,还记得再之前从来都不知道这东西的好,用上了之后就发现离不开了。

虽然说其实在linux环境下面的话sftp也就满足了,可是平时都是用的windows,所以还是用samba比较舒服,虽然性能实在不怎么样……

首先吐槽一下软件源那边的问题,尼玛,全世界都在说用这个“testparm”来测试samba的配置文件有没有问题,但是我照着各种教程安装上samba4-common-bin之后还是没有这东西,于是还是只能手动修改配置文件了。

因为路由上也有samba,于是果断的参考一下,发现一个很蛋疼的事实,raspbian的samba在安装完成之后,默认的配置文件里面有个

passdb backend = tdbsam

但是根据openwrt的samba配置文件来看,openwrt用的是smbpasswd,而这东西是负责密码的。

然后就我嘞个擦,这尼玛密码怎么弄?

直接参照smbpasswd来改密码的方法不可能,因为没有tdbsam这东西(为什么什么都没有!)

在网上查了很久之后发现原来密码后端换成了pdbedit,要添加用户的话就用

pdbedit -a -u <用户名>

来添加用户,添加过之后就看到了很多信息,看起来比smbpasswd高级好多。

添加完之后就基本上能用了。

剩下的就是处理一下共享文件夹,格式如下看起来像这样子

[Disks]
	path           = /media/
	comment        = Mounted USB Disks
	browsable      = yes
	read only      = no
	create mask    = 777
	directory mask = 777

然后就能看到并且读写了。

更多详细的设定就去samba的官网查吧。

一直以来藐视Samba是我的错

不知为何,一直以来都不怎么喜欢Samba的文件管理方式,直到昨天,多手把luci-app都装了一遍,其中有个Samba,就用上了。

在Windows上访问了一次之后,我擦嘞,居然可以直接打开!不用缓存!直接看在U盘上的视频完全不是问题啊。下载到电脑之后再看什么的弱爆了!

于是果断把移动硬盘换上去,啧,直接看自动硬盘上的300G资源啊,爽!

不过由于自动硬盘的格式是ntfs,用ntfs-3g挂载之后访问是没什么问题,不过太吃CPU了啊,而且似乎挂500G的移动硬盘还是有点吃力,看视频会卡,不知是无线的问题还是CPU的问题,以后再研究。

原来自己无知的东西还有很多啊。