Sophie

Sophie

distrib > Mandriva > 9.2 > i586 > by-pkgid > a804ef007a99f7d26cf24253c2994680 > files > 1275

howto-html-ja-9.1-0.5mdk.noarch.rpm

<HTML>
<HEAD>
 <META http-equiv="Content-Type" content="text/html; charset=ISO-2022-JP">
<TITLE>
SMB HOWTO
</TITLE>
</HEAD>
<BODY BGCOLOR=white>
<A HREF="INDEX-JF.html">JF-INDEX (document list of JF Project)</A>
<HR>
<H1>SMB HOWTO</H1>

<H2>David Wood,
<A HREF="mailto:dwood@plugged.net.au">dwood@plugged.net.au</A></H2>v1.0, 10 August 1996
<H2>$BCfLnIpM:(B
<A HREF="mailto:nakano@apm.seikei.ac.jp">nakano@apm.seikei.ac.jp</A></H2>v1.0j1, 24 September 1996
<P><HR>
<EM>$B$3$l$O!!(BSMB HOWTO $B$G$9!#$3$NJ8=q$O(B Linux $B$G(B Session Message Block
(SMB) $B%W%m%H%3%k$r07$&J}K!$K$D$$$F=R$Y$?$b$N$G$9!#(BSMB $B%W%m%H%3%k$O!"(B
NetBIOS $B%W%m%H%3%k!"(BLanManager $B%W%m%H%3%k$H$b8F$P$l$F$$$^$9!#(B</EM>
<HR>
<P><B>$BCm0U(B: $B$3$NJ8=q$O$+$J$j0JA0$K=q$+$l$?$b$N$J$N$G!"(B
$B$$$^$I$-$N(B Linux $B4D6-$K$O$"$F$O$^$i$J$$2U=j$,$"$j$^$9!#(B
(JF Project)</B>
<P>
<H2><A NAME="toc1">1.</A> <A HREF="#s1">$B$O$8$a$K(B</A></H2>

<P>
<H2><A NAME="toc2">2.</A> <A HREF="#s2">$BB>$N>pJs(B</A></H2>

<P>
<H2><A NAME="toc3">3.</A> <A HREF="#s3">$B%$%s%9%H!<%k(B</A></H2>

<P>
<H2><A NAME="toc4">4.</A> <A HREF="#s4">$B%G!<%b%s$r5/F0$9$k(B</A></H2>

<P>
<H2><A NAME="toc5">5.</A> <A HREF="#s5">/etc/smb.conf $B$N@_Dj(B</A></H2>

<P>
<H2><A NAME="toc6">6.</A> <A HREF="#s6">Linux $B$N%I%i%$%V$r(B Windows $B%^%7%s$+$i6&M-$9$k(B</A></H2>

<P>
<H2><A NAME="toc7">7.</A> <A HREF="#s7">Windows $B$N%I%i%$%V$r(B Linux $B%^%7%s$G6&M-$9$k(B</A></H2>

<P>
<H2><A NAME="toc8">8.</A> <A HREF="#s8">Linux $B%^%7%s$N%W%j%s%?$r(B Windows $B%^%7%s$+$iMxMQ$9$k(B</A></H2>

<P>
<H2><A NAME="toc9">9.</A> <A HREF="#s9">Linux $B%^%7%s$+$i(B Windows $B$N%W%j%s%?$r;H$&(B</A></H2>

<P>
<H2><A NAME="toc10">10.</A> <A HREF="#s10">$BCx:n8"(B</A></H2>

<P>
<H2><A NAME="toc11">11.</A> <A HREF="#s11">$B<U<-(B</A></H2>

<HR>
<H2><A NAME="s1">1.</A> <A HREF="#toc1">$B$O$8$a$K(B</A></H2>

<P>
<P>$B$3$l$O!!(BSMB HOWTO $B$G$9!#$3$NJ8=q$O(B Linux $B$G(B Session Message Block
(SMB) $B%W%m%H%3%k$r07$&J}K!$K$D$$$F=R$Y$?$b$N$G$9!#(BSMB $B%W%m%H%3%k$O!"(B
NetBIOS $B%W%m%H%3%k!"(BLanManager $B%W%m%H%3%k$H$b8F$P$l$F$$$^$9!#(B
<P>$B$3$NJ8=q$O(B David Wood
(
<A HREF="mailto:dwood@plugged.net.au">dwood@plugged.net.au</A>)
$B$,JT=8$7$F$$$^$9!#DI2C>pJs$d=$@5!"D{@5$K$D$$$F$N%a!<%k$O!"$3$N%"%I%l%9(B
$B$^$G$*Aw$j$/$@$5$l$P<!2s$N%j%j!<%9$KH?1G$5$;$^$9!#(B
<P>SMB $B%W%m%H%3%k$O(B Microsoft Windows 3.11$B!"(BNT$B!"(B95 $B$G%G%#%9%/$d%W%j%s(B
$B%?$r6&M-$9$k$?$a$KMQ$$$i$l$^$9!#(BAndrew Tridgell $B$K$h$C$F=q$+$l$?(B Samba
$B%D!<%k%;%C%H$rMQ$$$l$P!"(BLinux $B$J$I$N(B Unix $B%^%7%s$G$b(B Windows $B$N%[%9%H(B
$B$H%G%#%9%/$d%W%j%s%?$r6&M-$G$-$^$9!#(B
<P>Samba $B$rMQ$$$F$G$-$k$3$H$O0J2<$N(B 4 $B$D$G$9!#(B
<P>
<OL>
<LI>Linux $B%[%9%H$N%I%i%$%V$r(B Windows $B%[%9%H$G6&M-$9$k!#(B</LI>
<LI>Windows $B%[%9%H$N%I%i%$%V$r(B Linux $B%[%9%H$G6&M-$9$k!#(B</LI>
<LI>Linux $B%[%9%H$N%W%j%s%?$r(B Windows $B%[%9%H$G6&M-$9$k!#(B</LI>
<LI>Windows $B%[%9%H$N%W%j%s%?$r(B Linux $B%[%9%H$G6&M-$9$k!#(B</LI>
</OL>
<P>$B$3$NJ8=q$O0J>e$N%1!<%9$r$9$Y$F%+%P!<$7$F$$$^$9!#(B
<P>$BLH@U(B: $B$3$NJ8=q$K5-$7$?J}K!$d%9%/%j%W%H$O!"Cx<T$r4^$a$?2??M$+$N%0%k!<%W(B
$B$NCf$G$O$&$^$/F/$$$F$$$^$9!#$7$+$74D6-$,0[$J$k$H!"$&$^$/$$$+$J$$2DG=(B
$B@-$b$"$j$^$9!#$=$N$h$&$J>l9g$OCx<T$K%a!<%k$GCN$i$;$F$$$?$@$1$l$P!"$3$N(B
$BJ8=q$NH/E8$KLrN)$A$^$9!#$?$@$7Cx<T$O2?$NJ]>Z$b$7$^$;$s!#2?$r4|BT$7$F(B
$B$?$s$G$9$+!)Cx<T$O$?$@=u8@$r$7$F$$$k$K$9$.$J$$$N$G$9(B...
<P>
<HR>
<H2><A NAME="s2">2.</A> <A HREF="#toc2">$BB>$N>pJs(B</A></H2>

<P>
<P>$B$3$N(B HOWTO $BJ8=q$G$O!"(BLinux $B%^%7%s$G(B SMB $B$N%U%!%$%k%5!<%S%9!"%W%j%s%H%5!<(B
$B%S%9$rMxMQ$9$k$?$a$N@_DjK!$K$D$$$F!"4pAC$+$i@bL@$7$F$$$^$9!#(BSamba $B$OJ#(B
$B;($G9b5!G=$J%7%9%F%`$G$9$N$G!"$3$NJ8=q$G$O(B Samba $B$K4X$9$k>pJs$9$Y$F$r(B
$B5-=R$9$k$3$H$O$G$-$^$;$s$7!"$^$?$=$N$D$b$j$b$"$j$^$;$s!#(B
<P>$B$h$jB?$/$N>pJs$rCN$j$?$$?M$O0J2<$NJ88%$r$_$F$/$@$5$$!#(B
<P>
<UL>
<LI>Samba $B$NG[I[%Q%C%1!<%8$K4^$^$l$k%I%-%e%a%s%H!#G[I[%Q%C%1!<%8$O(B 
<A HREF="ftp://nimbus.anu.edu.au/pub/tridge/samba/">ftp://nimbus.anu.edu.au/pub/tridge/samba/</A>
$B$+$i<hF@$G$-$^$9!#(B
</LI>
<LI>Linux Printing HOWTO
</LI>
<LI>Print2Win mini HOWTO
</LI>
</UL>
<P>===$BLuCm(B===
<P>$B9qFb$N(B Samba $B8x<0%_%i!<%5!<%P$H$7$F$O!"(B
<A HREF="ftp://ring.aist.go.jp/archives/net/samba/">ftp://ring.aist.go.jp/archives/net/samba/</A>
<A HREF="ftp://ring.asahi-net.or.jp/archives/net/samba/">ftp://ring.asahi-net.or.jp/archives/net/samba/</A>
$B$J$I$,$"$j$^$9!#$3$NK]Lu$r=q$$$F$$$k(B '96 9 $B7n8=:_$G$O!"(B1.9.16p2 $B$,:G?7(B
$B$N%j%j!<%9%P!<%8%g%s$N$h$&$G$9!#(B
<P>$BF|K\8l$N2r@bJ8=q$H$7$F$O0J2<$N$h$&$J$b$N$,$"$j$^$9!#$?$@$7$3$l$i$O(B 
1.9.15p8 $B$r%Y!<%9$K=q$$$F$"$j$^$9$N$G!"(B1.9.16p2 $B$G$O:Y$+$JItJ,$,JQ$o$C(B
$B$F$$$^$9!#FC$K(B <CODE>nmbd</CODE> $B$N07$$$,$@$$$VJQ$o$C$F$$$k$N$G!"(B<CODE>man nmbd</CODE> 
$B$7$F$*$/$3$H$r6/$/$*4+$a$7$^$9!#(B
<P>
<UL>
<LI>Unix Magazine '96 3 $B7n9f(B $B!XFC=8(B PC UNIX$B!Y2,;3@;I'!"JR;3A1>O(B
</LI>
<LI>Unix User '96 10 $B7n9f!A(B $B!X%W%l%$!&%Q!<%=%J%k(B Linux$B!Y??Fi7I;N(B
</LI>
<LI>$B!X<BNcIU$-(B Samba $B$N;H$$J}!YJ?Ln(B $BAo(B
<A HREF="ftp://etlport.etl.go.jp/pub/windows/knowhow/samba.txt">ftp://etlport.etl.go.jp/pub/windows/knowhow/samba.txt</A><BR>
$B9qFb$N(B Samba $B%I%-%e%a%s%H$H$7$F$O%P%$%V%kE*B8:_$H8@$($^$7$g$&!#(B
</LI>
<LI>$B:4F#J8M%$5$s$N(B Samba Web $B%Z!<%8(B
<A HREF="http://www.yk.rim.or.jp/~fumiya/Samba/">http://www.yk.rim.or.jp/~fumiya/Samba/</A><BR>
<CODE>smb.conf</CODE> $B$NK]Lu$J$I$,$"$j$^$9!#(B
</LI>
</UL>
<P>$B%K%e!<%9$G$O!"1Q8l$G$9$,(B <CODE>comp.protocols.smb</CODE> $B$G(B Samba $B$K4X$9$k5DO@(B
$B$,$5$l$F$$$^$9!#(B
<P>==$BLuCm=*(B==
<P>
<HR>
<H2><A NAME="s3">3.</A> <A HREF="#toc3">$B%$%s%9%H!<%k(B</A></H2>

<P>
<P>$B:G?7$N(B Samba $B$N%=!<%9$O(B
<A HREF="ftp://nimbus.anu.edu.au/pub/tridge/samba/">ftp://nimbus.anu.edu.au/pub/tridge/samba/</A>
$B$+$iF@$i$l$^$9!#(B
<P>Redhat $B$r;H$C$F$$$k?M$J$i(B Samba $B$r(B rpm $B7A<0$G%$%s%9%H!<%k$9$k$3$H$b$G(B
$B$-$^$9!#B>$NG[I[%Q%C%1!<%8$K$b(B Samba $B$N%P%$%J%j%$%s%9%H!<%k$,2DG=$J$b(B
$B$N$,$"$j$^$9!#(B
<P>===$BLuCm(B===
<P>$BF|K\8l$N%U%!%$%kL>$rM-8z$K$7$?$$>l9g$O!"%3%s%Q%$%k$N:]$K(B <CODE>Makefile</CODE>
$B$G$N@_Dj$,I,MW$K$J$j$^$9!#>e5-$N$h$&$J%P%$%J%j%Q%C%1!<%8$GF|K\8l%U%!%$(B
$B%kL>$,M-8z$K$J$C$F$$$k$+$I$&$+!"$4B8CN$NJ}$,$$$i$C$7$c$$$^$7$?$iLu<T$^(B
$B$G$*CN$i$;$$$?$@$1$l$P9,$$$G$9!#(B
<P>==$BLuCm=*(B==
<P>Samba $B$rMxMQ$9$k$?$a$K$O0J2<$N(B 2 $B$D$N%G!<%b%s%W%m%0%i%`$,I,MW$G$9!#(B
$B$3$l$i$ODL>o(B <CODE>/usr/sbin</CODE> $B$K%$%s%9%H!<%k$5$l!"%7%9%F%`5/F0;~$K%V!<(B
$B%H%"%C%W%9%/%j%W%H$G5/F0$5$l$k$+!"$^$?$O(B <CODE>inetd</CODE> $B$+$i<B9T$5$l$^$9!#(B
$B%9%/%j%W%H$NNc$O!"(B
<A HREF="#sec-daemons">$B%G!<%b%s$r5/F0$9$k(B</A> 
$B$N@a$K$"$2$F$"$j$^$9!#(B
<P>
<DL>
<DT><B>smbd</B><DD><P>SMB $B%G!<%b%s$G$9!#(B
<DT><B>nmbd</B><DD><P>$B%/%i%$%"%s%H$X(B NetBIOS $B$K$h$kL>A02r7h5!G=$rDs6!$7$^$9!#(B
</DL>
<P>$B0J2<$N(B Samba $B%W%m%0%i%`$ODL>o(B <CODE>/usr/bin</CODE> $B$K%$%s%9%H!<%k$5$l$^$9(B
$B!J$3$N>l=j$OA*Br2DG=$G$9!K!#(B
<P>
<DL>
<DT><B>smbclient</B><DD><P>UNIX $B%[%9%H$N$?$a$N(B SMB $B%/%i%$%"%s%H%W%m%0%i%`(B
<DT><B>smbprint</B><DD><P>SMB $B%[%9%H$N%W%j%s%?$rMxMQ$9$k$?$a$N%9%/%j%W%H(B
<DT><B>smbprint.sysv</B><DD><P>SVR4 $BMQ$N(B smbprint
<DT><B>smbstatus</B><DD><P>$B%m!<%+%k%[%9%H$X$N(B SMB $B@\B3$r%j%9%H$9$k%W%m%0%i%`(B
<DT><B>smbrun</B><DD><P>SMB $B%[%9%H$GI,MW$J%"%W%j%1!<%7%g%s$r<B9T$5$;$k$?$a$NJd=u(B
$BE*$JLr3d$r$9$k%9%/%j%W%H%W%m%0%i%`(B
</DL>
<P>$B$5$i$K!"$3$N(B HOWTO $BJ8=q$K$O(B <CODE>print</CODE> $B$H$$$&L>A0$N%9%/%j%W%H$,F~$C$F(B
$B$$$^$9!#$3$l$O(B <CODE>smbprint</CODE> $B%9%/%j%W%H$N%U%m%s%H%(%s%I$G!"0u:~$r$h$j(B
$B4JC1$K$9$k$b$N$G$9!#(B
<P>Samba $B$N%Q%C%1!<%8$r%$%s%9%H!<%k$9$k$N$O4JC1$G$9!#>e5-$N(B URL $B$+$i%=!<(B
$B%9$r<j$KF~$l!"G[I[%"!<%+%$%V$NCf$N(B README $B%U%!%$%k$r8+$F$/$@$5$$!#$^$?(B 
<CODE>docs/INSTALL.txt</CODE> $B$K$O%$%s%9%H!<%k<j=g$N>\:Y$J2r@b$,=q$$$F$"$j$^$9!#(B
<P>$B%$%s%9%H!<%k$KB3$$$F!"%G!<%b%s$r(B <CODE>/usr/sbin</CODE> $B$X!"%W%m%0%i%`$r(B 
<CODE>/usr/bin</CODE> $B$X!"(Bman $B%Z!<%8$r(B <CODE>/usr/local/man</CODE> $B$KCV$-$^$7$g(B
$B$&!#(B
<P>Samba $B$N%Q%C%1!<%8$r:n$k$H$-!"(B<CODE>smbd</CODE> $B$N%3%s%U%#%.%e%l!<%7%g%s%U%!%$(B
$B%k$G$"$k(B <CODE>smb.conf</CODE> $B$NCV$->l=j$r(B <CODE>Makefile</CODE> $B$NCf$G;XDj$7$^$9!#9%(B
$B$-$J$H$3$m$KCV$/$3$H$,$G$-$^$9$,!"DL>o$O(B <CODE>/etc/smb.conf</CODE> $B$,NI$$(B
$B$G$7$g$&!#%m%0%U%!%$%k$H%m%C%/%G%#%l%/%H%j$K$D$$$F$O0J2<$N$h$&$K@_Dj$7(B
$B$F$*$/$3$H$r$*4+$a$7$^$9!#(B
<P>
<HR>
<PRE>
   log file=/var/log/samba-log.%m
   lock directory = /var/lock/samba
</PRE>
<HR>
<P>===$BLuCm(B===
<P>Samba $B%Q%C%1!<%8$N%G%U%)%k%H$N@_Dj$G$O!"%G!<%b%s$*$h$S%W%m%0%i%`$O(B 
<CODE>/usr/local/samba/bin</CODE> $B$X!"$^$?(B <CODE>smb.conf</CODE> $B$J$I$O(B 
<CODE>/usr/local/samba/lib</CODE> $B$KCV$+$l$^$9!#(B
<P>$B$^$?(B <CODE>log file</CODE> $B$H(B <CODE>lock directory</CODE> $B$N@_Dj$O(B 
<CODE>Makefile</CODE> $B$G$b$G$-$^$9$,!"(B<CODE>smb.conf</CODE> $B$K=q$$$F$*$/J}$,%I%-%e%a%s(B
$B%H@-$,9b$/$J$k$N$GNI$$$H;W$$$^$9!#(B
<P>==$BLuCm=*(B==
<P><CODE>smb.conf</CODE> $B$r%$%s%9%H!<%k$7$^$9!#(BSamba $B$N%W%m%0%i%`$r%3%s%Q%$%k$7$?(B
$B%G%#%l%/%H%j$K9T$-!"$5$i$K(B <CODE>example/simple</CODE> $B%G%#%l%/%H%j$K0\F0(B
$B$7$F(B <CODE>README</CODE> $B$rFI$s$G2<$5$$!#B3$$$F%G%#%l%/%H%j$K$"$k(B 
<CODE>smb.conf</CODE> $B$r(B <CODE>/etc</CODE> $B$K%3%T!<$7$^$9!#$3$3$G$A$g$C$H(B<EM>$BCm0U(B</EM>$B!#(B
Redhat $B$J$I$NG[I[%Q%C%1!<%8$+$i(B Samba $B$r%$%s%9%H!<%k$7$?>l9g$K$O!"4{$K(B
<CODE>/etc</CODE> $B$K(B <CODE>smb.conf</CODE> $B$,$"$k$+$b$7$l$^$;$s!#$3$N>l9g$O!"$3$N(B
$B%U%!%$%k$+$i@_Dj$r$O$8$a$k$HNI$$$G$7$g$&!#(B
<P>%
<CODE>smb.conf</CODE> $B$r(B <CODE>/etc</CODE> $B$KCV$-$?$/$J$$>l9g$K$O!"9%$-$J>l=j$K$*(B
$B$$$F%7%s%\%j%C%/%j%s%/$r(B <CODE>/etc</CODE> $B$K:n$j$^$7$g$&!#(B
<P>
<HR>
<PRE>
    ln -s /path/to/smb.conf /etc/smb.conf
</PRE>
<HR>
<P>
<HR>
<H2><A NAME="sec-daemons"></A> <A NAME="s4">4.</A> <A HREF="#toc4">$B%G!<%b%s$r5/F0$9$k(B</A></H2>

<P>
<P>SMB $B$N%G!<%b%s$O(B <CODE>/usr/sbin/smbd</CODE> $B$H(B <CODE>/usr/sbin/nmbd</CODE> $B$N(B 
2 $B$D$G$9!#(B
<P>Samba $B$N%G!<%b%s$r<B9T$9$k$d$j$+$?$O(B 2 $B$D$"$j$^$9!#(B<CODE>inetd</CODE> $B$+$i5/F0(B
$B$9$kJ}K!$H!"%9%?%s%I%"%m!<%s$N%W%m%;%9$H$7$F5/F0$9$kJ}K!$G$9!#@lMQ$N%U%!(B
$B%$%k%5!<%P$H$7$FMQ$$$k>l9g$O(B <CODE>inetd</CODE> $B$+$i5/F0$9$kJ}$,NI$$$G$7$g$&!#(B
$B$=$&$9$l$P2?$i$+$NM}M3$G$3$l$i$N%G!<%b%s%W%m%;%9$,;`$s$G$b!"<!$N%j%/%((B
$B%9%H$K$h$C$F:F<B9T$5$l$^$9!#(BSMB $B%5!<%P%5!<%S%9$r;~!9$7$+MxMQ$7$J$$!J%7(B
$B%9%F%`4IM}$N$H$-$@$1$H$+!K$J$i$P!"(B<CODE>/etc/rc.d/init.d</CODE> $B%9%/%j%W%H(B
$B$+$i<B9T$9$k$HNI$$$G$7$g$&!#I,MW$J$H$-$@$1<jF0$G<B9T$7$F$bNI$$$G$7$g$&!#(B
<P>===$BLuCm(B===
<P>$B%9%T!<%I$NE@$+$i$O!"%G!<%b%s%W%m%;%9$NJ}$,$o$:$+$J$,$iM-Mx$H$$$&0U8+$b(B
$B$"$j$^$9!#$^$?!"Lu<T$N%[%9%H$G(B 3 $B%v7n$[$I(B Samba $B$r;HMQ$7$?4V!"Mn$A$?$3(B
$B$H$O$"$j$^$;$s$G$7$?!#(B
<P>==$BLuCm=*(B==
<P><CODE>inetd</CODE> $B$+$i%G!<%b%s$r5/F0$9$k>l9g$O!"0J2<$N9T$r(B <CODE>inetd</CODE> $B$N@_Dj(B
$B%U%!%$%k(B <CODE>/etc/inetd.conf</CODE> $B$K2C$($^$9!#(B
<P>
<HR>
<PRE>
# SAMBA NetBIOS services (for PC file and print sharing)
netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd
netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd
</PRE>
<HR>
<P>$B=q$-49$($?$i!"0J2<$N%3%^%s%I$r<B9T$7$F(B <CODE>inetd</CODE> $B$r%j%9%?!<%H$7$^$9!#(B
<P>
<HR>
<PRE>
    kill -HUP &lt;pid of inetd>
</PRE>
<HR>
<P><CODE>&lt;pid of inetd&gt;</CODE> $B$K$O(B <CODE>inetd</CODE> $B$N%W%m%;%9(B ID $B$rF~$l$F$/(B
$B$@$5$$!#(B<CODE>ps</CODE> $B%3%^%s%I$G3NG'$9$k$+!"(B<CODE>&quot;cat
/var/run/inetd.pid&quot;</CODE> $B$J$I$G$b$o$+$j$^$9!#(B
<P>
<P>$B%G!<%b%s$r%7%9%F%`$N5/F0%9%/%j%W%H$+$i<B9T$9$k>l9g$O!"0J2<$NFbMF$r(B 
<CODE>/etc/rc.d/init.d/smb</CODE> $B$H$7$F:n@=$7!"%9%/%j%W%HCf$N%3%a%s%H$G;X(B
$BDj$5$l$F$$$k%U%!%$%k$X$N%7%s%\%j%C%/%j%s%/$r:n$C$F$/$@$5$$!#(B
<P>
<HR>
<PRE>
#!/bin/sh

#
# /etc/rc.d/init.d/smb - starts and stops SMB services.
#
# The following files should be synbolic links to this file:
# symlinks: /etc/rc.d/rc1.d/K35smb  (Kills SMB services on shutdown)
#           /etc/rc.d/rc3.d/S91smb  (Starts SMB services in multiuser mode)
#           /etc/rc.d/rc6.d/K35smb  (Kills SMB services on reboot)
#

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] &amp;&amp; exit 0

# See how we were called.
case "$1" in
  start)
    echo -n "Starting SMB services: "
    daemon smbd -D      
    daemon nmbd -D 
    echo
    touch /var/lock/subsys/smb
    ;;
  stop)
    echo -n "Shutting down SMB services: "
    killproc smbd
    killproc nmbd
    rm -f /var/lock/subsys/smb
    echo ""
    ;;
  *)
    echo "Usage: smb {start|stop}"
    exit 1
esac
</PRE>
<HR>
<P>===$BLuCm(B===
<P>Slackware $B$N>l9g$O!"(B<CODE>/etc/rc.d/rc.local</CODE> $B$K0J2<$N$h$&$J9T$rDI2C(B
$B$7$F$*$1$PNI$$$G$7$g$&!#(B
<HR>
<PRE>
if [ -f /usr/sbin/nmbd ]; then
  echo "SAMBA servers"
  /usr/sbin/smbd -D
  /usr/sbin/nmbd -D
fi
</PRE>
<HR>
<P>==$BLuCm=*(B==
<P>
<HR>
<H2><A NAME="s5">5.</A> <A HREF="#toc5">/etc/smb.conf $B$N@_Dj(B</A></H2>

<P>
<P>Linux $B$G$bB>$N(B Unix $B>e$G$b!"(BSamba $B$N@_Dj$O(B <CODE>/etc/smb.conf</CODE> $B$H$$(B
$B$&%U%!%$%k$K$^$H$a$F5-$5$l$F$$$^$9!#$I$N%7%9%F%`%j%=!<%9$r8x3+$9$k$+!"(B
$B$^$?$=$l$i$K$I$N$h$&$J@)8B$r2J$9$+$J$I$O!"$3$N%U%!%$%k$G@_Dj$7$^$9!#(B
<P>$B$3$N@a$KB3$/(B 2 $B@a$G$O(B Linux $B$N%I%i%$%V$d%W%j%s%?$r(B Windows $B%^%7%s$+$i(B
$B6&M-$9$kJ}K!$K$D$$$F=R$Y$^$9!#$3$N@a$G<($9(B <CODE>smb.conf</CODE> $B$O!"$G$-$k$@(B
$B$14JC1$K$3$l$i$N5!G=$r<B8=$9$k$h$&$K=q$$$?$b$N$G$9$N$G!"$"$/$^$GF3F~E*(B
$B$J$b$N$H9M$($F$/$@$5$$!#(B
<P>$B$3$N(B <CODE>smb.conf</CODE> $B$N>\:Y$,2r$i$J$/$F$b?4G[$9$kI,MW$O$"$j$^$;$s!#=EMW(B
$B$J35G0$K$D$$$F$O8e$N@a$G$"$i$?$a$F@bL@$7$^$9!#(B
<P><CODE>smb.conf</CODE> $BCf$N3F!9$N%;%/%7%g%s$O!"%;%/%7%g%s%X%C%@(B
$B!J(B<CODE>[global]</CODE>$B!"(B<CODE>[homes]</CODE>$B!"(B
<CODE>[printers]</CODE> $BEy!K$+$i;O$^$j$^$9!#(B
<P><CODE>global</CODE> $B%;%/%7%g%s$G$OA4$F$N%;%/%7%g%s$K6&DL$JJQ?t$r;XDj$7$^$9!#(B
<P><CODE>homes</CODE> $B%;%/%7%g%s$r;XDj$9$k$H!"%j%b!<%H%f!<%6$O<+J,$N%[!<%`%G%#%l(B
$B%/%H%j$X%"%/%;%9$G$-$k$h$&$K$J$j$^$9!#$D$^$j(B Samba $B%[%9%H$G$"$k(B Linux 
$B%^%7%s$K%"%+%&%s%H$r;}$C$F$$$k?M$,(B Windows $B%^%7%s$G@\B3$9$k$H!"H`$i8D(B
$B?M8D?M$N%[!<%`%G%#%l%/%H%j$rMxMQ$G$-$k$h$&$K$J$j$^$9!#$3$N%5!<%S%9$rMx(B
$BMQ$9$k$K$O(B Linux $B%^%7%s$K%"%+%&%s%H$r;}$C$F$$$J$1$l$P$J$j$^$;$s!#(B
<P>$B$3$3$K<($7$?(B <CODE>smb.conf</CODE> $B$NNc$G$O!"%j%b!<%H%f!<%6$,<+J,$N%[!<%`%G%#(B
$B%l%/%H%j$K%"%/%;%9$7!"(B<CODE>/tmp</CODE> $B%G%#%l%/%H%j$K=q$-$3$_$G$-$k$h$&$K(B
$B$7$F$$$^$9!#(BWindows $B%f!<%6$K$3$l$i$N%j%=!<%9$r8+$;$k$K$O!"(BLinux $B$N%[%9(B
$B%H$,%m!<%+%k$J%M%C%H%o!<%/>e$K$J$1$l$P$J$j$^$;$s!#(BWindows $B$N%U%!%$%k%^(B
$B%M!<%8%c$d%(%/%9%W%m!<%i$rMQ$$$l$P!"$3$l$i$N%I%i%$%V$r%M%C%H%o!<%/%I%i(B
$B%$%V$H$7$F@\B3$G$-$^$9!#(B
<P>$B$3$NJ8=q$N0J2<$N@a$G$O!"B>$N%j%=!<%9$r6&M-$5$;$k$?$a$N(B <CODE>smb.conf</CODE> 
$B%U%!%$%k$N=q<0$K$D$$$F$b=R$Y$F$$$^$9!#;29M$K$7$F$/$@$5$$!#(B
<P>
<HR>
<PRE>
; /etc/smb.conf
;
; Make sure and restart the server after making changes to this file, ex:
; /etc/rc.d/init.d/smb stop
; /etc/rc.d/init.d/smb start
[global]
; Uncomment this if you want a guest account
; guest account = nobody
   log file = /var/log/samba-log.%m
   lock directory = /var/lock/samba
   share modes = yes

[homes]
   comment = Home Directories
   browseable = no
   read only = no
   create mode = 0750

[tmp]
   comment = Temporary file space
   path = /tmp
   read only = no
   public = yes
</PRE>
<HR>
<P>
<HR>
<H2><A NAME="s6">6.</A> <A HREF="#toc6">Linux $B$N%I%i%$%V$r(B Windows $B%^%7%s$+$i6&M-$9$k(B</A></H2>

<P>
<P>$B>e$K$"$2$?4JC1$J(B <CODE>smb.conf</CODE> $B$+$i$b2r$k$h$&$K!"(BLinux $B$N%I%i%$%V$r(B 
Windows $B$N%f!<%6$,6&M-$9$k$N$O4JC1$G$9!#$7$+$7(B Samba $B$N%7%9%F%`$G$OHs(B
$B>o$KB?$/$N9`L\$r%+%9%?%^%$%:$G$-$^$9!#0J2<$K$$$/$D$+Nc$r<($7$^$9!#(B
<P>$B$"$k%G%#%l%/%H%j$r@)8B$J$7$K8x3+$9$k$K$O!"@hDx$N@a$G5s$2$?(B<CODE>smb.conf</CODE> $B$N(B <CODE>tmp</CODE> $B%;%/%7%g%s$r$^$M$7$F!"$$$/$D$+$N%Q%i%a!<%?$r@_Dj(B
$B$7$^$9!#(B
<P>
<HR>
<PRE>
[public]
   comment = Public Stuff
   path = /home/public
   public = yes
   writable = yes
   printable = yes
</PRE>
<HR>
<P>$B$3$N%G%#%l%/%H%j$N@)8B$r$A$g$C$HJQ$($F!"FI$_=P$7$O$@$l$G$b2DG=$H$7!"=q(B
$B$-9~$_$r(B <CODE>staff</CODE> $B%0%k!<%W$N%f!<%6$K8B$k$K$O!"0J2<$N$h$&$K$7$^$9!#(B
<P>
<HR>
<PRE>
[public]
   comment = Public Stuff
   path = /home/public
   public = yes
   writable = yes
   printable = no
   write list = @staff
</PRE>
<HR>
<P>$B%I%i%$%V6&M-$K4X$9$kB>$N<jK!$K$D$$$F$O!"(BSamba $BIUB0$NJ8=q$d(B man $B%Z!<%8(B
$B$r8+$F$/$@$5$$!#(B
<P>===$BLuCm(B===
<P>Win 95 $B$G:n@.$7$?%U%!%$%k$GBgJ8;z>.J8;z$N6hJL$r$7$?$j!"F|K\8l$r@5$7$/(B
$BI=<($5$;$k$?$a$K$O!"(B<CODE>global</CODE> $B%;%/%7%g%s$K0J2<$N%(%s%H%j$rDI2C$7$F$*(B
$B$/$HNI$$$h$&$G$9!#(B
<P>
<HR>
<PRE>
   mangle case = no
   case sensitive = no
   default case = upper
   preserve case = yes
   short preserve case = yes
</PRE>
<HR>
<P>$BF|K\8l$rMxMQ$9$k$K$O!"%3%s%Q%$%k;~$K(B <CODE>Makefile</CODE> $B$G(B
<BLOCKQUOTE><CODE>
<PRE>
        -DKANJI=\"euc\"
</PRE>
</CODE></BLOCKQUOTE>

$B$J$I$H;XDj$9$kI,MW$,$"$j$^$9!#$^$?(B 1.9.16p2 $B$+$i$O!"(B<CODE>smb.conf</CODE> $B$G(B
<HR>
<PRE>
   coding system = &lt;$B%3!<%I7O(B>
</PRE>
<HR>

$B$N$h$&$K;XDj$9$k$3$H$,2DG=$K$J$j!"$^$?(B CAP $B$HF1;~$K;H$&$?$a$N(B 
<CODE>&quot;cap&quot;</CODE> $B$H$$$&4A;z%3!<%I7O$,DI2C$5$l$^$7$?!#(B
<P>$B$J$*%3!<%I7O$r(B unicode $B$K$7$F$*$/$H!"F|K\8l(B Windows 95 $B$+$i(B Samba $B$N%I(B
$B%i%$%V$r@\B3$7$?>l9g!"?75,%U%)%k%@$N:n@.$,$G$-$J$/$J$k$H$$$&IT6q9g$,$"(B
$B$k$=$&$G$9!#(B
<P>==$BLuCm=*(B==
<P>
<HR>
<H2><A NAME="s7">7.</A> <A HREF="#toc7">Windows $B$N%I%i%$%V$r(B Linux $B%^%7%s$G6&M-$9$k(B</A></H2>

<P>
<P>Samba $B$NG[I[%Q%C%1!<%8$K$O!"(BUnix $B%^%7%s$N$?$a$N(B SMB $B%/%i%$%"%s%H%W%m%0(B
$B%i%`$,4^$^$l$F$$$^$9!#$3$N%W%m%0%i%`$O(B ftp $B$N$h$&$J%3%^%s%I;X8~$N%$%s(B
$B%?!<%U%'!<%9$r;}$C$F$$$^$9!#$3$N%W%m%0%i%`$r;H$($P!"(BWindows $B$N%5!<%P$H!"(B
Linux $B$N%/%i%$%"%s%H$H$N$"$$$@$G!"%U%!%$%k$N$d$j<h$j$,$G$-$^$9!#(B
<P>===$BLuCm(B===
<P>2.0 $B0J>e$J$I$N:G6a$N%+!<%M%k$G$O(B <CODE>smbfs</CODE> $B$H$$$&%U%!%$%k%7%9%F%`$,$"(B
$B$j!"(BNT $B$J$I$N%M%C%H%o!<%/%I%i%$%V$rD>@\%^%&%s%H$G$-$k$h$&$G$9!#>\:Y$O!"(B
$B%+!<%M%k%G%#%l%/%H%j2<(B <CODE>Documentation/filesystems/smbfs.txt</CODE> $B$r(B
$B8+$F2<$5$$!#(B
<P>==$BLuCm=*(B==
<P>$B$"$k%[%9%H$G$I$s$J6&M-%5!<%S%9$,MxMQ=PMh$k$+$rD4$Y$k$?$a$K$O!"0J2<$N(B
$B$h$&$J%3%^%s%I$r<B9T$7$^$9!#(B
<P>
<HR>
<PRE>
    /usr/sbin/smbclient -L host
</PRE>
<HR>
<P><CODE>host</CODE> $B$K$OD4$Y$?$$%[%9%H$NL>A0$rF~$l$^$9!#$3$N%3%^%s%I$r<B9T$9$k$H!"(B
$B%5!<%S%9L>$N%j%9%H$,F@$i$l$^$9!#%5!<%S%9L>$H$O!"$"$J$?$,$3$N%[%9%H$GMx(B
$BMQ$G$-$k%I%i%$%V$d%W%j%s%?$NL>A0$G$9!#$b$7(B SMB $B%5!<%P$K2?$i$+$N%;%-%e(B
$B%j%F%#@)8B$,$+$+$C$F$$$k$H%Q%9%o!<%I$rJ9$+$l$^$9$N$G!"(B<CODE>guest</CODE> $B%"%+(B
$B%&%s%H$N%Q%9%o!<%I$+!"$=$N%[%9%H$G$N$"$J$?$N8D?M%"%+%&%s%H$N%Q%9%o!<%I(B
$B$rF~$l$F2<$5$$!#(B
<P>$B<B9TNc$r<($7$^$9!#(B
<P>
<HR>
<PRE>
    smbclient -L zimmerman
</PRE>
<HR>
<P>$B<B9T7k2L$O0J2<$N$h$&$K$J$k$G$7$g$&!#(B
<P>
<HR>
<PRE>
Server time is Sat Aug 10 15:58:27 1996
Timezone is UTC+10.0
Password: 
Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager 3.51]

Server=[ZIMMERMAN] User=[] Workgroup=[WORKGROUP] Domain=[]

        Sharename      Type      Comment
        ---------      ----      -------
        ADMIN$         Disk      Remote Admin
        public         Disk      Public 
        C$             Disk      Default share
        IPC$           IPC       Remote IPC
        OReilly        Printer   OReilly
        print$         Disk      Printer Drivers


This machine has a browse list:

        Server               Comment
        ---------            -------
        HOPPER               Samba 1.9.15p8
        KERNIGAN             Samba 1.9.15p8
        LOVELACE             Samba 1.9.15p8
        RITCHIE              Samba 1.9.15p8
        ZIMMERMAN            
</PRE>
<HR>
<P>$B%V%i%&%:%j%9%H!J(Bbrowse list$B!K$O!"%M%C%H%o!<%/>e$NB>$N(B SMB $B%5!<%P$N6&M-(B
$B%j%=!<%9$r<($7$?$b$N$G$9!#(B
<P>$B%/%i%$%"%s%H$H$7$FMxMQ$9$k$K$O0J2<$N$h$&$K<B9T$7$^$9!#(B
<P>
<HR>
<PRE>
    /usr/sbin/smbclient service &lt;password>
</PRE>
<HR>
<P><CODE>service</CODE> $B$K$O%[%9%HL>$H6&M-L>$r;XDj$7$^$9!#%[%9%H(B <CODE>zimmerman</CODE> 
$B$K$*$$$F(B <CODE>public</CODE> $B$H$$$&L>A0$G8x3+$5$l$F$$$k%G%#%l%/%H%j$rMxMQ$9$k(B
$B$?$a$K$O!"(B<CODE>service</CODE> $B$O(B <CODE>\\zimmerman\public</CODE> 
$B$H$J$j$^$9!#%7%'%k$N%W%m%s%W%H$+$i$3$N%3%^%s%I$rMxMQ$9$k>l9g$O!"%P%C%/(B
$B%9%i%C%7%e$r%(%9%1!<%W$7$J$$$H$$$1$^$;$s$+$i!"7k6I<!$N$h$&$KF~NO$9$kI,(B
$BMW$,$"$j$^$9!#(B
<P>
<HR>
<PRE>
    /usr/sbin/smbclient \\\\zimmerman\\public mypasswd
</PRE>
<HR>
<P><CODE>mypassword</CODE> $B$K$O!"$"$J$?$N(B $B%Q%9%o!<%I$r$=$N$^$^=q$$$F$/$@$5$$!#(B
<P>===$BLuCm(B===
<P>$B0J2<$O>>K\!w5~Bg?M4V4D6-$5$s$K$h$k$b$&$A$g$C$H4JC1$JF~NOJ}K!$G$9!#(B
<P>
<HR>
<PRE>
    /usr/sbin/smbclient '\\zimmerman\public' mypasswd
</PRE>
<HR>
<P>==$BLuCm=*(B==
<P>$B0J2<$N$h$&$J(B <CODE>smbclient</CODE> $B$N%W%m%s%W%H$,=P$F$-$^$9!#(B
<P>
<HR>
<PRE>
Server time is Sat Aug 10 15:58:44 1996
Timezone is UTC+10.0
Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager 3.51]
smb: \> 
</PRE>
<HR>
<P><CODE>h</CODE> $B$HBG$F$P!"(B<CODE>smbclient</CODE> $B$N%X%k%W$,F@$i$l$^$9!#(B
<P>
<HR>
<PRE>
smb: \> h
ls             dir            lcd            cd             pwd            
get            mget           put            mput           rename         
more           mask           del            rm             mkdir          
md             rmdir          rd             prompt         recurse        
translate      lowercase      print          printmode      queue          
cancel         stat           quit           q              exit           
newer          archive        tar            blocksize      tarmode        
setmode        help           ?              !              
smb: \> 
</PRE>
<HR>
<P>ftp $B$r;H$($k?M$J$i!"(Bman $B%Z!<%8$r8+$k$^$G$b$J$/(B <CODE>smbclient</CODE> $B$,;H$($k(B
$B$h$&$K$J$k$G$7$g$&!#(B
<P>
<HR>
<H2><A NAME="s8">8.</A> <A HREF="#toc8">Linux $B%^%7%s$N%W%j%s%?$r(B Windows $B%^%7%s$+$iMxMQ$9$k(B</A></H2>

<P>
<P>Linux $B$N%W%j%s%?$r(B Windows $B$+$iMxMQ$9$k$K$O!"(BLinux $B>e$G%W%j%s%?$,$A$c(B
$B$s$HF0:n$9$k$h$&$K@5$7$/@_Dj$5$l$F$$$kI,MW$,$"$j$^$9!#(BLinux $B$G$N%W%j%s(B
$B%H$,$G$-$F$$$l$P(B SMB $B$G$N6&M-$O4JC1$G$9!#(B
<P>$B%m!<%+%k%W%j%s%?$N@_Dj$K$D$$$F$O(B Printing HOWTO $B$r$_$F$/$@$5$$!#(B
<P>$BI.<T<+?H$O(B Windows NT $B$K@\B3$5$l$F$$$k%W%j%s%?$r;H$C$F$$$k$N$G!"$3$N@a(B
$B$K=q$$$F$"$k$3$H$O@dBP$K@5$7$$$H$O8B$j$^$;$s!#=u8@DxEY$K<u$1$H$a$F$*$$(B
$B$F$/$@$5$$!#$b$76qBNE*$J;HMQ7P83$r;}$C$F$$$kJ}$,$$$i$C$7$c$$$^$7$?$i!"(B
$B$I$&$>(B
<A HREF="mailto:dwood@plugged.net.au">dwood@plugged.net.au</A>
$B$^$GCN$i$;$F$/$@$5$$!#$=$&$9$l$P$3$N>O$NFbMF$r40@.$G$-$^$9!#(B
<P><CODE>smb.conf</CODE> $B$K%W%j%s%?$N@_Dj$r2C$($^$9!#(B
<P>
<HR>
<PRE>
[global]
   printing = bsd
   printcap name = /etc/printcap
   load printers = yes
   log file = /var/log/samba-log.%m
   lock directory = /var/lock/samba

[printers]
   comment = All Printers
   security = server
   path = /var/spool/lpd/lp
   browseable = no
   printable = yes
   public = yes
   writable = no
   create mode = 0700

[ljet]
   security = server
   path = /var/spool/lpd/lp
   printer name = lp
   writable = yes
   public = yes
   printable = yes
   print command = lpr -r -h -P %p %s
</PRE>
<HR>
<P>$B%W%j%s%?$N%;%/%7%g%s$K$*$1$k(B <CODE>path</CODE> $B$K$O!"(B<CODE>/etc/printcap</CODE> $B$G(B
$B@_Dj$7$?%9%W!<%k%G%#%l%/%H%j$HF1$8%G%#%l%/%H%j$r;XDj$7$F$/$@$5$$!#(B
<P>$BCm0U(B: Samba $B$r;H$C$F(B Unix $B%^%7%s$N%W%j%s%?$r(B Windows NT $B%^%7%s$+$i6&M-(B
$B$5$;$k:]$K$OLdBjE@$,$$$/$D$+$"$j$^$9!#$=$N$&$A$N0l$D$O!"(BNT $B$+$i$O(B
$B6&M-%W%j%s%?$,@5$7$/8+$($J$$$H$$$&$b$N$G$9!#$3$NLdBj$r2r7h$9$k$K$O(B
Samba $BG[I[%Q%C%1!<%8$N(B <CODE>docs/WinNT.txt</CODE> $B%U%!%$%k$r;2>H$7$F2<$5(B
$B$$!#%Q%9%o!<%I$K4X$9$kLdBj$b$"$j$^$9!#$3$A$i$NJ}$OF1%U%!%$%k$r8+$F$b!"(B
$B$$$i$$$i$9$k$@$1$G2r7h$K$O$J$j$^$;$s(B...
<P>===$BLuCm(B===
<P>$BLu<T$O(B Linux $B$K$D$J$,$C$F$$$k(B Epson MJ-700V2C $B$r(B Samba $B$G8x3+$7(B 
Windows 95 $B$+$i;H$C$F$$$^$9$N$G!"$=$N@_DjFbMF$r0J2<$K5-$7$^$9!#$?$@$7!"(B
$B8x3+@h$O%W%i%$%Y!<%H%"%I%l%9$N$D$$$?%M%C%H%o!<%/$J$N$G!"4pK\E*$K%;%-%e(B
$B%j%F%#$N$3$H$O9M$($F$$$^$;$s!#(B
<P>$B$^$:(B <CODE>smb.conf</CODE> $B$G$9!#(B
<HR>
<PRE>
[global]
        lock directory = /var/locks/samba

        workgroup = WORKGROUP
        browseable = yes
        allow hosts = 192.168.111.

        printing = bsd
        load printers = no
        printcap name = /etc/printcap

        password level = 8
        create mode = 0750

        mangle case = no
        case sensitive = no
        default case = upper
        preserve case = yes
        short preserve case = yes

[lp]
        comment = MJ-700V2C
        printer name  = lp
        path = /var/tmp

        printable = yes
        writable = yes
        create mode = 0700
</PRE>
<HR>
<P><CODE>/etc/printcap</CODE> $B$G$9!#(B
<P>
<HR>
<PRE>
lp:\
        :lp=/dev/lp1:\
        :sd=/var/spool/lpd/lp:\
        :lf=/var/spool/lpd/lp/errs:\
        :if=/var/spool/lpd/lp/incat:\
        :mx#0:\
        :sh:\
        :sf:
</PRE>
<HR>
<P>$B%$%s%W%C%H%U%#%k%?$N(B <CODE>/var/spool/lpd/lp/incat</CODE> $B$G$9!#(B
<P>
<HR>
<PRE>
#!/bin/sh
/bin/cat
exit 0
</PRE>
<HR>
<P>Windows 95 $B$+$i$O!"%M%C%H%o!<%/%I%i%$%V$rA*Br$7$?8e(B MJ-700V2C $B$N%I%i(B
$B%$%P$r<j$GA*$s$G%$%s%9%H!<%k$9$kI,MW$,$"$j$^$9!#(B
<P>==$BLuCm=*(B==
<P>
<P>
<HR>
<H2><A NAME="s9">9.</A> <A HREF="#toc9">Linux $B%^%7%s$+$i(B Windows $B$N%W%j%s%?$r;H$&(B</A></H2>

<P>
<P>Windows $B%^%7%s>e$N%W%j%s%?$r6&M-$9$k$?$a$K$O0J2<$N:n6H$,I,MW$G$9!#(B
<P>
<OL>
<LI><CODE>/etc/printcap</CODE> $B$K@5$7$$%(%s%H%j$,I,MW$G!"$=$l$i$O%m!<%+(B
$B%k$J%G%#%l%/%H%j9=B$$K=`$8$?$b$N$G$"$kI,MW$,$"$j$^$9!J%9%W!<%k%G%#%l%/(B
$B%H%j$N@_Dj$J$I!K!#(B
</LI>
<LI><CODE>/usr/bin/smbprint</CODE> $B%9%/%j%W%H$,I,MW$G$9!#$3$l$O(B Samba $B$N(B
$B%=!<%9%Q%C%1!<%8$KIU$$$F$-$^$9$,!"(BSamba $B$N%P%$%J%jG[I[%Q%C%1!<%8$K$OIU(B
$B$$$F$3$J$$$+$b$7$l$^$;$s!#8e$G%*%j%8%J%k$r>/!9=$@5$7$?$b$N$r:\$;$^$9!#(B
</LI>
<LI>ASCII $B%U%!%$%k$r(B Postscript $B7A<0$KJQ49$9$kI,MW$,$"$k>l9g$K$O!"(B
<CODE>nenscript</CODE> $B$J$I$N(B Postscript $B%3%s%P!<%?$r=`Hw$9$kI,MW$,$"$j$^$9!#(B
<CODE>nenscript</CODE> $B$ODL>o$O(B <CODE>/usr/bin</CODE> $B$K%$%s%9%H!<%k$5$l$F$$$^$9!#(B
</LI>
<LI>Samba $B$rMxMQ$7$?0u:~$rMF0W$K$7$F$/$l$k$h$&$J%U%m%s%H%(%s%I$,M_$7(B
$B$1$l$P!"0J2<$K5-$7$?4JC1$J(B perl $B%9%/%j%W%H$r;n$7$F2<$5$$!#(BASCII$B!"(B
Postscript$B!"(Bcreated Postscript $B$,07$($k$h$&$K$J$C$F$$$^$9!#(B
</LI>
</OL>
<P>$B0J2<$K5-$9$N$O!"(BWindows NT $B%W%j%s%?$K@\B3$5$l$?(B HP 5MP $B%W%j%s%?$rMxMQ(B
$B$9$k$?$a$N(B <CODE>/etc/printcap</CODE> $B$X$N%(%s%H%j$G$9!#$=$l$>$l$NFbMF$O0J(B
$B2<$NDL$j$G$9!#(B
<P>
<DL>
<DT><B>cm</B><DD><P>$B%3%a%s%H(B
<DT><B>lp</B><DD><P>$B=PNO$K;H$&%G%P%$%9L>(B
<DT><B>sd</B><DD><P>$B$3$N%W%j%s%?$N$?$a$N%9%W!<%k%G%#%l%/%H%j(B
<DT><B>af</B><DD><P>$B%"%+%&%s%H%U%!%$%k(B
<DT><B>mx</B><DD><P>$B:GBg$N%U%!%$%k%5%$%:!J(B0 $B$K$9$l$PL5@)8B$K$J$j$^$9!K(B
<DT><B>if</B><DD><P>$BF~NO$KMQ$$$i$l$k%U%#%k%?!J$^$?$O%9%/%j%W%H!K(B
</DL>
<P>$B$5$i$K>pJs$,I,MW$J$i!"(BPrinting HOWTO $B$d(B <CODE>printcap</CODE> $B$N(B man $B%Z!<%8$r(B
$B8+$F2<$5$$!#(B
<P>
<HR>
<PRE>
# /etc/printcap
#
# //zimmerman/oreilly via smbprint
#
lp:\
        :cm=HP 5MP Postscript OReilly on zimmerman:\
        :lp=/dev/lp1:\
        :sd=/var/spool/lpd/lp:\
        :af=/var/spool/lpd/lp/acct:\
        :mx#0:\
        :if=/usr/bin/smbprint:
</PRE>
<HR>
<P>
<P>$B%9%W!<%k%G%#%l%/%H%j$H%"%+%&%s%H%U%!%$%k$,B8:_$7$F$*$j!"=q$-9~$_2DG=$G(B
$B$"$k$3$H$r3NG'$7$F$*$$$F2<$5$$!#$^$?(B <CODE>printcap</CODE> $B$N(B <CODE>if</CODE> $B9T$K!"0J(B
$B2<$K5-$9(B <CODE>smbprint</CODE> $B%9%/%j%W%H$X$N@5$7$$%Q%9$,@_Dj$5$l$F$$$k$3$H!"(B
<CODE>lp</CODE> $B9T$K(B <CODE>/dev</CODE> $B%G%#%l%/%H%j$K$"$k@5$7$$%G%P%$%9$,@_Dj$5$l(B
$B$F$$$k$3$H$b3NG'$7$F2<$5$$!#(B
<P>$B<!$O(B <CODE>smbprint</CODE> $B$G$9!#$3$l$ODL>o(B <CODE>/usr/bin</CODE> $B$KCV$+$l$F$*$j!"(B
Samba $B$r:n$C$?(B Andrew Tridgell $BK\?M$K$h$C$F=q$+$l$?$b$N$G$9!JI.<T$NCN(B
$B$i$J$$(B Samba $B$N6&:n<T$,B>$K$$$i$C$7$c$C$?$i$9$_$^$;$s!K!#$3$l$O(B Samba 
$B$N%=!<%9%Q%C%1!<%8$KF~$C$F$$$^$9$,!"%P%$%J%jG[I[$N>l9g$K$OL5$$$+$bCN$l(B
$B$^$;$s$N$G!"0J2<$K;d$,>/!9<j$r2C$($?$b$N$r<($7$F$*$-$^$9!#(B
<P>$B0J2<$K5-$7$?%9%/%j%W%H$rCm0U?<$/8+$F2<$5$$!#$3$l$O%*%j%8%J%k$r=$@5$7$?(B
$B$b$N$G!"B?>/;H$$$d$9$/$J$C$F$$$k$H;W$$$^$9!#(B
<P>
<HR>
<PRE>
#!/bin/sh -x

# This script is an input filter for printcap printing on a unix machine. It
# uses the smbclient program to print the file to the specified smb-based 
# server and service.
# For example you could have a printcap entry like this
#
# smb:lp=/dev/null:sd=/usr/spool/smb:sh:if=/usr/local/samba/smbprint
#
# which would create a unix printer called "smb" that will print via this 
# script. You will need to create the spool directory /usr/spool/smb with
# appropriate permissions and ownerships for your system.

# Set these to the server and service you wish to print to 
# In this example I have a WfWg PC called "lapland" that has a printer 
# exported called "printer" with no password.

#
# Script further altered by hamiltom@ecnz.co.nz (Michael Hamilton)
# so that the server, service, and password can be read from 
# a /usr/var/spool/lpd/PRINTNAME/.config file.
#
# In order for this to work the /etc/printcap entry must include an 
# accounting file (af=...):
#
#   cdcolour:\
#       :cm=CD IBM Colorjet on 6th:\
#       :sd=/var/spool/lpd/cdcolour:\
#       :af=/var/spool/lpd/cdcolour/acct:\
#       :if=/usr/local/etc/smbprint:\
#       :mx=0:\
#       :lp=/dev/null:
#
# The /usr/var/spool/lpd/PRINTNAME/.config file should contain:
#   server=PC_SERVER
#   service=PR_SHARENAME
#   password="password"
#
# E.g.
#   server=PAULS_PC
#   service=CJET_371
#   password=""

#
# Debugging log file, change to /dev/null if you like.
#
logfile=/tmp/smb-print.log
# logfile=/dev/null

#
# The last parameter to the filter is the accounting file name.
#
spool_dir=/var/spool/lpd/lp
config_file=$spool_dir/.config

# Should read the following variables set in the config file:
#   server
#   service
#   password
#   user
eval `cat $config_file`

#
# Some debugging help, change the >> to > if you want to same space.
#
echo "server $server, service $service" >> $logfile

(
# NOTE You may wish to add the line `echo translate' if you want automatic
# CR/LF translation when printing.
        echo translate
        echo "print -"
        cat
) | /usr/bin/smbclient "\\\\$server\\$service" $password -U $user -N -P >> $log
file
</PRE>
<HR>
<P>$B$[$H$s$I$N(B Linux $B%Q%C%1!<%8$K$O!"(BASCII $BJ8=q$r(B Postscript $B$K$9$k(B 
<CODE>nenscript</CODE> $B%3%^%s%I$,4^$^$l$F$$$^$9!#0J2<$N(B perl $B%9%/%j%W%H$O!"(B
<CODE>smbprint</CODE> $B$r;H$C$F0u:~$9$k:]$K!"$h$j%7%s%W%k$J%$%s%?!<%U%'!<%9$rDs(B
$B6!$9$k$b$N$G$9!#(B
<P>
<HR>
<PRE>
Usage: print [-a|c|p] &lt;filename>
       -a prints &lt;filename> as ASCII
       -c prints &lt;filename> formatted as source code
       -p prints &lt;filename> as Postscript
        If no switch is given, print attempts to
        guess the file type and print appropriately.
</PRE>
<HR>
<P><CODE>smbprint</CODE> $B$r;H$C$F(B ASCII $B%U%!%$%k$r0u:~$9$k$H!"D9$$9T$O2~9T$5$l$F(B
$B$7$^$$$^$9!#$3$N%9%/%j%W%H$G$O!"2DG=$J8B$jC18l$NESCf$G$O$J$/!"6uGr$G2~(B
$B9T$9$k$h$&$K$7$F$$$^$9!#(B
<P>$B%=!<%9%3!<%I$N%U%)!<%^%C%H$K$O(B <CODE>nenscript</CODE> $B$rMQ$$$F$$$^$9!#(BASCII $B%U%!(B
$B%$%k$O(B 2 $BCJAH$_$K@07A$5$l!"%X%C%@!JF|IU!"%U%!%$%kL>$J$I!K$,$D$-$^$9!#(B
$B$3$N%9%/%j%W%H$r?w7A$K$7$F!"B>$N@07AJ}K!$rMQ$$$k$3$H$b$G$-$k$G$7$g$&!#(B
<P>Postscript $B$NJ8=q$O$9$G$K@07A$5$l$F$$$k$b$N$H$_$J$7$F!"$=$N$^$^DL$9$h(B
$B$&$K$J$C$F$$$^$9!#(B
<P>
<HR>
<PRE>
#!/usr/bin/perl

# Script:   print
# Authors:  Brad Marshall, David Wood
#           Plugged In Communications
# Date:     960808
#
# Script to print to oreilly which is currently on zimmerman
# Purpose:  Takes files of various types as arguments and 
# processes them appropriately for piping to a Samba print script.
#
# Currently supported file types:
# 
# ASCII      - ensures that lines longer than $line_length characters wrap on
#              whitespace.
# Postscript - Takes no action.
# Code       - Formats in Postscript (using nenscript) to display
#              properly (landscape, font, etc).
#

# Set the maximum allowable length for each line of ASCII text.
$line_length = 76;

# Set the path and name of the Samba print script
$print_prog = "/usr/bin/smbprint";

# Set the path and name to nenscript (the ASCII-->Postscript converter)
$nenscript = "/usr/bin/nenscript";

unless ( -f $print_prog ) {
        die "Can't find $print_prog!";
}
unless ( -f $nenscript ) {
        die "Can't find $nenscript!";
}

&amp;ParseCmdLine(@ARGV);

# DBG
print "filetype is $filetype\n";

if ($filetype eq "ASCII") {
        &amp;wrap($line_length);
} elsif ($filetype eq "code") {
        &amp;codeformat;
} elsif ($filetype eq "ps") {
        &amp;createarray;
} else {
        print "Sorry..no known file type.\n";
        exit 0;
}
# Pipe the array to smbprint
open(PRINTER, "|$print_prog") || die "Can't open $print_prog: $!\n";
foreach $line (@newlines) {
        print PRINTER $line;
}
# Send an extra linefeed in case a file has an incomplete last line.
print PRINTER "\n";
close(PRINTER);
print "Completed\n";
exit 0;

# --------------------------------------------------- #
#        Everything below here is a subroutine        #
# --------------------------------------------------- #

sub ParseCmdLine {
        # Parses the command line, finding out what file type the file is

        # Gets $arg and $file to be the arguments (if the exists)
        # and the filename
        if ($#_ &lt; 0) {
                &amp;usage;
        }
        # DBG
#       foreach $element (@_) {
#               print "*$element* \n";
#       }

        $arg = shift(@_);
        if ($arg =~ /\-./) {
                $cmd = $arg;
# DBG
#       print "\$cmd found.\n";

                $file = shift(@_);
        } else {
                $file = $arg;
        }
        
        # Defining the file type
        unless ($cmd) {
                # We have no arguments

                if ($file =~ /\.ps$/) {
                        $filetype = "ps";
                } elsif ($file =~ /\.java$|\.c$|\.h$|\.pl$|\.sh$|\.csh$|\.m4$|\.inc$|\.html$|\.htm$/) {
                        $filetype = "code";
                } else {
                        $filetype = "ASCII";
                }

                # Process $file for what type is it and return $filetype 
        } else {
                # We have what type it is in $arg
                if ($cmd =~ /^-p$/) {
                        $filetype = "ps";
                } elsif ($cmd =~ /^-c$/) {
                        $filetype = "code";
                } elsif ($cmd =~ /^-a$/) {
                        $filetype = "ASCII"
                }
        }
}

sub usage {
        print "
Usage: print [-a|c|p] &lt;filename>
       -a prints &lt;filename> as ASCII
       -c prints &lt;filename> formatted as source code
       -p prints &lt;filename> as Postscript
        If no switch is given, print attempts to
        guess the file type and print appropriately.\n
";
        exit(0);
}

sub wrap {
        # Create an array of file lines, where each line is &lt; the 
        # number of characters specified, and wrapped only on whitespace

        # Get the number of characters to limit the line to.
        $limit = pop(@_);

        # DBG
        #print "Entering subroutine wrap\n";
        #print "The line length limit is $limit\n";

        # Read in the file, parse and put into an array.
        open(FILE, "&lt;$file") || die "Can't open $file: $!\n";
        while(&lt;FILE>) {
                $line = $_;
                
                # DBG
                #print "The line is:\n$line\n";

                # Wrap the line if it is over the limit.
                while ( length($line) > $limit ) {
                        
                        # DBG
                        #print "Wrapping...";

                        # Get the first $limit +1 characters.
                        $part = substr($line,0,$limit +1);

                        # DBG
                        #print "The partial line is:\n$part\n";

                        # Check to see if the last character is a space.
                        $last_char = substr($part,-1, 1);
                        if ( " " eq $last_char ) {
                            # If it is, print the rest.

                            # DBG
                            #print "The last character was a space\n";

                            substr($line,0,$limit + 1) = "";
                            substr($part,-1,1) = "";
                            push(@newlines,"$part\n");
                        } else {
                             # If it is not, find the last space in the 
                             # sub-line and print up to there.

                            # DBG
                            #print "The last character was not a space\n";

                             # Remove the character past $limit
                             substr($part,-1,1) = "";
                             # Reverse the line to make it easy to find
                             # the last space.
                             $revpart = reverse($part);
                             $index = index($revpart," ");
                             if ( $index > 0 ) {
                               substr($line,0,$limit-$index) = "";
                               push(@newlines,substr($part,0,$limit-$index) 
                                   . "\n");
                             } else {
                               # There was no space in the line, so
                               # print it up to $limit.
                               substr($line,0,$limit) = "";
                               push(@newlines,substr($part,0,$limit) 
                                   . "\n");
                             }
                        }
                }
                push(@newlines,$line);
        }
        close(FILE);
}

sub codeformat {
        # Call subroutine wrap then filter through nenscript
        &amp;wrap($line_length);
        
        # Pipe the results through nenscript to create a Postscript
        # file that adheres to some decent format for printing
        # source code (landscape, Courier font, line numbers).
        # Print this to a temporary file first.
        $tmpfile = "/tmp/nenscript$$";
        open(FILE, "|$nenscript -2G -i$file -N -p$tmpfile -r") || 
                die "Can't open nenscript: $!\n";
        foreach $line (@newlines) {
                print FILE $line;
        }
        close(FILE);
        
        # Read the temporary file back into an array so it can be
        # passed to the Samba print script.
        @newlines = ("");
        open(FILE, "&lt;$tmpfile") || die "Can't open $file: $!\n";
        while(&lt;FILE>) {
                push(@newlines,$_);
        }
        close(FILE);
        system("rm $tmpfile");
}

sub createarray {
        # Create the array for postscript
        open(FILE, "&lt;$file") || die "Can't open $file: $!\n";
        while(&lt;FILE>) {
                push(@newlines,$_);
        }
        close(FILE);
}
</PRE>
<HR>
<P>===$BLuCm(B===
<P><CODE>nenscrpt</CODE> $B$OF|K\8l$rDL$7$^$;$s$,!"(BJE $B$K$O(B <CODE>psconv</CODE> $B$H$$$&F|K\8l(B
$B$KBP1~$7$?%3%^%s%I$,F~$C$F$$$^$9!#B>$K$b(B <CODE>a2ps</CODE>$B!"(B<CODE>ps2ascii</CODE>$B!"(B
<CODE>ps2txt</CODE>$B!"(B<CODE>toPS</CODE> $B$J$IMM!9$J$b$N$,%M%C%H%o!<%/$+$iF~<j2DG=$G$9!#(B
<P>$B$J$*!"Lu<T$O$3$N>O$N%9%/%j%W%H$r%F%9%H$G$-$k4D6-$,$"$j$^$;$s$N$G!"86J8(B
$B$K$"$C$?%9%/%j%W%H$r$=$N$^$^:\$;$F$*$-$^$7$?!#2~B$$7$FF|K\8l$rDL$9$3$H(B
$B$K@.8y$7$?J}$O!"$4O"Mm2<$5$l$P9,$$$G$9!#(B
<P>==$BLuCm=*(B==
<P>
<HR>
<H2><A NAME="s10">10.</A> <A HREF="#toc10">$BCx:n8"(B</A></H2>

<P>
<P>$B$3$N(B HOWTO $BJ8=q$NCx:n8"$O(B 1996 $BG/0J9_(B David Wood $B$K$"$k$b$N$H$7$^$9!#(B
$B$3$N@a$N@k8@$r4^$`$9$Y$F$NJ8=q$,JQ99$5$l$J$$8B$j$K$*$$$F!"$"$i$f$k7A<0(B
$B$X$N$3$NJ8=q$NJ#@=!"$*$h$S$=$N:FG[I[$r5v2D$7$^$9!#(B
<P>
<HR>
<H2><A NAME="s11">11.</A> <A HREF="#toc11">$B<U<-(B</A></H2>

<P>
<P>$B$b$7%a!<%k$G8f0U8+$r$$$?$@$1$l$P!"<!$NHG$N%j%j!<%9$N:]$K!"$3$N@a$G$*L>(B
$BA0$r5s$2$F46<U$7$?$$$H;W$$$^$9!#(B
<P>===$BLuCm(B===
<P>$BF|K\8l$X$NK]Lu$KEv$?$C$F$O!"(B
<BLOCKQUOTE><CODE>
<PRE>
$B2,K\0l9,$5$s(B ikko-@pacific.rim.or.jp
$B7,B<!!=a$5$s(B juk@rccm.co.jp
$B>>K\>1;J$5$s(B shom@i.h.kyoto-u.ac.jp
$BL'1:0o;K$5$s(B minoura@biol.s.u-tokyo.ac.jp
</PRE>
</CODE></BLOCKQUOTE>

$B$K8mLu$N;XE&$dM-1W$J%3%a%s%H$r$$$?$@$-$^$7$?!#(B
<P>==$BLuCm=*(B==
<P>
<HR>
sgml21html conversion date: Sat Feb 16 20:57:25 JST 2002

</BODY>
</HTML>