samba应用实例[转帖]Windows系统 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    刚才在国外的网站上研究了半天的E文,想不到这个网站[url]http://linuxaid.com.cn/[/url]上这篇文章说得更周到了,

samba应用实例[转帖]Windows系统

。我faint! [color=green:834eb94ef0][size=25:834eb94ef0]Samba使用大全(二)-Samba客户端[/size:834eb94ef0] 摘要 Samba使用大全(二)-Sa

    刚才在国外的网站上研究了半天的E文,想不到这个网站[url]http://linuxaid.com.cn/[/url]上这篇文章说得更周到了。我faint!

    [color=green:834eb94ef0][size=25:834eb94ef0]Samba使用大全(二)-Samba客户端[/size:834eb94ef0]

    摘要

    Samba使用大全(二)-Samba客户端(2002-06-24 14:33:0

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

    By ideal

    使用Samba网络打印:

    使用unix网络打印以前的文章比较少涉及,最近试验了一下,效果还是不错的,现在讲讲基本的实现方法:

    比如你要建立一台网络打印机grind,而打印机对应网络上面的//glass/HPLaserj,所有需要配置的文件有下面几个:

    1./etc/printcap,内容一般为:

    grind:

    :sh: #禁止提示的header

    :ml=0: #打印的文件的长度下限,

    :mx=0: #最大的打印文件大小,0为不限制

    :sd=/var/spool/lpd/grind: #打印机的spool目录

    :lp=|/usr/bin/smbprint: #打印输出需要的设备名或者管道名

    :lpd_bounce=true: #强制lpd守护进程过滤打印文件

    :if=/usr/share/printconf/mf_wrapper: #过滤命令文件

    2.smbprint这个一般在安装完smb相关的rpm包以后就有了,主要内容是:

    eval aclearcase/" target="_blank" >cct_file=$$#

    spool_dir=`dirname $acct_file`

    config_file=$spool_dir/.config

    eval `cat $config_file`

    share=`echo $share | sed "s/[]///g"`

    if [ "$user" != "" ]; then

    usercmd="-U"

    else

    usercmd=""

    fi

    if [ "$workgroup" != "" ]; then

    workgroupcmd="-W"

    else

    workgroupcmd=""

    fi

    if [ "$translate" = "yes" ]; then

    command="translate ; print -"

    else

    command="print -"

    fi

    cat | /usr/bin/smbclient "$share" "$password" -E ${hostip:+-I}

    $hostip -N -P $usercmd "$user" $workgroupcmd "$workgroup"

    -c "$command" 2>/dev/null

    3.mf_wrapper是一个magic filter文件,是相关的一些过滤规则。内容是:

    MF_RULE_DIR='/usr/share/printconf/mf_rules'

    MF_RULES=$MF_RULE_DIR/mf[[:digit:]][[:digit:]]-*

    TMP_FILE=`mktemp /tmp/printconf.XXXXXX`' 'exit 1

    cat ./mf.cfg $MF_RULES | m4 > $TMP_FILE

    if [ -n "$DEBUG" ]; then

    case "$DEBUG" in

    2)

    DEBUGSTRING="--debug--debug"

    ;;

    3)

    DEBUGSTRING="--debug --debug --debug"

    ;; 4)

    DEBUGSTRING="--debug --debug --debug --debug"

    ;;

    5)

    DEBUGSTRING="--debug --debug --debug --debug --debug"

    ;;

    *)

    DEBUGSTRING="--debug"

    ;;

    esac

    else

    DEBUGSTRING=""

    fi

    # Run magic filter

    /usr/bin/magicfilter-t $TMP_FILE $DEBUGSTRING $* < /dev/stdin

    RETVAL=$?

    if [ -f $TMP_FILE ]; then

    rm -f $TMP_FILE;

    fi

    ;;

    esac

    else

    DEBUGSTRING=""

    fi

    # Run magic filter

    /usr/bin/magicfilter-t $TMP_FILE $DEBUGSTRING $* < /dev/stdin

    RETVAL=$?

    if [ -f $TMP_FILE ]; then

    rm -f $TMP_FILE;

    fi

    if [[ $RETVAL -eq 0 ]]; then

    TERMINATION=`grep '^[[:space:]]*#[[:space:]]*TERMINATION=' ./mf.cfg | se

    d 's/^[[:space:]]*#[[:space:]]*TERMINATION=//;'`

    if [ -n $TERMINATION ]; then

    echo -n -e $TERMINATION;

    fi

    fi

    同时需要在/var/spool/lpd/grind下面有这么两个文件:mf.cfg和script.cfg,

电脑资料

