原文网址:http://gcell.blog.163.com/blog/static/52666594201501084530277/

1、首先,在系统偏好设置的共享设置中,关掉局域网文件共享(去掉打勾),然后打开终端,运行:

//安装samba

brew install samba

//禁用 netbiosd
sudo launchctl stop com.apple.netbiosd
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.netbiosd.plist

2、进入任意目录新建 org.samba.nmbd.plist 和 org.samba.smbd.plist 两个plist文件,
nmbd的文件内容为:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>org.samba.nmbd</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/Cellar/samba/3.6.23/sbin/nmbd</string>
        <string>-D</string>
    </array>
    <key>OnDemand</key>
    <false/>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <true/>
    <key>ServiceDescription</key>
    <string>netbios</string>
</dict>
</plist>

smbd的文件内容为:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>org.samba.smbd</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/Cellar/samba/3.6.23/sbin/smbd</string>
        <string>-D</string>
    </array>
    <key>OnDemand</key>
    <false/>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <true/>
    <key>ServiceDescription</key>
    <string>samba</string>
</dict>
</plist>

请注意红色加粗字体部分,可能要修改为你对应的samba版本号。

3、提前准备好smb.conf配置文件,此例为匿名访问可读写(测试安卓手机、win7等均可正常访问)

[global]
netbios name = iMac
display charset = UTF-8
server string = Samba
unix charset = UTF-8
workgroup = WORKGROUP
browseable = yes
security = user
passdb backend = tdbsam
guest account = nobody
guest ok = yes
invalid users = root
load printers = no
printable = no
map to guest = Bad User
max protocol = SMB2
min receivefile size = 16384
os level = 20
socket options = TCP_NODELAY IPTOS_LOWDELAY
syslog = 2
log file = /var/log/samba.log.%m
use sendfile = yes
writeable = yes

[mac]
path = /Users/gcell/Movies/movies
read only = no
guest ok = yes
create mask = 777

browseable = yes
directory mask = 777

4、终端下cd进入plist文件的保存目录,本例中是~/samba
运行:

