diff options
author | John Terpstra <jht@samba.org> | 2003-04-10 06:29:03 +0000 |
---|---|---|
committer | John Terpstra <jht@samba.org> | 2003-04-10 06:29:03 +0000 |
commit | 86a3ea9337769cc2eb98b6e62907be58df952408 (patch) | |
tree | 481bb91247475c9422f1bca968fae3f41776020d /docs/docbook/projdoc/AdvancedNetworkAdmin.sgml | |
parent | 9bf3d3cb039d5304a70d1844b262c23489aa3227 (diff) | |
download | samba-86a3ea9337769cc2eb98b6e62907be58df952408.tar.gz samba-86a3ea9337769cc2eb98b6e62907be58df952408.tar.bz2 samba-86a3ea9337769cc2eb98b6e62907be58df952408.zip |
More docs.
(This used to be commit df3e4b15d1e4d252e3f5d16a9f13c7eb44638d18)
Diffstat (limited to 'docs/docbook/projdoc/AdvancedNetworkAdmin.sgml')
-rw-r--r-- | docs/docbook/projdoc/AdvancedNetworkAdmin.sgml | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/docs/docbook/projdoc/AdvancedNetworkAdmin.sgml b/docs/docbook/projdoc/AdvancedNetworkAdmin.sgml index 58bc9a444e..39fda9768d 100644 --- a/docs/docbook/projdoc/AdvancedNetworkAdmin.sgml +++ b/docs/docbook/projdoc/AdvancedNetworkAdmin.sgml @@ -163,5 +163,112 @@ This section needs work. Volunteer contributions most welcome. Please send your to <ulink url="mailto:jht@samba.org">John Terpstra</ulink>. </para> +<para> +There are several opportunities for creating a custom network startup configuration environment. +</para> +< +<simplelist> + <member><para>No Logon Script</para></member> + <member><para>Simple universal Logon Script that applies to all users</para></member> + <member><para>Use of a conditional Logon Script that applies per user or per group attirbutes</para></member> + <member><para>Use of Samba's Preexec and Postexec functions on access to the NETLOGON share to create + a custom Logon Script and then execute it.</para></member> + <member><para>User of a tool such as KixStart</para></member> +</simplelist> + +<para> +The Samba source code tree includes two logon script generation/execution tools. See <filename>examples</filename> directory <filename>genlogon</filename> and <filename>ntlogon</filename> subdirectories. +</para> + +<para> +The following listings are from the genlogon directory. +</para> + +<programlisting<para> +This is the genlogon.pl file: + + #!/usr/bin/perl + # + # genlogon.pl + # + # Perl script to generate user logon scripts on the fly, when users + # connect from a Windows client. This script should be called from smb.conf + # with the %U, %G and %L parameters. I.e: + # + # root preexec = genlogon.pl %U %G %L + # + # The script generated will perform + # the following: + # + # 1. Log the user connection to /var/log/samba/netlogon.log + # 2. Set the PC's time to the Linux server time (which is maintained + # daily to the National Institute of Standard's Atomic clock on the + # internet. + # 3. Connect the user's home drive to H: (H for Home). + # 4. Connect common drives that everyone uses. + # 5. Connect group-specific drives for certain user groups. + # 6. Connect user-specific drives for certain users. + # 7. Connect network printers. + + # Log client connection + #($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); + ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); + open LOG, ">>/var/log/samba/netlogon.log"; + print LOG "$mon/$mday/$year $hour:$min:$sec - User $ARGV[0] logged into $ARGV[1]\n"; + close LOG; + + # Start generating logon script + open LOGON, ">/shared/netlogon/$ARGV[0].bat"; + print LOGON "\@ECHO OFF\r\n"; + + # Connect shares just use by Software Development group + if ($ARGV[1] eq "SOFTDEV" || $ARGV[0] eq "softdev") + { + print LOGON "NET USE M: \\\\$ARGV[2]\\SOURCE\r\n"; + } + + # Connect shares just use by Technical Support staff + if ($ARGV[1] eq "SUPPORT" || $ARGV[0] eq "support") + { + print LOGON "NET USE S: \\\\$ARGV[2]\\SUPPORT\r\n"; + } + + # Connect shares just used by Administration staff + If ($ARGV[1] eq "ADMIN" || $ARGV[0] eq "admin") + { + print LOGON "NET USE L: \\\\$ARGV[2]\\ADMIN\r\n"; + print LOGON "NET USE K: \\\\$ARGV[2]\\MKTING\r\n"; + } + + # Now connect Printers. We handle just two or three users a little + # differently, because they are the exceptions that have desktop + # printers on LPT1: - all other user's go to the LaserJet on the + # server. + if ($ARGV[0] eq 'jim' + || $ARGV[0] eq 'yvonne') + { + print LOGON "NET USE LPT2: \\\\$ARGV[2]\\LJET3\r\n"; + print LOGON "NET USE LPT3: \\\\$ARGV[2]\\FAXQ\r\n"; + } + else + { + print LOGON "NET USE LPT1: \\\\$ARGV[2]\\LJET3\r\n"; + print LOGON "NET USE LPT3: \\\\$ARGV[2]\\FAXQ\r\n"; + } + + # All done! Close the output file. + close LOGON; +</para></programlisting> + +<para> +Those wishing to use more elaborate or capable logon processing system should check out the following sites: +</para> + +<simplelist> + <member><para>http://www.craigelachie.org/rhacer/ntlogon</para></member> + <member><para>http://www.kixtart.org</para></member> +</simplelist> + +</sect1> </chapter> |