`
deepfuture
  • 浏览: 4436283 次
  • 性别: Icon_minigender_1
  • 来自: 湛江
博客专栏
073ec2a9-85b7-3ebf-a3bb-c6361e6c6f64
SQLite源码剖析
浏览量:80430
1591c4b8-62f1-3d3e-9551-25c77465da96
WIN32汇编语言学习应用...
浏览量:70989
F5390db6-59dd-338f-ba18-4e93943ff06a
神奇的perl
浏览量:104284
Dac44363-8a80-3836-99aa-f7b7780fa6e2
lucene等搜索引擎解析...
浏览量:287849
Ec49a563-4109-3c69-9c83-8f6d068ba113
深入lucene3.5源码...
浏览量:15192
9b99bfc2-19c2-3346-9100-7f8879c731ce
VB.NET并行与分布式编...
浏览量:68564
B1db2af3-06b3-35bb-ac08-59ff2d1324b4
silverlight 5...
浏览量:32672
4a56b548-ab3d-35af-a984-e0781d142c23
算法下午茶系列
浏览量:46359
社区版块
存档分类
最新评论

ubuntu-安装samba

阅读更多

 

每个windows客户端用户必须有一个对应的LINUX帐户,SAMBA使用UID/GID来完成这种帐号的映射,Samba用户的UID是与Linux系统用户的UID一一对应的。

必须首先存在一个Linux系统用户,才能为他增加一个Samba帐号,每个Samba用户在Linux上的权限,最终由这个帐号对应的Linux用户所决定 。

 

root@ubuntu-sv:/usr# mkdir tmp

root@ubuntu-sv:/usr/tmp# wget http://samba.org/samba/ftp/rc/samba-3.5.0rc2.tar.gz
--2010-02-16 20:01:44--  http://samba.org/samba/ftp/rc/samba-3.5.0rc2.tar.gz
Resolving samba.org... 216.83.154.106
Connecting to samba.org|216.83.154.106|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 30734155 (29M) [application/x-gzip]
Saving to: `samba-3.5.0rc2.tar.gz'

100%[======================================>] 30,734,155   231K/s   in 2m 14s 

2010-02-16 20:03:58 (224 KB/s) - `samba-3.5.0rc2.tar.gz' saved [30734155/30734155]

root@ubuntu-sv:/usr#

root@ubuntu-sv:/usr/tmp# wget http://nchc.dl.sourceforge.net/project/openantivirus/samba-vscan/0.3.6/samba-vscan-0.3.6.tar.bz2
--2010-02-17 12:35:45--  http://nchc.dl.sourceforge.net/project/openantivirus/samba-vscan/0.3.6/samba-vscan-0.3.6.tar.bz2
Resolving nchc.dl.sourceforge.net... 211.79.60.17, 2001:e10:ffff:1f02::17
Connecting to nchc.dl.sourceforge.net|211.79.60.17|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 166733 (163K) [application/x-bzip2]
Saving to: `samba-vscan-0.3.6.tar.bz2'

100%[===================================================================================>] 166,733      110K/s   in 1.5s   