sudo ln -sfv ~/samba/*.plist /Library/LaunchAgents
sudo chmod a+rx ~/samba/*.plist
sudo launchctl load -w /Library/LaunchAgents/org.samba.nmbd.plist
sudo launchctl load -w /Library/LaunchAgents/org.samba.smbd.plist

自己操作时,显示Path had bad permissions错误,解决方法:

sudo chown root xxxx.plist

至此,samba正常运作,局域网中应可看到主机名,并可以正常打开访问(匿名可读写)。

补充:

1. mac终端安装node时候,显示“-bash: brew: command not found”,怎么解决?

没安装 Homebrew,解决方法:

bash 下执行 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrew是啥东东?apt-get和yum知道吧?Homebrew就相当于MacOS中的yum。

2.

(1) mac电脑samba的位置

macs-Mac-mini:3.6.25 xxx$ pwd

/usr/local/Cellar/samba/3.6.25/

(2) smb.conf的位置

macs-Mac-mini:etc xxx$ ls

smb.conf smb.conf.bk

macs-Mac-mini:etc xxx$ pwd

/usr/local/Cellar/samba/3.6.25/etc

(3)smb.conf添加代码

[mac]

path = /Users/xxx/share

read only = no

writeable = yes

guest ok = yes

create mask = 777

directory mask = 777

browseable = yes

3. smbclient -L \\IPADRESS -U username

samba报错:session setup failed: NT_STATUS_LOGON_FAILURE 解决

解决方法:

smbpasswd -a username

例如:

macs-Mac-mini:etc xxx$ smbclient -L //192.168.0.103 -U xxx

Enter xxx's password:

Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.6.25]

Sharename       Type      Comment

---------       ----      -------

mac             Disk      <---- 共享的目录

IPC$            IPC       IPC Service (Samba Server)

Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.6.25]

Server               Comment

---------            -------

MACS-MAC-MINI        Samba Server

Workgroup            Master

---------            -------

MAGICPIXEL           TPSQUID

MODIOTEK             TPDCSVR

MXCSOFT              MXCSOFTPDC

MYGROUP              MACS-MAC-MINI

WORKGROUP            KEVIN-PC

macs-Mac-mini:etc xxx$

【转】Mac 10.10 yosemite 安装samba替代系统samba组件 -- samba不错不错的更多相关文章

  1. Mac OS X Yosemite安装Hadoop 2.6记录

    整个安装过程分为四部分: 一.  安装Homebrew 二.  ssh localhost 三. 安装Hadoop已经进行配置文件设置 (伪分布式) 四. 执行栗子 一. 安装Homebrew 採用H ...

  2. Mac OS X Yosemite安装盘U盘制作

    从App Store下载Mac OS X Yosemite安装程序,下载后的安装文件保存在应用程序(/Applications)文件夹中.请注意,此时一定不要直接启动该程序安装 OS X Yosemi ...

  3. 安装单机Hadoop系统(完整版)——Mac

    在这个阴雨绵绵的下午,没有睡午觉的我带着一双惺忪的眼睛坐在了电脑前,泡上清茶,摸摸已是略显油光的额头(笑cry),,奋斗啊啊啊啊!!%>_<% 1.课程回顾. 1.1 Hadoop系统运行 ...

  4. 解决Macbook Pro 2017安装Windows10双系统后在Windows系统中Apple蓝牙鼠标不能使用问题

    MAC BOOK PRO 2017安装Windows10双系统 在Windows系统中蓝牙鼠标不能使用解决办法 最近因工作需要,macOS系统不能要求,大部分工作必须要在Windows系统中进行,最初 ...

  5. Mac OS X 10.10 Yosemite下安装java、jdk、mysql、maven、idea

    Mac OS X Yosemite已经在2014年10月17日正式发布了. 作为一个java开发者,尝鲜第一时间安装了最新版本. 和之前的OS X系统还是有很多不同的.下面主要在java开发环境方面做 ...

  6. Vmare12(虚拟机)安装Mac OS X Yosemite 10.10

    需要预备的软件如下: OSX10.10的系统镜像,下载好之后将后缀.cdr改成.iso,下载来源如下:    链接:http://pan.baidu.com/s/1sj4ri5R 密码:y86w un ...

  7. 简单制作 OS X Yosemite 10.10 正式版U盘USB启动安装盘方法教程 (全新安装 Mac 系统)

    原文地址: http://www.iplaysoft.com/osx-yosemite.html 简单制作 Mac OS X Yosemite 正式版 USB 启动盘的方法教程: 其实制作 OS X ...

  8. VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01|

    VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01|  分类: 网络互联 |  标签:10.10  ...

  9. mac OS X Yosemite (10.10.5) 下 安装vim 7.4笔记

    摘要 前言 需求与mac OS X 自带vim版本的冲突 默认Python解释器问题 并非Mac自带python的 homebrew 1. 前言 本文为自己作死折腾的问题记录 2. 需求与mac OS ...

随机推荐

  1. 传说中的WCF(10):消息拦截与篡改

    我们知道,在WCF中,客户端对服务操作方法的每一次调用,都可以被看作是一条消息,而且,可能我们还会有一个疑问:如何知道客户端与服务器通讯过 程中,期间发送和接收的SOAP是什么样子.当然,也有人是通过 ...

  2. js小技巧(一)

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture();  event.srcE ...

  3. Shell练习 统计单词个数,降序排列

    原文:https://leetcode.com/problems/word-frequency/ Write a bash script to calculate the frequency of e ...

  4. win32空项目创建窗体

    #include "stdafx.h" //窗口过程函数(系统自动调用,即回调函数)LRESULT WINAPI MsgProc(HWND hWnd,UINT msg,WPARAM ...

  5. Android核心分析之十八Android电话系统之RIL-Java

    Android RIL-Java 123.jpg (2.09 KB, 下载次数: 1) 下载附件  保存到相册 2012-3-21 10:47 上传   RIL-Java在本质上就是一个RIL代理,起 ...

  6. SPRING IN ACTION 第4版笔记-第十章Hitting the database with spring and jdbc-001-Spring对原始JDBC的封装

    1.spring扩展的jdbc异常 2.Template的运行机制 Spring separates the fixed and variable parts of the data-access p ...

  7. iOS中检测硬件和传感器

    首先要知道,你需要查看所需的硬件或传感器是否存在,而不是假设设备有哪些功能.举个例子,你不能假设只有iPhone才有麦克风,而应该使用API来查看麦克风是否存在.下面这段代码的第一个优势在于,它能自动 ...

  8. UITableView的使用及性能优化

    UITableView可谓是日常开发中最重要的控件之一,而使用UITableView最重要的在于性能优化.iOS设备的内存有限,如果用UITableView显示成千上万条数据,就需要成千上万个UITa ...

  9. 30 个 PHP 的 Excel 处理类

    下面的 PHP Excel 处理类中,包含 Excel 读写.导入导出等相关的类,列表如下: PHP Excel Reader classes 1. Read Excel Spreadsheets u ...

  10. 《JAVA编程那点事儿》读书笔记(二)——类和对象

    方法: 1. 基本的main方法: public static void main(String[] args) 2.静态方法内部调用非静态方法:重新声明一个类,通过这个类来调用非静态方法 publi ...