Linux-Mandrake: |
User Guide and |
Reference Manual |
MandrakeSoft
January 2000 http://www.linux-mandrake.com
/proc
filesystemWell, you must tell, an implementation of an exotic dance for Linux. What does this mean, indeed? No, it has nothing to see with the Brasilian dance, It is a server for SMB clients (the Server Message Block) or its successor CIFS (Common Internet File System).
tar
extension for the clients, in order to create remote
backups.
For more information about all that, please consult the website
http://samba.org/samba/
.
Such as Linux, this software is an Open Source project in the scope of the GPL and the GNU project, entirely written in C, with freedom and gratis. It is freely distributable, you are even encouraged to do so.
This document will help you installing a SMB server.
If you already use Samba, run /etc/rc.d/init.d/smb
stop
. On the installation CDROM you will find the package named
samba-2.0.6-1mdk.i586.rpm
which you can install, as
root
, with command rpm -Uv h samba-*mdk.i586.rpm
.
The command rpm -ql samba|less
allows you then to view the
list of all files provided with the package, and their location. This
allows you to find files of the doc
section, etc.
/etc/smb.conf
This is the text file allowing you to configure the Samba server.
It is made of different sections which titles are placed into brackets
[ ]
. Every line beginning with a ';'
or a '#'
is
ignored at Samba startup. This is often used to add explanation
comments on the different sections. Thanks to that, it will be easier
later when reading again the file.
During the package install, a /etc/smb.conf
file has been copied to
your computer. We will use this file as a template.
There are three special sections: [global]
,
[printers]
, and [homes]
.
[global]
sectionHere are introduced the parameters applied to the server itself, in its whole, or that will be used as default parameters for some sections.
[global]
netbios name = Zeus
netbios aliases = creation
# without these two entries, the first part of the
# DNS name will be used instead.
workgroup = DESIGN
# Samba can only belong to one work group ar a
# time
server string = File server [%v]
# this indicates the name and the version number to
# print
deadtime = 15
# maximal inactivity time
auto services = john
# this service, although present in the exploration
# list, is not available until john connects to the
# server
security = user
This latter parameter may take one of four values: share
,
user
, server
or domain
.
share
mode: In this mode, the client sends a password
while asking for a connection, but no username is required. This mode
is the default security mode for files or printers under
Windows 95. It may be changed, under Windows 95 in the
Network section of the Configuration Panel,
under Access Control.
user
mode: This security mode is recommended. You are
here asked for a valid username and its associated password.
server
mode: This mode is derived from user
mode. The Samba server sends a session opening request to the
passwords server.
password server = NT_passerv
# where NT_passerv is the name of the NT passwords
# server. Various servers may be listed.
domain
mode: This mode is hardly the same as the
previous one.For these last three modes, the user has to be "created" on the Samba server.
hosts allow = john.design.org 192.168.1.45 EXCEPT 192.168.2.
With this line, all users from 192.168.2. network will be rejected.
hosts deny = 192.168.2
This line has the same effect as the previous EXCEPT
statement.
guest account = pcguest
# If you wish to add a guest user; to be
# added in /etc/passwd
First of all, create the shared directory with the command
mkdir /home/shared
and set owners and permissions with
chmod
and chown
. For example, chmod
0777
gives all rights towards this folder on the Unix side.
However, Samba has to allow this too.
[share]
comment = share access granted to everyone
path = /home/shared
browsable = yes
writable = yes
create mask = 0750
# means that the creator of the file has rwx
# rights on it, the group r-x and others r--
directory mask = 0750
# same meaning but for directories
mangled names = yes
# converts names in a DOS/Windows manner, with
# eight characters for the name and three for the
# extension.
preserve case = no
# do not take case into account.
Another example of sharing
First of all, be sure to load the ppa module with command
modprobe ppa.o
.
[zip]
comment = automatically mount/unmount the zip drive
browseable = yes
path = /mnt/zip
root preexec = /bin/mount /dev/sda4 /mnt/zip
root postexec = /bin/unmount /mnt/zip
[homes]
sectionIt makes the home directory of each user available from a Windows box with their username and password.
This is a special sharing type.
[homes]
comment = Home directories
browseable = no
writable = yes
path = /export/homes/%U
valid users = %S
[printers]
sectionThis is another special sharing type.
[printers]
comment = shared printers
path = /var/spool/samba
load printers = yes # load all available printers
browseable = no
printable = yes
public = no
writable = no
create mode = 0700
You may also print from Linux on a printer connected to a PC
running Windows. To do so, use printtool and setup the
printer. This will create an entry into /etc/printcap
. Be sure
that the printer is set shareable under Windows.
There are a lot of other parameters, for more information, run
man smb.conf
.
Before launching smb and nmb daemons, launch
testparm
. This command will read /etc/smb.conf
and
print which entries will be taken into account.
Just type /etc/rc.d/init.d/smb start
. The following messages
should be printed:
Starting SMB services: [OK]
Starting NMB services: [OK]
To check that the daemon is running, run ps aux | grep smbd
or
/etc/rc.d/init.d/smb status
This is a utility close to ftp that enables you to connect to a
PC running Windows. To know the list of shares accessible on
PC win through SMB, launch smbclient -L
win -N
. Launch smbclient
//win/work
to connect to the share work
on the PC called
win. You may also use smbclient winwork
.
To create a tar
archive of the work
share, launch
smbclient //win/work -Tc work.tar
. To print a file
letter.txt
to the printer my_printer
connected to the
PC win, type
cat letter.txt | smbclient //win/printer_name my_password \
-N -c "put - john"
For more information, run man smbclient
.
For you being able to mount/unmount some directories from
Windows on your Linux box, your kernel needs to support
the smbfs filesystem (which is the case for the
Linux-Mandrake distribution). Then you can use the programs
smbmount and/or smbumount. For example:
smbmount "winwork" -c 'mount /mnt -u 123 -g 456'
. Which
will locally mount the share work
with a local UID of 123
and a local GID of 456.
Allows to create tar
archives remotely. Read the manual page for
more information on its numerous options.
SWAT is a configuration utility included with the Samba
package. To make it
available you must first comment out (delete the #
at the
beginning of the line) the line:
swat stream tcp nowait.400 root /usr/sbin/swat swat
in /etc/inet.conf
file and then
restart inet
services through /etc/rc.d/init.d/inet
restart
.
From your favorite web browser (preferably a graphical one), type in the
following URL: http://127.0.0.1:901
. An authentication window
should appear (figure 46.1) where you will be asked
for a login name and password. The root
login should be secure
enough.
Here you are, in a graphical interface to edit the parameters of
smb.conf
. You should be able to use this interface
without trouble following the explanations given here and consulting
the manual pages for more specific configurations.
smb.conf
sample file:
[global]
workgroup = MyWorkGroup
server string = (Samba %v)
#server string = Samba Server
browseable = yes
printing = bsd
printcap name = /etc/printcap
load printers = yes
log file = /var/log/samba/log.%m
max log size = 100
lock directory = /var/lock/samba
locking = no
strict locking = no
share modes = yes
security = user
null passwords = yes
socket options = TCP_NODELAY
# Allows the Samba server to become a domain controller
#os level = 33
#domain master = yes
# Facilitates the long names recognition
preserve case = no
short preserve case = no
character set = iso8859-1
[homes]
comment = Home Directories
preexec = /bin/sh -c 'echo /usr/bin/smbclient -M %m -I %I'&
browseable = yes
readonfiltered= no
writable = yes
create mode = 0750
public = yes
["public"]
comment = "Public"
path = /public/
browseable = yes
hide dot files = yes
readonfiltered= no
public = yes
pritable = yes
#create mode = 0775
printable = no
["printers"]
comment = All Printers
#path = /var/spool/samba
path = /var/spool/lpd/lp
browseable = yes
# Set public = yes to allow user 'guest account' to print
guest ok = yes
writable = yes
printable = yes
If you need more information, you are invited to consult the Samba documentation.
/proc
filesystem