2010-02-17 12:35:50 (110 KB/s) - `samba-vscan-0.3.6.tar.bz2' saved [166733/166733]

root@ubuntu-sv:/usr/tmp# tar -xf samba-vscan-0.3.6.tar.bz2

root@ubuntu-sv:/usr/tmp/samba-vscan-0.3.6# apt-get install gcc
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
将会安装下列额外的软件包:
  binutils cpp-4.4 gcc-4.4 gcc-4.4-base libc-bin libc-dev-bin libc6 libc6-dev libgcc1 libgomp1 libstdc++6 linux-libc-dev
建议安装的软件包:
  binutils-doc gcc-4.4-locales gcc-multilib manpages-dev autoconf automake1.9 libtool flex bison gdb gcc-doc
  gcc-4.4-multilib libmudflap0-4.4-dev gcc-4.4-doc libgcc1-dbg libgomp1-dbg libmudflap0-dbg libcloog-ppl0 libppl-c2 libppl7
  glibc-doc
下列【新】软件包将被安装:
  binutils gcc gcc-4.4 libc-dev-bin libc6-dev libgomp1 linux-libc-dev
下列的软件包将被升级:
  cpp-4.4 gcc-4.4-base libc-bin libc6 libgcc1 libstdc++6
共升级了 6 个软件包,新安装了 7 个软件包,要卸载 0 个软件包,有 54 个软件未被升级。
需要下载 17.6MB 的软件包。
解压缩后会消耗掉 31.7MB 的额外空间。
您希望继续执行吗?[Y/n]y

root@ubuntu-sv:/usr/tmp# tar -xf samba-3.5.0rc2.tar.gz

root@ubuntu-sv:/usr/tmp/samba-3.5.0rc2# apt-get install libcups2-dev libldap2-dev libkrb5-dev libpam0g-dev
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
将会安装下列额外的软件包:
  comerr-dev libavahi-client3 libavahi-common-data libavahi-common3 libcups2 libgcrypt11-dev libgnutls-dev libgpg-error-dev
  libgssapi-krb5-2 libgssrpc4 libk5crypto3 libkadm5srv6 libkdb5-4 libkrb5-3 libkrb5support0 libtasn1-3-dev zlib1g-dev
建议安装的软件包:
  doc-base cups-common libgcrypt11-doc gnutls-doc gnutls-bin guile-gnutls krb5-doc krb5-user
下列【新】软件包将被安装:
  comerr-dev libavahi-client3 libavahi-common-data libavahi-common3 libcups2 libcups2-dev libgcrypt11-dev libgnutls-dev
  libgpg-error-dev libgssrpc4 libkadm5srv6 libkdb5-4 libkrb5-dev libldap2-dev libpam0g-dev libtasn1-3-dev zlib1g-dev
下列的软件包将被升级:
  libgssapi-krb5-2 libk5crypto3 libkrb5-3 libkrb5support0
共升级了 4 个软件包,新安装了 17 个软件包,要卸载 0 个软件包,有 50 个软件未被升级。
需要下载 4,022kB 的软件包。
解压缩后会消耗掉 11.6MB 的额外空间。
您希望继续执行吗?[Y/n]

 

root@ubuntu-sv:/usr/tmp/samba-3.5.0rc2#cd source3

 

root@ubuntu-sv:/usr/tmp/samba-3.5.0rc2/source3# ./configure --prefix=/usr/local/samba --enable-cups --with-ads --with-ldap --with-pam --with-quotas --with-utmp --with-acl-support --with-aio-support --with-winbind

--with-utmp表示开户utmp审计

--enable-cups 表示开启CUPS打印系统

--with-ads 表示开启微软active directory

--with-quotas 支持磁盘限额

--with-aio-support 支持异步IO

root@ubuntu-sv:/usr/tmp/samba-3.5.0rc2/source3# make

root@ubuntu-sv:/usr/tmp/samba-3.5.0rc2/source3# make install

root@ubuntu-sv:/usr/tmp/samba-3.5.0rc2/source3# cp /usr/tmp/samba-3.5.0rc2/examples/tridge/smb.conf /usr/local/samba/lib/smb.conf

建立2个用户(df和lx,属于smbusers用户组)

root@ubuntu-sv:/home# groupadd smbusers

root@ubuntu-sv:/home# useradd -m  -s /bin/false df

ubuntu-sv:/home# useradd -m  -s /bin/false lx

root@ubuntu-sv:/home# usermod -G smbusers df

root@ubuntu-sv:/home# usermod -G smbusers lx

 root@ubuntu-sv:/# cd home
root@ubuntu-sv:/home# mkdir smbsv

root@ubuntu-sv:/home# useradd -m  -s /bin/false myguest

root@ubuntu-sv:/home# cd smbsv

建立public目录,myguest用户都可以读写文件

root@ubuntu-sv:/home/smbsv# mkdir public

建立sharefiles目录,smbusers用户组中的任何用户可以读和写自己的文件,只能读其他人的文件
root@ubuntu-sv:/home/smbsv# mkdir sharefiles

还有一个mydoc,用户的私有空间(这个就是每个用户的HOME目录下的子目录 )

root@ubuntu-sv:/home/smbsv# smbpasswd -a lx

root@ubuntu-sv:/home/smbsv# smbpasswd -a df

root@ubuntu-sv:/home/smbsv# smbpasswd -a myguest

 

设置文件权限属性 

root@ubuntu-sv:/home/smbsv# chgrp myguest public

root@ubuntu-sv:/home/smbsv# chown myguest public

root@ubuntu-sv:/home/smbsv# chmod 755 public

root@ubuntu-sv:/home/smbsv# chgrp smbusers sharefiles
root@ubuntu-sv:/home/smbsv# chown df sharefiles
root@ubuntu-sv:/home/smbsv# chmod 775 sharefiles
root@ubuntu-sv:/cdrom#

编辑/usr/local/samba/lib/smb.conf(并且加上mydoc的文件删除后不物理删除,而是放在.recycle_files的隐含目录中)

root@ubuntu-sv:/# cat /usr/local/samba/lib/smb.conf
[global]  
   config file = /usr/local/samba/lib/smb.conf.%m
   security = user
   encrypt passwords = yes
   server string = Welcome to deepfuture server ! (%v,%h)
   load printers = yes
   log level = 1
   log file = /usr/local/samba/var/log.%m
   hosts allow = 192.168.1. 127.0.0.1
   password level = 0
   auto services = df
   message command = csh -c '/usr/bin/X11/xedit -display :0 %s;rm %s' &
   socket options = TCP_NODELAY
   share modes = yes
   locking = yes
   strict locking = yes
   keepalive = 30
   include = /usr/local/samba/lib/smb.conf.%m
   include = /usr/local/samba/lib/smb.conf.%a
   unix charset=gb2312
   dos charset=cp936
   netbios name =DPF

 

[sharedoc]
   comment=sharedoc
   path=/home/smbsv/sharefiles
   read only = no
   valid users=@smbusers
   create mask = 0755
   vfs object=recycle
   recycle:repository=.recycle_files

[publicdoc]
   comment=publicdoc
   path=/home/smbsv/public
   read only= no
   valid users=myguest
   create mask=0775

[mydoc]
   comment=mydoc
   path=/home/%U
   guest ok = no
   read only = no
   invalid users=myguest
root@ubuntu-sv:/#

 

在sharedoc中删除文件后,可以看到.recycle_files自动建立了,并且删除的文件都在这里

root@ubuntu-sv:/home/smbsv/sharefiles# ls -a
.  ..  dd-df  .recycle_files
root@ubuntu-sv:/home/smbsv/sharefiles# cd .recycle_files
root@ubuntu-sv:/home/smbsv/sharefiles/.recycle_files# ls -l
total 8
-rwxr--r-- 1 lx lx  5 2010-02-18 17:04 lx.txt
-rwxr--r-- 1 lx lx 10 2010-02-18 17:24 ??????.txt
root@ubuntu-sv:/home/smbsv/sharefiles/.recycle_files#

运行发现有以下错误

root@ubuntu-sv:/usr/local/samba/bin# smbd
smbd: error while loading shared libraries: libwbclient.so.0: cannot open shared object file: No such

原因在于:

LD_LIBRARY_PATH

  Linux环境变量名,该环境变量主要用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径。(该路径在默认路径之前查找)
  移植程序时的经常碰到需要使用一些特定的动态库,而这些编译好的动态库放在我们自己建立的目录里,这时可以将这些目录设置到LD_LIBRARY_PATH中。
  当执行函数动态链接.so时,如果此文件不在缺省目录下‘/usr/local/lib’ and ‘/usr/lib’.
  那么就需要指定环境变量LD_LIBRARY_PATH
  假如现在需要在已有的环境变量上添加新的路径名,则采用如下方式:
  LD_LIBRARY_PATH=NEWDIRS:$LD_LIBRARY_PATH.(newdirs是新的路径串)
  (注:gnu系统可以自动添加在 /etc/ld.so.conf文件中来实现环境变量的设置)
修改后,/etc/environment应如下内容:

root@ubuntu-sv:/usr/local/samba/bin# cat /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/java/bin:/usr/local/samba/bin:

/usr/local/samba/sbin"
CLASSPATH=/usr/lib/jvm/java/lib
JAVAHOME=/usr/lib/jvm/java/
LD_LIBRARY_PATH=/usr/local/samba/lib

还有一个错误要注意:

不允许一个用户使用一个以上用户名与一个服务器或共享资源的多重连

 

C:\Documents and Settings\Administrator>net use * /del
您有以下的远程连接:

\\192.168.0.250\zhangjm
继续运行会取消连接。

是否继续此操作? (Y/N) [N]:

选择y 。

事实上这个不是samba的限制。
是Windows的限制。
始终要用public=yes的话,上面的方法都不能有效解决,因为:
在打开存在public=yes的samba服务器时,如果首先点击了有public=yes的共享资源的时候,widows会用默认的用户名去连接服务器,一般就是windows的登录名(可以在服务器端查看到的),这时候,再去点击没有public=yes的共享资源,由于使用了user级别,服务器就会要求验证,这时,之前的默认登录已经存在,就出现故障了。即使注销连接后如果没有采用正确的顺序访问共享资源,还是会陷入这个泥潭中。
因此,最好办法就是不用public=yes,给公共帐号建立一个共用的账户并公示出来。这样处理,其实权限更清晰一些。

分享到:
评论
1 楼 ygswine 2014-03-31  
很复杂,看不懂

相关推荐

    ubuntu下安装samba服务器

    ### Ubuntu 下安装 Samba 服务器 #### 概述 Samba 是一款开源软件包,它提供了文件和打印服务的功能,使 Linux 和 Unix 系统能够与 Windows 系统进行无缝集成。通过 Samba,用户可以在 Ubuntu 系统上设置共享目录...

    ubuntu20.04无网安装samba

    ubuntu20.04无网安装samba 自我安装成功,如有缺依赖,可能还需要再下载其他的依赖包

    ubuntu安装配置samba

    ### Ubuntu 安装与配置 Samba 服务 #### 一、引言 Samba 是一款在 Linux 和 Unix 类操作系统上实现 SMB(Server Message Block)协议的软件包,它能够实现跨平台的文件共享和打印服务功能。对于 Ubuntu 用户来说,...

    避坑指南之完整版Samba4在Ubuntu 20.0.4安装指南

    Samba4在Ubuntu 20.04安装指南 本指南旨在解决Samba4在Ubuntu 20.04安装使用中的问题,提供完整的解决方案。以下是安装Samba4的详细步骤。 依赖包安装 在安装Samba4之前,需要安装依赖包。官网wiki地址提供了相关...

    ubuntu20.04安装samba, win10系统可以正常使用

    网上很多ubuntu20.04安装samba的说明,但是很多都是在win7下使用的,但是如果用win10来用的话,会有各种问题,无法使用。 本文件笔者安装 过来记录下来,亲测可用。 而且:这个配置,可用使得不同的用户,使用自己的...

    ubuntu15.10安装samba的配置文件

    ubuntu15.10安装samba的配置文件

    Ubuntu 设置Samba服务器

    $ sudo apt-get remove samba-common $ sudo apt-get remove smbclient $ sudo apt-get remove samba ``` 2. **安装Samba**: - 使用以下命令安装Samba: ``` $ sudo apt-get install samba $ sudo apt-get...

    Ubuntu 上建立samba服务器以及交叉编译环境配置

    sudo apt-get install samba samba-common 2. 安装依赖包 接下来,我们需要安装依赖包,以便于配置 Samba 服务器: sudo apt-get install python-glade2 3. 安装 Samba 服务器配置工具 安装配置工具,以便于...

    Ubuntu 安装及armlinux环境搭建

    ### Ubuntu 安装及 armlinux 环境...以上步骤详细介绍了如何在Ubuntu上安装系统、配置SSH连接、解决常见问题、安装Samba和TFTP服务等。这些知识点对于初学者来说非常实用,能够帮助他们在Ubuntu环境中更加高效地工作。

    samba离线安装和自动部署

    在Ubuntu系统中,离线安装Samba通常涉及以下步骤: 1. **获取Samba安装包**:你需要先从官方网站或第三方可靠的源下载Samba的.deb包,这是Ubuntu系统下的软件包格式。 2. **创建本地软件仓库**:将下载的Samba.deb...

    Ubuntu下安装samba服务器

    详细介绍如何在Ubuntu下安装Samba服务器,提供给需要的人使用。

    Ubuntu-Linux操作系统项目教程3套期末考试卷.doc

    * 软件包的安装、卸载和更新 网络管理 * 网络管理的概念 * 网络管理命令(ping、traceroute 等) * 网络管理协议(TCP/IP 等) Shell Script 编写 * Shell Script 的概念 * Shell Script 的语法和结构 * Shell ...

    Ubuntu下samba的安装

    标题中的“Ubuntu下samba的安装”涉及到的是在Ubuntu操作系统中安装和配置Samba服务器的过程。Samba是一款开源软件,它允许Linux系统与Windows系统之间进行文件和打印机共享,使得不同操作系统的计算机能够在一个...

    ubuntu10.10下安装Samba步骤

    ubuntu10.10下安装Samba步骤,个人实践记载所得。

    samba-4.8.3 samba-3.6.9

    标题中的"samba-4.8.3"和"samba-3.6.9"分别代表了Samba软件的不同版本。4.8.3是较新的版本,而3.6.9则相对较旧。这两个版本在功能、性能和安全性方面可能存在差异,但都提供了与Windows网络共享文件和打印机的基本...

    Ubuntu下samba的使用

    要在Ubuntu系统上安装Samba服务器,可以使用以下命令: ```bash sudo apt-get install samba ``` 同时,为了能够在Ubuntu系统中访问Windows共享文件夹,还需要安装`smbfs`: ```bash sudo apt-get install smbfs ```...

    ubuntu_Samba服务器配置

    如果系统无法连接网络,则需要手动下载并安装相关的 deb 包,如 `libwbclient.deb`、`samba-common.deb` 和 `samba.deb`。这些 deb 包可以从官方 Ubuntu 软件仓库下载,例如: - `samba-common_2%3a3.4.7~dfsg-1...

    ubuntu samba的安装,samba连接不上

    ubuntu samba的安装,samba连接不上

    Metasploitable_ubuntu-book.zip

    在本例中,这个靶机是基于Ubuntu构建的,名为"Metasploitable",其主要目的是为了帮助用户理解和实践渗透测试技术,特别是针对Samba服务的漏洞利用。 Samba服务是Linux和Unix系统中用于实现与Windows网络共享的软件...

    Ubuntu 18.04.2安装Samba服务器及配置.pdf

    Ubuntu 18.04.2安装Samba服务器及配置.pdf

Global site tag (gtag.js) - Google Analytics