samba应用实例[转帖]Windows系统》(https://www.unjs.com)。

    mf.cfg的内容是:

    define(TEXTfilter, text ""

    14 dnl

    define(PSfilter, `filter /usr/share/printconf/util/mf_postscript_wrapper --mfomatic -d lj5gray-75168.foo')dnl

    script.cfg的内容是:

    share="//glass/HPLaserj" #glass机器上面共享的打印机

    hostip="192.168.1.123" #glass这台机器的IP

    user=""

    password=""

    workgroup=""

    translate="no"

    完成这个工作后,启动lpd进程,然后就能用lpr等命令使用网络打印机打印了。

    使用网络共享文件资源:

    列出网络资源:

    一般可以用smbclient来列出某台机器相关的资源,smbclient的用法参考http://www.linuxaid.com.cn/training/tods/showtod.jsp?i=241。这里讲比较有用的使用方法:

    smbclient –L IP或者NETBIOS名称,作用是显示某台提供samba服务的服务器上的共享资源。命令执行效果如下:

    smbclient –L glass

    Sharename Type Comment

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

    IPC$ IPC 远程 IPC

    HPLaserJ Printer HP LaserJet 6P

    ADMIN$ Disk 远程管理

    littlep Disk

    C$ Disk 默认共享

    Server Comment

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

    GLASS

    GRIND

    Workgroup Master

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

    BLUESUN GLASS

    WORKGROUP HEIHEI

    第一段列举了该机器(glass)上面的共享资源,第二段列举了glass所在的工作组里面所有提供samba服务的机器,第三列举了其他工作组提供browse服务的Master机器(关于Master和Browse服务可以参考我的前面一篇samba使用大全-samba服务器)。

    使用网络资源:

    smbclient //IP或者NETBIOS名称/共享资源名 [-U 用户名]

    命令执行效果如下:

    smbclient //glass/littlep

    added interface ip=192.168.1.123 bcast=192.168.1.255 nmask=255.255.255.0

    Got a positive name query response from 192.168.1.123 (192.168.1.123)

    Password:

    Domain=[BLUESUN] OS=[Windows5.0] Server=[Windows 2000 LAN Manager]

    smb: >

    接下来的操作和ftp的时候命令一样,用get下载文件而用put上传文件,命令可以用help查看。

    还有一种方法是用文件系统的方式(这种方式要确定你的内核支持smbfs,如果没有支持的话,编译内核的时候必须选中File systems--->Network File Systems---> SMB file system support (to mount Windows shares etc.) ):smbmount //IP或者NETBIOS名称/共享资源名 /本地挂接点 [-o option]

    常用的的option有username=<用户名>,password=<密码>,guest(指定为用guest访问,不用提供密码,前面的即使用username=guest参数的话也会要求输入密码),ro(有时候为了系统安全要指定为只读模式),rw,同时多个option的话用逗号隔开。

    或者可以用mount –t smbfs [–o option] //IP或者NETBIOS名称/共享资源名 /本地挂接点来实现同样的功能。

    例子如下:

    smbmount //glass/littlep /test -o guest或者mount –t smbfs –o guest //glass/littlep /test,然后就能通过访问/test来使用网络上的资源了。

    如果不需要使用的时候,可以简单地使用smbumount /test或者umount /test来解除这个挂接。

    关于samba的功能(共享Linux磁盘给Win95/NT、共享Linux打印机给win95/NT、共享win95/NT打印机给Linux机器。、共享Win95/NT磁盘给Linux机器),前面两个属于samba服务器的内容而后两个属于samba客户段的内容,在我的两篇文章中都有介绍了他们的实现方法,但是samba实在是一个强大的工具,无法十分详细地介绍它地全部功能,而且限于笔者的知识有限,有不到之处请各位指出,还望各位多多交流。[/color:834eb94ef0]

    htldm 回复于:2003-01-28 21:05:57顶!

    sdccf 回复于:2003-01-28 21:39:32精华!

    simonzhan 回复于:2003-01-28 22:51:15谢谢老版主和未来版主的支持。我一定[color=red:ed0f2fcfeb][size=25:ed0f2fcfeb][b:ed0f2fcfeb]good good study, day day up![/b:ed0f2fcfeb][/size:ed0f2fcfeb][/color:ed0f2fcfeb]

    wolf2602 回复于:2003-01-29 08:37:33谢谢楼主!

    htldm 回复于:2003-01-29 09:23:10simonzhan! 大部分朋友都回家过年了。只有你和少数几个朋友还在坚守阵地了。*_*

    answer 回复于:2003-01-29 09:34:02up

    simonzhan 回复于:2003-01-29 14:10:32[quote:a8599ffbcb="htldm"]simonzhan! 大部分朋友都回家过年了。只有你和少数几个朋友还在坚守阵地了。*_*[/quote:a8599ffbcb]

    我今年要值班呢。不过我家也是宽带,所以只要有空,我都会这来看看。因为这里的气氛很好。

    yourkeychen 回复于:2003-02-07 12:26:10我也会常来,学到不少呢,呵呵。。。包包都装不下了,谢谢各位

    javamud 回复于:2003-05-28 16:18:09客户端是win98或win2000该怎么访问solaris上的资源?

   

    原文转自:http://www.ltesting.net

最新文章