File: coldiron.html

package info (click to toggle)
lg-issue29 3-4
  • links: PTS
  • area: main
  • in suites: woody
  • size: 1,840 kB
  • ctags: 365
  • sloc: java: 758; makefile: 36; sh: 4
file content (2740 lines) | stat: -rw-r--r-- 119,746 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
<!--startcut ==========================================================-->
<HTML>
<HEAD>
   <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
   <META NAME="GENERATOR" CONTENT="Mozilla/4.04 [en] (X11; I; Linux 2.0.32 i586) [Netscape]">
   <TITLE>Replacing Windows NT Server with Linux</TITLE>
<!--Created by Applixware HTML Authoring System, Release 4.3 on Mon Jan  5 18:22:23 1998-->
<!--Ax:WP:DocVar:HTMLOriginalPath@:"/tmp/ex02228c.aw"-->
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<STYLE type="text/css"> A:link {color:#C91F16; text-decoration:none}
A:visited {color:#C91F16; text-decoration:none} A:active {color:#C91F16;
text-decoration:none} </STYLE>
<!--endcut ============================================================-->

<H4>
"Linux Gazette...<I>making Linux just a little more fun!</I>"
</H4>

<P> <HR> <P> 
<!--===================================================================-->


<P><B><FONT SIZE=+4>Replacing Windows NT Server with Linux</FONT></B>
<BR>Copyright (c) 1997 Quinn P. Coldiron
<BR>qcoldiro@unlinfo.unl.edu
<BR><BR><BR><B><FONT SIZE=+2>Table of Contents</FONT></B>

<P><B><A HREF="#Introduction">Introduction</A></B>

<P><B>Section 1--<A HREF="#Outlining Our Situation">Outlining Our Situation</A></B>

<P><B>Section 2-- Why we chose RedHat Linux</B>
<UL>
<LI>
<A HREF="#Linux Features">Linux Features</A></LI>

<LI>
<A HREF="#Reliability">Reliability</A></LI>

<LI>
<A HREF="#Cross platform">Cross platform</A></LI>

<LI>
<A HREF="#Compatibility with Existing Applications">Compatibility</A></LI>

<LI>
<A HREF="#Speed">Speed</A></LI>

<LI>
<A HREF="#Speed">Inexpensive</A></LI>

<LI>
<A HREF="#Low hardware requirements">Low hardware requirements</A></LI>

<LI>
<A HREF="#Ease of administration">Ease of administration</A></LI>

<LI>
<A HREF="#Simple upgrade path">Simple upgrade path</A></LI>

<LI>
<A HREF="#Remote control and administration">Remote control and administration</A></LI>
</UL>
<B>Section 3--Under the Hood</B>
<UL>
<LI>
<A HREF="#Under the Hood">Setting up the server</A></LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#Linux installation">Linux
installation</A></LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#Samba Installation/Setup">Samba
installation/setup</A></LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#Netatalk Installation/Setup">Netatalk
installation/setup</A></LI>

<LI>
Installing The Cats Pajamas (Getting a DOS network application to run on
Linux)</LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#Installing Cats on the Server">Installing
Cats on the Server</A></LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#Configuring your Windows clients">Configuring
your Windows clients</A></LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#Configuring the DOS emulator to run Cats">Configuring
the DOS emulator to run Cats</A></LI>

<LI>
<A HREF="#Installing a RAID">Installing a RAID</A></LI>

<LI>
Daily administration</LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#System backups">System backups</A></LI>

<LI>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A HREF="#Scheduling events">Scheduling
events</A></LI>

<LI>
<A HREF="#Replacing your Desktop OS with Linux">Replacing your Desktop
OS with Linux</A></LI>
</UL>
<B>Appendix A--<A HREF="http://www.redhat.com/support/docs/rhl/manual/manual/">RedHat
5.0 Installation Guide</A></B>

<P><B>Appendix B--<A HREF="http://samba.anu.edu/samba/">Samba</A></B>
<UL>
<LI>
<A HREF="http://samba.anu.edu.au/cifs/docs/what-is-smb.html">Just What
is SMB?</A></LI>

<LI>
<A HREF="http://samba.anu.edu.au/samba/docs/faq/sambafaq.html">Samba FAQ</A></LI>

<LI>
<A HREF="http://samba.anu.edu.au/samba/docs/smb_serv/html/smb_se.html">Samba
HOW-TO</A></LI>
</UL>
<B>Appendix C--<A HREF="http://www.suse.com/~dosemu/doc-0.67/README.html">DOSEMU
Manual</A></B>
<BR>&nbsp;

<P>
<HR ALIGN=LEFT>
<BR><A NAME="Introduction"></A><B><FONT SIZE=+2>Introduction</FONT></B>

<P>Network Operating Systems (NOS) have many features and capabilities
that allow the Information Systems departments of most organizations to
better server your organization and help streamline work flow. Each NOS
has different features and a excels in different areas. Traditionally,
Novell Netware has been viewed as the best file/printer server, Unix was
viewed as the premiere application and database server and recently, Windows
NT has come in as a good choice for the smaller networks as a file/printer
server or application server. The market has become very aggressive with
each of these platforms branching out into each others market area. Microsoft
has expanded NT into the midrange server market once dominated by Novell
and is trying to get into the high end market which was once filled by
Unix venders such as Sun, Hewlett Packard and Silicone Graphics.

<P>I inherited an aging Novell Netware 3.11 server when I began my career
at the University of Nebraska Press that was on an under powered Pentium
90 and had older disk drives that were failing. I also wanted to expand
into other areas, so I knew this was going to be my first project. When
I began looking at my options to replace our aging Novell Netware server,
I of course turned first to the just released Windows NT Server 4.0. The
marketing materials, magazines and television advertisements all told me
that this was the one thing that would solve all my problems. The operating
system promised to be easier to setup and maintain than the Netware product
it was replacing and it could easily handle the 55 users on my network.
Fourteen months later, we are running Linux as our server.

<P>Linux is a completely free reimplementation of the POSIX specification,
with SYSV and BSD extensions (which means it looks like Unix, but does
not come from the same source code base), which is available in both source
code and binary form. Its copyright is owned by Linus Torvalds &lt;torvalds@transmeta.com>
and other contributors, and is freely redistributable under the terms of
the GNU General Public License (GPL). A copy of the GPL is included with
the Linux source; you can also get a copy from ftp://prep.ai.mit.edu/pub/gnu/COPYING.

<P>Linux is not public domain, nor is it `shareware'. It is `free' software,
commonly called freeware, and you may give away or sell copies, but you
must include the source code or make it available in the same way as any
binaries you give or sell. If you distribute any modifications, you are
legally bound to distribute the source for those modifications. See the
GNU General Public License for details.

<P>Linux is still free as of version 2.0, and will continue to be free.
Because of the nature of the GPL to which Linux is subject, it would be
illegal for it to be made not free. Note carefully: the `free' part involves
access to the source code rather than money; it is perfectly legal to charge
money for distributing Linux, so long as you also distribute the source
code. This is a generalization; if you want the fine points, read the GPL.

<P>Linux runs on 386/486/Pentium machines with ISA, EISA, PCI and VLB busses.
MCA (IBM's proprietary bus) is not well-supported in 2.0.x and earlier
versions, but support has been added to the current development tree, 2.1.x.
If you are interested, see http://glycerine.itsmm.uni.edu/mca

<P>There is a port to multiple Motorola 680x0 platforms (currently running
on some Amigas, Ataris, and VME machines), which now works quite well.
It requires a 68020 with an MMU, a 68030, 68040, or a 68060, and also requires
an FPU. Networking and X now work. See news:comp.os.linux.m68k

<P>Linux runs well on DEC's Alpha CPU, currently supporting the "Jensen",
"NoName", "Cabriolet", "Universal Desktop Box" (better known as the Multia),
and many other platforms. For more information, see http://www.azstarnet.com/~axplinux/FAQ.html

<P>Linux runs well on Sun SPARCs; most sun4c and sun4m machines now run
Linux, with support for sun4 and sun4u in active development. Red Hat Linux
is (as of this writing) the only Linux distribution available for SPARCs;
see http://www.redhat.com/support/docs/rhl-sparc/

<P>Linux is being actively ported to the PowerPC architecture, including
PowerMac (Nubus and PCI), Motorola, IBM, and Be machines. See http://www.cs.nmt.edu/~linuxppc/
and http://www.linuxppc.org/

<P>Ports to other machines, including MIPS and ARM, are under way and showing
various amounts of progress. Don't hold your breath, but if you are interested
and able to contribute, you may well find other developers who wish to
work with you.

<P>Linux is no longer considered to be in beta testing, as version 1.0
was released on March 14, 1994. There are still bugs in the system, and
new bugs will creep up and be fixed as time goes on. Because Linux follows
the ``open development model'', all new versions will be released to the
public, whether or not they are considered ``production quality''. However,
in order to help people tell whether they are getting a stable version
or not, the following scheme has been implemented: Versions 1.x.y, where
x is an even number, are stable versions, and only bug fixes will be applied
as y is incremented. So from version 1.2.2 to 1.2.3, there were only bug
fixes, and no new features. Versions 1.x.y, where x is an odd number, are
beta-quality releases for developers only, and may be unstable and may
crash, and are having new features added to them all the time. From time
to time, as the current development kernel stabilizes, it will be frozen
as the new ``stable'' kernel, and development will continue on a new development
version of the kernel.

<P>The current stable version is 2.0.31 (this will continue to change as
new device drivers get added and bugs fixed), and development has also
started on the experimental 2.1.x kernels. If 2.0.x is too new for you,
you may want to stick with 1.2.13 for the time being. However, the latest
releases of 2.0 have proved quite stable. Do note that in order to upgrade
from 1.2 to 2.0, you need to upgrade some utilities as well; you may wish
to upgrade to the latest version of your Linux distribution in order to
obtain those utilities. The Linux kernel source code also contains a file,
Documentation/Changes, which explains these changes and more.

<P>Most versions of Linux, beta or not, are quite stable, and you can keep
using those if they do what you need and you don't want to be on the bleeding
edge. One site had a computer running version 0.97p1 (dating from the summer
of 1992) for over 136 days without an error or crash. (It would have been
longer if the backhoe operator hadn't mistaken a main power transformer
for a dumpster...) Others have posted uptimes in excess of a year. One
site still had a computer running Linux 0.99p15s over 600 days at last
report.

<P>One thing to be aware of is that Linux is developed using an open and
distributed model, instead of a closed and centralized model like much
other software. This means that the current development version is always
public (with up to a week or two of delay) so that anybody can use it.
The result is that whenever a version with new functionality is released,
it almost always contains bugs, but it also results in a very rapid development
so that the bugs are found and corrected quickly, often in hours, as many
people work to fix them.

<P>In contrast, the closed and centralized model means that there is only
one person or team working on the project, and they only release software
that they think is working well. Often this leads to long intervals between
releases, long waiting for bug fixes, and slower development. The latest
release of such software to the public is sometimes of higher quality,
but the development speed is generally much slower.

<P>As of October 24, 1997, the current stable version of Linux is 2.0.31,
and the latest development version is 2.1.59.

<P>I will begin this report by covering the areas that we were concerned
about and giving reasons that were chose options that we went with. I will
not get very technical in this fist section, but will cover in detail how
we implemented each part of the system and give examples of the configuration
files in section two.
<DIV ALIGN=right>
<HR ALIGN=RIGHT></DIV>

<DIV ALIGN=right><FONT SIZE=+4>Section 1</FONT></DIV>

<DIV ALIGN=right><A NAME="Outlining Our Situation"></A><FONT SIZE=+4>Outlining
Our Situation</FONT></DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Our Situation</FONT></B></DIV>
When I became the Information Systems Department manager for the University
of Nebraska Press I inherited a very tired and aging Novell Netware 3.1
server that was handling all the network serving duties for approximately
fifty users. This is not a large network and our needs are not out of the
ordinary, but this machine was due for replacement. Novell was on version
4.x, NT 4.0 had just come out and this machine was only a Pentium 90 with
data drives that were noisier than Nebraska's memorial stadium.

<P>It was time to begin the search for replacements and I had the same
issues to deal with that my predecessors had, plus some new ones. The main
issue was compatibility with our order fulfillment and inventory system
called The Cat's Pajamas. This system was originally developed on the Data
General line of mini and mainframe computers using its interpreted language.
The system was ported to PC servers (mainly Novell Netware) when a company
called Subject Wills ported the interpreter to the PC platform. It has
a character based user interface, stores all its data in flat indexed text
files and is pretty fast and stable on the Novell platform. Our new requirements
were for remote access for our warehouse, and if possible, access for the
five Macs that we have, but spend as little money as possible.

<P>I was not very interested in upgrading our current Netware license,
since at this time Novell was playing the CEO of the Month game which had
caused me to lose much of my confidence in the company. The next logical
choice was Microsoft Windows NT. I called Cats and asked if the application
would run on NT and they told me that they had a few installations and
things seemed to be running fine, but I would need a different version
of the DBC interpreter, which they uploaded for me. I proceeded to copy
the entire system and database to the NT server and logged on from my Windows
95 PC. I had to rewrite the batch file that Cats uses to start because
they were using Netware network commands, but I was able to get them changed
and get a session up.

<P>At this point I thought this looked very good, so I ordered the production
server. The server was a dual CPU Pentium 150 with built in Adaptec 2940UW
SCSI controller and 256MB of RAM. I thought this would be perfect to act
as the CATS server, file server and printer server for 50 people, especially
since Netware was doing this on a Pentium 90 with 64 MB of RAM. I got the
server a few weeks later, installed NT 4.0 and Cats. After I got Cats installed
I had our business department and Customer Service department try running
some large and CPU intensive reports on it and things seemed to run great,
so we pushed it into service. At this same time I was setting up a RedHat
Linux 4.1 machine on a Pentium 100 with 32 MB of RAM. I had used RedHat
Linux in my previous position with great luck as a web server and StreamWorks
audio/video server so I wanted to see if it could fit in here, but I didn't
know where or how.

<P>Life after moving Cats to NT was a nightmare. The system was crashing
two to three times a day with no reason that I could find. I was on the
phone with Microsoft and Cats constantly, but nobody could figure it out.
Microsoft had me apply Service Packs one through three and a few HotFixes,
which helped, but it still was crashing at least twice a week with the
infamous "Blue Screen of Death". After many weeks and about $1500.00 in
phone support from Microsoft, the technical support rep told me that I
should find a better software package than The Cat's Pajamas. This is was
not the solution I was looking for, since this is the package that a sizeable
percentage of presses our size nationwide are running, so I was forced
to bring the old Novell server back into production until I could figure
something out.

<P>By this time I had upgraded the RedHat Linux machine to version 4.2,
but it still wasn't doing much, so I added two IDE 1.6 GB hard drives,
installed SAMBA and copied CATS over to this computer to play a little.
I was able to connect from my Windows 95 computer and run Cats without
any modifications to the batch file I had created for the NT server. I
had the Business manager and Customer Service manager try the reports again
and everything seemed fine, but I still had my doubts, so I just kept the
system up for myself and the IS department to test until a later date.

<P>The Netware server was still holding on and doing its job until I got
a call one Thursday night at about 9:00 from our Customer Service manager.
He had been running the reindexing program to prepare for the month-end
closing that was to start Friday, but the server had crashed. I worked
on it until about 12:30 am and finally got it working, but the whole thing
died again Friday morning at about 6:30 and again at 7:00, so I knew we
were in trouble. The only option left was to replace the server now and
the only thing I had was the Linux server, so I restored Cats off our Windows
NT tape backup machine to the Linux server and changed the login scripts
to connect the users to this server for the Cats drives. Within one hour,
we were back in operation.

<P>After completing the morning duties, we normally run a complete Cats
backup before we continue with closing which usually would take two hours
to complete on the Netware server. The Linux machine was able to do the
entire backup in 45 minutes, cutting a little over an hour off our closing
time. This increase in speed came from a decrease in hardware because the
Linux server was running only 32 MB in RAM and IDE hard drives where the
Netware server had 64 MB in RAM and SCSI drives. The speed increase has
been noticed in daily work also. I get almost daily remarks that the system
seems to be running faster and more reliable.

<P>We have recently upgraded the CPU to a 200Mhz Pentium and have upgraded
the Memory to 64 MB to handle the newest plans of making this server replace
our Windows NT file/printer server, which still crashes about twice a month
for no reason, even after an additional $1,500 in tech support with Microsoft.
This single computer running RedHat Linux will replace both our Novell
Netware 3.11 server and our Windows NT 4.0 server, while decreasing total
hardware requirements. With the recent advances from the Samba team in
supporting the NT domain structure and the December 1997 release of RedHat
5.0, I expect to have a very efficient and inexpensive server for our Windows
95, Windows NT and Macintosh clients.
<DIV ALIGN=right>
<HR ALIGN=RIGHT></DIV>

<DIV ALIGN=right><FONT SIZE=+4>Section 2</FONT></DIV>

<DIV ALIGN=right><A NAME="Why We Chose RedHat Linux"></A><FONT SIZE=+4>Why
We Chose RedHat Linux</FONT></DIV>

<DIV ALIGN=right><A NAME="Linux Features"></A><B><FONT SIZE=+2>Linux Features</FONT></B></DIV>
Linux is a very feature rich operating system. Many of its features are
not found on its commercial competitor Windows NT due to the fact that
Unix has been in constant development since it was invented in the early
1970's. Even though Linux has only been around since the early 90's, it
benefits from the rich archives of Unix applications and utilities because
of its POSIX compliance. Linux is unique in that the kernel does not use
any code from previous Unix implementations, but can still tap into the
libraries of BSD and System V distributions. I feel the strongest feature
of Linux is the Internet itself and the many technical users that are responsible
for the development of the many drivers and ports to other hardware platforms.
Many Intel platform bug fixes are release for Linux before they are release
in other ``mainstream'' operating systems mainly due to the fact the users
are also the developers.
<UL>
<LI>
&middot; multitasking: several programs running at once.</LI>

<LI>
&middot; multi-user: several users on the same machine at once (and no
two-user licenses!)..</LI>

<LI>
&middot; multiplatform: runs on many different CPUs, not just Intel.</LI>

<LI>
&middot; multiprocessor: SMP support is available on the Intel and SPARC
platforms (with work currently in progress on other platforms), and Linux
is used in several loosely-coupled MP applications, including Beowulf systems
(see http://cesdis.gsfc.nasa.gov/linux-web/beowulf/beowulf.html) and the
Fujitsu AP1000+ SPARC-based supercomputer.</LI>

<LI>
&middot; runs in protected mode on the 386.</LI>

<LI>
&middot; has memory protection between processes, so that one program can't
bring the whole system down.</LI>

<LI>
&middot; demand loads executables: Linux only reads from disk those parts
of a program that are actually used.</LI>

<LI>
&middot; shared copy-on-write pages among executables. This means that
multiple process can use the same memory to run in. When one tries to write
to that memory, that page (4KB piece of memory) is copied somewhere else.
Copy-on-write has two benefits: increasing speed and decreasing memory
use.</LI>

<LI>
&middot; virtual memory using paging (not swapping whole processes) to
disk: to a separate partition or a file in the filesystem, or both, with
the possibility of adding more swapping areas during runtime (yes, they're
still called swapping areas). A total of 16 of these 128 MB swapping areas
can be used at once, for a theoretical total of 2 GB of usable swap space.
It is simple to increase this if necessary, by changing a few lines of
source code.</LI>

<LI>
&middot; a unified memory pool for user programs and disk cache, so that
all free memory can be used for caching, and the cache can be reduced when
running large programs.</LI>

<LI>
&middot; dynamically linked shared libraries (DLL's), and static libraries
too, of course.</LI>

<LI>
&middot; does core dumps for post-mortem analysis, allowing the use of
a debugger on a program not only while it is running but also after it
has crashed.</LI>

<LI>
&middot; mostly compatible with POSIX, System V, and BSD at the source
level.</LI>

<LI>
&middot; through an iBCS2-compliant emulation module, mostly compatible
with SCO, SVR3, and SVR4 at the binary level.</LI>

<LI>
&middot; all source code is available, including the whole kernel and all
drivers, the development tools and all user programs; also, all of it is
freely distributable. Plenty of commercial programs are being provided
for Linux without source, but everything that has been free, including
the entire base operating system, is still free.</LI>

<LI>
&middot; POSIX job control.</LI>

<LI>
&middot; pseudoterminals (pty's).</LI>

<LI>
&middot; 387-emulation in the kernel so that programs don't need to do
their own math emulation. Every computer running Linux appears to have
a math coprocessor. Of course, if your computer already contains an FPU,
it will be used instead of the emulation, and you can even compile your
own kernel with math emulation removed, for a small memory gain.</LI>

<LI>
&middot; support for many national or customized keyboards, and it is fairly
easy to add new ones dynamically.</LI>

<LI>
&middot; multiple virtual consoles: several independent login sessions
through the console, you switch by pressing a hot-key combination (not
dependent on video hardware). These are dynamically a located; you can
use up to 64.</LI>

<LI>
&middot; Supports several common filesystems, including minix, Xenix, and
all the common system V file systems, and has an advanced filesystem of
its own, which offers filesystems of up to 4 TB, and names up to 255 characters
long.</LI>

<LI>
&middot; transparent access to MS-DOS partitions (or OS/2 FAT partitions)
via a special filesystem: you don't need any special commands to use the
MS-DOS partition, it looks just like a normal Unix filesystem (except for
funny restrictions on filenames, permissions, and so on). MS-DOS 6 co pressed
partitions do not work at this time without a patch (dmsdosfs). VFAT (WNT,
Windows 95) support is available in Linux 2.0 &middot;special filesystem
called UMSDOS which allows Linux to be installed on a DOS filesystem.</LI>

<LI>
&middot; read-only HPFS-2 support for OS/2 2.1</LI>

<LI>
&middot; HFS (Macintosh) file system support is available separately as
a module.</LI>

<LI>
&middot; CD-ROM filesystem which reads all standard formats of CD-ROMs.</LI>

<LI>
&middot; TCP/IP networking, including ftp, telnet, NFS, etc.</LI>

<LI>
&middot; AppleTalk server</LI>

<LI>
&middot; Netware client and server</LI>

<LI>
&middot; Lan Manager (SMB) client and server</LI>

<LI>
&middot; Many networking protocols: the base protocols available in the
latest development kernels include TCP, IPv4, IPv6, AX.25, X.25, IPX, DDP
(AppleTalk), NetBEUI, Netrom, and others. Stable ne work protocols included
in the stable kernels currently include TCP, IPv4, IPX, DDP, and AX.25.</LI>
</UL>

<DIV ALIGN=right><A NAME="Reliability"></A><B><FONT SIZE=+2>Reliability</FONT></B></DIV>

<DIV ALIGN=right><I>The system has to be available 365 days a year.</I></DIV>
The Linux server has proven to be as reliable as any other server operating
system I have ever used, and more reliable than most. My past experience
includes managing Novell Netware, Windows NT 3.51 and 4.0 and Irix (Silicon
Graphics) servers. I must say that Novell has always been a steady performer,
but I have always felt that it was more complex than it needed to be. The
Silicon Graphics machines were always rock solid, but they should be when
you pay more than $20,000 for a single server.

<P>My Linux server was initially setup in January 1997 as a test platform
to see if it could handle being a production server. At this time I had
installed a copy of The Cat's Pajamas, Apache, StreamWorks (audio/video
server) and Samba. Using Samba, I was able to connect the Information Systems
Department to this server so we could run Cats and test the audio/video
server. A typical day of testing the system would include reindexing and
reformatting Cats while serving multiple 100 megabyte video files and acting
as a file server. The Linux machine was able to handle all of this while
running on only 32 megabytes of RAM and using a Pentium 100 CPU.

<P>From January 1997 to July 1997, we experienced only three shutdowns
of this server, two of which were caused by power failures in the building
and the third time was due to stupidity on the administrator's part. This
reliability was a key factor in our judgment to use Linux as our server
platform.

<P>The installation of NT was simple, and it was easy to get the system
connected to all the printers, but it proved to be unreliable. We were
experiencing crashes every day, even after installing service packs one
and two. I then installed a hot fix to service pack two which was to fix
errors in the Macintosh services which helped. I was down to crashing just
one to two times a month. I also tried to run Cats off this system, which
was a complete disaster since we could not get more than five users at
a time in Cats, and reports would take forever to run.
<DIV ALIGN=right><A NAME="Cross platform"></A><B><FONT SIZE=+2>Cross platform</FONT></B></DIV>

<DIV ALIGN=right><I>The new server must be able to serve the Mac users
as well as the Windows clients.</I></DIV>
The server must be able to allow connections from Windows and Macintosh
clients. All major server operating system allow for this, including Linux.
To server Windows clients, Linux uses a package called Samba. Samba is
server software for computers running under Unix or another Unix-like operating
systems with standard TCP/IP available. Samba, as it stands right now,
depends on Unix file structure, permissions, system calls and services.
It provides file and printer services for clients using some variants of
SMB (Server Message Block) protocol. SMB is a "native" networking protocol
used by MS-DOS based (in a very broad sense, including derivatives) clients.
They include those from IBM, ICL, Microsoft and even one particular Novell
product. In particular clients are distributed with `Windows for Workgroups',
`Windows 95', 'Windows NT', 'OS/2 Warp and others.

<P>Some of Samba's server cousins include DEC Pathworks, Microsoft LAN
Manager/X, OS/2 Lan Manager, IBM LAN Server, Syntax Server and Windows
NT Server. Some clients such as Windows 95/Workgroups or Warp Connect can
also act as low volume servers with limited management facilities.

<P>SMB is becoming very popular, mainly owing to these factors:
<UL>
<LI>
&middot; Windows 95 has dial-up access to PPP servers with an included
service, and this service allows one to "browse" to public shares on the
Internet.</LI>

<LI>
&middot; Samba is "free" and this is a lot less expensive than Novell!
(friendlier too!)</LI>

<LI>
&middot; With Samba, Unix servers, well connected to a global network,
can speak in a "native" protocol of clients. It is much simpler to maintain
one more protocol on a capable server than teach new tricks to multiple
clients which were never meant to do something else.</LI>

<LI>
&middot; There is an established, well tested way of doing SMB over TCP/IP
described in publicly available RFC 1001 and RFC 1002 documents. This means
that SMB has a head start when it comes to Internet integration.</LI>
</UL>
&nbsp;
<TABLE BORDER=0 CELLSPACING=2 CELLPADDING=0 WIDTH="667" HEIGHT="177" >
<TR>
<TD WIDTH="50%" HEIGHT="170">&nbsp;<IMG SRC="./gx/coldiron/netatalk.gif" NATURALSIZEFLAG="0" HEIGHT=125 WIDTH=384 ALIGN=BOTTOM></TD>

<TD WIDTH="50%">&nbsp;On the Macintosh side, Netatalk provides the connectivity
services. Netatalk is a Unix implementation of the AppleTalk Protocol Suite,
originally for BSD-derived systems. It includes support for routing AppleTalk,
serving Unix and AFS file systems over AFP (AppleShare), serving Unix printers
and accessing AppleTalk printers over PAP. A number of other minor printing
and debugging utilities are also included.</TD>
</TR>
</TABLE>
&nbsp;
<DIV ALIGN=right><A NAME="Compatibility with Existing Applications"></A></DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Compatibility with Existing Applications</FONT></B></DIV>

<DIV ALIGN=right><I>This server would have to be compatible with The Cat's
Pajamas</I></DIV>
When we tried to move to Windows NT, we were given a migration guideline
from The Cats Pajama's to follow. The instructions were simple and the
entire migration took little time, but performance was terrible. We needed
a system that could handle serving the system to the network and help maintain
the integrity of the Cats data files. I have been told that Unix heavily
caches file I/O activity (more so than Windows NT or Novell Netware), so
this added to my hopes that Linux would be a strong server platform for
Cats, which is a file I/O intensive application.

<P>My hopes were verified when we formally flipped the switch on the Linux
server and turned off the Novell server. Cats ran smoothly and gracefully
scaled up to the normal daily user level without any slowdowns or misfortunes.
The Novell Netware server would normally experience periods when the system
would slow down severely, and then speed back up to normal levels after
5 to 10 minutes. During these slowdowns, Cat's would become virtually useless,
and sometimes users would be booted out of Cat's totally.

<P>Another key area that I needed to be compatible with was the world Wide
Web. I needed to be able to get CGI programs that were already tested and
in use without having to develop them all myself. I also wanted to be able
to get help easily and cheaply on setting up the web server and fixing
it when it breaks. Linux uses Apache, the most widely used web server in
the world. I can easily get support from mailing lists , news groups and
Internet BBS's.
<BR><A HREF="http://www.netcraft.com/survey/">(http://www.netcraft.com/survey/)</A>
<DIV ALIGN=right><A NAME="Speed"></A><B><FONT SIZE=+2>Speed</FONT></B></DIV>

<DIV ALIGN=right><I>After installing the Windows NT server, many users
complained about slows access times for the network drives.</I></DIV>
My users equate network drive access speed with network quality. They were
very pleased with the speed of saving and opening files when they were
on the Novell Netware server, but expressed disappointment in the speed
of saving and opening files when we switch to the Windows NT server. One
way that I have very unscientifically measured the speed of the Linux server
was when we were using a Windows NT 4.0 machine to backup the Cats files
off the Linux machine. This operation took 45 minutes while the exact same
operation on the Novell server would take at least an hour longer. Currently
I am backing up CATS by creating a gzipped tar file directly on the Linux
server and it takes a little less than 45 minutes. Below is part of the
output from the df command that shows the drive I have Cats on. This shows
the current size of our Cats installation so you can get an idea of how
much information is backed up in 45 minutes.

<P>Filesystem 1024-blocks Used Available Capacity Mounted on

<P><FONT FACE="Courier New,Courier">/dev/hdc1 2417493 1584580 707923 69%
/usr/local/samba-sys</FONT>
<DIV ALIGN=right><A NAME="Inexpensive"></A><B><FONT SIZE=+2>Inexpensive</FONT></B></DIV>

<DIV ALIGN=right><I>I could not afford to go through another costly installation
</I>.</DIV>
During the twelve months of running Windows NT 4.0 server, I have spent
more than $3,000 in technical support with Microsoft to remedy various
problems, including the frequent crashes and problems running Cats. The
fix for the crashes was always ``Install the latest service pack or hot
fix and call us back tomorrow.'' The fix for Cats was ``Get rid of The
Cat's Pajamas and find a better system which was more Windows compatible
to replace it.'' I wish I would have documented that support call with
Microsoft so I had the name of the tech rep.

<P>Technical support is no the only area of expense involved with Windows
NT. The table below shows typical applications and the cost for each platform.
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 WIDTH="438" BGCOLOR="#CCCCCC" NOSAVE >
<TR VALIGN=TOP NOSAVE>
<TD ALIGN=CENTER WIDTH="19%" BGCOLOR="#000000" NOSAVE><B><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Service</FONT></FONT></B></TD>

<TD ALIGN=CENTER WIDTH="26%" BGCOLOR="#000000" NOSAVE><B><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Microsoft</FONT></FONT></B></TD>

<TD ALIGN=CENTER WIDTH="16%" BGCOLOR="#000000" NOSAVE><B><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Cost</FONT></FONT></B></TD>

<TD ALIGN=CENTER WIDTH="26%" BGCOLOR="#000000" NOSAVE><B><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Linux</FONT></FONT></B></TD>

<TD ALIGN=CENTER WIDTH="13%" BGCOLOR="#000000" NOSAVE><B><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Cost</FONT></FONT></B></TD>
</TR>

<TR VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Operating
System</FONT></FONT></TD>

<TD WIDTH="26%" NOSAVE><FONT SIZE=-2>Windows NT Server 4.0</FONT></TD>

<TD ALIGN=RIGHT WIDTH="16%"><FONT SIZE=-2>$2,950.00</FONT></TD>

<TD WIDTH="26%"><FONT SIZE=-2>Linux RedHat 5.0 (CD)</FONT></TD>

<TD ALIGN=RIGHT WIDTH="13%"><FONT SIZE=-2>$49.00</FONT></TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Web
Server</FONT></FONT></TD>

<TD WIDTH="26%"><FONT SIZE=-2>Internet Information Server</FONT></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>

<TD WIDTH="26%"><FONT SIZE=-2>Apache</FONT></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>E-Mail</FONT></FONT></TD>

<TD WIDTH="26%"><FONT SIZE=-2>Exchange 5.0 Enterprise</FONT></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$6,400.00</FONT></DIV>
</TD>

<TD WIDTH="26%"><FONT SIZE=-2>Sendmail,UW IMAP,POP-3</FONT></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Telnet
server</FONT></FONT></TD>

<TD WIDTH="26%"><FONT SIZE=-2>SLNet (4 user licensee)</FONT></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$300.00</FONT></DIV>
</TD>

<TD WIDTH="26%"><FONT SIZE=-2>Included free unlimited licensee</FONT></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>FTP
server</FONT></FONT></TD>

<TD WIDTH="26%" NOSAVE><FONT SIZE=-2>Included with IIS</FONT></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>

<TD WIDTH="26%" NOSAVE><FONT SIZE=-2>Included</FONT></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Relational
Database</FONT></FONT></TD>

<TD WIDTH="26%" NOSAVE><FONT SIZE=-2>SQL Server 6.5</FONT></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$10,650.00</FONT></DIV>
</TD>

<TD WIDTH="26%"><FONT SIZE=-2>Just Logic SQL</FONT></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$219.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Proxy
Server</FONT></FONT></TD>

<TD WIDTH="26%"><FONT SIZE=-2>Microsoft Proxy Server</FONT></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$995.00</FONT></DIV>
</TD>

<TD WIDTH="26%"><FONT SIZE=-2>Squid Object Cache</FONT></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Backup
Software</FONT></FONT></TD>

<TD WIDTH="26%"><FONT SIZE=-2>Included</FONT></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>

<TD WIDTH="26%"><FONT SIZE=-2>BRU, included</FONT></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$0.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Total
Cost</FONT></FONT></TD>

<TD WIDTH="26%"></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><FONT SIZE=-2>$20,995.00</FONT></DIV>
</TD>

<TD WIDTH="26%"></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><FONT SIZE=-2>$268.00</FONT></DIV>
</TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE></TD>

<TD WIDTH="26%"></TD>

<TD WIDTH="16%"></TD>

<TD WIDTH="26%"></TD>

<TD WIDTH="13%"></TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Number
of Users</FONT></FONT></TD>

<TD WIDTH="26%"><FONT SIZE=-2>100</FONT></TD>

<TD WIDTH="16%"></TD>

<TD WIDTH="26%"><FONT SIZE=-2>100</FONT></TD>

<TD WIDTH="13%"></TD>
</TR>

<TR ALIGN=RIGHT VALIGN=TOP NOSAVE>
<TD WIDTH="19%" BGCOLOR="#000000" NOSAVE><FONT COLOR="#FFFFFF"><FONT SIZE=-2>Cost
per seat</FONT></FONT></TD>

<TD WIDTH="26%"></TD>

<TD WIDTH="16%">
<DIV ALIGN=right><B><FONT SIZE=-2>$212.95</FONT></B></DIV>
</TD>

<TD WIDTH="26%"></TD>

<TD WIDTH="13%">
<DIV ALIGN=right><B><FONT SIZE=-2>$2.68</FONT></B></DIV>
</TD>
</TR>
</TABLE>
&nbsp;
<DIV ALIGN=right><A NAME="Low hardware requirements"></A></DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Low hardware requirements</FONT></B></DIV>

<DIV ALIGN=right><I>I did not want to build the next Cray just to serve
55 users.</I></DIV>
As at most University Press's, our operating budget is relatively small,
especially when compared to commercial business and some other campus departments.
This financial restriction did not allow me to purchase a server hardware
platform that I would have like to have for the NT server, but the system
was not low-end either.

<P><FONT SIZE=-1>Our Windows NT 4.0 server:</FONT>
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 WIDTH="225" >
<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="33%"><B><FONT SIZE=-1>OS</FONT></B></TD>

<TD WIDTH="67%"><FONT SIZE=-1>Windows NT Server 4.0 (SP3)</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="33%"><B><FONT SIZE=-1>CPU</FONT></B></TD>

<TD WIDTH="67%"><FONT SIZE=-1>2 x Pentium 150</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="33%"><B><FONT SIZE=-1>RAM</FONT></B></TD>

<TD WIDTH="67%"><FONT SIZE=-1>256 Megabytes</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="33%"><B><FONT SIZE=-1>SCSI</FONT></B></TD>

<TD WIDTH="67%"><FONT SIZE=-1>Adaptec 2940</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="33%"></TD>

<TD WIDTH="67%"><FONT SIZE=-1>-All data drives are SCSI</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="33%"></TD>

<TD WIDTH="67%"><FONT SIZE=-1>-Boot drive is IDE</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="33%"><B><FONT SIZE=-1>Ethernet</FONT></B></TD>

<TD WIDTH="67%"><FONT SIZE=-1>NE2000 clone</FONT></TD>
</TR>
</TABLE>
<FONT SIZE=-1>Our RedHat Linux 4.2 server:</FONT>
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 WIDTH="227" >
<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="34%"><B><FONT SIZE=-1>OS</FONT></B></TD>

<TD WIDTH="66%"><FONT SIZE=-1>RedHat 4.2</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="34%"><B><FONT SIZE=-1>CPU</FONT></B></TD>

<TD WIDTH="66%"><FONT SIZE=-1>Single Pentium 200</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="34%"><B><FONT SIZE=-1>RAM</FONT></B></TD>

<TD WIDTH="66%"><FONT SIZE=-1>64 megabytes</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="34%"><B><FONT SIZE=-1>SCSI</FONT></B></TD>

<TD WIDTH="66%"><FONT SIZE=-1>DPT SmartCache IV</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="34%"></TD>

<TD WIDTH="66%"><FONT SIZE=-1>-RAID Station 3 (RAID 5)</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="34%"></TD>

<TD WIDTH="66%"><FONT SIZE=-1>-Boot drive is IDE</FONT></TD>
</TR>

<TR VALIGN=TOP>
<TD ALIGN=RIGHT WIDTH="34%"><B><FONT SIZE=-1>Ethernet</FONT></B></TD>

<TD WIDTH="66%"><FONT SIZE=-1>NE2000 clone</FONT></TD>
</TR>
</TABLE>
<I><FONT SIZE=-1>The RAID which is listed on the Linux server was not purchased
strictly for the Linux server, but was purchased to be placed on whatever
server we decided to put into production.</FONT></I>
<DIV ALIGN=right><A NAME="Ease of administration"></A><B><FONT SIZE=+2>Ease
of administration</FONT></B></DIV>

<DIV ALIGN=right><I>For myself and staff</I> .</DIV>
&nbsp;
<TABLE BORDER=0 CELLSPACING=2 CELLPADDING=0 WIDTH="450" >
<TR>
<TD WIDTH="41%"><IMG SRC="./gx/coldiron/control1.gif" NATURALSIZEFLAG="3" HEIGHT=392 WIDTH=157 ALIGN=BOTTOM></TD>

<TD WIDTH="59%">Unix usually gets the standard rap of being difficult to
manage and requiring a steep learning curve. While many of the tools that
will be used to manage the system are still command line based, a growing
number are graphical and comparable to Windows in ease of use. This is
especially true with the RedHat distribution, which includes a graphical
control panel which allows the administrator to change system setting without
working through the many text files which store this information. The control
panels I use the most are the ones which setup the printers, file system,
users and packages. If you use the included RedHat Package manager to install
new applications, they are listed in the package manager, which allows
you to graphically see what applications are installed on your system and
remove them if wanted, much like the uninstall option on Microsoft Windows.&nbsp;

<P><IMG SRC="./gx/coldiron/control2.gif" NATURALSIZEFLAG="3" HEIGHT=338 WIDTH=492 ALIGN=BOTTOM></TD>
</TR>
</TABLE>
<IMG SRC="./gx/coldiron/control3.gif" NATURALSIZEFLAG="3" HEIGHT=265 WIDTH=494 ALIGN=BOTTOM>
<DIV ALIGN=right><A NAME="Simple upgrade path"></A><B><FONT SIZE=+2>Simple
upgrade path</FONT></B></DIV>

<DIV ALIGN=right><I>I don't want to start over each time a new version
comes out.</I></DIV>
RedHat Linux provides a very simple upgrade system in its installation
set. The upgrade is actually better than the Microsoft Windows NT upgrade
path, since you do not have to uninstall the previous version first.

<P>While it is not required that you uninstall the previous version of
Windows NT before installing the current release (4.0), it is recommended.
This can be a very intensive installation, since you would need to setup
all the user accounts again, along with reinstalling any software and automated
systems and scripts.

<P>When I upgraded from RedHat 4.1 to 4.2, the installation when smoothly
whiteout any problems. While this was not a major revision step, RedHat
has assured me that the soon to be released version 5.0 will offer a smooth
transition from 4.2.

<P><FONT SIZE=-1>From the RedHat Linux manual:</FONT>
<BR>&nbsp;
<CENTER><TABLE BORDER=0 CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="50%" NOSAVE >
<TR NOSAVE>
<TD NOSAVE><FONT SIZE=-2>1.5 Upgrading from a Prior Version</FONT>&nbsp;

<P><FONT SIZE=-2>The installation process for Red Hat Linux 4.2 includes
the ability to upgrade from prior versions of Red Hat Linux (2.0, 2.1,
3.0.3, 4.0, and 4.1) which are based on RPM technology. Upgrading your
system installs the modular 2.0.x kernel as well as updated versions of
the packages which are installed on your machine. The upgrade process preserves
existing configuration files using a .rpmsave extension (e.g., sendmail.cf.rpmsave)
and leaves a log telling what actions it took in /tmp/upgradelog. As software
evolves, configuration file formats can change, so you should carefully
compare your original configuration files to the new files before integrating
your changes.</FONT>&nbsp;

<P><FONT SIZE=-2>To upgrade a Red Hat Linux system, you must use a boot
floppy (and possibly a supplemental floppy), just as if you were performing
a full install. After selecting the medium to install from (and setting
up networking information if it's required), the installation procedure
prompts you to either Install or Upgrade; select Upgrade. This upgrade
procedure is the functional equivalent of running the upgrade script in
prior versions of Red Hat Linux.</FONT>&nbsp;
<CENTER><IMG SRC="./gx/coldiron/upgrade-install.gif" NATURALSIZEFLAG="0" HEIGHT=214 WIDTH=319 ALIGN=BOTTOM></CENTER>


<P><FONT SIZE=-2>Please note that some upgraded packages may ``depend''
on other packages which may not be installed on your system. The upgrade
procedure takes care of these dependencies, but it may need to install
additional packages in order to satisfy them.</FONT>&nbsp;</TD>
</TR>
</TABLE></CENTER>
&nbsp;
<BR>&nbsp;
<DIV ALIGN=right><A NAME="Remote control and administration"></A></DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Remote control and administration</FONT></B></DIV>
One of the most attractive features of Linux (or Unix in general) is the
ability to truly remotely control the server. Since Linux comes with a
telnet server built in, you can use virtually any computer, regardless
of operating system to telnet into the computer to do all administrative
tasks. To remotely administer a Windows NT server, you must purchase a
separate application to allow remote control. The most popular program
for this is PCAnywhere by Symantec. This approach can become costly because
you must purchase a copy for the server to act as the host, and a copy
for each computer that needs to remotely control the server. How many remote
computers need to control the server? This depends on each installation,
but I have found that it save me a lot of running by having the ability
to control the server from every PC on my network, and from home.

<P>Telnet is text only, so this will be a drawback for many, but luckily
for us, Linux supports X Windows. X Windows can be used locally on the
server's console, like Windows NT, but can also be run remotely from any
computer that can run an X client. These remote terminals can by other
computers running Linux, or any other flavor of Unix and many X clients
can be downloaded or purchased for Windows, Windows NT and Macintosh computers.
Running X terminals does require more bandwidth, so I prefer just telneting
into the server.

<P>Another nice feature is the ability to display results of various system
utilities in a web page. One of the things our Customer Service manager
likes to know is which users have which files open and locked while using
Cats. I wrote a simple Perl script to run the smbstatus program and print
the results as a web page.

<P>The output web page:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR NOSAVE>
<TD NOSAVE><B><FONT FACE="Courier New,Courier">Snapshot of users for: Fri
Dec 5&nbsp;</FONT>&nbsp;</B>&nbsp;

<P><B><FONT FACE="Courier New,Courier">11:41:18 CST 1997&nbsp;</FONT>&nbsp;</B>&nbsp;

<P><FONT FACE="Courier New,Courier">This page shows currently logged on
users and locked files for the UNPLINUX server.&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">Right-click this page and select REFRESH
or RELOAD to force an update&nbsp;</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">Samba version 1.9.17p1&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">Service uid gid pid machine&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">----------------------------------------------&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">cdrom root root 11697 enterprise (129.93.31.35)
Thu Dec 4 16:35:23 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">quinn root root 11697 enterprise (129.93.31.35)
Thu Dec 4 16:35:23 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">M-DATA cbrumm cbrumm 11435 ds9 (129.93.31.14)
Thu Dec 4 16:08:16 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">programs root root 11697 enterprise
(129.93.31.35) Thu Dec 4 16:35:23 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">L-NE cbrumm cbrumm 11435 ds9 (129.93.31.14)
Thu Dec 4 16:08:29 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">N-DBC cbrumm cbrumm 11435 ds9 (129.93.31.14)
Thu Dec 4 16:08:29 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">O-WORK cbrumm cbrumm 11435 ds9 (129.93.31.14)
Thu Dec 4 16:08:29 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">P-HIST cbrumm cbrumm 11435 ds9 (129.93.31.14)
Thu Dec 4 16:08:29 1997&nbsp;</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">&lt;snip>&nbsp;</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">Locked files:&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">Pid DenyMode R/W Name&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">------------------------------&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">19818 DENY_NONE RDWR fileauth.txt
Fri Dec 5 11:41:14 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">21212 DENY_NONE RDWR fileauth.txt
Fri Dec 5 11:40:28 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">20590 DENY_NONE RDWR fileauth.txt
Fri Dec 5 11:38:56 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">21384 DENY_NONE RDWR fileauth.txt
Fri Dec 5 11:06:15 1997&nbsp;</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">&lt;snip>&nbsp;</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">19818 DENY_NONE RDWR filebac2.isi Fri
Dec 5 11:02:36 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">20590 DENY_NONE RDWR filebac2.isi
Fri Dec 5 10:14:44 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">19818 DENY_NONE RDWR fileauth.isi
Fri Dec 5 11:41:14 1997&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">21212 DENY_NONE RDWR fileauth.isi
Fri Dec 5 11:40:28 1997&nbsp;</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">Share mode memory usage (bytes):&nbsp;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">92584(90%) free + 7728(7%) used +
2088(2%) overhead = 102400(100%) total&nbsp;</FONT></TD>
</TR>
</TABLE>
&nbsp;
<BR>&nbsp;
<BR>The script that generates the above page:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD><FONT FACE="Courier New,Courier">#!/usr/bin/perl</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># ******************************************************</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># * *</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># * Author: Quinn P. Coldiron *</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># * Date: 12-1-97 *</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># * Program: This program shows current
users of the *</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># * Samba server. *</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># * *</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># ******************************************************</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"># Use cgi-lib CGI library for PERL.</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">require "/home/httpd/cgi-bin/cgi-lib.pl";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">$date = `date`;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">$users = `./smbstatus`;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">#Get the data from the form.</FONT>&nbsp;

<P><FONT FACE="Courier New,Courier">&amp;ReadParse;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print &amp;PrintHeader;</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;HTML>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;HEAD>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;TITLE>Logged In Samba Users&lt;/TITLE>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;/HEAD>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;BODY BGCOLOR= #D4D4D4>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;H1>Snapshot of users for:
$date&lt;/H1>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "This page shows currently logged
on users and locked files for the UNPLINUX server.&lt;br>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "Right-click this page and select
REFRESH or RELOAD to force an update&lt;br>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;PRE>$users&lt;/PRE>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;/BODY>\n";</FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier">print "&lt;/HTML>\n";</FONT>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;

<P>Windows NT provides a graphical program to show a chart us system performance,
but it is recommended that you do not run it on the server that you want
to monitor, because the monitor program itself takes too much of the system
resources, and thus skews the data. Linux provides a system monitoring
tool called TOP that is character based so it can be run on the server.
Since it is character based, you can telnet into the server and run it
from anywhere, getting an accurate picture of how the server is running.

<P><FONT SIZE=-1>Sample output of TOP:</FONT>
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD><FONT FACE="Courier New,Courier"><FONT SIZE=-2>11:55am up 1 day, 15:02,
3 users, load average: 0.08, 0.04, 0.00</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>83 processes: 82 sleeping,
1 running, 0 zombie, 0 stopped</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>CPU states: 2.7% user,
4.2% system, 5.9% nice, 93.7% idle</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>Mem: 63204K av, 62336K
used, 868K free, 38384K shrd, 5536K buff</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>Swap: 114908K av, 368K
used, 114540K free 29496K cached</FONT></FONT>&nbsp;

<P><FONT FACE="Courier New,Courier"><FONT SIZE=-2>PID USER PRI NI SIZE
RSS SHARE STAT LIB %CPU %MEM TIME COMMAND</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>22390 root 10 0 540
540 400 R 0 2.8 0.8 0:00 top</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>22388 cats 3 0 848 848
516 S 0 1.5 1.3 0:00 login</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>22391 cats 10 0 660
660 524 S 0 0.7 1.0 0:00 bash</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>6058 root 1 0 3568 3568
1396 S 0 0.5 5.6 1:25 tkdesksh</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>22283 root 0 0 552 552
424 S 0 0.3 0.8 0:00 in.telnetd</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>22387 root 1 0 552 552
424 S 0 0.3 0.8 0:00 in.telnetd</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>21212 quinn 0 0 1084
1084 660 S 0 0.1 1.7 0:02 smbd</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>20921 root 1 0 588 536
356 S 0 0.1 0.8 0:08 SWserver</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>1 root 0 0 312 312 244
S 0 0.0 0.4 0:02 init</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>2 root 0 0 0 0 0 SW
0 0.0 0.0 0:01 kflushd</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>3 root -12 -12 0 0 0
SW&lt; 0 0.0 0.0 0:00 kswapd</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>19509 root 0 0 1092
1092 652 S 0 0.0 1.7 0:18 smbd</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>331 root 0 0 812 812
480 S 0 0.0 1.2 0:00 login</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>21 root 0 0 280 280
216 S 0 0.0 0.4 0:00 kerneld</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>240 root 0 0 336 316
280 S 0 0.0 0.4 0:00 gpm</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>128 root 0 0 368 360
276 S 0 0.0 0.5 0:00 syslogd</FONT></FONT>&nbsp;
<BR><FONT FACE="Courier New,Courier"><FONT SIZE=-2>137 root 0 0 496 488
268 S 0 0.0 0.7 0:00 klogd</FONT></FONT>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<BR>&nbsp;
<DIV ALIGN=right>
<HR ALIGN=RIGHT></DIV>

<DIV ALIGN=right><FONT SIZE=+4>Section 3</FONT><A NAME="Under the Hood"></A></DIV>

<DIV ALIGN=right><FONT SIZE=+4>Under the Hood</FONT></DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Setting up the server</FONT></B></DIV>

<DIV ALIGN=right><A NAME="Linux installation"></A><B><I><FONT SIZE=+1>Linux
installation</FONT></I></B></DIV>
The actual installation of an operating system is often used as a judgement
on how good the system is. Just as with meeting people, you can never change
the first impression. I have found that setting up a RedHat Linux server
is as easy or even easier than setting up a Windows NT server. The setup
includes two floppies have everything needed to get the system to the point
that it can recognize the media (CDROM, FTP site, other server, etc.) that
the installation files are on. Windows NT supplies three floppies for this
purpose, but only supports CDROM installation. I have found that installing
RedHat Linux on a laptop can even be easier, since it can detect the PCMCIA
slots at installation time, while NT cannot. The most important factor
is to be familiar with the hardware you have installed in your machine,
including:
<UL>
<LI>
&middot; hard drive(s): number and size; if you have more than one, it's
helpful to know which one is first, second, etc.</LI>

<LI>
&middot; memory: amount of RAM.</LI>

<LI>
&middot; CD-ROM: its interface type (IDE, SCSI, or other interface), and,
for non-IDE, non-SCSI CD-ROMs, the make and model number.</LI>

<LI>
&middot; SCSI adapter: make and model number.</LI>

<LI>
&middot; network card: make and model number.</LI>

<LI>
&middot; mouse: type (serial, PS/2, or bus mouse), protocol (Logitech,
Microsoft, MouseMan, etc.), and number of buttons; also, for serial mice,
the com port it is connected to.</LI>

<LI>
&middot; If you will be connected to a network, be sure you know your IP
address, netmask, gateway IP address, name server IP addresses, domain
name, and hostname. If you don't know these values, ask your network administrator.</LI>

<LI>
Also, if you will be installing the X Window System, you should be familiar
with the following:</LI>

<LI>
&middot; your video card: make and model number or video chipset, amount
of video RAM.</LI>

<LI>
&middot; your monitor: make and model number, allowable range of horizontal
and vertical refresh rates.</LI>
</UL>
You can install or upgrade Red Hat Linux/Intel via any of several basic
methods. Depending on the method you use, you need either one or two formatted
high-density (1.44 MB) 3.5-inch diskettes.

<P>Installing from CD-ROM or via NFS requires only a boot diskette. Installing
from a hard drive, via FTP, from an SMB volume, or from a PCMCIA device
(including PCMCIA-based CD-ROMs) requires both a boot diskette and a supplemental
diskette. Section 2.3.1 below explains how to create boot and supplemental
diskettes.

<P>CD-ROM

<P>If you have a Red Hat Linux CD and a boot diskette you will need a supported
CD-ROM drive and either a 3.5 inch floppy drive or an operational installation
of MS-DOS on your machine in order to run the installation utility. If
a boot diskette did not accompany your CD, you will need access to a computer
running either Linux or MS-DOS to create a boot diskette from the CD.

<P>NFS

<P>If you wish to install over a network, you will need to mount the Red
Hat Linux CD-ROM on a machine that supports ISO-9660 file systems with
Rock Ridge extensions. The machine must also support NFS. Export the CD-ROM
file system via NFS. You will need to have name services configured, or
know the NFS server's IP address, and the path to the exported CD-ROM.

<P>FTP

<P>For an FTP install, you must have a boot disk and supplemental disk.
You will need to have a valid name server configured or the IP address
of the FTP server you will be using. You will also need the path to the
root of the Red Hat Linux directory on the FTP site.

<P>SMB Shared Volume

<P>If you wish to install from an SMB shared volume, you will need to mount
the Red Hat Linux CD-ROM on a Microsoft Windows NT or Windows 95 server
that supports shared volumes. You will need to have name services configured,
or know the server's IP address; you will also need the name of the shared
volume containing the Red Hat Linux CD-ROM and the account number and password
to use to access the volume.

<P>Hard Drive

<P>To install Red Hat Linux from a hard drive you will need the same boot
and supplemental disks used by the FTP install. You must first create a
RedHat directory at the top level of your directory tree. Everything you
will install should be placed in that directory. First copy the base subdirectory,
then copy the packages you want to install to another subdirectory called
RPMS. You can use available space on an existing DOS partition or a Linux
partition that is not required in the install procedure (for example, a
partition that would be used for data storage on the installed system).

<P>If you are using a DOS filesystem, you may not be able to use the full
Linux filenames for the RPM packages. The installation process does not
care what the filenames look like, but it is a good idea that you keep
track of them so you will know what you are installing.

<P>PCMCIA

<P>If your CD-ROM, Ethernet card, or local hard disk is connected to a
PCMCIA adapter, you must install with PCMCIA support. You need a supported
PCMCIA controller and a supported PCMCIA SCSI adapter or Ethernet card.
Installing via PCMCIA requires the use of a supplemental diskette.

<P>Please See Appendix A for The Official RedHat Installation Guide.
<DIV ALIGN=right><A NAME="Samba Installation/Setup"></A></DIV>

<DIV ALIGN=right><B><I><FONT SIZE=+2>Samba Installation/Setup</FONT></I></B></DIV>
Installing the Samba RPM is the easiest way to install, as you only need
to download the file and type rpm -I <I>filename</I> and it is installed.
Setting up Samba is simple, as you just edit a text file to tell it what
directories are going to be shared to the Windows clients. The text file's
name is smb.conf and is located in the /etc. directory if you installed
Samba using RPM. If you downloaded the .tar archive and installed Samba
using the default installation, you will find the smb.conf file in /usr/local/samba/lib/.

<P>An advantage to installing Samba using RPM is that it is easier. A disadvantage
is that the versions are not as current, but they are usually more stable
and reliable. I choose to go directly to the Samba web pages and download
the most current non-beta release.

<P>The picture on the left is the Network Neighborhood window on my NT
workstation and is currently showing everything that I have access to on
my Linux server.

<P>If you installed Samba using RPM, it will automatically be started on
system startup, but I had to manually add it to my rc.local script to have
it start on bootup because I did not install from the RPM. I chose to install
from the tarballs available at the official Samba site, so I could always
have a current installation. To start the server manually, I just issue
these commands:

<P><FONT FACE="Courier New,Courier">/usr/local/samba/bin/smbd -D</FONT>

<P><FONT FACE="Courier New,Courier">/usr/local/samba/bin/nmbd -D</FONT>

<P>Extensive has been accomplished that allows Samba to act more like an
NT server, including making a Linux server a Primary Domain Controller
and more features are currently being added. I have listed the steps that
I took in making my Linux server the Primary Domain Controller (PDC) for
our network.

<P>1. Set up the server.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a. Create the smb.conf file.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; b. Create the netlogon directory.
I put mine in /home.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; c. Restart Samba.

<P>2. Setup the Windows 95 clients. (We set our up for roaming profiles.)
<B>Do not reboot until step 3!</B>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a. Control Panel
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1. Click Passwords, then Profiles and choose these settings:
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
a. Users can customize their settings.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
b. Include desktop items.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
c. Include start menu.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
2. In the Control Panel, select Network.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
a. Under Identification, set your WORKGROUP name.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
b. Access control = USER-LEVEL.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
c. Obtain the list from YOUR SERVER NAME.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
d. Under Client Configuration
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1. Select CLIENT FOR MICROSOFT NETWORKS.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
2. Under that client's properties.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
a. Log onto Windows NT domain.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
b. Enter your WORKGROUP name.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
c. Select LOG ON AND RESTORE CONNECTIONS.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
e. Set primary network logon to CLIENT FOR MICROSOFT NETWORKS.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; b. Set up the user profiles.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1. Install the Policy Editor from the Windows 95 CD.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
2. Create a new profile called config.pol and save it into the NETLOGON
share on the Linux server. Make sure you add all the users on your server!
This step only has to be
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
done once, not on each client.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
3. Using the Policy Editor, select Open registry from the File menu and
select the options you want.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
4. Save it as config.pol and copy into the netlogon share on the Linux
server. Set its permissions as 755.

<P>3. Reboot the Windows 95 computer(s) and logon.

<P>4. Possible problems.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1. Windows95 OSR2 seems to send
the passwords as uppercase, so try changing the passwords on the Linux
server to uppercase.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2. I had problems making my Linux
server the WINS server, so you have some choices to fix this:
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
a. If you do have another NT server, make it the WINS server and point
all the clients to it.
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
b. Disable WINS on each client and edit the c:\windows\Lmhosts.sam file
and add the server and workstations to this file. Save the file as Lmhosts,<cr>
NOT Lmhosts.sam This file can be appended to from a server, but
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
I haven't tried doing it from Linux/Samba. The entries look like this:
<TT>xxx.xxx.xxx.xxx computername</TT>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
c. Disable WINS. At this time, we are running our Win95 clients with WINS
disabled, but we do have a DNS server.

<P>My Samba configuration (smb.conf) file looks like this:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>; *******************************************************************&nbsp;
<BR>; *&nbsp;
<BR>; * Samba config file for UNPLINUX&nbsp;
<BR>; * Quinn P. Coldiron&nbsp;
<BR>; *&nbsp;
<BR><TT>; *******************************************************************</TT>&nbsp;
<BR><TT>[global]</TT>&nbsp;
<BR><TT>workgroup = UNP</TT>&nbsp;
<BR><TT>comment = Unplinux Server</TT>&nbsp;
<BR><TT>volume = RedHat5</TT>&nbsp;
<BR><TT>lock directory = /var/lock/samba</TT>&nbsp;
<BR><TT>locking = yes</TT>&nbsp;
<BR><TT>strict locking = no</TT>&nbsp;
<BR><TT>share modes = yes</TT>&nbsp;
<BR><TT>security = user</TT>&nbsp;
<BR><TT>os level = 65</TT>&nbsp;
<BR><TT>domain master = yes</TT>&nbsp;
<BR><TT>local master = yes</TT>&nbsp;
<BR><TT>prefered master = yes</TT>&nbsp;
<BR><TT>domain logons = yes</TT>&nbsp;
<BR><TT>wins support = yes</TT>&nbsp;
<BR><TT>;logon script = %m.bat ; per workstation (machine)</TT>&nbsp;
<BR><TT>;logon script = logon.bat</TT>&nbsp;
<BR><TT>logon script = %U.bat</TT>&nbsp;
<BR><TT>preserve case = yes</TT>&nbsp;
<BR><TT>short case preserve = yes</TT>&nbsp;
<BR><TT>case sensitive = no</TT>&nbsp;
<BR><TT>; printing = BSD or SYSV or AIX, etc..</TT>&nbsp;
<BR><TT>printing = bsd</TT>&nbsp;
<BR><TT>printcap name = /etc/printcap</TT>&nbsp;
<BR><TT>load printers = yes</TT>&nbsp;
<BR><TT>print command = /usr/bin/lpr -r -P %p %s</TT>&nbsp;
<BR><TT>[netlogon]</TT>&nbsp;
<BR><TT>comment = Samba Network Logon Service</TT>&nbsp;
<BR><TT>path = /home/netlogon</TT>&nbsp;
<BR><TT>case sensitive = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>locking = no</TT>&nbsp;
<BR><TT>read only = yes</TT>&nbsp;
<BR><TT>browseable = yes ; say NO if you want to hide the NETLOGON share</TT>&nbsp;
<BR><TT>;admin users = @wheel</TT>&nbsp;
<BR><TT>create mode = 0755</TT>&nbsp;

<P><TT>; ###############################################################################</TT>&nbsp;
<BR><TT>; # #</TT>&nbsp;
<BR><TT>; # Printers #</TT>&nbsp;
<BR><TT>; # #</TT>&nbsp;
<BR><TT>; ###############################################################################</TT>&nbsp;
<BR><TT>; I couldn't get the generic printers section to work, so I commented
it out</TT>&nbsp;
<BR><TT>; and explicitly declared the printers.</TT>&nbsp;
<BR><TT>;[printers]</TT>&nbsp;
<BR><TT>; comment = All Printers</TT>&nbsp;
<BR><TT>; path = /var/spool/samba-print</TT>&nbsp;
<BR><TT>; browseable = yes</TT>&nbsp;
<BR><TT>; printable = yes</TT>&nbsp;
<BR><TT>; Set public = yes to allow user 'guest account' to print</TT>&nbsp;
<BR><TT>; public = no</TT>&nbsp;
<BR><TT>; writable = no</TT>&nbsp;
<BR><TT>; create mode = 0700</TT>&nbsp;

<P><TT>[Technology]</TT>&nbsp;
<BR><TT>comment = Technology Printer</TT>&nbsp;
<BR><TT>path = /var/spool/samba-print</TT>&nbsp;
<BR><TT>print = Technology</TT>&nbsp;
<BR><TT>browseable = yes</TT>&nbsp;
<BR><TT>printable = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>[Marketing2]</TT>&nbsp;
<BR><TT>comment = Technology Printer</TT>&nbsp;
<BR><TT>path = /var/spool/samba-print</TT>&nbsp;
<BR><TT>print = Marketing2</TT>&nbsp;
<BR><TT>browseable = yes</TT>&nbsp;
<BR><TT>printable = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>[Marketing1]</TT>&nbsp;
<BR><TT>comment = Technology Printer</TT>&nbsp;
<BR><TT>path = /var/spool/samba-print</TT>&nbsp;
<BR><TT>print = Marketing1</TT>&nbsp;
<BR><TT>browseable = yes</TT>&nbsp;
<BR><TT>printable = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>[CustServ]</TT>&nbsp;
<BR><TT>comment = Technology Printer</TT>&nbsp;
<BR><TT>path = /var/spool/samba-print</TT>&nbsp;
<BR><TT>print = CustServ</TT>&nbsp;
<BR><TT>browseable = yes</TT>&nbsp;
<BR><TT>printable = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>[CanonColor]</TT>&nbsp;
<BR><TT>comment = Color Laser Printer</TT>&nbsp;
<BR><TT>path = /var/spool/samba-print</TT>&nbsp;
<BR><TT>print = CanonColor</TT>&nbsp;
<BR><TT>browseable = yes</TT>&nbsp;
<BR><TT>printable = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>; ###############################################################################</TT>&nbsp;
<BR><TT>; # #</TT>&nbsp;
<BR><TT>; # Shared Volumes #</TT>&nbsp;
<BR><TT>; # #</TT>&nbsp;
<BR><TT>; ###############################################################################</TT>&nbsp;

<P><TT>[homes]</TT>&nbsp;
<BR><TT>comment = Home Directories</TT>&nbsp;
<BR><TT>browseable = no</TT>&nbsp;
<BR><TT>writable = yes</TT>&nbsp;
<BR><TT>read only = no</TT>&nbsp;
<BR><TT>preserve case = yes</TT>&nbsp;
<BR><TT>short preserve case = yes</TT>&nbsp;
<BR><TT>;create mode = 0777</TT>&nbsp;

<P><TT>[userdata]</TT>&nbsp;
<BR><TT>comment = All userdata that you are allowed to see.</TT>&nbsp;
<BR><TT>path = /home</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>;Full control for your stuff, full in you group, nothing for other</TT>&nbsp;
<BR><TT>;people's stuff.</TT>&nbsp;
<BR><TT>create mode = 0770</TT>&nbsp;

<P><TT>[sys]</TT>&nbsp;
<BR><TT>comment = System drive. Various Press utilities.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-sys/</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>[programs]</TT>&nbsp;
<BR><TT>comment = Program drive. Installation sets and programs.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-programs</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>[ulrich]</TT>&nbsp;
<BR><TT>comment = Ulrich's PLUS.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-programs/ulrich</TT>&nbsp;
<BR><TT>create mode = 555</TT>&nbsp;

<P><TT>[cdrom]</TT>&nbsp;
<BR><TT>comment = Internal IDE cdrom. For temporary usage.</TT>&nbsp;
<BR><TT>path = /mnt/cdrom</TT>&nbsp;

<P><TT>[dictionary]</TT>&nbsp;
<BR><TT>comment = Random House Dictionary.</TT>&nbsp;
<BR><TT>path = /mnt/scd1</TT>&nbsp;

<P><TT>[bip]</TT>&nbsp;
<BR><TT>comment = Bowker Books In Print CDROM</TT>&nbsp;
<BR><TT>path = /mnt/scd0</TT>&nbsp;

<P><TT>[msoffice]</TT>&nbsp;
<BR><TT>comment = Microsoft Office Bookshelf Reference.</TT>&nbsp;
<BR><TT>path = /mnt/scd3</TT>&nbsp;

<P><TT>[encarta]</TT>&nbsp;
<BR><TT>comment = Microsoft Encarta</TT>&nbsp;
<BR><TT>path = /mnt/scd2</TT>&nbsp;

<P><TT>[press]</TT>&nbsp;
<BR><TT>comment = Press share. Marketing maps this to U:</TT>&nbsp;
<BR><TT>path = /home/press</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>create mode = 0777</TT>&nbsp;

<P><TT>[CATS-VOL]</TT>&nbsp;
<BR><TT>comment = Entire Cats volume for backup</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[L-NE]</TT>&nbsp;
<BR><TT>comment = Cat's root. Map as L.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[M-DATA]</TT>&nbsp;
<BR><TT>comment = Cat's data drive. Map as M.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/data</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[N-DBC]</TT>&nbsp;
<BR><TT>comment = Cat's program drive. Map as N.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/dbc</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[O-WORK]</TT>&nbsp;
<BR><TT>comment = Cat's work drive. Map as O.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/work</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[P-HIST]</TT>&nbsp;
<BR><TT>comment = Cat's history drive. Map as P.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/hist</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;
<BR>&nbsp;</TD>
</TR>
</TABLE>
My actual logon.bat batch file is here:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD><TT>REM *******************************************************</TT>&nbsp;
<BR><TT>REM * *</TT>&nbsp;
<BR><TT>REM * University of Nebraska Press network logon script. *</TT>&nbsp;
<BR><TT>REM * *</TT>&nbsp;
<BR><TT>REM * Last modified : 10-16-97 *</TT>&nbsp;
<BR><TT>REM * By: Quinn *</TT>&nbsp;
<BR><TT>REM * *</TT>&nbsp;
<BR><TT>REM * The drive letter scheme is leftover from the past *</TT>&nbsp;
<BR><TT>REM * network administrator and the Novell Netware 3.1 *</TT>&nbsp;
<BR><TT>REM * server he had. *</TT>&nbsp;
<BR><TT>REM *******************************************************</TT>&nbsp;
<BR><TT>REM User's home drives</TT>&nbsp;
<BR><TT>net use e: \\unplinux\homes</TT>&nbsp;
<BR><TT>REM General network drives</TT>&nbsp;
<BR><TT>net use f: \\intrepid\sys</TT>&nbsp;
<BR><TT>net use g: \\intrepid\userdata</TT>&nbsp;
<BR><TT>net use h: \\intrepid\dictionary</TT>&nbsp;
<BR><TT>net use i: \\intrepid\bip</TT>&nbsp;
<BR><TT>net use j: \\intrepid\programs</TT>&nbsp;
<BR><TT>net use s: \\unplinux\ulrich</TT>&nbsp;
<BR><TT>REM CATS drives</TT>&nbsp;
<BR><TT>net use l: \\unplinux\l-ne</TT>&nbsp;
<BR><TT>net use m: \\unplinux\m-data</TT>&nbsp;
<BR><TT>net use n: \\unplinux\n-dbc</TT>&nbsp;
<BR><TT>net use o: \\unplinux\o-work</TT>&nbsp;
<BR><TT>net use p: \\unplinux\p-hist</TT>&nbsp;
<BR><TT>REM Temp entry for Robotronics</TT>&nbsp;
<BR><TT>REM The old system had robo on the T:\ drive but</TT>&nbsp;
<BR><TT>REM all new installations will run robo from the j:\ drive.</TT>&nbsp;
<BR><TT>net use t: \\unplinux\programs</TT>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<BR>&nbsp;
<DIV ALIGN=right><A NAME="Netatalk Installation/Setup"></A><B><I><FONT SIZE=+2>Netatalk
Installation/Setup</FONT></I></B></DIV>
Netatalk offers the same installation options as Samba, so you can choose
either the RPM, or .tar archives. I would choose the RPM here, as they
are the same versions as the .tar files and make life easier during installation.
I really don't have mush to say about this installation, since it was very
simple and straight forward. After installing the package, I just edited
the AppleVolumes.system file and started the daemon. Below is a very simple
AppleVolumes.system file that will give the Mac users their home directory
and a few other volumes that might have stuff they need.
<BR>&nbsp;
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD><TT>#</TT>&nbsp;
<BR><TT># This file is read before (after if -u is specified) the user's</TT>&nbsp;
<BR><TT># AppleVolume file. Add extension mappings and volumes here.</TT>&nbsp;
<BR><TT>#</TT>&nbsp;
<BR><TT>/usr/local/samba-sys Sys (F drive)</TT>&nbsp;
<BR><TT>/home Userdata (G drive)</TT>&nbsp;
<BR><TT>/usr/local/samba-programs Programs (J drive)</TT>&nbsp;
<BR><TT># default translation -- note that CR &lt;-> LF translation is
done on all</TT>&nbsp;
<BR><TT># files of type TEXT. The first line turns off translation for
files of</TT>&nbsp;
<BR><TT># unknown type, the second turns this translation on.</TT>&nbsp;
<BR><TT>. BINA UNIX</TT>&nbsp;
<BR><TT># . TEXT UNIX</TT>&nbsp;
<BR><TT># sounds</TT>&nbsp;
<BR><TT>.mod STrk STrk</TT>&nbsp;
<BR><TT>.mid Midi ttxt</TT>&nbsp;
<BR><TT>.aiff AIFF SNdm</TT>&nbsp;
<BR><TT>.wav WAVE SNdm</TT>&nbsp;
<BR><TT>.au ULAW SNdm</TT>&nbsp;
<BR><TT># video</TT>&nbsp;
<BR><TT>.moov MooV mMPG</TT>&nbsp;
<BR><TT>.mov MooV mMPG</TT>&nbsp;
<BR><TT>.mpg MPEG mMPG</TT>&nbsp;
<BR><TT>.mpeg MPEG mMPG</TT>&nbsp;
<BR><TT># formatted text</TT>&nbsp;
<BR><TT>.html TEXT MOS!</TT>&nbsp;
<BR><TT>.rtf TEXT MSWD</TT>&nbsp;
<BR><TT>.doc WDBN MSWD</TT>&nbsp;
<BR><TT># compressed archives</TT>&nbsp;
<BR><TT>.bin BINA MB2P</TT>&nbsp;
<BR><TT>.zip ZIP ZIP</TT>&nbsp;
<BR><TT>.tar TARF TAR!</TT>&nbsp;
<BR><TT>.gz Gzip Gzip</TT>&nbsp;
<BR><TT>.Z ZIVM LZIV</TT>&nbsp;
<BR><TT>.sea ???? SITx</TT>&nbsp;
<BR><TT>.cpt PACT CPCT</TT>&nbsp;
<BR><TT>.sit SIT! SIT!</TT>&nbsp;
<BR><TT>.hqx TEXT SITx</TT>&nbsp;
<BR><TT># graphics</TT>&nbsp;
<BR><TT>.tiff TIFF JVWR</TT>&nbsp;
<BR><TT>.tif TIFF JVWR</TT>&nbsp;
<BR><TT>.bmp BMPp JVWR</TT>&nbsp;
<BR><TT>.pct PICT ttxt</TT>&nbsp;
<BR><TT>.pict PICT ttxt</TT>&nbsp;
<BR><TT>.jpeg JPEG JVWR</TT>&nbsp;
<BR><TT>.jpg JPEG JVWR</TT>&nbsp;
<BR><TT>.gif GIFf JVWR</TT>&nbsp;</TD>
</TR>
</TABLE>
The other file that you need to edit with NetaTalk is papd.conf. This file
hold the printer information.
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD><TT># Attributes are:</TT>&nbsp;
<BR><TT>#</TT>&nbsp;
<BR><TT># Name Type Default Description</TT>&nbsp;
<BR><TT># pd str ".ppd" Pathname to ppd file.</TT>&nbsp;
<BR><TT># pr str "lp" LPD printer name.</TT>&nbsp;
<BR><TT># op str "operator" Operator name, for LPD spooling.</TT>&nbsp;
<BR><TT>#</TT>&nbsp;
<BR><TT># Some examples:</TT>&nbsp;
<BR><TT>#</TT>&nbsp;
<BR><TT># On many systems (notably not Solaris), no papd.conf is required,</TT>&nbsp;
<BR><TT># since papd shares the same defaults as lpd.</TT>&nbsp;
<BR><TT>#</TT>&nbsp;
<BR><TT># A simple example:</TT>&nbsp;
<BR><TT>#</TT>&nbsp;
<BR><TT># terminator:\</TT>&nbsp;
<BR><TT># :pr=lp:op=wes:\</TT>&nbsp;
<BR><TT># :pd=/usr/share/lib/ppd/HPLJ_4M.PPD:</TT>&nbsp;
<BR><TT>#</TT>&nbsp;
<BR><TT># Note also that papd.conf can list several printers.</TT>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<BR>&nbsp;
<DIV ALIGN=right><B><FONT SIZE=+2>Installing The Cats Pajamas</FONT></B></DIV>

<DIV ALIGN=right><A NAME="Installing Cats on the Server"></A><B><I><FONT SIZE=+2>Installing
Cats on the Server</FONT></I></B></DIV>
Installing Cats on a Linux server can be as simple as copying all the files
and directories from the old server to the Linux server's shared volume
for Cats. The way that I set up out server was to install another drive
in the Linux server to hold the Cats installation. I chose an IDE drive
mainly because I didn't have a SCSI card in the server, didn't have an
extra one handy and I was under an extreme time crunch to get Cats back
online. My intentions were to eventually replace the IDE drive with a SCSI
drive over Christmas break, but the performance has been more than satisfactory,
so we are going to leave the setup alone. I mount this drive as /usr/local/samba-cats
and have the permissions set open to the world by running the command chmod
777 /usr/local/samba-cats -R. This is a security risk, but Cats has told
me that the files must be world writeable and readable for Cats to work
properly. I also have the Samba configuration file set up with a mask of
0777, which will make sure that all files written will be readable by all
the users.

<P>The specific portion of the smb.conf file for Cats is listed here:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD><TT>[CATS-VOL]</TT>&nbsp;
<BR><TT>comment = Entire Cats volume for backup</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[L-NE]</TT>&nbsp;
<BR><TT>comment = Cat's root. Map as L.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[M-DATA]</TT>&nbsp;
<BR><TT>comment = Cat's data drive. Map as M.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/data</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[N-DBC]</TT>&nbsp;
<BR><TT>comment = Cat's program drive. Map as N.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/dbc</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[O-WORK]</TT>&nbsp;
<BR><TT>comment = Cat's work drive. Map as O.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/work</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;

<P><TT>[P-HIST]</TT>&nbsp;
<BR><TT>comment = Cat's history drive. Map as P.</TT>&nbsp;
<BR><TT>path = /usr/local/samba-cats/ne/hist</TT>&nbsp;
<BR><TT>writeable = yes</TT>&nbsp;
<BR><TT>printable = no</TT>&nbsp;
<BR><TT>guest ok = yes</TT>&nbsp;
<BR><TT>public = yes</TT>&nbsp;
<BR><TT>create mask = 0777</TT>&nbsp;</TD>
</TR>
</TABLE>
At the time of this writing, we were still running Cats 2.3, so the major
directories were as follows:
<BR>&nbsp;
<TABLE BORDER=5 CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="24%" HEIGHT="170" BGCOLOR="#000099" NOSAVE >
<TR NOSAVE>
<TD NOSAVE><FONT COLOR="#FFFFFF"><B><TT>ne----+</TT></B>&nbsp;</FONT>&nbsp;
<BR><FONT COLOR="#FFFFFF"><B><TT>&nbsp;&nbsp;&nbsp;&nbsp; |---> data</TT></B>&nbsp;</FONT>&nbsp;
<BR><FONT COLOR="#FFFFFF"><B><TT>&nbsp;&nbsp;&nbsp;&nbsp; |---> dbc</TT></B>&nbsp;</FONT>&nbsp;
<BR><FONT COLOR="#FFFFFF"><B><TT>&nbsp;&nbsp;&nbsp;&nbsp; |---> work</TT></B>&nbsp;</FONT>&nbsp;
<BR><B><TT><FONT COLOR="#FFFFFF">&nbsp;&nbsp;&nbsp;&nbsp; |---> hist</FONT></TT></B></TD>
</TR>
</TABLE>
&nbsp;While we are currently able to get all of our system onto a 2.5 gigabyte
hard drive, I can see a day when we will have a large enough history that
we will need more space. We could just get a larger hard drive, but an
easier upgrade would be to just add another drive and mount it into the
directory tree. We could actually run four drives for Cats by mounting
a different drive into the ne directory for each subdirectory. By doing
this, data would be running on a drive, dbc would be a drive, work would
be a drive and hist would be a drive. In theory, the performance would
increase, since drive access to data would not slow down history searches,
or read/writes to the work drive.

<P>I have written a CGI Perl script to make it simple for our Business
Department and Customer service department to lock Cats during month-end
closing and reindexing procedures. The script asks for a password, and
then replaces the standard batch files to start Cats with another batch
file that says Cats is locked for closing or maintenance. When they are
finished, they can unlock Cats by running the unlock CGI script. The scripts
are listed here:

<P>Lock Cats:
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>#!/usr/bin/perl&nbsp;
<BR># ******************************************************&nbsp;
<BR># * *&nbsp;
<BR># * Author: Quinn P. Coldiron *&nbsp;
<BR># * Date: 11-24-97 *&nbsp;
<BR># * Program: This locks Cats *&nbsp;
<BR># * *&nbsp;
<BR># ******************************************************&nbsp;
<BR># Use cgi-lib CGI library for PERL.&nbsp;
<BR>require "/home/httpd/cgi-bin/cgi-lib.pl";&nbsp;
<BR>#Get the data from the form.&nbsp;
<BR>&amp;ReadParse;&nbsp;
<BR>print &amp;PrintHeader;&nbsp;
<BR>print "&lt;HTML>\n";&nbsp;
<BR>print "&lt;HEAD>\n";&nbsp;
<BR>print "&lt;TITLE>Finished&lt;/TITLE>\n";&nbsp;
<BR>print "&lt;/HEAD>\n";&nbsp;
<BR>print "&lt;BODY BGCOLOR= #b7b7b7>\n";&nbsp;
<BR>if ( $in{password} =~ "PASSWORD") {&nbsp;
<BR>print "&lt;P>&lt;B>Finished.&lt;/B>&lt;/P>\n";&nbsp;
<BR>print "&lt;P>Batch files written and CATS is &lt;B>locked&lt;/B>.&lt;/P>\n";&nbsp;
<BR>print "&lt;BR>You may access CATS by going to the M: drive and typing
secret.bat\n";&nbsp;
<BR>print "This should only be used for Month-end closing, reindexing and
system repairs.\n";&nbsp;
<BR>print "&lt;BR>&lt;BR>Quinn.\n";&nbsp;
<BR>system ("cp /home/httpd/cgi-bin/cats/lock/*.bat /usr/local/samba-cats/ne/data/");&nbsp;
<BR>system ("chmod 777 /usr/local/samba-cats/ne/data/*");&nbsp;
<BR>} else {&nbsp;
<BR>print "Wrong password\n";&nbsp;
<BR>}&nbsp;
<BR>print "&lt;/BODY>\n";&nbsp;
<BR>print "&lt;/HTML>\n";&nbsp;</TD>
</TR>
</TABLE>
Unlock Cats:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>#!/usr/bin/perl&nbsp;
<BR># ******************************************************&nbsp;
<BR># * *&nbsp;
<BR># * Author: Quinn P. Coldiron *&nbsp;
<BR># * Date: 11-24-97 *&nbsp;
<BR># * Program: This program copies that cats#.bat files *&nbsp;
<BR># * to the correct location. *&nbsp;
<BR># ******************************************************&nbsp;
<BR># Use cgi-lib CGI library for PERL.&nbsp;
<BR>require "/home/httpd/cgi-bin/cgi-lib.pl";&nbsp;
<BR>#Get the data from the form.&nbsp;
<BR>&amp;ReadParse;&nbsp;
<BR>print &amp;PrintHeader;&nbsp;
<BR>print "&lt;HTML>\n";&nbsp;
<BR>print "&lt;HEAD>\n";&nbsp;
<BR>print "&lt;TITLE>Finished&lt;/TITLE>\n";&nbsp;
<BR>print "&lt;/HEAD>\n";&nbsp;
<BR>print "&lt;BODY BGCOLOR= #b7b7b7>\n";&nbsp;
<BR>if ( $in{password} =~ "PASSWORD") {&nbsp;
<BR>print "&lt;P>&lt;B>Finished.&lt;/B>&lt;/P>\n";&nbsp;
<BR>print "&lt;P>Batch files written and CATS is unlocked.&lt;/P>\n";&nbsp;
<BR>print "&lt;BR>&lt;BR>Quinn.\n";&nbsp;
<BR>system ("cp /home/httpd/cgi-bin/cats/unlock/*.bat /usr/local/samba-cats/ne/data/");&nbsp;
<BR>system ("chmod 777 /usr/local/samba-cats/ne/data/*");&nbsp;
<BR>} else {&nbsp;
<BR>print "Wrong password!\n";&nbsp;
<BR>}&nbsp;
<BR>print "&lt;/BODY>\n";&nbsp;
<BR>print "&lt;/HTML>\n";&nbsp;
<BR>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<DIV ALIGN=right><A NAME="Configuring your Windows clients"></A><B><I><FONT SIZE=+2>Configuring
your Windows clients</FONT></I></B></DIV>
I have setup our Cats installation to share each required cats directory
as a hard mounted drive letter. The specific portion of the login script
that mounts cats is listed here:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="30%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>REM CATS drives&nbsp;
<BR>net use l: \\unplinux\l-ne&nbsp;
<BR>net use m: \\unplinux\m-data&nbsp;
<BR>net use n: \\unplinux\n-dbc&nbsp;
<BR>net use o: \\unplinux\o-work&nbsp;
<BR>net use p: \\unplinux\p-hist&nbsp;</TD>
</TR>
</TABLE>
My cats batch file is here:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="40%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>PATH=C:\;C:\WINNT;C:\WINDOWS;L:\;M:\;N:\;O:\;P:\&nbsp;
<BR>SET DBC_FILEPATH=L:\;M:\;N:\;O:\;P:\&nbsp;
<BR>Set DBC_PREP=M:&nbsp;
<BR>Set DBC_FILES=140&nbsp;
<BR>Set DBC_PGMSIZE=65024&nbsp;
<BR>Set DBC_CMDLINE=OLD&nbsp;
<BR>SET DBC_XKEYS=ON&nbsp;
<BR>Set DBC_COMPAT=DOS&nbsp;
<BR>Set DBC_PORT=24&nbsp;
<BR>SET DBC_DBCPATH=N:\&nbsp;
<BR>M:&nbsp;
<BR>DBC.EXE&nbsp;</TD>
</TR>
</TABLE>
I have also followed the suggestions on the Cats web site http://www.tcpj.com
for specific settings for Windows 95. I have found that all of these do
help in getting Cats to run better.
<DIV ALIGN=right><A NAME="Configuring the DOS emulator to run Cats"></A><B><I><FONT SIZE=+2>Configuring
the DOS emulator to run Cats</FONT></I></B></DIV>
Linux has a very interesting program called DOSEMU which creates a ``DOS
box'' that can run many DOS applications, including MS-DOS, PC-DOS, DR
DOS, Open DOS, Windows for Workgroups 3.11, the Novell Netware client and
many more. I had problems at first getting DOSEMU to run programs on the
redirected drives unless I called them by the full name (go.bat instead
of go) but tracked this down to the version of DOS that I was using. I
was using Novell DOS 7.0 but switched to MS-DOS 6.22 on the advice of Hans
Lermen (one of the DOSEMU developers) and this fixed the problem. He said
that this has been reported many times and it seems to be a bug in the
command.com code that many versions of non Microsoft DOS use.

<P>DOSEMU uses an image file of a hard disk to emulate a DOS hard drive
so you do not need to have a DOS partition. Using the /var/lib/dosemu/setup-hdimage
program will step you through making a basic hdimage file. The only required
item is a bootable DOS 6.22 floppy disk with whatever DOS tools you think
you might need. I included EDIT.COM and QBASIC.EXE. After running through
the setup-hdimage program, start the emulator with xdos or dos, depending
on if you are in X-Windows or not. The default setup gives you the Linux
hard drive as DOS drive D:\. To copy the programs I wanted off the floppy
to the hdimage file, I opened another xterm window and mounted the floppy
to /mnt/floppy, then switched back to DOSEMU, changed to D:\mnt\floppy
and copied EDIT.COM and QBASIC.EXE to C:\. I could now run the MS-DOS editor
to edit the config.sys and autoexec.bat files. If I wanted, I could also
write a quick QBASIC program.

<P>DOSEMU gives you a utility called LREDIR which redirects Linux directories
to DOS drive letters. Below is the AUTOEXEC.BAT that I use with DOSEMU
to give me the drive letters for Cats and for Robotronics.
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="50%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>@echo off&nbsp;
<BR>path=c:\;l:\;m:\;n:\;o:\;p:\&nbsp;
<BR>prompt $p$g&nbsp;
<BR>rem set temp=c:\temp&nbsp;
<BR>lredir l: linux\fs\usr\local\samba-cats\ne&nbsp;
<BR>lredir m: linux\fs\usr\local\samba-cats\ne\data&nbsp;
<BR>lredir n: linux\fs\usr\local\samba-cats\ne\dbc&nbsp;
<BR>lredir o: linux\fs\usr\local\samba-cats\ne\work&nbsp;
<BR>lredir p: linux\fs\usr\local\samba-cats\ne\hist&nbsp;
<BR>lredir t: linux\fs\usr\local\samba-sys\programs\nesb&nbsp;
<BR>c:&nbsp;
<BR>menu.bat&nbsp;</TD>
</TR>
</TABLE>
This autoexec.bat file loads the redirected drives and displays a menu
which allows the user to select the DOS application they want to run (CATS
and Robotronics). I have set the dos emulator as the shell, so that as
soon as the Mac users or remote users telnet into the Linux server the
DOS emulator is started and they get the main menu. When they exit the
DOS emulator, they are disconnected from the server.
<DIV ALIGN=right><A NAME="Installing a RAID"></A><B><FONT SIZE=+2>Installing
a RAID</FONT></B></DIV>
<A HREF="http://www.dpt.com/"><IMG SRC="./gx/coldiron/RAID.JPG" BORDER=0 NATURALSIZEFLAG="3" HEIGHT=157 WIDTH=150 ALIGN=BOTTOM></A>The
RAID that we chose to purchase was a kit that contained a SCSI RAID controller
and subsystem storage cabinet from Distributed Processing Technology.

<P>The SCSI card is a PCI card with a caching module added to it. The cache
module has four SIMM slots on it and will accept any standard 32 pin SIMM
up to 16 meg each for a total of 64 megabytes of cache. The card comes
with a four meg module already installed, and that is what we currently
are using.

<P>The storage subsystem requires you to supply your own drives and comes
in two style. One supports narrow SCSI drives and the other supports wide
drives. We are using the narrow drive cabinet, mainly because I already
had three drives that I wanted to use. Installing the drives can be tricky,
as the data cable is not color coded and I could not tell what wire was
for pin one. The first time around I had the drives installed backwards,
but nothing was hurt. I called the tech support line and they were very
helpful in getting the problem fixed.

<P>After installing the card in the server, the next step is to configure
the RAID with the RAD level of choice. We chose to run RAID level 5. While
Linux does have built in drivers for the DPT controller card, DPT does
not offer Linux utilities to configure the unit. What I did was temporarily
plug a 200 meg IDE hard drive into the server to boot from and ran the
DOS configuration utilities which are graphical and easy to follow. Using
the mouse, I selected the three drives that I wanted to include in my RAID,
then selected the RAID level I wanted, saved the configuration and shutdown
the computer. I then unplugged the IDE DOS drive and reconnected the IDE
Linux boot drive.

<P>I kind of cheated when I installed the driver for the SCSI card by rerunning
the Linux setup program. I had other things that needed fixing, so I thought
this would be the best way. I could have just added the daemon by using
the tools in the control panel as well or by typing<TT> insmod eata-dma
</TT>at the command prompt and the driver would be loaded and I could see
the report that the system now recognizes my SCSI card and RAID. During
the installation, select YES when asked if you have a SCSI card and select
correct driver (EATA-DMA) for the card you have. When you are finished
and reboot the computer, you will see the RAID initialize and report the
settings you configured under DOS, then the kernel recognizing the card.

<P>Now, you need to create a partition and format the drive. To make a
partition, use the fdisk command and follow the menu to make a Linux primary
partition. Formatting the RAID is as easy as formatting any other drive.
Remember that the system sees your RAID as a single, large disk. To format
it in Linux, issue the mkefs2 /dev/sda1, or whatever SCSI drive it is.
To actually use the disk after formatting, you need to mount it someplace.
I wanted to use this disk for the home directories of our users, so I mounted
it as /home/raid. But, whenever I added a user, they were still being added
to /home and not on the RAID, so I edited the /usr/sbin/adduser script
(which is just a Perl script) and changed the home directory location to
/home/raid. Now, whenever I add a user, they are added to the RAID.
<DIV ALIGN=right><B><FONT SIZE=+2>Daily administration</FONT></B></DIV>

<DIV ALIGN=right><A NAME="System backups"></A><B><I><FONT SIZE=+2>System
backups</FONT></I></B></DIV>
I have a SCSI Hewlett Packard SureStore 6000 4mm DAT drive that I am setting
up for backup duties for our Linux server. Currently, I am backing up all
data through Samba to our Windows NT server using

<P>another SureStore 6000 tape drive and Cheyenne Arcserve software. I
have also been known to make a quick backup to the RAID using tar. Tar
is a simple utility that has been around Unix almost as long as Unix has
been around.

<P>To make a tar backup, just issue the following command:

<P>tar cvf archivename.tar /directory-to-archive

<P>This will create a tar file named archive.tar of the contents of the
directory directory-to-archive. While this works fine, the resulting file
might be very large because we did not apply any compression. By

<P>modifying the command to look like this:

<P>tar cvzf archivename.tar.gz /directory-to-archive

<P>We compress the tar file with gzip after the file is made. At a later
date, we might want to view what is in the tar file, so we can issue the
tar tvf archivename.tar.gz to list the files in the archive.

<P>While backing up to disk is OK for a temporary thing, you should always
backup to tape for critical data. Linux supports two types of tape drives.
The first is the style that connects to the floppy drive

<P>controller, like the Colorado drives and Iomega Ditto. The other style
connect to a SCSI controller. Floppy tape drives have the device names
of /dev/ft0, dev/ft1 and so on. SCSI drives are /dev/st0, /dev/st1 and
so on. These devices are "rewinding" devices which rewind the tape when
the operation is completed. IF you are archiving more than one session
to the tape, then use the non-rewinding devices /dev/nft0, /dev/nrft1,
/dev/nst0, /dev/nst1 and so on.

<P>After writing the archive to tape, you can use the mt (magnetic tape)
command to rewind, retention and find sessions on tape. The table below
shows the commands.

<P>mt /dev/nft0 rewind

<P>mt /dev/nft0 retention

<P>mt /dev/nft0 fsf 1 skips the current session to find the next session
on tape.

<P>To use the mt command, you must use the non-rewinding devices.

<P>Using tar to make backups has its good points and its bad points. On
the bad side, neither tar or gzip are fault-tolerant. Compressing tar files
with gzip will greatly reduce the amount of space on the backup

<P>media, but if even one block of the archive gets corrupted, which can
happen on tapes, the entire file can be useless. Usually, you will be able
to retrieve all data up to that point, though. A better solution is to
use a "real" backup system such as BRU (Backup and Restore Utility) that
comes with a purchased version of RedHat Linux 5.0. Backup systems usually
compress each file individually, so that if the media is damaged, you will
not usually lose the entire archive.

<P>BRU has both a command prompt interface and a graphical X-Windows interface
and is included with RedHat 5.0. BRU offers automated backup scheduling
and scripting, so it is very easy to setup a simple but effective and reliable
backup system. I find the system as easy to maintain as ArcServe on Windows
NT.
<DIV ALIGN=right><A NAME="Scheduling events"></A><B><I><FONT SIZE=+2>Scheduling
events</FONT></I></B></DIV>
Linux has a very easy to use scheduler program called cron that will run
commands, scripts or programs at the scheduled times. To edit the list
of events, issue the crontab -e command. This will start the default editor
(usually vi, but I changed mine to joe). When you exit the editor, cron
will install the new config file you just edited and schedule all the jobs.
You can view the schedule by issuing the crontab -l command:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="75%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>SHELL=/bin/bash&nbsp;
<BR>PATH=/sbin:/bin:/usr/sbin:/usr/bin&nbsp;
<BR>MAILTO=root&nbsp;
<BR># Run any at jobs every minute&nbsp;
<BR># * * * * * root [ -x /usr/sbin/atrun ] &amp;&amp; /usr/sbin/atrun&nbsp;
<BR># run-parts&nbsp;
<BR># 01 * * * * root run-parts /etc/cron.hourly&nbsp;
<BR># 02 1 * * * root run-parts /etc/cron.daily&nbsp;
<BR># 02 2 * * 0 root run-parts /etc/cron.weekly&nbsp;
<BR># 02 3 1 * * root run-parts /etc/cron.monthly&nbsp;
<BR># Remove /tmp, /var/tmp files not accessed in 10 days (240 hours)&nbsp;
<BR># 41 02 * * * root /usr/sbin/tmpwatch 240 /tmp /var/tmp&nbsp;
<BR># Remove formatted man pages not accessed in 10 days&nbsp;
<BR># 39 02 * * * root /usr/sbin/tmpwatch 240 /var/catman/cat?&nbsp;
<BR>#############################################################&nbsp;
<BR># WWW logs. I run 2 so I can compare results.&nbsp;
<BR>#############################################################&nbsp;
<BR># Run web one web log utility 0 0-23 * * * /usr/bin/log&nbsp;
<BR>02 1 * * * /usr/bin/log&nbsp;
<BR># Run the other web log utility 0 0-23 * * * /usr/local/mkstats/mkstats.pl
-c mkstats.config&nbsp;
<BR>02 1 * * * /usr/local/mkstats/mkstats.pl -c mkstats.config&nbsp;
<BR>#############################################################&nbsp;
<BR>#############################################################&nbsp;
<BR># Live stream management&nbsp;
<BR>#############################################################&nbsp;
<BR># Create xdm file for live stream for Sports Nightly (5:45 pm)&nbsp;
<BR>45 17 * * 1,2,3,4,5 livestream-on&nbsp;
<BR># Kill xdm file for live stream for Sports Nightly (8:10 pm)&nbsp;
<BR>10 20 * * 1,2,3,4,5 livestream-off&nbsp;
<BR># Create xdm file for live stream for Saturday games (7:00 am)&nbsp;
<BR>0 7 * * 6 livestream-on&nbsp;
<BR># Kill xdm file for live stream for Saturday games (10:00 pm)&nbsp;
<BR>0 22 * * 6 livestream-off&nbsp;
<BR># Check the 3.0 server to see if it is running and not dead! (every
minute)&nbsp;
<BR>1-59 * * * * /usr/local/streamworks-3.0/checkSWserver&nbsp;
<BR>##############################################################&nbsp;
<BR># Check to see if network volumes are mounted (at 10:00 p.m.).&nbsp;
<BR># These need to be mounted since this machine performs the&nbsp;
<BR># backup at 11:55.&nbsp;
<BR>0 22 * * 1,2,3,4,5 checkmounts&nbsp;
<BR># copy BIP from Intrepid to exeter (WWW)&nbsp;
<BR>0 23 * * 1,2,3,4,5 /usr/local/bin/mvbip&nbsp;
<BR># backup userdata from intrepid&nbsp;
<BR>55 23 * * 1,2,3,4,5 bu-userdata&nbsp;
<BR># backup CATS&nbsp;
<BR>55 23 * * 1,2,3,4,5 bu-cats&nbsp;
<BR># backup Marketing&nbsp;
<BR>0 3 * * 1,2,3,4,5 bu-marketing&nbsp;
<BR># mail orders to quinn&nbsp;
<BR>0 8 * * 1,2,3,4,5 /usr/local/bin/mailunporders.pl&nbsp;</TD>
</TR>
</TABLE>
Each entry has a specific configuration to follow. If you want the command
to run every day at 1:00 AM, specify the minute as 0 and the hour as 1.
The other three fields should be asterisks, which means ``every day and
month at the given time.

<P>You might notice the entry

<P># Check to see if network volumes are mounted (at 10:00 p.m.).
<BR># These need to be mounted since this machine performs the
<BR># backup at 11:55.
<BR>0 22 * * 1,2,3,4,5 checkmounts

<P>This calls a script I wrote to check that the NT server is mounted so
I can backup all data on it. I mount the server using the smbmount command
which allows a Linux machine to mount shares from a Windows machine. This
script just verifies that a certain file or directory is actually at the
mount point. I use these ``reference'' files for checking purposes, so
they are read-only, so they can't be accidentally deleted by users. The
script is listed here:
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 CELLPADDING=0 COLS=1 WIDTH="50%" BGCOLOR="#D4D4D4" NOSAVE >
<TR>
<TD>#!/bin/sh&nbsp;
<BR># Cronjob to remount network drives if they are not mounted.&nbsp;
<BR># Author: Quinn P. Coldiron&nbsp;
<BR>if [ -z "`ls /mnt/exeter | grep InetPub | grep -v grep`" ]&nbsp;
<BR>then&nbsp;
<BR>umount /mnt/exeter&nbsp;
<BR>/mnt/mountexeter&nbsp;
<BR>echo "Exeter remounted `date`"&nbsp;
<BR>fi&nbsp;
<BR>if [ -z "`ls /mnt/intrepid-f | grep BLINE | grep -v grep`" ]&nbsp;
<BR>then&nbsp;
<BR>umount /mnt/intrepid-f&nbsp;
<BR>/mnt/mountintrepid-f&nbsp;
<BR>echo "Intrepid F remounted `date`"&nbsp;
<BR>fi&nbsp;
<BR>if [ -z "`ls /mnt/intrepid-g | grep QC | grep -v grep`" ]&nbsp;
<BR>then&nbsp;
<BR>umount /mnt/intrepid-g&nbsp;
<BR>/mnt/mountintrepid-g&nbsp;
<BR>echo "Intrepid G remounted `date`"&nbsp;
<BR>fi&nbsp;
<BR>if [ -z "`ls /mnt/intrepid-mrktdept | grep KK | grep -v grep`" ]&nbsp;
<BR>then&nbsp;
<BR>umount /mnt/mountintrepid-mrkt&nbsp;
<BR>/mnt/mountintrepid-mrktdept&nbsp;
<BR>echo "Marketing remounted `date`"&nbsp;
<BR>fi&nbsp;
<BR>echo "All network volumes mounted."&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<BR>&nbsp;
<DIV ALIGN=right><A NAME="Replacing your Desktop OS with Linux"></A><B><FONT SIZE=+2>Replacing
your Desktop OS with Linux</FONT></B></DIV>
Places to go:
<UL>
<LI>
<A HREF="http://www.redhat.com/">RedHat</A></LI>

<LI>
<A HREF="http://www.kde.org/">K Desktop</A></LI>

<LI>
<A HREF="http://www.info.polymtl.ca/ada2/coyote/www/linux_desktops.html">Amazing
Linux Desktops</A></LI>
</UL>
I have wanted to make Linux my desktop operating system for a long time,
but I couldn't because I needed to be able to run the following applications:
Microsoft Word, WordPerfect, Microsoft Excel, Microsoft Access, our internal
mail system (Pegasus), Microsoft Access and Microsoft Visual Basic. I have
recently narrowed the list of required applications that do not have a
Linux counterpart down to Access and Visual Basic, which we will analyze
later.

<P>I have found that, for the most part, I can replace Microsoft Office
with Applixware. Applixware is an office suite for Linux (an many other
Unix platforms) that can read and write Word and Excel files, which allows
me to share documents with the rest of the press. While I still cannot
read Access databases, I am working out a solution for that which we will
discuss later.

<P><B>Applix Words</B>
<UL>
<LI>
&middot; Live links to Applixware or third-party applications</LI>

<LI>
&middot; Mail-enabled compound document technology</LI>

<LI>
&middot; Landscape, portrait and merge printing</LI>

<LI>
&middot; Multiple undo and redo</LI>

<LI>
&middot; Hypertext with optional HTML output</LI>

<LI>
&middot; Forms editor</LI>

<LI>
&middot; International dictionaries, thesauri and spell checkers</LI>

<LI>
&middot; Conditional text and cross-referencing; find and replace</LI>

<LI>
&middot; Embedded equations and calculation support</LI>

<LI>
&middot; Multiple typefaces, type styles and sizes</LI>

<LI>
&middot; Highly graphical user interface</LI>

<LI>
&middot; Tables and frames; borders and shading</LI>

<LI>
&middot; Multimedia support including audio and video</LI>
</UL>
<B>Applix Spreadsheets</B>
<UL>
<LI>
&middot; Live links to other Applixware and external applications</LI>

<LI>
&middot; Calculation-based attributes</LI>

<LI>
&middot; 3D spreadsheets and charts</LI>

<LI>
&middot; Integration of external functions</LI>

<LI>
&middot; Built-in string, financial, mathematical, and statistical functions</LI>

<LI>
&middot; Goal seeking</LI>

<LI>
&middot; Multiple named views</LI>

<LI>
&middot; Dynamic inter-spreadsheet links</LI>

<LI>
&middot; Live graphs and charts</LI>

<LI>
&middot; Editable graph styles</LI>

<LI>
&middot; Print preview</LI>

<LI>
&middot; Borders and shading</LI>

<LI>
&middot; Drag-and-drop moving of cells</LI>

<LI>
&middot; Projection tables</LI>

<LI>
&middot; Relative and absolute cell references</LI>

<LI>
&middot; Built-in database functions</LI>

<LI>
&middot; Built-in shared library, RPC, and shell command mechanisms</LI>

<LI>
&middot; True minimal recalculation</LI>
</UL>
<B>Applix Presentation Graphics</B>
<UL>
<LI>
&middot; Feature-rich palette, fill patterns &amp; drawing tools</LI>

<LI>
&middot; Horizontal and vertical shearing</LI>

<LI>
&middot; User-definable fill patterns, brush styles and shapes</LI>

<LI>
&middot; Unlimited color support and point sizes</LI>

<LI>
&middot; Rotating and scaling options</LI>

<LI>
&middot; Drop shadows</LI>

<LI>
&middot; Text wrapping</LI>

<LI>
&middot; Image digitizing</LI>

<LI>
&middot; Pixel editing</LI>

<LI>
&middot; Managed layers and animation</LI>
</UL>
<B>Applix Mail</B>
<UL>
<LI>
&middot; Fully mail-enables all Applixware products</LI>

<LI>
&middot; Personal and global user lists, distribution lists and aliases</LI>

<LI>
&middot; Sorting, filing and querying on incoming messages</LI>

<LI>
&middot; Automatic conversion of messages/documents to recipient's preferences</LI>

<LI>
&middot; UNIX sendmail transport and MIME compliant</LI>

<LI>
&middot; Shared folders</LI>
</UL>
<B>Applix HTML Author</B>
<UL>
<LI>
&middot; Availability of a wide range of basic and advanced HTML concepts</LI>

<LI>
&middot; More than 25 standard HTML styles for headlines, subheads, lists
and text</LI>

<LI>
&middot; Auto-conversion of Applix Words styles to standard HTML styles</LI>

<LI>
&middot; Auto-conversion of Applix Graphics and Applix Presents to GIF,
including linked or embedded graphics</LI>

<LI>
&middot; Auto-conversion or creation of tables</LI>

<LI>
&middot; Full control over background color, text and hyperlink colors</LI>

<LI>
&middot; Auto-bulleting and auto-listing functions</LI>

<LI>
&middot; Dialog boxes and pull-down menus for all attributes and activities</LI>

<LI>
&middot; Straightforward linking and editing of existing GIF files</LI>
</UL>
<B>The Extension Language Facility (ELF) and Macros</B>
<UL>
<LI>
&middot; Robust interpretive programming language</LI>

<LI>
&middot; TCP/IP socket interface and remote procedure calls (RPCs)</LI>

<LI>
&middot; Interactive debugger, compiler/interpreter</LI>

<LI>
&middot; Arithmetic, string and Boolean operators</LI>

<LI>
&middot; Over 2500 built-in macros. Time-saving features for all users</LI>

<LI>
&middot; User-definable menu bars, dialog boxes and keybindings, menu-bar
editor across all Applixware products</LI>

<LI>
&middot; Keystroke and mousepick recorder</LI>

<LI>
&middot; Live linking and launching of external applications from Applix
Words,</LI>

<LI>
&middot; Spreadsheets, Presents, and Mail.</LI>

<LI>
&middot; User-definable ExpressLine icons for automating tasks</LI>

<LI>
&middot; Incremental zoom</LI>
</UL>
<B>Changes from Previous Version</B>

<P>This new version features advanced HTML authoring tools for adding pages
to your website simply and directly. It also has dramatically improved
filter technology enabling you, for example, to import and work on Word
or WordPerfect files and export back in those formats. If you want the
``real thing'', Corel has version 7.0 of Word Perfect available for Linux.

<P>The graphical user interface for Linux (and Unix in general) is X Windows.
A typical X Windows setup is shown below. This system is running the Common
Desktop Environment (CDE) window manager. X Windows is divided into two
subsystems consisting of a server and a client and you are free to change
either of these as your want. The main reason for changing an X server
is to gain better speed and better support for your video cards and monitors.
The main reason for changing window managers is to get the look and feel
you desire. You can not change the server or window manager under any of
the Windows products, because Microsoft has decided the look and feel you
get. The closest they get is the Plus! pack and its themes.

<P>Another possibility , which will save money and breath life into your
old 486's is to install Linux on them and use them as a NC (Network Computer).
Linux's GUI is X, so it is perfect for an X terminal (with either another
Linux machine as the server, or any other Unix system) and you can run
Insignia Solutions Inc.'s Keoke client under Java in order to turn your
Linux workstation into a thin client that runs Windows (virtual NT) applications.

<P>As a rule, Linux performs radically better than Windows 3.1 given the
same amount of RAM. Linux can run complete with a graphical desktop on
a 386 with 4MB of RAM, if you're patient. Add Netscape Navigator, and you
can get away with a 486 and 8MB of RAM. Consider 16MB of RAM a performance
sweet spot, especially if you use Communicator. Linux also has unimposing
disk space requirements. The bare-bones Caldera graphical client uses about
68MB of disk space. You'll want to install a few more packages than that
(Netscape, Java, and perhaps a friendlier window manager than the default
Fvwm), and you'll need at least a 32MB swap partition. When you consider
all the factors, a 200MB disk is plenty for most desktops.
<DIV ALIGN=right>&nbsp;</DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Appendix A</FONT></B></DIV>

<DIV ALIGN=right><A NAME="RedHat 5.0 Installation Guide"></A><B><FONT SIZE=+2>RedHat
5.0 Installation Guide</FONT></B></DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Appendix B</FONT></B></DIV>

<DIV ALIGN=right><A NAME="Samba"></A><B><FONT SIZE=+2>Samba</FONT></B></DIV>

<DIV ALIGN=right><B><FONT SIZE=+2>Appendix C</FONT></B></DIV>

<DIV ALIGN=right><A NAME="DOSEMU Manual"></A><B><FONT SIZE=+2>DOSEMU Manual</FONT></B></DIV>

<!--===================================================================-->
<P> <hr> <P> 
<center><H5>Copyright &copy; 1998, Quinn P. Coldiron <BR> 
Published in Issue 29 of <i>Linux Gazette</i>, June 1998</H5></center>

<!--===================================================================-->
<P> <hr> <P> 
<A HREF="./lg_toc29.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif" 
ALT="[ TABLE OF CONTENTS ]"></A>
<A HREF="../lg_frontpage.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
ALT="[ FRONT PAGE ]"></A>
<A HREF="./nelson.html"><IMG SRC="../gx/back2.gif"
ALT=" Back "></A>
<A HREF="./kahn.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
<P> <hr> <P> 
<!--startcut ==========================================================-->
</BODY>
</HTML>
<!--endcut ============================================================-->