]>
git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - html/cgi-bin/samba.cgi
05be43f203dc2d2c8508685767929506d5a05404
5 # This code is distributed under the terms of the GPL
11 # enable only the following on debugging purpose
13 use CGI
::Carp
'fatalsToBrowser';
15 require '/var/ipfire/general-functions.pl';
16 require "${General::swroot}/lang.pl";
17 require "${General::swroot}/header.pl";
19 my %sambasettings = ();
22 my %ovpnsettings = ();
24 my $errormessage = "";
28 my $shareconfigentry = "";
29 my @sharesconfig = ();
30 my @shareconfigline = ();
36 my $sharefile = "/var/ipfire/samba/shares";
37 my $userfile = "/var/ipfire/samba/private/smbpasswd";
38 &General
::readhash
("${General::swroot}/ethernet/settings", \
%netsettings);
39 &General
::readhash
("${General::swroot}/ovpn/settings", \
%ovpnsettings);
43 'SMB Daemon' => 'smbd',
44 'NetBIOS Nameserver' => 'nmbd',
45 'Winbind Daemon' => 'winbindd'
48 &Header
::showhttpheaders
();
50 $sambasettings{'WORKGRP'} = 'homeip.net';
51 $sambasettings{'NETBIOSNAME'} = 'IPFIRE';
52 $sambasettings{'SRVSTRING'} = 'Samba Server running on IPFire 2.0';
53 $sambasettings{'INTERFACES'} = '';
54 $sambasettings{'SECURITY'} = 'share';
55 $sambasettings{'OSLEVEL'} = '65';
56 $sambasettings{'GREEN'} = 'on';
57 $sambasettings{'BLUE'} = 'off';
58 $sambasettings{'ORANGE'} = 'off';
59 $sambasettings{'VPN'} = 'off';
60 $sambasettings{'WINSSRV'} = "$netsettings{'GREEN_NETADDRESS'}";
61 $sambasettings{'WINSSUPPORT'} = 'off';
62 $sambasettings{'OTHERINTERFACES'} = '';
63 $sambasettings{'GUESTACCOUNT'} = 'samba';
64 $sambasettings{'MAPTOGUEST'} = 'Never';
65 $sambasettings{'BINDINTERFACESONLY'} = 'True';
66 ### Values that have to be initialized
67 $sambasettings{'ACTION'} = '';
69 &General
::readhash
("${General::swroot}/samba/settings", \
%sambasettings);
70 &Header
::getcgihash
(\
%sambasettings);
72 &Header
::openpage
('Samba', 1, '');
73 &Header
::openbigbox
('100%', 'left', '', $errormessage);
75 ############################################################################################################################
76 ############################################################################################################################
78 if ($sambasettings{'ACTION'} eq 'smbuserdisable'){system('/usr/local/bin/sambactrl 1 $sambasettings{"NAME"}');}
79 if ($sambasettings{'ACTION'} eq 'smbuserenable'){system('/usr/local/bin/sambactrl 2 $sambasettings{"NAME"}');}
80 if ($sambasettings{'ACTION'} eq 'smbuserdelete'){system('/usr/local/bin/sambactrl 3 $sambasettings{"NAME"}');}
81 if ($sambasettings{'ACTION'} eq 'smbuseradd'){system('/usr/local/bin/sambactrl 4 $username $password');}
82 if ($sambasettings{'ACTION'} eq 'smbchangepw'){system('/usr/local/bin/sambactrl 5 $username $password');}
83 if ($sambasettings{'ACTION'} eq 'smbsharechange'){system('/usr/local/bin/sambactrl 7 $sambasettings{"SHARENAME"} $sambasettings{"SHAREOPTION"}');}
84 if ($sambasettings{'ACTION'} eq 'smbstart'){system('/usr/local/bin/sambactrl 8');}
85 if ($sambasettings{'ACTION'} eq 'smbstop'){system('/usr/local/bin/sambactrl 9');}
87 ############################################################################################################################
88 ############################################## Samba Share neu anlegen #####################################################
90 if ($sambasettings{'ACTION'} eq 'smbshareadd')
93 system('/usr/local/bin/sambactrl 6');
94 open (FILE
, ">>${General::swroot}/samba/shares") or die "Can't save the shares settings: $!";
98 $sambasettings{'SHAREOPTION'}
105 ############################################################################################################################
106 ############################################################################################################################
108 if ($sambasettings{'ACTION'} eq $Lang::tr
{'save'})
110 $sambasettings{'INTERFACES'} = '';
111 if ($checked{'GREEN'}){ $sambasettings{'INTERFACES'} = "$sambasettings{'INTERFACES'} $netsettings{'GREEN_DEV'}";}
112 if ($checked{'BLUE'}){ $sambasettings{'INTERFACES'} = "$sambasettings{'INTERFACES'} $netsettings{'BLUE_DEV'}";}
113 if ($checked{'ORANGE'}){ $sambasettings{'INTERFACES'} = "$sambasettings{'INTERFACES'} $netsettings{'ORANGE_DEV'}";}
114 if ($checked{'VPN'}){ $sambasettings{'INTERFACES'} = "$sambasettings{'INTERFACES'} $ovpnsettings{'DDEVICE'}";}
115 if ($sambasettings{'OTHERINTERFACES'} ne ''){ $sambasettings{'INTERFACES'} = "$sambasettings{'INTERFACES'} $sambasettings{'OTHERINTERFACES'}";}
117 ############################################################################################################################
118 ############################################################################################################################
120 &General
::writehash
("${General::swroot}/samba/settings", \
%sambasettings);
122 open (FILE
, ">${General::swroot}/samba/global") or die "Can't save the global settings: $!";
126 # global.settings by IPFire Project
129 netbios name = $sambasettings{'NETBIOSNAME'}
130 server string = $sambasettings{'SRVSTRING'}
131 workgroup = $sambasettings{'WORKGRP'}
134 os level = $sambasettings{'OSLEVEL'}
137 preferred master = yes
141 kernel oplocks = false
142 map to guest = $sambasettings{'MAPTOGUEST'}
146 security = $sambasettings{'SECURITY'}
147 encrypt passwords = yes
148 guest account = $sambasettings{'GUESTACCOUNT'}
149 unix password sync = no
152 bind interfaces only = $sambasettings{'BINDINTERFACESONLY'}
153 interfaces = $sambasettings{'INTERFACES'}
154 socket options = TCP_NODELAY IPTOS_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 SO_KEEPALIVE
157 wins support = $sambasettings{'WINSSUPPORT'}
160 log file = /var/log/samba/samba-log.%m
161 lock directory = /var/lock/samba
162 pid directory = /var/run/
168 &General
::readhash
("${General::swroot}/samba/settings", \
%sambasettings);
171 &Header
::openbox
('100%', 'left', $Lang::tr
{'error messages'});
172 print "<class name='base'>$errormessage\n";
173 print " </class>\n";
177 $checked{'WINSSUPPORT'}{$sambasettings{'WINSSUPPORT'}} = "checked='checked' ";
178 $checked{'GREEN'}{$sambasettings{'GREEN'}} = "checked='checked' ";
179 $checked{'BLUE'}{$sambasettings{'BLUE'}} = "checked='checked' ";
180 $checked{'ORANGE'}{$sambasettings{'ORANGE'}} = "checked='checked' ";
181 $checked{'VPN'}{$sambasettings{'VPN'}} = "checked='checked' ";
183 $selected{'MAPTOGUEST'}{$sambasettings{'MAPTOGUEST'}} = "selected='selected'";
184 $selected{'SECURITY'}{$sambasettings{'SECURITY'}} = "selected='selected'";
186 ############################################################################################################################
187 ############################################################################################################################
189 &Header
::openbox
('100%', 'center', 'Samba');
192 <table width='500px' cellspacing='0'><br>
195 if ( $message ne "" ) {
196 print "<tr><td colspan='2' align='left'><font color='red'>$message</font>";
199 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>Alle Dienste</b></td></tr>
200 </table><table width='500px' cellspacing='0'>
204 foreach $key (sort keys %servicenames)
206 print "<tr><td align='left'>$key";
207 my $shortname = $servicenames{$key};
208 my $status = &isrunning
($shortname);
209 print "$status</td>";
211 <td><form method='post' action='$ENV{'SCRIPT_NAME'}'>
212 <input type='hidden' name='ACTION' value='restart $shortname'>
213 <input type='image' src='/images/reload.gif'>
219 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
220 <table width='500px' cellspacing='0'><br>
221 <tr><td colspan='2' align='center'>
222 <input type='submit' name='ACTION' value='Start' />
223 <input type='submit' name='ACTION' value='Stop' />
224 <input type='submit' name='ACTION' value='$Lang::tr{'restart'}' />
225 </td></tr></form></table>
227 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
228 <table width='500px' cellspacing='0'><br>
229 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>Basisoptionen</b></td></tr>
230 <tr><td align='left'>Workgroup:</td><td><input type='text' name='WORKGRP' value='$sambasettings{'WORKGRP'}' size="30"></td></tr>
231 <tr><td align='left'>NetBIOS-Name:</td><td><input type='text' name='NETBIOSNAME' value='$sambasettings{'NETBIOSNAME'}' size="30"></td></tr>
232 <tr><td align='left'>Server-String:</td><td><input type='text' name='SRVSTRING' value='$sambasettings{'SRVSTRING'}' size="30"></td></tr>
233 <tr><td align='left'>Interfaces:</td><td><input type='checkbox' name='VPN' $checked{'VPN'}{'on'}><font size='2' color='$Header::colourovpn'><b> OpenVpn - $ovpnsettings{'DDEVICE'}</td></tr>
234 <tr><td align='left'></td><td><input type='checkbox' name='GREEN' $checked{'GREEN'}{'on'}><font size='2' color='$Header::colourgreen'><b> $Lang::tr{'green'} - $netsettings{'GREEN_DEV'}</td></tr>
237 if (&Header
::blue_used
()){
239 <tr><td align='left'></td><td><input type='checkbox' name='BLUE' $checked{'BLUE'}{'on'}><font size='2' color='$Header::colourblue'><b> $Lang::tr{'wireless'} - $netsettings{'BLUE_DEV'}</td></tr>
243 if (&Header
::orange_used
()){
245 <tr><td align='left'></td><td><input type='checkbox' name='ORANGE' $checked{'ORANGE'}{'on'}><font size='2' color='$Header::colourorange'><b> $Lang::tr{'dmz'} - $netsettings{'ORANGE_DEV'}</td></tr>
250 <tr><td align='center'>weitere</td><td><input type='text' name='OTHERINTERFACES' value='$sambasettings{'OTHERINTERFACES'}' size="30"></td></tr>
251 <tr><td align='left'><br></td><td></td></tr>
252 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>Sicherheitsoptionen</b></td></tr>
253 <tr><td align='left'>Security:</td><td><select name='SECURITY'>
254 <option value='share' $selected{'SECURITY'}{'share'}>Share</option>
255 <option value='user' $selected{'SECURITY'}{'user'}>User</option>
256 <option value='domain' $selected{'SECURITY'}{'domain'}>Domain</option>
257 <option value='ADS' $selected{'SECURITY'}{'ADS'}>ADS</option>
258 <option value='server' $selected{'SECURITY'}{'server'}>Server</option>
261 <tr><td align='left'>Map to guest:</td><td><select name='MAPTOGUEST'>
262 <option value='Never' $selected{'MAPTOGUEST'}{'Never'}>Never</option>
263 <option value='Bad User' $selected{'MAPTOGUEST'}{'Bad User'}>Bad User</option>
264 <option value='Bad Password' $selected{'MAPTOGUEST'}{'Bad Password'}>Bad Password</option>
266 <tr><td align='left'><br></td><td></td></tr>
267 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>Browsingoptionen</b></td></tr>
268 <tr><td align='left'>OS Level:</td><td><input type='text' name='OSLEVEL' value='$sambasettings{'OSLEVEL'}' size="30"></td></tr>
269 <tr><td align='left'><br></td><td></td></tr>
270 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>WINS-Optionen</b></td></tr>
271 <tr><td align='left'>WINS-Server:</td><td><input type='text' name='WINSSRV' value='$sambasettings{'WINSSRV'}' size="30"></td></tr>
272 <tr><td align='left'>WINS-Support:</td><td>on <input type='radio' name='WINSSUPPORT' value='on' $checked{'WINSSUPPORT'}{'on'}>/
273 <input type='radio' name='WINSSUPPORT' value='off' $checked{'WINSSUPPORT'}{'off'}> off</td></tr>
274 <tr><td colspan='2' align='center'><input type='submit' name='ACTION' value=$Lang::tr{'save'}></td></tr>
281 if ($sambasettings{'SECURITY'} eq 'user')
283 &Header
::openbox
('100%', 'center', 'accounting - user Security');
287 <table width='500px' cellspacing='0'><br>
288 <tr><td colspan='6' align='left'>
289 <tr><td bgcolor='${Header::table1colour}' colspan='6' align='left'><b>Benutzerverwaltung</b>
290 <tr><td><u>Benutzername</u></td><td><u>Passwort</u></td><td><u>Status</u></td><td colspan='3' width="5"><u>Optionen</u></td></tr>
293 open( FILE
, "< $userfile") or die "Can't read user file: $!";
296 foreach $userentry (sort @user)
298 @userline = split( /\:/, $userentry );
300 <tr><td align='left'>$userline[0]</td><td>
303 if ($userline[2] =~ m/N/){
305 nicht gesetzt</td><td>
314 if ($userline[2] =~ m/D/){
317 <td><form method='post' action='$ENV{'SCRIPT_NAME'}'>
318 <input type='hidden' name='NAME' value='$userline[0]'>
319 <input type='hidden' name='ACTION' value='userdisable'>
320 <input type='image' alt='Deaktivieren' src='/images/off.gif'>
327 <td><form method='post' action='$ENV{'SCRIPT_NAME'}'>
328 <input type='hidden' name='NAME' value='$userline[0]'>
329 <input type='hidden' name='ACTION' value='userenable'>
330 <input type='image' alt='Aktivieren' src='/images/on.gif'>
336 <td><form method='post' action='$ENV{'SCRIPT_NAME'}'>
337 <input type='hidden' name='NAME' value='$userline[0]'>
338 <input type='hidden' name='ACTION' value='userchangepw'>
339 <input type='image' alt='Bearbeiten' src='/images/edit.gif'>
341 <td><form method='post' action='$ENV{'SCRIPT_NAME'}'>
342 <input type='hidden' name='NAME' value='$userline[0]'>
343 <input type='hidden' name='ACTION' value='userdelete'>
344 <input type='image' alt='Loeschen' src='/images/delete.gif'>
352 <table width='50px' cellspacing='0'><br>
353 <tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
354 <input type='hidden' name='ACTION' value='useradd'>
355 <input type='image' alt='Benutzer anlegen' src='/images/add.gif'></form></td>
356 <td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
357 <input type='hidden' name='ACTION' value='usercaption'>
358 <input type='image' alt='Legende' src='/images/info.gif'></form>
363 if ($sambasettings{'ACTION'} eq 'usercaption')
366 <table width='500px' cellspacing='0'><br>
367 <tr><td><b>Legende:</b></td></tr>
368 <tr><td><img src='/images/add.gif'>Benutzer neu anlegen</td></tr>
369 <tr><td><img src='/images/on.gif'>Benutzer aktivieren</td></tr>
370 <tr><td><img src='/images/off.gif'>Benutzer deaktivieren</td></tr>
371 <tr><td><img src='/images/edit.gif'>Passwort wechseln</td></tr>
372 <tr><td><img src='/images/delete.gif'>Benutzer loeschen</td></tr>
378 if ($sambasettings{'ACTION'} eq 'userchangepw')
380 my $username = "$sambasettings{'NAME'}";
381 my $password = 'samba';
384 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
385 <table width='500px' cellspacing='0'><br>
386 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>Passwort wechseln</b></td></tr>
387 <tr><td align='left'>Benutzername</td><td><input type='text' name='USERNAME' value='$username' size="30"></td></tr>
388 <tr><td align='left'>Passwort</td><td><input type='password' name='PASSWORD' value='$password' size="30"></td></tr>
389 <tr><td colspan='2' align='center'><input type='submit' name='ACTION' value='smbchangepw'></td></tr></form>
394 if ($sambasettings{'ACTION'} eq 'useradd')
396 my $username = "User";
397 my $password = 'samba';
400 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
401 <table width='500px' cellspacing='0'><br>
402 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>Benutzer neu anlegen</b></td></tr>
403 <tr><td align='left'>Benutzername</td><td><input type='text' name='USERNAME' value='$username' size="30"></td></tr>
404 <tr><td align='left'>Passwort</td><td><input type='password' name='PASSWORD' value='$password' size="30"></td></tr>
405 <tr><td colspan='2' align='center'><input type='submit' name='ACTION' value='smbuseradd'></td></tr></form>
414 &Header
::openbox
('100%', 'center', 'Shares');
418 <table width='500px' cellspacing='0'><br>
419 <tr><td bgcolor='${Header::table1colour}' colspan='3' align='left'><b>Shareverwaltung</b>
420 <tr><td><u>Names des Shares</u></td><td colspan='2' width="5"><u>Optionen</u></td></tr>
425 @shares = `grep -n '^\\[' $sharefile`;
426 foreach $shareentry (@shares)
428 @shareline = split( /\:/, $shareentry );
429 push(@Zeilen,$shareline[0]);push(@Shares,$shareline[1]);
432 foreach $shareentry (sort @Shares)
435 <tr><td align='left'>$shareentry</td>
436 <td><form method='post' action='$ENV{'SCRIPT_NAME'}'>
437 <input type='hidden' name='NAME' value='$shareentry'>
438 <input type='hidden' name='ACTION' value='sharechange'>
439 <input type='image' alt='Bearbeiten' src='/images/edit.gif'>
441 <td><form method='post' action='$ENV{'SCRIPT_NAME'}'>
442 <input type='hidden' name='NAME' value='$shareentry'>
443 <input type='hidden' name='ACTION' value='Loeschen'>
444 <input type='image' alt='Loeschen' src='/images/delete.gif'>
452 <table width='50px' cellspacing='0'><br>
453 <tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
454 <input type='hidden' name='ACTION' value='shareadd'>
455 <input type='image' alt='neuen Share anlegen' src='/images/add.gif'></form></td>
456 <td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
457 <input type='hidden' name='ACTION' value='sharecaption'>
458 <input type='image' alt='Legende' src='/images/info.gif'></form>
463 if ($sambasettings{'ACTION'} eq 'sharecaption')
466 <table width='500px' cellspacing='0'><br>
467 <tr><td><b>Legende:</b></td></tr>
468 <tr><td><img src='/images/add.gif'>Share neu anlegen</td></tr>
469 <tr><td><img src='/images/edit.gif'>Share bearbeiten</td></tr>
470 <tr><td><img src='/images/delete.gif'>Share loeschen</td></tr>
476 if ($sambasettings{'ACTION'} eq 'shareadd' || $sambasettings{'ACTION'} eq 'optioncaption' )
479 my $defaultoption= "[Share]\npath = /shares/share1\ncomment = Share - Public Access\nbrowseable = yes\nwriteable = yes\ncreate mask = 0777\ndirectory mask = 0777\nguest ok = yes\npublic = yes\nforce user = samba";
483 <table width='500px' cellspacing='0'><br>
484 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>neuen Share anlegen</b></td></tr>
485 <tr><td colspan='2' align='center'></td></tr>
486 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
487 <tr><td colspan='2' align='center'>Anzeige der Optionen fuer Shares<input type='hidden' name='ACTION' value='optioncaption'>
488 <input type='image' alt='Legende' src='/images/info.gif'></td></tr></form>
489 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
490 <tr><td colspan='2' align='center'><textarea name="SHAREOPTION" cols="50" rows="15" Wrap="off">$defaultoption</textarea></td></tr>
492 <table width='50px' cellspacing='0'><br>
493 <tr><td align='center'><input type='submit' name='ACTION' value='smbshareadd'></td></tr></form>
499 if ($sambasettings{'ACTION'} eq 'sharechange' || $sambasettings{'ACTION'} eq 'optioncaption2' )
501 my $sharename = "$sambasettings{'NAME'}";
502 my $shareoption = '';
506 for(my $i = 0; $i <= $#Shares; $i++)
509 $Shares[$i]=~s/\s//g;
510 if ( "$Shares[$i]" eq "$sharename" )
512 my $Zeilenbegin = $Zeilen[$i+1]-2;
513 my $Zeilenende = $Zeilen[$i+1]-$Zeilen[$i];
514 my $EOF = qx(cat
$sharefile | wc
-l
);
515 if ( $Zeilen[$i] eq $Zeilen[$#Shares] )
516 {$Zeilenende = $EOF-$Zeilen[$#Shares]+1;$Zeilenbegin = $EOF-$Zeilen[$#Shares]; $shareoption = qx(tail
-$Zeilenende $sharefile | head
-$Zeilenbegin);}
517 else{$shareoption = qx(head
-$Zeilenbegin $sharefile | tail
-$Zeilenende);}
523 <table width='500px' cellspacing='0'><br>
524 <tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>Share bearbeiten</b></td></tr>
525 <tr><td colspan='2' align='center'></td></tr>
526 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
527 <tr><td colspan='2' align='center'>Anzeige der Optionen fuer Shares<input type='hidden' name='ACTION' value='optioncaption2'>
528 <input type='image' alt='Legende' src='/images/info.gif'></td></tr></form>
529 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
530 <tr><td colspan='2' align='center'><textarea name="SHAREOPTION" cols="50" rows="15" Wrap="off">$shareoption</textarea></td></tr>
532 <table width='50px' cellspacing='0'><br>
533 <tr><td align='center'><input type='submit' name='ACTION' value='smbsharechange'></td></tr></form>
539 if ($sambasettings{'ACTION'} eq 'optioncaption' || $sambasettings{'ACTION'} eq 'optioncaption2')
542 <table width='500px' cellspacing='0'><br>
543 <tr><td><b>Legende:</b></td></tr>
544 <tr><td><u>Option</u></td><td><u>Bedeutung</u> / <u>Beispiel</u></td></tr>
545 <tr><td>comment</td><td>Kommentar</td></tr>
546 <tr><td></td><td>comment = Mein neues Share</td></tr>
547 <tr><td><br></td><td></td></tr>
548 <tr><td>path</td><td>Pfad zum Verzeichnis</td></tr>
549 <tr><td></td><td>path = /share/neu</td></tr>
550 <tr><td><br></td><td></td></tr>
551 <tr><td>writeable</td><td>Verzeichnis schreibbar</td></tr>
552 <tr><td></td><td>writeable = yes</td></tr>
553 <tr><td><br></td><td></td></tr>
554 <tr><td>browseable</td><td>sichtbar in Verzeichnisliste</td></tr>
555 <tr><td></td><td>browsable = yes</td></tr>
556 <tr><td><br></td><td></td></tr>
557 <tr><td>user</td><td>Besitzer der Freigabe</td></tr>
558 <tr><td></td><td>user = samba</td></tr>
559 <tr><td><br></td><td></td></tr>
560 <tr><td>valid users</td><td>Liste der Zugriffsberechtigten</td></tr>
561 <tr><td></td><td>valid users = samba, user1</td></tr>
562 <tr><td><br></td><td></td></tr>
563 <tr><td>write list</td><td>Liste der Schreibberechtigten</td></tr>
564 <tr><td></td><td>write list = samba</td></tr>
565 <tr><td><br></td><td></td></tr>
566 <tr><td>read list</td><td>Liste der nur Leseberechtigten</td></tr>
567 <tr><td></td><td>read list = user1</td></tr>
568 <tr><td><br></td><td></td></tr>
569 <tr><td>admin users</td><td>Liste der Benutzer mit SuperUser Rechten</td></tr>
570 <tr><td></td><td>admin users = user1</td></tr>
571 <tr><td><br></td><td></td></tr>
572 <tr><td>invalid users</td><td>Liste der Benutzer denen der Zugriff verweigert wird</td></tr>
573 <tr><td></td><td>invalid users = user2</td></tr>
574 <tr><td><br></td><td></td></tr>
575 <tr><td>force user</td><td>Standartbenutzer fuer alle Dateien</td></tr>
576 <tr><td></td><td>force user = samba</td></tr>
577 <tr><td><br></td><td></td></tr>
578 <tr><td>directory mask</td><td>UNIX Verzeichnisberchtigung beim Erzeugen</td></tr>
579 <tr><td></td><td>directory mask = 0777</td></tr>
580 <tr><td><br></td><td></td></tr>
581 <tr><td>create mask</td><td>UNIX Dateiberchtigung beim Erzeugen</td></tr>
582 <tr><td></td><td>create mask = 0777</td></tr>
583 <tr><td><br></td><td></td></tr>
584 <tr><td>guest ok</td><td>Annonymer Zugriff</td></tr>
585 <tr><td></td><td>guest ok = yes</td></tr>
592 &Header
::closebigbox
();
593 &Header
::closepage
();
595 ############################################################################################################################
596 ############################################################################################################################
601 my $status = "<td align='center' bgcolor='${Header::colourred}'><font color='white'><b>$Lang::tr{'stopped'}</b></font></td>";
609 if (open(FILE
, "/var/run/${cmd}.pid"))
611 $pid = <FILE
>; chomp $pid;
613 if (open(FILE
, "/proc/${pid}/status"))
617 if (/^Name:\W+(.*)/) {
621 if ($testcmd =~ /$exename/)
623 $status = "<td align='center' bgcolor='${Header::colourgreen}'><font color='white'><b>$Lang::tr{'running'}</b></font></td>";