File: issue50.html

package info (click to toggle)
lg-issue50 1-5
  • links: PTS
  • area: main
  • in suites: woody
  • size: 1,872 kB
  • ctags: 157
  • sloc: makefile: 36; perl: 23; sh: 17
file content (11316 lines) | stat: -rw-r--r-- 427,341 bytes parent folder | download
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
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE> Linux Gazette Table of Contents LG #50</TITLE>
</HEAD>

<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#0000AF"
ALINK="#FF0000" >
<center>
<A HREF="http://www.linuxgazette.com/">
<H1><IMG SRC="../gx/newlogo.jpg" ALT="LINUX GAZETTE" border="0"></H1></A> 
<H2>February 2000, Issue 50 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Published by <I>Linux Journal</I></H2> 

<A HREF=../lg_frontpage.html>Front Page</A> &nbsp;|&nbsp;
<A HREF=../lg_frontpage.html>Back Issues</A> &nbsp;|&nbsp;
<A HREF=../lg_faq.html>FAQ</A> &nbsp;|&nbsp;
<A HREF=../mirrors.html>Mirrors</A> &nbsp;|&nbsp;
<A HREF=http://www.linuxgazette.com/wgindex.html>Search</A>
</center>

<!--=================================================================-->

<table>
<TR>
<TD COLSPAN="3" WIDTH="100%" BGCOLOR="#000000"><IMG
SRC="../gx/hammel/cleardot.gif" ALT="" HSPACE=30 VSPACE=2 HEIGHT=1
WIDTH=1 ALIGN=LEFT></TD>
<TD></TD>
</TR>
<tr><td>
<table>
<tr>
<td VALIGN="top"><H1><font color="#BB0000">Visit Our Sponsors:</font></H1></td></tr>



<!-- *** BEGIN sponsors *** -->
<TR><TD>
	<A HREF="http://www.linuxjournal.com"><IMG ALT="Linux Journal" SRC="../gx/ljtop.gif" BORDER="0" VSPACE="10"></A>
</TD></TR>

<TR><TD>
	<A HREF="http://www.cygnus.com"><IMG ALT="Cygnus Solutions" SRC="../gx/sponsors/cygnus.gif" BORDER="0" VSPACE="10"></A>
</TD></TR>

<TR><TD>
	<A HREF="http://www.vmware.com"><IMG ALT="VMware" SRC="../gx/sponsors/vmware.jpg" BORDER="0" VSPACE="10"></A>
</TD></TR>

<TR><TD>
	<A HREF="http://www.infomagic.com"><IMG ALT="InfoMagic" SRC="../gx/infologo.gif" BORDER="0" VSPACE="10"></A>
</TD></TR>


<!-- *** END sponsors *** -->




</table>
</td>
<!--==================================================================-->
<TD ROWSPAN="3" WIDTH="2" BGCOLOR="#000000" NOSAVE><IMG
SRC="../gx/hammel/cleardot.gif" ALT="" HSPACE=1 HEIGHT=1 WIDTH=1%></TD>
<td VALIGN=top>
<H1><font color="#BB0000">Table of Contents:</font></H1>




<!-- *** BEGIN toc *** -->
<UL>
	<LI>  <a HREF="lg_mail50.html">The MailBag</A> 
	<UL>
		<LI>  <a HREF="lg_mail50.html#help">Help Wanted &amp; Article Ideas</A> 
		<LI>  <a HREF="lg_mail50.html#gen">General Mail</A> 
	</UL>
	<LI>  <a HREF="lg_bytes50.html">News Bytes</A> 
	<UL>
		<LI>  <a HREF="lg_bytes50.html#distro">Distro News</A> 
		<LI>  <a HREF="lg_bytes50.html#general">News in General</A> 
		<LI>  <a HREF="lg_bytes50.html#software">Software Announcements</A> 
	</UL>
	<LI>  <a HREF="lg_answer50.html">The Answer Guy</A> , <EM>by James T. Dennis</EM>
	<LI>  <a HREF="lg_tips50.html">More 2-Cent Tips</A> 
	<LI>  <a HREF="andreiana.html">Web Applications with Database Connectivity: getting started</A> , <EM>by Marius Andreiana</EM>
	<LI>  <a HREF="advani.html">Interview with Mike Cowpland, Corel Corporation</A> , <EM>by Prakash Advani</EM>
	<LI>  <a HREF="collinge.html">HelpDex</A> , <EM>by Shane Collinge</EM>
	<LI>  <a HREF="ferrari.html">Creating A Linux Certification Program, Part 8</A> , <EM>by Ray Ferrari</EM>
	<LI>  <a HREF="guckes.html">From Pico to Nano</A> , <EM>by Sven Guckes</EM>
	<LI>  <a HREF="lamb.html">Linux Site O' The Month: Unix Guru Universe</A> , <EM>by Sean Lamb</EM>
	<LI>  <a HREF="nielsen.html">Large Objects and Perl DBI</A> , <EM>by Mark Nielsen</EM>
	<LI>  <a HREF="nielsen2.html">Creating Installation CDs from various Linux Distributions</A> , <EM>by Mark Nielsen and Krassimir Petrov</EM>
	<LI>  <a HREF="pollman.html">Sharing Your Home</A> , <EM>by JC Pollman and Bill Mote</EM>
	<LI>  <a HREF="rogers.html">Source file management in a complex networked environment</A> , <EM>by James M. Rogers</EM>
	<LI>  <a HREF="silva.html">Developing Web Applications - Part III</A> , <EM>by Anderson Silva</EM>
	<LI>  <a HREF="silva2.html">Artificial Intelligence and Linux (2nd Edition)</A> , <EM>by Anderson Silva</EM>
	<LI>  <a HREF="lg_backpage50.html">The Back Page</A> 
	<UL>
		<LI>  <a HREF="lg_backpage50.html#authors">About This Month's Authors</A> 
		<LI>  <a HREF="lg_backpage50.html#notlinux">Not Linux</A> 
	</UL>
</UL>

<!-- *** END toc *** -->

<IMG ALT="Help Dex" SRC="../gx/collinge/HelpDex.gif" 
	WIDTH="78" HEIGHT="50" ALIGN="left">
	<FONT COLOR="red" SIZE="+1"><EM>New cartoon series!</EM></FONT>
<BR CLEAR="all">

<!-- P> <FONT COLOR=red FACE=arial,helvetica>New feature!</FONT><BR>
The <A HREF=../ftpfiles.txt>current file sizes and modification 
dates</A> for the FTP files is now available in a listing linked from the
Front Page. -->



</td>
</tr>
<TR>
<TD COLSPAN="3" WIDTH="100%" BGCOLOR="#000000"><IMG
	SRC="../gx/hammel/cleardot.gif" 
	ALT="-------------------------------------------------------------" 
	HSPACE=30 VSPACE=2 HEIGHT=1 WIDTH=1 ALIGN=LEFT></TD>
<TD></TD>
</TR>
</table> 

<!--=============================================================-->
<P> 
<table>
<tr><td>
<A HREF="issue50.txt.gz">TWDT 1 (gzipped text file)</A><BR>
<A HREF="issue50.html">TWDT 2 (HTML file)</A><BR>
are files containing the entire issue: one in text format, one in HTML. 
They are provided 
strictly as a way to save the contents as one file for later printing in
the format of your choice; 
there is no guarantee of working links in the HTML version.
 </td></tr>
<!--==================================================================-->
<TR>
<TD COLSPAN="3" WIDTH="100%" BGCOLOR="#000000"><IMG
SRC="../gx/hammel/cleardot.gif" ALT="" HSPACE=30 VSPACE=2 HEIGHT=1
WIDTH=1 ALIGN=LEFT></TD>
<TD></TD>
</TR>
<tr><td>
<center>
<I>Linux Gazette</I><img alt="[tm]" src="../gx/tm.gif">, 
<A HREF="http://www.linuxgazette.com/">http://www.linuxgazette.com/</A><BR> 
This page maintained by the Editor of <I>Linux Gazette</I>,
<A HREF="mailto: gazette@ssc.com"> gazette@ssc.com</A>
<P> 
<H5>Copyright &copy; 1996-2000 Specialized Systems Consultants, Inc.</H5>
</center>
</td></tr>
<TR>
<TD COLSPAN="3" WIDTH="100%" BGCOLOR="#000000"><IMG
SRC="../gx/hammel/cleardot.gif" ALT="" HSPACE=30 VSPACE=2 HEIGHT=1
WIDTH=1 ALIGN=LEFT></TD>
<TD></TD>
</TR>
</table>
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"</H4>  
<HR> 
<center>
<table width="100%" cellpadding=7><tr><td>
<H2><a NAME="mail"><IMG SRC="../gx/mailbox.gif" ALIGN=MIDDLE ALT=" ">
The Mailbag!</a> </H2>
Write the Gazette at <A HREF="mailto:gazette@ssc.com"> gazette@ssc.com</A>
</td><td>
<H3>Contents:</H3>
<ul>
<li><a HREF="#help">Help Wanted -- Article Ideas</a>
<li><a HREF="#gen">General Mail</a>
</ul>
</td></tr></table>
</center>

<a name="help"></a>
<p><hr><p>
<!-- =================================================================== -->
<center><H3><font color="maroon">Help Wanted -- Article Ideas</font></H3></center>
<P> 
Answers to these questions should be sent directly to the e-mail address of
the inquirer with or without a copy to gazette@ssc.com. Answers that are
copied to <I>LG</I> will be printed in the next issue in the Tips column.

<P> <STRONG>Before asking a question, please check the
<A HREF=../lg_faq.html><I>Linux Gazette</I> FAQ</A> to see if it has been
answered there.</STRONG>


<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon Jan 31 13:43:03 PST 2000
<BR>From: <I>Linux Gazette</I> Editor &lt;<A HREF="mailto:gazette@ssc.com">gazette@ssc.com&gt;</A>
<BR>Subject: Transmeta

<BLOCKQUOTE> <EM>
	[I'd like to see an </EM>LG<EM> article analyzing Transmeta's
	announcement, the Crusoe chip, and what it means for Linux.  Is there
	anybody in the field of mobile computing or hardware who would care
	to write such an article? 
	
	The Transmeta announcement itself is covered in the
	<A HREF="lg_bytes50.html#transmeta">News Bytes</A> section. -Ed.]

</EM> </BLOCKQUOTE>




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 18 Jan 2000 09:11:57 -0700 (MST)
<BR>From: Neil Zanella &lt;<A HREF="mailto:nzanella@tulip.math.ualberta.ca">nzanella@tulip.math.ualberta.ca&gt;</A>
<BR>Subject: Digital Cameras


<P> Hello,

<P> It would be nice if the next issue of the gazzette had an
article on using digital cameras with Linux.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Fri, 31 Dec 1999 09:23:13 -0500
<BR>From: Brian Cox &lt;<A HREF="mailto:brincare@bellsouth.net">brincare@bellsouth.net&gt;</A>
<BR>Subject: Modems

<P> I am a new user to Linux (Red Hat 6.0).  I am currently dual booting
between Windows 95 and Linux and I have a 56K winmodem install.  I have not
been able to get this modem to work under Linux.  Can you suggest a good modem
to upgrade to?  Preferably one that will work under both my Linux and Windows
installations.



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Fri, 31 Dec 1999 12:12:09 -0500
<BR>From: krishens &lt;<A HREF="mailto:krishens@lynxus.com">krishens@lynxus.com&gt;</A>
<BR>Subject: Users required to enter root-password? Red Hat 6.1

<P> I have just installed version 6.1 and set up my modem to dial out to my ISP. 
However, when I log on as a user and  press KDE&gt;Internet&gt;kppp a pop-up box
opens up and wants me to enter the root-password!  This does not seem right. is
there a way to avoid having to enter the root pass word when logged on as a
non-root user?






<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 1 Jan 2000 14:11:05 +0800
<BR>From: Chang Jiang &lt;<A HREF="mailto:changj10@hotmail.com">changj10@hotmail.com&gt;</A>
<BR>Subject: About Linux-Win98 interconnect

<P>    Dear sir:
       
<P>       I realy got some troubles with Samba and need your help. After
   read every associated docs in the Samba documents and SMB-HOWTO,
   problem is there yet.
<P>       I'm trying to interconnect Win98 with Linux. My Linux is Redhat
   5.2 with the Samba version 1.9.18p10. My Samba is started as deamons,
   that is, usind "smbd -D" and "nmbd -D".
<P>       After I set "encrypt = yes",  I can use "smbclient -L WIN98PC" to
   access the Win98's share directories. But although I can see Linux PC,
   I cann't access Linux from the Win98, no matter set "security = user"
   or "security = share". When I do that, always got a "invilad
   password". So does using "net view" and "net use" command under DOS
   prompt. By the way, I had use "smbpasswd" to generate smbpasswd for
   each smb user.
<P>       While I can login Linux with smbclient on the Linux PC itself. So
   do on the Win98 PC's Linux system(My Win98 PC is dual bootable). I use
   the RPM to remove the Samba and install again, nothing changed.Then
   What can I do?
<P>       Here is the <A HREF="misc/mail/jiang.txt">smb.conf</A> file.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 01 Jan 2000 22:01:45 -0700
<BR>From: Richard Flynn &lt;<A HREF="mailto:rflynn@uswest.net">rflynn@uswest.net&gt;</A>
<BR>Subject: Display support

<P> I am trying to run Linux on a system with a NEC Multisync monitor.
Where can I find a driver Or what monitor should I use.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sun, 2 Jan 2000 01:52:41 -0800 (PST)
<BR>From: Alexandre I.Gorelov, SFU/TRIUMF, tel. (604)-222-1047, ext. 64-89 &lt;<A HREF="mailto:iaeg@alph04.triumf.ca">iaeg@alph04.triumf.ca&gt;</A>
<BR>Subject: Pentium-II Xeon and calculation speed


<P> Hi guys,
here I'm trying to get a little bit of help with my computer.
I'm doing a very time expensive calculations using FORTRAN programs,
compiled with g77 under Red Hat 6.1. First, on dual Pentium-II/400MHz
and Pentium-III/450MHz computers I noticed, that when program size
(RSS in top) is getting biger that approximately 600K computation speed
dramatically decreasing by factor two. This slowing down agrees with
the bus speed (100MHz) and L2 cache (512K, 200MHz). So, I've decided
that the reason lies in the cache sped/size and bought (pretty cheap)
dual Pentium-II/450MHz Xeon computer with 2MB L2 cache per proccessor
that suppose to run at 450MHz and 512M SDRAM on SuperMicro mainboard.
Unfortunately I did not find any difference in performance of this
computer and still much cheaper dual Pentium-II/400MHz. Why is it?
May be, Red Nat 6.1 somehow must be told explicitely about cache size?
But I did not find any such option...





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sun, 02 Jan 2000 19:16:11 -0500
<BR>From: walter muller &lt;<A HREF="mailto:waltermullerorlando@worldnet.att.net">waltermullerorlando@worldnet.att.net&gt;</A>
<BR>Subject: connecting w98 and linux boxs

<P> I have one monitor and would like to connect my w98 desktop with my
linux desktop, what software do you recommend?
thank you




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 03 Jan 2000 06:53:13 -0500
<BR>From: Rick Smith &lt;<A HREF="mailto:rsmith13@tampabay.rr.com">rsmith13@tampabay.rr.com&gt;</A>
<BR>Subject: Tracing spoofed packets.

<P> Sir,

<P> I have received a lot of spoofed packets to tcp port 139  (Net bios)
within the last week.  Also, most all probes I get to "known" Net Bus
and Back Orifice ports, are spoofed. I would like to be able to trace
these packets back to the true source.  How do I go about doing this? 
What software do I need?  What methods are used?  (I don't plan to
retaliate, just inform the proper authorities.)  Seems to me, that this
would make an excellent article for Linux Journal or the Gazette.



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 03 Jan 2000 12:45:07 PST
<BR>From: Ted Wood &lt;<A HREF="mailto:ted_wood@hotmail.com">ted_wood@hotmail.com&gt;</A>
<BR>Subject: Norton Ghost/LILO problem

<P> I'm trying to create a dual boot image with Redhat and NT Workstation. I'm 
using Norton ghost version 6 to create the image.  It will ghost fine but 
after ghosting, lilo comes up as "LI" only.  The problem is fixable by 
booting to the Linux floppy and rerunning Lilo which rewrites the mbr.  
After that everything is great, but why won't Lilo work properly the first 
time?  I've searched Symantec's page and I've tried the switches but they 
all result in the same problem.  Please Help!




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 3 Jan 2000 16:23:38 -0500
<BR>From: David Morris &lt;<A HREF="mailto:DMorris@dolfin.com">DMorris@dolfin.com&gt;</A>
<BR>Subject: Anti Virus programs for linux Red Hat 6

<P> Hi!

<P> Is there a "definative" anti virul program for Linux?
Any info appreciated!



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 04 Jan 2000 15:46:01 +0530
<BR>From: Pradish Mathews &lt;<A HREF="mailto:pmathews@softhome.net">pmathews@softhome.net&gt;</A>
<BR>Subject: Bug in Lockpasswd !!!


<P> I have the Red Hat 6.1 version and the Lockpasswd utility is not working
properly.
Once i lock the account i am not able to unlock it.


<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 04 Jan 2000 05:19:29 -0800
<BR>From: CvdBelt &lt;<A HREF="mailto:CvdBelt@goplay.com">CvdBelt@goplay.com&gt;</A>
<BR>Subject: HelpWanted!

<P> Hi Gazette Readers!

<P> I've installed RedHat Linux 6.0. If I want to create a bootdisk in
RedHat setup, my system crashes. If you can help me, please send an
e-mail to: CvdBelt@goplay.com

<P> Thank you in advance!



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 4 Jan 2000 17:57:33 +0330
<BR>From: amin Zia &lt;<A HREF="mailto:Help@mmm.gov.ir">Help@mmm.gov.ir&gt;</A>
<BR>Subject: 

<P> Dear Sir:

<P> I'm looking for a way to get the users' information on my netware 4.11 from a linx 
machine. the information, including password, will be used for dial-up user authentication. Would you please let me know if it is possible.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 5 Jan 2000 10:30:09 -0300
<BR>From: Luis Bogliolo &lt;<A HREF="mailto:luisb@gbs.com.ar">luisb@gbs.com.ar&gt;</A>
<BR>Subject: I habe a problem

<P> I have a problem.  
I am trying to install in a linux Red Hat relase 6.0 Publishers Editor (Hedwind) a badge ethernet Intel InBusiness 10/100 and it is not recognized for the linux.  
The pc in which I work is a PII of 266 Mhz with 32 Mb ram, Possesses a badge of cable modem, and a modem of 56Kbps.  
I would Thank to who could offer me information of a solution.

<P> Happy New Year, Luis A. Bogliolo





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 05 Jan 2000 09:31:41 -0500
<BR>From: rbruce &lt;<A HREF="mailto:cva92@centurytel.net">cva92@centurytel.net&gt;</A>
<BR>Subject: Sound Card Problem

<P> I'm a very linux newbie. I have RH6.1. I can play music CD's and hear
system beeps for KICQ.
I'm using the KDE desktop. I have already tried sndconfig. I have system
sounds enabled.
The sound card is a Sound Blaster 16 System sounds just wont work.
Any ideas?

<P> Richard


<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 5 Jan 2000 13:04:24 -0700
<BR>From: Akins Bobby Civ 28CS/SCBB &lt;<A HREF="mailto:bob.akins@ellsworth.af.mil">bob.akins@ellsworth.af.mil&gt;</A>
<BR>Subject: XTerms

<P> To Whom It May Concern,

<P> 	Can you tell me where to find information on setting up Linux
Server/Client machines to act like server and thin clients.  My goal is
one powerful server with several smaller terminals using software off
the server.

<P> Thanks in advance.



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Thu, 06 Jan 2000 00:03:52 -0500
<BR>From: Darren Lehman &lt;<A HREF="mailto:dlehman@azerty.com">dlehman@azerty.com&gt;</A>
<BR>Subject: Subject: X won't start



<P> I Have Reacently Installed LINUX on an Dell OptiPlex GX110 PentiumIII
that I bought. I can boot up an login into root but when i issue the
command the
command startx to get X to star this is what i get:



<P> execve failed for /ect/X11/X (errno 2)

<P> and then 6

<P> _X11TransSocketUNIXConnect: Can't Connect: errno = 2

<P> then

<P> Giving up

<P> and Finally I wonderered if anyone could help a LINUX newbie.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Thu, 6 Jan 2000 17:26:01 +0800 (HKT)
<BR>From: Samuel Lam &lt;<A HREF="mailto:samuell@silver.hkabc.net">samuell@silver.hkabc.net&gt;</A>
<BR>Subject: Linux + Win98 Lan

<P> Hello.

<P> Linux Redhat 6.1 and config to use Squid on the Lan.A modem PPP dail up to
ISP and NOT with fixed IP.  

<P> Win98 client on the LAN can get the http_service from squid.
But win98 cannot use Telent or ICQ
Could someone tell me how to open the port or how to let the modem fully
share on the LAN.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Thu, 06 Jan 2000 16:43:00 +0100
<BR>From: Fisayp &lt;<A HREF="mailto:fisayo@steineng.net">fisayo@steineng.net&gt;</A>
<BR>Subject: Help Wanted On Domain Hosting Config

<P> Please what are the necessary steps to take to host a domain and web
site on a Linux system (Redhat)




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 08 Jan 2000 22:17:46 +0000
<BR>From: George Foussias &lt;<A HREF="mailto:gfoussia@netcom.ca">gfoussia@netcom.ca&gt;</A>
<BR>Subject: Linux and the MessagePad2000

<P> Hi everyone,

<P> I know it's possible to get Linux onto a PalmPilot, but  I was wondering
if anyone knows of or has heard of a port for the Apple MessagePad (aka
the Newton).  Any comments or suggestions are greatly appreciated.

<P> Thanx




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
7 Jan 00 10:29:24 MST
<BR>From: Research & Development Gruop x &lt;<A HREF="mailto:r_and_d_group@usa.net">r_and_d_group@usa.net&gt;</A>
<BR>Subject: X Windows Configuration Problem


<P> Res. Sir

<P>   I regularly visit your site. First of all I must appricate your efforts to 
assist users to solve their problems. ed. 
 
<P>  I have got a project on Red Hat Linux, Oralce 8i and Apache Web Server
platform. 

<P>  I have installed Red Hat Linux 6.1 on my pc. However I am finding it
difficult to setup my monitor. The X Window is not working at all( Commnad
Line is working Properly). I kindkly request you to help me to solve the
problem. I have tried to use Generic monitor and Video Card. Still it could
not help.

<P>   My Hardware configuration is
<PRE>
      Card : SiS 620 with 8 MB Shared Memory on board
   Monitor : Samtron 45Bn
   Monitor Synchronisation :
      Horizonal : 30-55 KHz
      Vertical  : 50-120 Hz
</PRE>

<P>   As I have to complete the project in given time constraint, i request you to
guide me as early as possible.
 
<P> Waiting for your replay. 
                                 


<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 10 Jan 2000 12:27:59 -0600
<BR>From: Wagner Perlino (EDB) &lt;<A HREF="mailto:wagner.perlino@edb.ericsson.se">wagner.perlino@edb.ericsson.se&gt;</A>
<BR>Subject: Win95-Linux small network with null modem

<P> I am trying to build a small network at home with one Linuxbox and another
Win95/Win98 box. I have no printer, but I would like to share files and use
my Linuxbox as a gateway to the internet so that both boxes can use one
single dial-up connection AT THE SAME time. Is there any link or suggestion
for this type of connection ?




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 10 Jan 2000 19:19:30 -0300
<BR>From: Carlos Germ&aacute;n Siufi &lt;<A HREF="mailto:csiufi@puntoar.net.ar">csiufi@puntoar.net.ar&gt;</A>
<BR>Subject: Router problem

<P> I had two networks. One at the main office (192.168.1.0) and the other
at the branch (192.168.2.0). I used two CISCO 800 ROUTERS to connect
them. I can use tcp/ip normally ("ping", "ftp", "http" from one host to
another remote host).

<P> My problem is:

<P> I can't see the remote PCs in Windows Explorer at the office. I
configured a Linux server with DNS, Mail, Ftp  but It still doesn't
work. At the office I'm running IPX (there is a Netware 3.11 server) and
TCP/IP protocols. Any idea?

<P> Germ&aacute;n.

<P> PD: Sorry my english.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 11 Jan 2000 12:32:01 -0300
<BR>From: Gabriel Ramiro Ferro &lt;<A HREF="mailto:gferro@gamma.com.ar">gferro@gamma.com.ar&gt;</A>
<BR>Subject: Desde Argentina

<P> Perd&oacute;n pero no manejo el ingles, lo que deseara es que me informen como
adquirir los CD de Linux en forma gratuita
Desde ya muchas gracias.







<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 11 Jan 2000 21:56:55 +0100
<BR>From: Ivo Naninck &lt;<A HREF="mailto:inaninck@linuxfan.com">inaninck@linuxfan.com&gt;</A>
<BR>Subject: Printing MS documents on Novell printer

<P> Hello Gazette,

<P> Can you please put the following question in your next Gazette?

<P> On my Linux box (Mandrake 6.1) I already have the Novell Netware Client
up and running.
I can print textfiles from the command line to a HP Laserjet 4Plus
printer which lives
in a Novel NDS tree. However, some people like(?) to send me Microsoft
Word and Excell
documents. When I send these kind'o files straight to the printer, they
come out real
funny :-(
I have Staroffice-5.1, with which I can read those files, but SO doesn't
(AFAIK) have
the ability to print to the kind of printer I must deal with.
Any idea is very welcome!

<P> -- <BR>
Best regards, Ivo Naninck.
<P> 1st graffitiist: QUESTION AUTHORITY!

<P> 2nd graffitiist: Why?
<PRE>
~
:wq!
</PRE>



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 12 Jan 2000 00:23:56 +0100
<BR>From: Jos vd Snepscheut &lt;<A HREF="mailto:snepscheut@hetnet.nl">snepscheut@hetnet.nl&gt;</A>
<BR>Subject: vgetty and .rmd files

<P> Hello,

<P> Is there a way to convert .rmd files (made by vgetty) into .wav files.

<P> thanks, Jos (newbe)





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 12 Jan 2000 09:59:39 -0500
<BR>From: abc &lt;<A HREF="mailto:abc@abc.com">abc@abc.com&gt;</A>
<BR>Subject: Partiton Magic 5.0 and Linux Installation


<P> Hi !

<P> I am not quite familiar with Linux installation and stuck at this point.

<P> I have a new DELL with 13 GB hard-disk running windows98 second edition.

<P> I bought Partition Magic 5.0 to create couple logical drives and Linux
Native and Swap Partitions.

<P> I am trying to install RedHat 5.2 using a bootable disk and a CD -ROM.

<P> For some reason, neither disk-druid nor fdisk (in-built) recognizes my
Logical Partitions.

<P> On the Blue screen (driver information)  it says:

<PRE>
/hda1 &lt;size&gt; Win95 FAT 32
/hda2 &lt;size = 13 GB - size of C drive&gt; 0x0f  (blank in type field)
</PRE>

<P> That means, the installation process does not know there are couple of
Logical Drives and  also a Linux Native and a Swap Partitons. What does
0x0f type means ?

<P> fdisk however shows there are partitions on MS-DOS propmt but
installation program can not recognize them !

<P> Is there anything I am doing wrong ? Any suggestions ?

<P> Thanks<BR>
-H





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Thu, 13 Jan 2000 17:54:09 +0200
<BR>From: Dina Yazbeck &lt;<A HREF="mailto:dina.yazbeck@spacecom1.com">dina.yazbeck@spacecom1.com&gt;</A>
<BR>Subject: Question



 
<P>  I am basically trying to host a domain and have all the e-mails of
 the users of this domain (remotedomain.com) sent to one particular
 Mailbox (such as remotedomain@myisp.net). This is straightforward.
 Assuming that the remote domain machine (LINUX) polls the ISP
 server.  What is the procedure to use to retrieve this mail and
 distribute it to the respective mailboxes of the users? 
 Do I have to use procmail?
 Is fetchmail sufficient for distributing the mail?
 Waiting for your reply.
 
<P>  Thank you.

<P>  Note: I am new to the Linux world; for that reason, please include   
       details.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 06 Jan 1998 05:41:58 +1300
<BR>From: M Murugan &lt;<A HREF="mailto:Admin@easybrowsing.com">Admin@easybrowsing.com&gt;</A>
<BR>Subject: How to encrypt in linux ..

<P> Sir

<P> I would like to encrypt the loginname in my linux-boot-dial floppy.

<P> Is there any command like ASC(x) or chr(x) as in VisualBasic other than
tr.

<P> Thanks in advance

<BLOCKQUOTE> <EM>
	[Why do you need to encrypt your login name?  The password is already
	encrypted.  In any case, everybody knows the most powerful login is
	"root", so you would not be gaining any security.  If you are concerned
	about people cracking your account, change your password.

	<P> Also, nothing prevents somebody from sticking their own boot floppy
	in with their own passwords on it.  The only way to prevent this is to
	keep the computer in a locked room. -Ed.]
</EM> </BLOCKQUOTE>




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Fri, 14 Jan 2000 15:38:17 -0500
<BR>From: Kevin Jon Schlossberg &lt;<A HREF="mailto:spark@bladeforums.com">spark@bladeforums.com&gt;</A>
<BR>Subject: ? about "logrotate" on RedHat 5.2...

<P> Hi there!
I'm a linux newbie, and I'm hoping that you'll be able to answer my 
questions, as I'm kind of lost.

<P> We're currently running RedHat 5.2 on our server, and are using Apache as 
our webserver program.  We've got about 30 or so websites running off the 
same machine, each with it's own Apache webserver.  Our reasons for doing 
so is to prevent 1 website from taking out all of the rest if that 
particular process dies.

<P> Since each website has it's own Apache server running, each site has it's 
own access_log file.  Anyhow, a few of the websites have proven to be more 
popular than we thought they would be, and are generating about 1 Gb of 
logfiles every 7 days or so.  Considering that we only have 9.1 gB of hard 
disk space, we've decided that it would probably be a smart idea to start 
rotating the logfiles each week.

<P> I've been looking at the logrotate program that's included with RedHat 
Linux, and I'm a bit confused as to how it operates, and was hoping that 
you could tell me if what I'm thinking will work.

<P> In the file /etc/logrotate.d/apache it lists
<PRE>
#/var/log/httpd/access_log {
#    postrotate
#       /usr/bin/killall -HUP httpsd
#    endscript
#}
</PRE>

<P> As what I'm guessing the default logrotation would be.

<P> Since my configuration has the access_log files located at
<PRE>
/logs/account1/access_log
/logs/account2/access_log
/logs/account3/access_log
/logs/account4/access_log
....
/logs/accountX/access_log
</PRE>

<P> I'm going to guess that I need to change
<PRE>
/var/log/httpd/access_log
</PRE>
to
<PRE>
/logs/accountX/access_log for each accountX
</PRE>

<P> Here's the crux of my problem though - the section that states
<PRE>
#    postrotate
#       /usr/bin/killall -HUP httpsd
#    endscript
</PRE>

<P> is worrying me because I dont want to send multiple /usr/bin/killall -HUP 
httpsd signals over and over again if it's not neccessary.

<P> Can I put the /usr/bin/killall -HUP httpsd command in the 
/etc/cron.daily/logrotate file so that instead of
<PRE>
#!/bin/sh

/usr/sbin/logrotate /etc/logrotate.conf
</PRE>

<P> it instead says
<PRE>
#!/bin/sh

/usr/sbin/logrotate /etc/logrotate.conf
/usr/bin/killall -HUP httpsd
</PRE>

<P> and have the /etc/logrotate.d/apache file read:

<PRE>
/logs/account1/access_log {
}
/logs/account2/access_log {
}
/logs/account3/access_log {
}
/logs/account4/access_log {
}
/logs/accountX/access_log {
}
</PRE>

<P> for each accountX that I have?

<P> Thanks for any assistance that you can give....



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Fri, 14 Jan 2000 16:02:38 -0500 (EST)
<BR>From: Mark Borg &lt;<A HREF="mailto:mborg@mail.com">mborg@mail.com&gt;</A>
<BR>Subject: Question on motherboard support

<P> Hello,
Some time ago I upgraded my machine from 486-33Mhz to PIII 500Mhz.
I bought a PC-Chips M741LMRT motherboard which has on-board VGA,
sound and modem.  Linux installed ok on it and is really fast
(boots up in less than 20 seconds!!), but X windows configuration
is crashing when trying to detect the on-board VGA (I belive it's
a SiS 5595 chipset).  I am only getting 320x200 mode.  When I
amended the config file manually to get an 800x600 true-color mode,
X loads, paints the background and hangs up.  Anyone has used
such motherboards?  Or are there any patches for this motherboard?
Regards




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 15 Jan 2000 16:38:55 +0530
<BR>From: Kumar V &lt;<A HREF="mailto:datasol@vsnl.com">datasol@vsnl.com&gt;</A>
<BR>Subject: Urgent Help Wanted

<P> Dear
Support Manager
 
<P> We are installing Linux Kernel 2.2 with Redhat 5.2 in our Intel Pentium III @ 500 MHz system, with 256MB SDRAM which has integrated SiS 6236 AGP card with 8 MB Video Memory and Realtek 8139 Ethernet Adapter.
 
<P> We are using SCSI hard disk with Adaptec Controller Card. We are facing heavy problems in getting recognized for SiS 6326 card in the installation of XWindows. The supported hardware list doesn't show the list of the above SiS 6326 Card. Please let me know how we can solve the problem and also let me know where i could download the drivers to make SiS 6326 card work in Xwindows and to support maximum resolution and Color Depth. 
 
<P> Please help me out where i could download the drivers and the procedure for making the SiS 6326 card work in Xwindows. 

<P> Hope you will reply to me immediately. 





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sun, 16 Jan 2000 12:58:56 -0800 (PST)
<BR>From: Wei Huang &lt;<A HREF="mailto:pardxa@yahoo.com">pardxa@yahoo.com&gt;</A>
<BR>Subject: help

<P> sir,
I need some help.

<P> Question1,

<P> I wrote a <A HREF="misc/mail/huang.c.txt">program</A> of showing the contents
of other program on the platform of LINUX,the compiler is g++, but got problems
in statement 1 and statement 2.

<P> First,I want to show the sentence in statement 1 
ahead of the body of file being showed,but it can't
appear in the proper position.I mean I want the
program running like this:

<PRE>
This is the body of file
    FILE BODY...
This is the body of file
    FILE BODY...
    </PRE>

<P> but it running like this:

<PRE>
    FILE BODY...
    FILE BODY...
This is the body of file
This is the body of file
</PRE>

<P> I don't why,how can it be corrected.
Second,I had believed the statement 2 is illegal in
grammar.Because if you define an array, char
buffer[BufferSize] ,the BufferSize indicate the number
of elements in array and should be a constant or at
least be a const variable,and it can't be a variable,
otherwise the program cann't be compiled. But the fact
is this program is compiled smoothly and functions
normally. What is wrong? 


<P> Question 2,
I write a <A HREF="misc/mail/huang2.c.txt">c program</A>.

<P> But when compiling, gcc reports that all the functions
with "vga_" profix are  undefined,what is the problem?
I had included "vga.h" in my programe as indicated in
"man" help on the usage of either "vga_" function.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 17 Jan 2000 14:32:33 +0530 (IST)
<BR>From: Kenneth Conception &lt;<A HREF="mailto:kenneth@darya.nio.org">kenneth@darya.nio.org&gt;</A>
<BR>Subject: None

<P> Hi,
I have a computer with a 810 chipset on which i loaded redhat 6.1.
This version does not have the required display card drivers.Pls advice
me.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 18 Jan 2000 17:04:04 +0100
<BR>From: Michael Schmitz &lt;<A HREF="mailto:mschmitz@sema.de">mschmitz@sema.de&gt;</A>
<BR>Subject: /sbin/dump crashes when doing incremental backup


<P> Since upgrading from RedHat 6.0 to 6.1 /sbin/dump crashes when trying
to do incemental backups:

<PRE>
madeira:[/tmp]# /sbin/dump -1 -f /dev/null /dev/sda1
  DUMP: Date of this level 1 dump: Tue Jan 18 17:00:38 2000
  DUMP: Date of last level 0 dump: the epoch
  DUMP: Dumping /dev/sda1 (/usr) to /dev/null
  DUMP: mapping (Pass I) [regular files]
  DUMP: mapping (Pass II) [directories]
  DUMP: estimated 710739 tape blocks on 18.27 tape(s).
  DUMP: Volume 1 started at: Tue Jan 18 17:00:39 2000
  DUMP: dumping (Pass III) [directories]
  DUMP: SIGSEGV: ABORTING!
  DUMP: SIGSEGV: ABORTING!
Segmentation fault
madeira:[/tmp]#   DUMP: SIGSEGV: ABORTING!
  DUMP: SIGSEGV: ABORTING!
  DUMP: SIGSEGV: ABORTING!
</PRE>

<P> Does anybody have an idea of what might be the problem?

<P> This is what's installed:
<PRE>
  dump-0.4b4-11
  e2fsprogs-1.17-1
  glibc-2.1.2-12
</PRE>



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 18 Jan 2000 08:04:20 -0800
<BR>From: knowmd &lt;<A HREF="mailto:knowmd@worldnet.att.net">knowmd@worldnet.att.net&gt;</A>
<BR>Subject: modoms

<P> need information on compatible modems to run with redhat 5.2 with
pentium 233




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 18 Jan 2000 15:42:13 -0500
<BR>From: Christopher Hennessey &lt;<A HREF="mailto:chennessey.STU_PO.FPLC@fplc.edu">chennessey.STU_PO.FPLC@fplc.edu&gt;</A>
<BR>Subject: Law student with questions about Licensing and Linux

<P> My name is Chris Hennessey and I am currently a first year law student at Franklin Pierce Law Center located in Concord, NH.  Franklin Pierce is a law school renowned for its intellectual property program and it strives to educate students entering fields in the forefront of technology.  I have been elected as a class representative for the Licensing Executive Society and have a strong interest in the field of software licensing.  I am particularly interested in the "copy-left" movement in the software industry and I know that Linux is at the forefront. 

<P> I am currently trying to help organize this Franklin Pierce's annual Licensing Symposium which will be held on Saturday, March 25.   I would very much like to have a Red Hat or Linux based representative come and speak at the symposium about what is going on in the world of freeware and shareware or other general software licensing issues.  

<P> As the Editor of the Linux Gazette, I am certain that you could help me.  Perhaps you are interested or know of a Red Hat attorney or anyone who be interested in speaking at this event.  The Licensing Executive Society is a global organization and this would be an opportunity to speak to law students from around the world about Linux. 

<P> I would really appreciate any assistance you may be able to provide for me, please contact me via email.  

<P> Thank you.

<BLOCKQUOTE> <EM>
[</EM>Linux Gazette<EM>
has no relationship with Red Hat, so I can't put you in
touch with one of their attorneys.  See RH's contact information at
<A HREF="http://www.redhat.com">www.redhat.com</A>.

<P> The Free Software Foundation would be another good place to check,
since licensing is their forte.  <A HREF="http://www.gnu.org">www.gnu.org</A>

<P> The Electronic Frontier Foundation is not directly related to software
licensing per se, but they have been very active in the past regarding
net freedom, although I haven't kept track of them in recent years.
<A HREF="http://www.eff.org">www.eff.org</A> -Ed.]
</EM> </BLOCKQUOTE>





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 19 Jan 2000 01:16:14 +0100
<BR>From: Leonard &lt;<A HREF="mailto:LT.Quivooy@quicknet.nl">LT.Quivooy@quicknet.nl&gt;</A>
<BR>Subject: insmod and newbie to RH6.1

<P> Hello,

<P> Where can i aks an question about a loadable module which i want to
autostart at boot?
an howto? I cannot find the right information, and or it's nog clear for me.
I searched the linux Gazette and couldnot find it

<P> thanks.

<P> Leonard Quivooy




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 19 Jan 2000 12:30:25 +0100
<BR>From: Ivan Suchy &lt;<A HREF="mailto:suchar@penguin.cz">suchar@penguin.cz&gt;</A>
<BR>Subject: Internal modem

<P> Hello LG team,

<P> I have HP Netserver E60 and don't know how internal modem I can use with
it,
and RH 6.0. Have someone some experience.

<P> Thanx for any answer, sincerely

<P> Ivan Suchy

<P> BTW: installation on this server was without any problem, who wants I
can send its hardware configuration.







<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 19 Jan 2000 11:46:58 EST
<BR>From:  &lt;<A HREF="mailto:MartyFisher1@cs.com">MartyFisher1@cs.com&gt;</A>
<BR>Subject: bash2

<P> Hello,

<P> The bash 1-14 seems to be the standard bash for redhat even though bash2 is 
included.  Can you tell me the reason for that ? and when that might change ?

<P> Thanks,
Marty Fisher



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 24 Jan 2000 05:42:36 -0500
<BR>From: glitch &lt;<A HREF="mailto:pidpot@freewwweb.com">pidpot@freewwweb.com&gt;</A>
<BR>Subject: 2 quick questions

<P> I have two quick questions...

<P> One concerns my modem.  When i dial into my isp, my modem hangs up after
connect every first time i try.
so, it always takes exactly two tries to get going.  What could my modem
be NOT doing the first time that it ALWAYS figures out how to do the
second time?

<P> second, I would like to ask for a QUALITY set of general instructions on
how to install things i download off the internet such as realplayer 5
for Linux which comes in rpm form.  I have downloaded various programs
from the  net in rpm form, only to find very sloppy instructions on
setting things up.  In the case of realplayer in particular, I get a
message (using rpm at the command line with the -i switch) that says
realplayer is installed.  But where does it get installed to? i can
never find it... i type the executable command and get another message
that core is been dumped.  This is after having to copy the rpm into the
/var/lib/rpm directory just so the rpm util can find things it needs to
install my package in the first place.

<P> hey, sorry, i just thought of question #3:
I KNOW i created 3 swap partitions, but only one is enabled. (hda7) what
are the names of my other partitons? i have altogether 4 partitions: one
root and 3 swap.  so hda1 is root and hda 7 is one of the swaps, but
what is the convention for nameing devices to partitions? i tried to
enable my best guesses (hda 5 and hda6) in linuxconf as additional swap
partitons, but with no luck. how do i find them and how do i enable
them? thanks.

<P> I run redhat 6.1 with Gnome as my desktop on a amd 350 with 128 megs of
ram, but i dont have any preference to desktops, so instructions to fit
any of them will be greatly appreciated.

<P> Please understand that i am working on almost six years of experience
with computers and am not afraid to try new things.  I am new to linux;
however, I am not afraid to follow technical instructions, as long as
they are accurate.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 22 Jan 2000 13:14:56 -0800 (PST)
<BR>From: KAI T. HUANG &lt;<A HREF="mailto:vkthuang@yahoo.com">vkthuang@yahoo.com&gt;</A>
<BR>Subject: How to set up a external modem for the internet of Red Hat Linux?

<P> Hi, I have installed Red Hat LInux. I brought a blaster V.90&amp;K56flex
external modem. I want to set up ppp. I set up ppp with this modem and was able
to connect to my ISP with linuxconf. But when I tried to use nestcapte to
access internet. I failed. Can you tell me what problem it is.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 22 Jan 2000 13:18:56 -0800 (PST)
<BR>From: Victor Huang &lt;<A HREF="mailto:vkthuang@yahoo.com">vkthuang@yahoo.com&gt;</A>
<BR>Subject: How to use a printer to print out the result of X window program in red hat linux?

<P> I wrote X window program abd run it in red hat linux. I want to print out
the result with a HP laserjet 4  printer(print out the screen). But I don't
know how to do that? How to save the screen and print out the screen link
Window 98/95? Can you give me some idea?





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 22 Jan 2000 13:20:31 -0800 (PST)
<BR>From: Victor Huang &lt;<A HREF="mailto:vkthuang@yahoo.com">vkthuang@yahoo.com&gt;</A>
<BR>Subject: How to set up HPdeskjet 712c printer in Red Hat Linux?

<P> Can you tell me how to set up HPdeskjet 712c printer in Red Hat Linux? Thank you.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 22 Jan 2000 20:50:08 -0500
<BR>From: inkognito &lt;<A HREF="mailto:inkognito@bay-net.on.ca">inkognito@bay-net.on.ca&gt;</A>
<BR>Subject: linux install

<P> ok i have redhat 6.1 and after i type startx in lilo i get a no screens
found error message i have an ATI Rage 128 AGP with 16mb ram on it and a
viewsonic e771-3 monitor im on 16 bit 800X600 can u help me?





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sun, 23 Jan 2000 12:17:08 -0800
<BR>From: Garry J. NICHOL &lt;<A HREF="mailto:ntp@compuserve.com">102445.562@compuserve.com&gt;</A>
<BR>Subject: compuserve / linux

<P> How do I connect to compuserve from my linux box using the pppd?



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sun, 23 Jan 2000 15:46:09 -0600
<BR>From: Brent Gill &lt;<A HREF="mailto:bgill@iastate.edu">bgill@iastate.edu&gt;</A>
<BR>Subject: Install Problems

<P> Ok, I'm a newbie to Linux...  I'm trying to install Redhat 6.1 on my system 
which already has Win98 installed.  During the install process, I encounter 
several problems.  First, when I'm trying to partition my disk, I always 
get the message "boot partition too big", no matter what the size is.  I 
can proceed with an error message if I make a separate "/" and "/boot" 
partition, however, about 20 seconds later, I get the message "Error in 
isys.py line 8 in umount    System Error 16-device or resource busy".
I downloaded the software, and I'm trying a hard drive install.  Anyone 
have a solution?

<P> thanks.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 24 Jan 2000 14:41:16 -0000
<BR>From: Simon_M_Appleby &lt;<A HREF="mailto:Simon_M_Appleby@email.msn.com">Simon_M_Appleby@email.msn.com&gt;</A>
<BR>Subject: Reconizing other drives via PCMCIA slots

<P> Dear Sirs,

<P> As I am new to Linux and have been given Red Hat 6.1.  I have decided to put this on a Laptop.

<P> My question is this :-

<P> When Red Hat boots up it will default mount all file systems it knows about, including CDROM and/or Floppy (if present).
If I wish to mount a Modem or another floppy (In this case a Iomega Click card) via the PCMCIA slots at the side of the Laptop, how does one achieve this ?.   Are there any HOWTO's that detail this,or can you supply commands.

<P> Thanks

<P> Si





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 25 Jan 2000 20:55:56 +0100
<BR>From: Michiel Doetjes &lt;<A HREF="mailto:pm.doetjes@eagle-i.nl">pm.doetjes@eagle-i.nl&gt;</A>
<BR>Subject: Graphics all messed up...

<P> Hi,

<P> Today I installed my very first Linux system! I guess it works fine, but I have big problems with my graphics card / monitor. 

<P> When I start Linux (using a bootdisk), X-Windows automatically loads. I do see the login screen, but it's far to wide! It's a bit like viewing a 1024x768 screen, while the monitor is set to 640x480.

<P> Specs of my system:
<PRE>
Pentium II Mendecino, 366mhz
64 MB Ram
Intel 740 graphics accelerator, 8mb, AGP
</PRE>

<P> I tried various options using xf86config, but I don't seem to get my graphics card to work. 

<P> After a nervous breakdown, my computer installed my graphics card as a Chips &amp; Technologies Accelerator. This works fine too.

<P> Does anyone know how to solve this problem?

<P> Thanks!

<P> Mike





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 26 Jan 2000 15:19:19 +0800
<BR>From: pgy &lt;<A HREF="mailto:pgy1@263.net">pgy1@263.net&gt;</A>
<BR>Subject: 

<P> I want to sale RedHat Linux 6.0 Offical Installtion Guide's Chinese Version,
but I don't know how to sale this.  Can you tell me?





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Thu, 27 Jan 2000 23:10:11 +0800
<BR>From: Yau Chuan Hoa &lt;<A HREF="mailto:ychoa@tm.net.my">ychoa@tm.net.my&gt;</A>
<BR>Subject: Redhat 6.1 Installation Problem

<P> I tried to install REDHAT 6.1 but it hangs after the graphical partition
page (Ctrl-Alt-F7), when it starts the partition/format process.

<P> I boot using the AutoBoot.bat from DOS (Win98 startup disk).

<P> My system : Pentium 133, with 64 MB of RAM. S3 chipset (correctly detected)
HDD = IBM 1.7GB -&gt; 2 equal primary partitions : FAT16 and ext2 (Partition
magic v4)
<PRE>
hda : hda2, hda3      ??? Where is hda1 ???
</PRE>

<P> Error message : 
<PRE>
&lt;4&gt; hdc : ATAPI reset complete
&lt;4&gt; hdc : cd_rom_decode_status error = 0x34
&lt;4&gt; hdc : cd_rom_decode_ststus = 0x51 {DriveReady SeekComplete Error}
&lt;4&gt; end_request I/O error dev 16:00 (hdc) sector 1190936
&lt;4&gt; end_request buffer-list destroyed
</PRE>

<P> Also, sometimes it hangs for a short while (10-15 seconds) during keyboard
detection, after every mouse click, with the following message
Error loading new keyboard description.

<P> I tried to get support from Redhat, but it is not it is not helpful,
especially in my country, Malaysia.

<P> Thanks.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Thu, 27 Jan 2000 23:44:18 -0600 (EST)
<BR>From: Dr. Pat Fitzpatrick &lt;<A HREF="mailto:fitz@twister.jsums.edu">fitz@twister.jsums.edu&gt;</A>
<BR>Subject: Outgoing mail problem


<P> We are attempting to set up our linux machine such that it can used as a
POP server. On a Windoze machine, Eudora software successfully retrieves
email from the machine. However, when we try to send email through the
linux machine, the email bounces back.

<P> By the way, using email tools such as pine on the linux machines itself
works fine.

<P> I am open to suggestions.




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Fri, 28 Jan 2000 14:30:11 +0100
<BR>From: Giuseppe Luigi Bombelli &lt;<A HREF="mailto:bombelli.giuseppe@sri.enel.it">bombelli.giuseppe@sri.enel.it&gt;</A>
<BR>Subject: Informazioni


<P> Salve a tutti
sono un neofita di Linux, ho installato Linux dal CD di ioProgrammo funziona
tutto a meraviglia solo non so come settare il modem che funziona solo a
9600 pur avendo un modem a 56K della Trust.

<P> Vi chiederei dove eventualmente reperire informazioni su questa operazione,
possibilmente in italiano data la mia scarsa conoscenza della lingua
Inglese.

<P> In attesa di un vostro gentile riscontro porgo cordiali saluti.





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Fri, 28 Jan 2000 08:06:34 -0600
<BR>From: Ian Timshel &lt;<A HREF="mailto:timshel@escape.ca">timshel@escape.ca&gt;</A>
<BR>Subject: Subscription

<P> Hi there.
    Is the Gazette something I can subscribe to or do I need to return to
the site to update.  I also noticed the info on typing tutors was dated from
the fall of 98.  Are you still actively working on this paper?
        Cheers! Ian

<BLOCKQUOTE> <EM>
[You will need to return to the site for the next issue.  Each issue is
posted on the first day of the month.

<P> If you wish, you can subscribe to the announcement list at
lg-announce-request@ssc.com.  Put the single word "subscribe" in the message
body.  Then you will receive an e-mail announcement every month when the
issue is posted.

<P> Our articles are contributions from our readers.  I do not know of
any author planning another typing tutor article.  However, I will
print your letter in the Mailbag to show there is interest in such
an article. -Ed.]
</EM> </BLOCKQUOTE>






<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Fri, 28 Jan 2000 18:14:13 -0000
<BR>From: oliver cameron &lt;<A HREF="mailto:oliver@hii.co.uk">oliver@hii.co.uk&gt;</A>
<BR>Subject: Upgrading to shadow passwords

<P> I am running RH 4.2 and I need to convert my existing etc/passwords file to the shadow passwords format used on a new RH 6.1 installation. Can anyone give me a simple explanation of how to do this? Any help would be greatly appreciated.

<P> Many thanks in advance, Oliver.








<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
21 Jan 00 16:26:47 PST
<BR>From: Mike Craft &lt;<A HREF="mailto:moiloa@netscape.net">moiloa@netscape.net&gt;</A>
<BR>Subject: Driver for ATI Xpert @ Work PCI card


<P>  Hi! girls and boys,

<P>  I'm new user and believer of yhe Linux O.S and I need help badly.I'm looking
for a driver for an ATI Xpert @ Work 8Mb PCI card. Where can I get it?
 
<P>  I'm using a Red Hat 5.2 and my monitor is a Mitsubishi Diamond Scan, model
FA3415AT4 60Hz. HF:15.7 - 35.5 Hz, VF:45 - 80 Hz  Mx Display 800x600

<P>  Could someone help, I would appreciate it a lot. Thanks.



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 24 Jan 2000 16:44:15 +0100
<BR>From: Martial Farad &lt;<A HREF="mailto:mfarad@ifrance.com">mfarad@ifrance.com&gt;</A>
<BR>Subject: probl&egrave;me


<P> Bonjour,
Je sais que ce n'est pas un mail pour les d&eacute;butant qui ne connaissent
rien, mais j'ai vraiment besoin d'aide.
J'ai un lecteur de disquette externe, et je n'arrive pas &agrave; le monter
sous linux. Il me renvoie le message:

<P> Mount: the kernel does not recognize /dev/fd0 as a block device (Maybe
'insmod driver' ?)

<P> Pourriez-vous me dire ce qu'il ne va pas ou me donner une adresse de
site ou e-mail qui pourrais m'aider. Je vous en serai tr&egrave;s
reconnaissant.



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sun, 30 Jan 2000 21:25:49 -0500
<BR>From: Ze'ev Ionis &lt;<A HREF="mailto:zionis@interlog.com">zionis@interlog.com&gt;</A>
<BR>Subject: Running an NT command from Linux (or vice-versa)

<P> I have two PCs on my lan - an NT4sp6 box and a RHLinux6.1 box.  They share a
UPS.  The UPS has hardware and software which will allow it to send a
shut-down command to just ONE box.  That box then has to send a shutdown
command to the other.  I know how to do this if they were both running NT
(there is a command in the NT resource kit to allow you to send a remote
shutdown).  But I have NO idea how to do this from one OS to the other.  Any
ideas?    





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 31 Jan 2000 16:38:49 +0200
<BR>From: Zlotnikov yuri &lt;<A HREF="mailto:zlotniko@macs.biu.ac.il">zlotniko@macs.biu.ac.il&gt;</A>
<BR>Subject: CPU resource distribution

<P> Please, send me any article about CPU resource distribution
(sharing) in Linux. 

<P>Thanks<BR>
Vladimir



<a name="gen"></a>
<P> <hr> <P> 
<!-- =================================================================== -->
<center><H3><font color="maroon">General Mail</font></H3></center>

<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sun, 2 Jan 2000 20:34:49 -0400 (WST)
<BR>From: David Santo Orcero &lt;<A HREF="mailto:irbis@activanet.es">irbis@activanet.es&gt;</A>
<BR>Subject: None





<P>  Hello.


<P>  I tryed ftp link [ftp.ssc.com] with netscape and with ncftp and now it
works fine.

<P>  Yours:

<P> David





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 3 Jan 2000 12:53:35 GMT
<BR>From:  &lt;<A HREF="mailto:rupert.linux@btinternet.com">rupert.linux@btinternet.com&gt;</A>
<BR>Subject: Postscript or HTML editions of Gazette

<P> I've read the FAQ on Gazette distributions.

<P> I would like read the Gazette either as HTML or PDF format.

<P> The FAQ talked about being able to use the "Print to file" option of Netscape
to produce a postscript version of the Gazette which Acrobat viewers would be
able to read (I assume).

<P> I've tried exporting the front page of the Gazette to a postscript file which
netscape the extension PRN onto.
I've tried renaming the extension to PDF to see if the Acrobat viewer would
take the file.   It didn't.

<P> If I can't use Acrobat to view the Gazette, I'm fine using HTML format if I
can get the pages downloaded onto my local PC to view them offline.   Apart
from using a web page archiving program, how else would I be able to view the
Gazette offline?

<P> regs
rupert heesom

<BLOCKQUOTE> <EM>
[If your goal is to read the </EM>Gazette<EM> on screen off-line, download the
FTP files (FAQ question 3).

<P>If your goal is to print the </EM>Gazette<EM>, just use the "Print"
command in your browser.

<P>The FAQ was trying to say that Netscape's "Print to File" option (on Linux)
produces Postscript.  PDF is a different file format from Postscript.  Acrobat
and <CODE>xpdf</CODE> are PDF viewers; <CODE>gv</CODE> is a Postscript viewer.
I have <A HREF="../lg_faq.html#formats_no">reworded</A> the FAQ answer to make
it more clear. -Ed.]
</EM> </BLOCKQUOTE>



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 04 Jan 2000 02:47:59 +0000
<BR>From: Malcolm Macsween &lt;<A HREF="mailto:malcolm@arcadia.softnet.co.uk">malcolm@arcadia.softnet.co.uk&gt;</A>
<BR>Subject: The Answer Guy LG #49 - psychic, already .....

<P> The answer guy is really excelling himself this month ....


<P> How exactly did he help me to fix my Mosix cluster on the Linux 2.4 SMP
cluster in Oct , 2000 - I've forgotten already. Sorry - maybe you can
refresh my memory .... perhaps my memory management module is faulty,
but I seem to have forgotten the whole year.

<BLOCKQUOTE> <EM>
[The </EM>Gazette<EM>'s Y2K problem was a result of Jim's time machine coupled
with my too-successful attempt to change the copyright dates in bulk.  The
dates are
<A HREF="http://www.linuxgazette.com/issue49/lg_answer49.html">fixed now</A>.
-Ed.
</EM> </BLOCKQUOTE>



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Thu, 06 Jan 2000 16:41:01 -0500
<BR>From: Anderson Silva &lt;<A HREF="mailto:afsilva@liberty.edu">afsilva@liberty.edu&gt;</A>
<BR>Subject: [Fwd: type, tepy, tpey, ytep, type...]


<P> There is a mistake in the Developing Web Application Article (Jan 2000).

<P> AS

<P> -------- Original Message --------

<P> Content-Transfer-Encoding: 7bit

<P> "...how to create your won guest book..."

<P> And if there are two thousand people pounding away in it then we'll have
a won ton guest book.

<BLOCKQUOTE> <EM>
[Fixed.  Do I get a fortune cookie? -Ed.]
</EM> </BLOCKQUOTE>



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 11 Jan 2000 23:02:40 +0100
<BR>From: Reinhold Baldauf &lt;<A HREF="mailto:rbaldauf@nikoma.de">rbaldauf@nikoma.de&gt;</A>
<BR>Subject: Abo

<P> Hi out there,
please tell me, how i can get the gazette regularly - i'm living in
germany
Kind regards 


<BLOCKQUOTE> <EM>
[Linux Gazette comes out the first day of each month at www.linuxgazette.com
and its mirrors, including four in Germany.  Please see
<A HREF="http://www.linuxgazette.com/mirrors.html">
www.linuxgazette.com/mirrors.html</A> and
<A HREF="http://www.linuxgazette.com/lg_faq.html">
www.linuxgazette.com/lg_faq.html</A> -Ed.]
</EM> </BLOCKQUOTE>



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 12 Jan 2000 09:25:33 -0800
<BR>From: Marjorie Richardson &lt;<A HREF="mailto:mlr@ssc.com">mlr@ssc.com&gt;</A>
<BR>Subject: SuSE reseller not playing fair in Uruguay

<P> From comp.os.linux.announce:

<P> <A HREF="http://www.linuxstart.com/~rodolfo/openletter.html">
http://www.linuxstart.com/~rodolfo/openletter.html</A>



<P>   These pages are a open letter to the Linux Community signed by a
group of users to show the problems that they are living with the name
LINUX in Uruguay.


<P>  Uruguayan SuSE reseller wish to obtain exclusive rights on the
LINUX name

<P>  With No. 316.081 of  August 30, 1999 has been filed before the
Uruguayan Trademark Office a trademark application for registration of
the LINUX name to International class 42 (computer related services).
This application has been filed by Mr. Francisco Pereira and Mr.
Enrique  Place de Cuadro, addressed at 1207 Pedro Berro Street, Esc.
603, of  Montevideo, Uruguay.  In accordance with the official
publication from the Industrial Property Bulletin No. 6 of December
1999. 
   Mr. Pereira and Place are part of the firm called LinuxTECH who is
the reseller of the SuSE Linux distribution for Uruguay. 
  This is a improper proceeding by somebody to obtain exclusive rights
over the LINUX name through the known way to register the trademark in
the own name. 
   Since Mr. Pereira and Mr. Place have started their activity in
Uruguay with LinuxTECH company they have not stopped to looking for
seize exclusive commercialization of Linux in Uruguay: 
                                       

<P>  Firstly, they obtain the exclusive representation to sell SuSE
distribution, with which they prevented that anybody can import SuSE
Linux, as several people of the Uruguayan community came doing. This
has been resisted by some users who, by means of protest, have
obtained that German SuSE send the new distritutions directly to them.
  Immediately they created its own company calling with a copy of the
wellknown Suisse company LINUXTECH. Of course, they also filed their
own trademark application LINUXTECH under No. 316.082 saying thath the
name LINUXTECH is of their own property. 
   Into their commercial name they do not doubt to place the word
LINUX (LinuxTECH). Without any doubt the use of the world LINUX  in
the commercial name allows they to rise to the prestige that enjoys
LINUX in the market, taking advantage of the freedom that enjoys LINUX
for its generalized use. (Nobody would be happend to  initiate a
computer company called MicrosofTECH of  WindowsTECH, seeing that
without doubts it would have legal troubles). 
 Afterwards, they register under the .uy DNS the domain
www.linux.com.uy, being  in the  knowledge that the Uruguay Linux User
Group have and use the domain www.linux.org.uy since 1997. With this
action Mr. Pereira and Mr. Place want to "capture"  the unprepared
internaut who looking to accede to the UYLUG site falls in their
pages. 
 Finally, they try to make official the deffinitive apropriation of
the LINUX name appling the registration in their behalf. 

<P>   The Uruguay Linux User Group -UYLUG- through representatives of
their Board of Directors has tried to dialog  with Mr. Pereira and
Place to obtain at least the withdrawal to their improper application
of registration but without any doubt, it is facing people which use
aggressive commercial tactics and do not know the opening principles,
cooperation and solidarity that exist into  the Linux community. 

<P>   From already the Uruguay Linux User Group will take ahead all the
legal and out-legal actions to obtain these two people do not see made
the LINUX  name total control.

<P>        Montevideo, January 6,2000 

<P>                                                     Signed by:


<P>   Pablo Boix, Federico Gamio, Heber Godoy, Manuel Perez, Rodolfo
Pilas, Andres Tarallo





<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Sat, 15 Jan 2000 21:13:28 -0700
<BR>From: Warren Young &lt;<A HREF="mailto:tangent@cyberport.com">tangent@cyberport.com&gt;</A>
<BR>Subject: More history!

<P> I <STRONG>really</STRONG> enjoyed the "history of rm and rmdir" article in
your January issue.  More, more!



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Mon, 17 Jan 100 13:55:38 GMT
<BR>From:  &lt;<A HREF="mailto:jgomsi@apolo.umh.es">jgomsi@apolo.umh.es&gt;</A>
<BR>Subject: issue49.html not loading

<P> Hi,

<P> I just want to say that from home with my 56K modem I can't load
the html_in_a_file Linuxgazette (Not Explorer neither Navigator).

<P> But here at university I can do it from a fast
mirror.

<BLOCKQUOTE> <EM>
[A few people have experienced this.  The cause is not known.  What happens if
you use another mirror? -Ed.]
</EM> </BLOCKQUOTE>




<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Tue, 18 Jan 2000 00:55:05 -0600
<BR>From: PJ Wessel &lt;<A HREF="mailto:ibi@greencis.net">ibi@greencis.net&gt;</A>
<BR>Subject: To The Editor

<P> Dear Editor,

<P> I recently wrote an article, The Penguin and Me, which appeared in the
January Issue of Linux Gazette. I am thrilled at the response from your
dedicated readers, but feel I must reply publicly to some misconceptions
on my part that proved to be incorrect.

<P> First and formost I must make clear that my experiences, although very
limited, are with the Linux-Mandrake 6.0 distro only. I have no
experience with or personal knowledge of any other Linux distribution.

<P> Linux-Mandrake, 6.0 is compiled for Pentium machines. It will not run
under 386 or 486 machines. However, early versions of Mandrake such as
5.3 which was optimized for the Pentium processor should run very well.
Thanks to Civileme, of the Mandrake "Expert" group, I now understand
that other distributions may vary, and, many of them are compatible with
the 386 and 486 processors.

<P> Linux does not support all dual processor motherboards. However, all
motherboards should support dual-boot systems.

<P> I apologize for any inconvenience my comments may have caused. 

<P> Thank you for the opportunity to apolgize to the Linux community, to the
gentle readers who have generously given their time to comment, and to
the publisher of Linux Gazette. 



<P> <HR> <P> 
<!--====================================================================-->
<IMG ALT=" " SRC="../gx/envelope.gif">
Wed, 19 Jan 2000 10:54:39 +0100 (CET)
<BR>From: Dipl.-Stat. Detlef Steuer &lt;<A HREF="mailto:steuer@statistik.uni-dortmund.de">steuer@statistik.uni-dortmund.de&gt;</A>
<BR>Subject: January 2000: The Hunger Site

 
<P> Thank you very much especially for the link
to the hunger site!

<P> PS: I like the Gazette, too :-)








<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>
This page written and maintained by the Editor of the <I>Linux Gazette</I>.
Copyright &copy; 2000, <A HREF="mailto:gazette@ssc.com">gazette@ssc.com</A><BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->

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

<center>
<table cellpadding=7><tr><td>
<IMG SRC="../gx/bytes.gif" border=1  ALT="News Bytes">
</td><td>
<H3>Contents:</H3>
<ul>
<li><a HREF="#distro">Distro News</A>
<li><a HREF="#general">News in General</a>
<li><a HREF="#software">Software Announcements</a>
</ul>
</td></tr></table>
</center>



<P> <hr> <P> 
<!-- =================================================================== -->

<center><IMG ALT=" "   SRC="gx/cover70.jpg" WIDTH=200 HEIGHT=268></center>
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<font color="green">
February 2000 <I>Linux Journal</I>
</font>
</H3>
<P> 
The February issue of <A HREF="http://www.linuxjournal.com/"><I>Linux
Journal</I></A> is on the newsstands now.
This issue focuses on Linux on the desktop.

<P> <I>Linux Journal</I> has articles that appear "Strictly On-Line".
Check out the Table of Contents at
<A HREF="http://www.linuxjournal.com/issue70/index.html">
http://www.linuxjournal.com/issue70/index.html</A> for articles in 
this issue as well as links to the on-line articles. 
To subscribe to <I>Linux Journal</I>, go to <A
HREF="http://www.linuxjournal.com/subscribe/index.html">
http://www.linuxjournal.com/subscribe/index.html</A>.

<P> 
<font color="green">
For Subcribers Only</font>: <I>Linux Journal</I> archives are available 
on-line at 
<A HREF="http://interactive.linuxjournal.com">
http://interactive.linuxjournal.com/</A> 


<a name="distro"></a>
<p><hr><p>
<!-- =================================================================== -->
<center><H3><font color="green">Distro News</font></H3></center>

<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Best
</FONT>
</H3> 


<P> Technology Center Hermia, Tampere, Finland - December 28, 1999 

<P> SOT, publisher of the #1 Linux in Finland - the home country of 
Linux and Linus - today released the beta version of their 
Best Linux operating system to English-speaking users around
the globe.

<P> "We now have over 3300 registered T-1 beta testers. They will
be providing us important feedback, suggesting new features
and testing the product thoroughly. I believe that this beta 
release is more stable and has better hardware support than 
any of the final distributions currently available." said 
Santeri Kannisto, CEO, SOT. "Happy Y2K!"

<P> The English beta version is called Best Linux T-1. SOT will 
start shipping the CD-ROMs free-of-charge to registered beta 
testers this week. A ready-to-burn iso image is also available 
for those who don't want to wait for snail mail. Direct links 
to the image and additional information are available at 
the Best Linux web site, http://bestlinux.net

<P> SOT will also distribute CDs from its offices in Tampere, 
Helsinki and Tallinn. Detailed contact information is available 
at <A HREF="http://www.sot.com">http://www.sot.com</A>

		





<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Caldera
</FONT>
</H3> 

<P> As part of its "Linux for eBusiness" strategy, 
Caldera Systems, Inc. has announced that its 
soon-to-be introduced OpenLinux eServer will 
ship with IBM open-source e-commerce products... 
<A HREF="http://www.ecommercetimes.com/news/articles2000/000124-8.shtml">
http://www.ecommercetimes.com/news/articles2000/000124-8.shtml</A> 



<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Corel
</FONT>
</H3> 

<P> Ottawa, Ontario - January 18, 2000 - Corel Corporation  today announced it
has entered into an agreement to acquire up to a 30 per cent stake in
OE/ONE.com, a start-up company developing an "Information Appliance" platform
or thin-client Internet Appliance platform.

<P> Founded by former Corel executive Eid Eid this past year, OE/ONE.com has
developed a software tool kit, specifications and an industrial design for
the product, and is currently working with OEMs - including Tier One
consumer electronics manufacturers - to develop the appliance, expected to
hit the market in the sub-US $500 range.

<P> Corel will assist OE/ONE.com in implementing many Corel LINUX features
with the OE/ONE.com software. By leveraging what Corel has done with the
File Manager, Browser, Control Center and GUI (graphical user interface),
OE/ONE.com can bring ease-of-use at the screen and display level to the
Information Appliance while running on Linux's stability and performance. At
the same time, Corel will develop a scaled-down version of the Corel LINUX
OS optimized for specific devices and applications.

<P> Corel has also released WordPerfect Office 2000 Beta for Linux
on its online beta testing sites.
<A HREF="http://www.ecommercetimes.com/news/articles2000/000131-1.shtml">
http://www.ecommercetimes.com/news/articles2000/000131-1.shtml</A>




<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Mandrake
</FONT>
</H3> 

<P> Linux-Mandrake 7.0 (Air) has been released.
<A HREF="http://www.linux-mandrake.com">http://www.linux-mandrake.com</A>




<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Red Hat
</FONT>
</H3> 

<P> Red Hat announced 
this week that it has begun shipping a new version of its 
Linux OS for Compaq Alpha computer systems... 
<A HREF="http://www.ecommercetimes.com/news/articles2000/000113-5.shtml">http://www.ecommercetimes.com/news/articles2000/000113-5.shtml</A>




<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">SuSE
</FONT>
</H3> 


<P> San Francisco, CA - January 4, 2000 - SuSE is announcing the availability
of a beta-quality version of SuSE Linux 6.3 for the Macintosh PowerPC at
MacWorld in San Francisco. The sales release of SuSE Linux for Power PC is
planned for this spring. Offering SuSE Linux on PowerPC supports SuSE's
strategy of cross-platform availability.

<P> Nuremberg, 17th January 2000 -- SuSE Linux AG, one of the leading Linux
specialists worldwide, is continuing to expand its support services. The
opening of a new support center in Bremen is directly connected to the
worldwide success of SuSE Linux AG's existing support services. The
declared aim of SuSE Linux AG is to continue with this success, and to
meet the continually growing demand in the area of support services for
Linux.
The Support Center in Bremen will begin operating on February 15, 2000.

<P> Langenhagen/Nuremberg, Germany - 19 January 2000 - SuSE has teamed up
with Minolta to facilitate printer support. The resultant benefits are
significant. Linux users can now enjoy high-quality output from the
Minolta PagePro 8, 18 and 25 monochrome laser printers. The recently
launched Version 6.3 of SuSE Linux features a driver utility that also
includes installation support for the PagePro 8, 18 and 25 printers. In
practical terms, this means that these Minolta printers will be visible
and selectable in the Linux user's windows and functions such as paper
trays, mail bins, etc., will also be easily selectable - an important
consideration for printers with hundreds of individually customizable
configurations. Another practical advantage is that Minolta has just
launched an extended version of its network management utility, PageScope,
to make life easier for Linux network administrators.












<a name="general"></a>
<p><hr><p>
<!-- =================================================================== -->
<center><H3><font color="green">News in General</font></H3></center>


<P> <hr> <P> 
<!-- =================================================================== -->
<A NAME="transmeta"></A>
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Transmeta secrecy lifted
</FONT>
</H3> 

<P> Transmeta, the company that employs Linus Torvalds, has finally let the
world in on what it has been working on.  On January 19, Transmeta announced
a line of Crusoe CPUs.  These chips utilize Code Morphing (TM) software to
emulate other CPUs (most notably, Intel x86)--this is the part Linus was
working on.  

<P> Transmeta is also creating a Linux distribution called Mobile Linux for
computers without hard disks, with enhancements in the areas of power
management and efficient memory use.  The distribution will not be sold to
the public, however.  Instead, it will be offered to OEMs so that they can
have an operating system to go with their new chip.  Transmeta promises to
release Mobile Linux as open-source software.

<P> The information above was gathered from Transmeta's web pages
<A HREF="http://www.transmeta.com">www.transmeta.com</A> (also known as
<A HREF="http://www.crusoe.com">www.crusoe.com</A>), and especially from
the FAQ
<A HREF="http://www.transmeta.com/about/faq.html">
http://www.transmeta.com/about/faq.html</A>.

<P> Analyses from the industry:
<UL>
<LI> <A HREF="http://www.zdnet.com/zdtv/zdtvnews/features/story/0,3685,2119139,00.html">
Transmeta's Mystery Unveiled</A>
<LI> <A HREF="http://www.linuxjournal.com/articles/business/030.html">
Transmeta: So Now We Know</A>
<LI> <A HREF="http://www.linuxjournal.com/articles/conversations/012.html">
Studly Work: Talking Transmeta with Linus Torvalds</A>
<BR><EM>Includes a discussion by Linus on what exactly is in Mobile Linux.</EM>
</UL>




<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Linux curriculum begins today in Utah Public Schools
</FONT>
</H3> 

<H4>DATC press release--</H4>

<P> I am proud to announce what I believe to be the first ever Linux-based
class to be held in any public school.  Today begins the start of Linux'
inroads into the mainstream educational arena here at the Davis Applied
Technology Center (http://www.datc.tec.ut.us) .

<P> The class itself, Introduction to GNU/Linux, is a course designed for
people who have had some experience in computers, but do not know what
Linux is, or how it operates. It does require some hands-on experience
with computers, but only to make sure that students understand basic
hardware and software concepts.  It is also the fruit of a survey
question asked of the Linux community in October's issue of the Linux
Gazette (http://www.linuxgazette.com/)

<P> This coursework (version 0.99) is currently in the process of gaining
distribution approval by the Utah Attorney General's office, so that it
can be posted in whole to the Linux Documentation Project. (This is
because the State of Utah holds the ultimate copyright - I forsee no
problems in gaining approval, however.) Once the curriculum is posted,
it will be distributed under the auspices of Open Documentation, which
means that it can be distributed and used much like Open Sourced
software. A full declaration and conditions sheet is included in the
document concerning the use and distribution of this curriculum.

<P> The curriculum can be used as a self-paced/self-study guide (as is our
normal mode of classwork here at DATC) or you can just as easily use it
as an instructor's guide on the secondary educational level. I would
also encourage those teaching undergrad-level college or technical
courses to make full use of this document, once it is posted on the LDP.

<P> I actively encourage all public school instructors to use this guide,
and especially encourage all interested parties (be they teachers,
students, or simply IT sysadmins) to feel more than free to mail me with
constructive criticisms, suggestions for addition to this coursework, or
even technical corrections. (Although I have tested all of the labs and
coursework here, there may be some things I still may have missed.)  Any
questions about the course in general can be directed to me at
tjmiller@datc.tec.ut.us As an aside, I am also actively working to add
Sair Inc. Linux certification (http://www.linuxcertification.com) to the
list of courses as well, since DATC also offers Novell, Cisco, and
Microsoft MCP/MCSE courses.

<P> My goal in writing this curriculum is simple: To bring Linux out of the
back offices and hobbyists' desktops, and into the minds (and the
hearts) of IT's future - the Comp Sci students of today. I find that the
schools are where students discover and incorporate their loves and
hates of the computer industry, and the sooner they can get started on
learning the mysteries of Linux, the greater the benefits to the
GNU/Linux movement in general.


<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">"Open-source" Books
</FONT>
</H3> 

<P> <A HREF="http://forums.oreilly.com/~publishing">
http://forums.oreilly.com/~publishing</A>

<P>   The groundswell of Open Source, or free software, technologies has
  created a sea change in commercial book publishing. Several
  publishers, including O'Reilly &amp; Associates, have started offering
  books under various open-content licenses so that they can be freely
  displayed on Internet sites, distributed with software on CD-ROMs,
  taken apart to be used for course handouts, and in some cases
  printed by other people besides the original publisher. As
  revolutionary for the publishing industry as this distribution
  mechanism is, some projects go even further to work directly with
  the developers of Open Source projects. We are likely to see the
  integration of professionally edited and produced documentation into
  the model of Open Source development over the next few years.

<P>   Having recently finished one project myself under an open-content
  license -- Using Samba -- and having started work on several other
  such projects, I'd like to invite all interested persons to a
  discussion on how the Open Source community and professional
  publishers can

<P>   1. Involve developers of open source software more directly in the
     development of high-quality guides and other
     professionally-edited content.

<P>   2. Find the development models for open documents that work well
     with the successful models used for open-source software.

<P>   There are many angles to consider -- quality control, Internet-time
  release schedules, the big-picture thinking required to keep the
  book's balance and structure strong during updates, risks and
  benefits of forking, adequate compensation for writers and
  publishers, dealing with the natural tendency to want to hide work
  in progress with competitive publishers -- so take your pick and
  give us a thoughtful post!

<P> 
-Andy Oram, Editor, O'Reilly &amp; Associates, Inc.<BR>
<A HREF="mailto:andyo@oreilly.com">andyo@oreilly.com</A>



<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Linsight launches
</FONT>
</H3> 

<P>
Linsight is the professional approach toward providing a single and complete information resource for Linux.  By providing resources for interested readers, Linsight will advocate Linux to an entirely new audience and raise awareness of the operating system to new markets.  The need for a complete Linux information resource will be met, and Linsight stands ready to accomplish this goal.
<P>
Phase 1 of Linsight, launched today, is comprised of two resources:
<P><B>LinEvents:</B>

<P> <P> LinEvents (<A HREF="http://linevents.com/">http://linevents.com</A>)
exists to make information pertaining to upcoming events that are related
to Linux and Free Software/Open Source accessible. 

<P> <P> LinEvents has been created to achieve the following goals: 

<P> <P>
<OL>
<LI>To provide a single and authoritative resource of all upcoming events, both geographically limited and world-wide. 
<LI>To assist interested Linux users in finding local Linux user groups. 
<LI>To assist interested Linux users in making informed decisions about upcoming events, and their importance to the community. 
<LI>To provide additional content for LinTraining through an upcoming workshop listings directory. 
<LI>To assist non-United States markets in locating geographically local events. 
</OL>

<P> <P> <B>LinTraining</B>:

<P> <P> LinTraining (<A
HREF="http://lintraining.com/">http://lintraining.com</A>) exists to make
information pertaining to Linux training and certification accessible.  

<P> <P> LinTraining has been created to achieve the following goals: 

<P> <P>
<OL>
<LI>To provide a resource where interested individuals can easily locate available Linux training resources. 
<LI>To publicize the classes that are provided by Linux training centers. 
<LI>To provide resources for training centers who want to start teaching Linux classes. 
<LI>To encourage courseware publishers by proving that there is a market for Linux courseware material. 
<LI>To promote the ongoing efforts to create a Linux certification program. 
</OL>

<P> <P> Linsight (<A HREF="http://linsight.com/">http://linsight.com/</A>) is
founded by Dave Whitinger, co-founder of Linux Today, and is wholly owned
by Atipa Corporation.



<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">IDG/Linus Torvalds Community Award
</FONT>
</H3> 

<P> Framingham, Mass. - January 3, 2000 - IDG World Expo today announced that The XFree86 Project, Inc. is the recipient of the February 2000 IDG/Linus Torvalds Community Award. IDG Chairman and Founder, Patrick J. McGovern and Linux creator Linus Torvalds will present the $25,000 award at LinuxWorld Conference &amp; Expo, following Torvalds' keynote address on Wednesday, February 2, 2000 at the Jacob Javits Center, New York City, NY. 

<P> "The XFree86 Project embodies the essence of the free software movement," said Charlie Greco, IDG World Expo president and CEO. "Their work on the upcoming release of Xfree86 with Linux vendors like SuSE, VA Linux Systems and Red Hat ensures Linux compatibility with future releases of Xfree86." 

<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Software Carpentry's Open Source design competition
</FONT>
</H3> 

The aim of the <a href="http://www.software-carpentry.com">Software
Carpentry</a> project is to create a new generation of easy-to-use
software engineering tools, and to document both those tools
and the working practices they are meant to support. 
The <a href="http://www.acl.lanl.gov">Advanced Computing
Laboratory</a> at <a href="http://acl.lanl.gov">Los Alamos
National Laboratory</a> is providing $860,000 of funding for
<a href="http://www.software-carpentry.com">Software Carpentry</a>,
which is being administered
by <a href="http://www.codesourcery.com">Code Sourcery, LLC</a>.
All of the project's designs, tools, test suites, and documentation
will be generally available under the terms of an Open Source
<a href="http://www.software-carpentry.com/license.html">license</a>.  

<p> The first stage of the <a
href="http://www.software-carpentry.com">Software Carpentry</a> project
is a <a href="http://www.software-carpentry.com/contest-rules.html">design competition</a>,
with $100,000 in prizes for entries in four categories:

<ul>

<li>
a dependency management and program reconstruction tool to to supercede
<a href="http://www.gnu.org/software/make/make.html"><tt>make</tt></a>;
</li>

<li>
a platform investigation and project reconfiguration tool to supercede
<a href="http://sourceware.cygnus.com/autoconf"><tt>autoconf</tt></a>;
</li>

<li>
a testing framework to replace tools such as
<a href="http://www.xprogramming.com/software.htm"><tt>XUnit</tt></a>,
<a href="http://expect.nist.gov/"><tt>Expect</tt></a>,
and
<a href="http://www.gnu.org/software/dejagnu/dejagnu.html"><tt>DejaGnu</tt></a>;
and
</li>

<li>
an issue tracking system to supercede
<a href="http://sourceware.cygnus.com/gnats"><tt>gnats</tt></a>
and
<a href="http://bugzilla.mozilla.org"><tt>bugzilla</tt></a>.
</li>

</ul>

<p> Entries will be published on the web, along with the judging
panel's comments, in order to encourage discussion, and provide
examples of good practice for the community at large.

<p> Once winners have been announced, the project will provide
$200,000 for implementation, review, testing, and documentation.  All
tools will be required to run on both Linux and Microsoft
Windows&nbsp;NT, and to be implemented primarily in, or scriptable
with, <a href="http://www.python.org">Python</a>.

<P> For more information, please see the Software Carpentry web page
(<A HREF="http://www.software-carpentry.com">www.software-carpentry.com</A>).

<P> Greg Wilson
gvwilson@nevex.com
(416) 593 2428





<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Wave Technologies acquires Sair
</FONT>
</H3> 

<P> 	ST. LOUIS, January 11, 2000--
Wave Technologies International, Inc. 
(<A HREF="http://www.wavetech.com">www.wavetech.com</A>),
has acquired Sair, Inc. (<A
HREF="http://www.linuxcertification.com">www.linuxcertification.com</A>). Sair
develops comprehensive vendor-neutral Linux training materials and is the
architect of  the Sair Linux &amp; GNU Certification and its associated exams.
Terms of the agreement were not disclosed.

<P> Wave intends to continue a separate Sair Linux &amp; GNU subsidiary that will
promote and market  Linux training and certification programs.  The combined
organizations will pursue four major strategic initiatives consisting of:

<P> 1. Original Equipment Manufacturer (OEM) sales of training materials. The companies have disclosed existing development agreements with Compaq, Linuxcare, Caldera(r) and others.  

<P> 2. Certification Exams.  Wave's strategic focus has been on IT
certification, and Wave plans to support and continue to expand its
certification programs including boot camps currently delivered for individuals
pursuing the Linux Professional Institute certification,  the Red Hat(
Certified Engineer designation and the Sair Linux &amp; GNU Certification.

<P> 3. Boot Camp Programs. Wave currently offers intensive integrated training
programs that provide self study, Internet-based training and intensive live
labs targeted at major certifications.  Wave and its global network of
independent distributors plan to expand Linux certification training programs.

<P> 4. Publishing and Distribution. The company plans to expand its
distribution of courseware under Sair's existing Authorized Centers for
Education (ACE) program and to leverage Wave's existing global distribution
network for expanded training sales and distribution.

<P> Founded in 1992, Sair is a leading provider of live Linux certification
exams. The Sair Linux &amp; GNU Certification is comprised of three levels, each
containing four exams. Sair has a contract with Sylvan Prometric for delivery
of the 12 Sair Linux &amp; GNU exams, making them available to more than 140
countries. To date, four exams have been submitted to Sylvan for delivery. The
three levels of certification include: Level I- Sair Linux &amp; GNU Certified
Administrator (LCA); Level II-Sair Linux &amp; GNU Certified Engineer (LCE); and
Level III-Master Sair Linux &amp; GNU Certified Engineer (MLCE). 





<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Linuxnerds certification test wants contributions
</FONT>
</H3> 

<P> <A HREF="http://Linuxnerds.com">Linuxnerds.com</A> is attempting to
assemble a comprehensive Linux certification test.  This test would be issued
over the web at no cost the Linux community.  At this time we at Linuxnerds.com
would like to request contributions in the form of question and answer for
inclusion.  People whose questions are included will be given credit for them.
Questions should be submitted to Questions@Linuxnerds.com in essay form and
elicit an explanation not true/false or multiple choice.  On 1/30/2000 we
hopefully, as a community, will sort through the contributions and post a draft
certification test by 2/15/2000 with a final copy posted by 3/1/2000.  Comments
and questions concerning this announcement should be sent to <A
HREF="mailto:Nerd@Linuxnerds.com">Nerd@Linuxnerds.com</A>.












<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Colorado Linux Info Quest conference
</FONT>
</H3> 

<P> Denver, CO (Jan 17, 2000) -- In response to the tremendous growth of Linux 
over the past few years, Colorado Linux Info Quest (CLIQ) is proud to announce
the first ever Linux conference and exhibit to be held along the Colorado
Front Range, Saturday, April 1st, 2000 at the Denver Tech Center Marriott.

<P> CLIQ, in association with local Linux user groups and local and regional
Linux business sponsors, will be holding a one day event featuring a full days
schedule of Linux exhibits, invited talks, real world demonstrations and Birds
of a Feather sessions. 

<P> Vendors and visitors should check the CLIQ web site, http://thecliq.org, 
often for more up to date information.








<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Embedded Linux Polls from LinuxDevices.com
</FONT>
</H3> 


<P> PALO ALTO, CA., December 12, 1999 -- LinuxDevices.com, the popular 
embedded Linux portal, today launched the web's first automated 
Embedded Linux Polls center.  The online polls will track developer 
and user trends and preferences in the hot emerging market for Linux 
in non-desktop "embedded" system applications.  These are non-desktop 
applications for computers where the device is not itself considered 
a computer, such as ATM machines, internet kiosks, industrial process 
control, medical instruments, and telecommunications devices.

<P> "In contrast to the desktop PC domain" says LinuxDevices.com founder 
Rick Lehrbaum, "Microsoft doesn't dominate the embedded space." 
"The big players, here, have until recently been Wind River Systems 
(VxWorks), Microtec (VRTX), Microware (OS9), QNX Software Systems 
(QNX OS), and Lynx Real-time Systems (LynxOS)," adds Lehrbaum. 

<P> "Although over the past year, Microsoft has made a strong play for 
the embedded space with a dual -- though somewhat confused -- approach 
consisting of both Windows CE and Windows NT Embedded, most embedded 
developers are wary of designing a Microsoft desktop or palmtop 
operating system into small footprint or real-time embedded applications 
where performance and reliability are paramount," continues Lehrbaum. 
"Against this backdrop, the ability of developers to tune and customize 
Linux, in combination with its well known robustness, has made Linux 
a growing alternative to both the Microsoft Windows OSes and the 
traditional proprietary RTOSes," concludes Lehrbaum.  

<P> Through its new Embedded Linux Polls function, LinuxDevices.com intends 
to measure and characterize current and future preferences and trends of 
embedded system developers.  Like Linux itself, the polls data collected 
by LinuxDevices.com will be fully available for all to review once 
each weekly poll has closed.  A new poll will be held each week, with the 
results of past polls readily available for inspection.  Users and 
prospective users of Linux in embedded applications are encouraged 
to participate in the polls, which can be found at 
http://www.linuxdevices.com/polls.  Companies or developers are also 
invited to submit proposed poll questions to LinuxDevices.com via email, 
at polls@linuxdevices.com.







<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Linux Links
</FONT>
</H3> 

<P> <A HREF="http://pegasus.rutgers.edu/~elflord/font_howto/">
Linux font HOWTO</A> (from C.O.L.A.)

<P> <A HREF="http://www.inux.com">iNUX inc.</A> sells Linux desktop computers
"distinguished by the stunning and interactive 3D graphics of our intuitive
user interface. Upon system start-up, users are presented with comfortable
access to ten, instead of just one, computer desktops."

<P> <A HREF="http://myfreedesk.com">MyFreeDesk.com</A> offers a suite of office
applications run directly on their web site.

<P> <A HREF="http://www.sasi.com">Linux-based DSL modem</A>.  (Silicon Automation
Systems Limited)

<P> <A HREF="http://www.linuxlinks.com">LinuxLinks</A> reached just over 8,000
verified LinuxLinks after the new Millennium.  This represents a rapid increase
in the number of new links entered into database per month and further
demonstrates the continuing expansion of quality websites on the net covering
Linux.

<P> <A HREF="http://www.linuxnetmag.de/en/">LinuxNetMag</A> is a Linux ezine
published in German and English.

<P> The <A HREF="http://www.lpi.org">Linux Professional Institute</A> has
released the first exam in its Linux certification program.

<P> <A HREF="http://linuxdevices.com/cgi-bin/article_view.cgi?artid=AT7351624613">
Interview with Red Hat CTO Michael Tiemann</A>

<P> <A HREF="http://gettux.com">GetTux.com</A> offers SubX: HowTo Edition, a
monthly CD-ROM containing Linux HOWTOs and kernel updates.  The cost is US$10
per month.  A portion of each subscription cost will be donated to the Linux
Documentation Project.

<P> <A HREF="http://www.linu-x.com">www.linu-x.com</A> is a Linux 
news/download portal.




<a name="software"></a>
<P> <hr> <P> 
<!-- =================================================================== -->
<center><H3><font color="green">Software Announcements</font></H3></center>

<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">C.O.L.A software news
</FONT>
</H3> 

<P> <A HREF="http://pysol.tsx.org">PySol 3.30</A> now contains 160 solitaire
games.
It even has its own <A HREF="http://www.geekcomix.com/si/fall99/10-23.html">
comic strip episode</A>.

<P> <A HREF="http://home.zf.jcu.cz/~zakkr/kim/">kim</A> is an interactive
user-friendly process manager.  It looks similar to Midnight Commander.


<P> <hr> <P> 
<!-- =================================================================== -->
<H3><IMG ALT=" "   SRC="../gx/bolt.gif">
<FONT COLOR="green">Other software
</FONT>
</H3> 

<P> <A HREF="http://www.ibss.net">Integrated Business Systems &amp; Services,
Inc.</A> has certified Synapse Manufacturing and Synapse EAI+ for Linux.

<P> <A HREF="http://www.cygnus.com">Cygnus</A>, which recently merged with
Red Hat, announced a software development environment for 
Nintendo's Game Boy Advance video game system.


<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>
This page written and maintained by the Editor of the <I>Linux Gazette</I>.
Copyright &copy; 2000, <A HREF="mailto:gazette@ssc.com">gazette@ssc.com</A><BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->

<H3>Contents:</H3>
<p><a href="#tag/greeting"
	><img src="../gx/dennis/bbub.gif" alt="(!)" border="0" 
	align="middle"><strong>Greetings From Jim Dennis</strong></A></p>

<DL>
<!-- index_text begins -->
<dt><A HREF="#tag/1"
	><img src="../gx/dennis/bbub.gif" height="28" width="50"
	  alt="(!)" border="0"
	></a>DNS ports... --or--
<dd><A HREF="#tag/1"
	><strong>DNS Ports: A bit about Name Resolution Protocols</strong></a>

<dt><A HREF="#tag/2"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Seagate SCSI tape problem --or--
<dd><A HREF="#tag/2"
	><strong>Tape Drive Errors</strong></a>

<dt><A HREF="#tag/3"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>DAT --or--
<dd><A HREF="#tag/3"
	><strong>Drivers for SCSI/DAT Tape Drives</strong></a>

<dt><A HREF="#tag/4"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Linux password lost --or--
<dd><A HREF="#tag/4"
	><strong>Lost Password</strong></a>

<dt><A HREF="#tag/5"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>WUFTP and authentication --or--
<dd><A HREF="#tag/5"
	><strong>When AUTH is ident, not Authentication</strong></a>

<dt><A HREF="#tag/6"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Linux box as a router: Kewl! --or--
<dd><A HREF="#tag/6"
	><strong>How do you say "Dial on Demand"</strong></a>

<dt><A HREF="#tag/7"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>ans guy ? --or--
<dd><A HREF="#tag/7"
	><strong>Looking for ...</strong></a>
<br>TAG, we're it.
<dt><A HREF="#tag/8"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>+routing -masquerading --or--
<dd><A HREF="#tag/8"
	><strong>Hello Routing, Goodbye Masquerading</strong></a>

<dt><A HREF="#tag/9"
	><img src="../gx/dennis/bbub.gif" height="28" width="50"
	  alt="(!)" border="0"
	></a>January Answer Guy: "Can't See Ethernet Card" --or--
<dd><A HREF="#tag/9"
	><strong>More on Linksys Ether16 Cards</strong></a>

<dt><A HREF="#tag/10"
	><img src="../gx/dennis/bbub.gif" height="28" width="50"
	  alt="(!)" border="0"
	></a>stty parity, LG Issue 48 AG item --or--
<dd><A HREF="#tag/10"
	><strong>Clarification/Correction: stty -parenb</strong></a>

<dt><A HREF="#tag/11"
	><img src="../gx/dennis/bbub.gif" height="28" width="50"
	  alt="(!)" border="0"
	></a>radio receiver for serial port use; Published in Linux Gazette 
	--or--
<dd><A HREF="#tag/11"
	><strong>Radio Time Source with Serial Interface</strong></a>

<dt><A HREF="#tag/13"
	><img src="../gx/dennis/bbub.gif" height="28" width="50"
	  alt="(!)" border="0"
	><strong>Id "x" respawning</strong></a>
<dt><A HREF="#tag/14"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	><strong>Outlook Clients Fail to find Mail Host</strong></a>
<dt><A HREF="#tag/15"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>LG49 Mailz --or--
<dd><A HREF="#tag/15"
	><strong>Answer Guy Debunks Time Machine Myth for Y2K</strong></a>

<dt><A HREF="#tag/16"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Reveal Sound Card --or--
<dd><A HREF="#tag/16"
	><strong>Call Microsoft</strong></a>

<dt><A HREF="#tag/17"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Question --or--
<dd><A HREF="#tag/17"
	><strong>LILO for Loading "Other" OS': Setting the Default Boot Stanza</strong></a>

<dt><A HREF="#tag/18"
	><img src="../gx/dennis/bbub.gif" height="28" width="50"
	  alt="(!)" border="0"
	></a>KVM switch --or--
<dd><A HREF="#tag/18"
	><strong>KVM Switches: All are NOT Created Equal</strong></a>

<dt><A HREF="#tag/19"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Changing distributions, fstab and labels --or--
<dd><A HREF="#tag/19"
	><strong>More on Maximal Mount Counts &amp; Volume Labels and UUIDs</strong></a>

<dt><A HREF="#tag/20"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Netscape Messenger --or--
<dd><A HREF="#tag/20"
	><strong>Netscape 4.7 as a POP Client</strong></a>

<dt><A HREF="#tag/21"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Linux 6.0 NTPd question --or--
<dd><A HREF="#tag/21"
	><strong>error: Interrupted system call</strong></a>

<dt><A HREF="#tag/22"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>233mhz to 450mhz --or--
<dd><A HREF="#tag/22"
	><strong>Overclocking a Motherboard? 233Mhz to 450Hmz?</strong></a>

<dt><A HREF="#tag/23"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>LiLo --or--
<dd><A HREF="#tag/23"
	><strong>Fixing a lilo.conf After the Fact</strong></a>

<dt><A HREF="#tag/24"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Here's a good question for you... --or--
<dd><A HREF="#tag/24"
	><strong>CRC Error -- System Halted --</strong></a>

<dt><A HREF="#tag/26"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>holy linux --or--
<dd><A HREF="#tag/26"
	><strong>Out of the Blue Strategic Advice for Red Hat</strong></a>

<dt><A HREF="#tag/27"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>"harden" Linux DNS server --or--
<dd><A HREF="#tag/27"
	><strong>"Hardening" a Red Hat (into a Helmet?)</strong></a>

<dt><A HREF="#tag/28"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Question --or--
<dd><A HREF="#tag/28"
	><strong>Virtual Mail Hosting in a Single Inbox</strong></a>

<dt><A HREF="#tag/29"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Foxbase --or--
<dd><A HREF="#tag/29"
	><strong>Out-"Fox"-ing the Fox?</strong></a>

<dt><A HREF="#tag/30"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Hard drive --or--
<dd><A HREF="#tag/30"
	><strong>Adding a Disk</strong></a>

<dt><A HREF="#tag/31"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>How can I view ascii data coming across my serial port? --or--
<dd><A HREF="#tag/31"
	><strong>Serial Capture</strong></a>

<dt><A HREF="#tag/32"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Telnet --or--
<dd><A HREF="#tag/32"
	><strong>Remote Control through Telnet</strong></a>

<dt><A HREF="#tag/33"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>X Server --or--
<dd><A HREF="#tag/33"
	><strong>Jaton 107 Blade 3D and XFree86</strong></a>

<dt><A HREF="#tag/34"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Redirecting stdin on telnet --or--
<dd><A HREF="#tag/34"
	><strong>Redirecting stdin into telnet</strong></a>

<dt><A HREF="#tag/36"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>LI --or--
<dd><A HREF="#tag/36"
	><strong>New Installation Stops at LI</strong></a>

<dt><A HREF="#tag/37"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Redhat 6.1 and Netscape --or--
<dd><A HREF="#tag/37"
	><strong>Netscape can't find ANY of THEM</strong></a>

<dt><A HREF="#tag/38"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	><strong>Can't Log in as 'root' via telnet</strong></a>
<dt><A HREF="#tag/39"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Exceed & Linux --or--
<dd><A HREF="#tag/39"
	><strong>Exceed (MS Windows X Server) and Linux</strong></a>

<dt><A HREF="#tag/40"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>just a question about linux. very puzzling --or--
<dd><A HREF="#tag/40"
	><strong>Double Reverse DNS Strikes Again</strong></a>

<dt><A HREF="#tag/41"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Open ports --or--
<dd><A HREF="#tag/41"
	><strong>Closing Ports, Disabling Unwanted Services</strong></a>

<dt><A HREF="#tag/42"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	><strong>Daemons</strong></a>
<dt><A HREF="#tag/43"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Now what? --or--
<dd><A HREF="#tag/43"
	><strong>Using a Downloaded .iso Image for System Upgrade</strong></a>

<dt><A HREF="#tag/44"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>maybe you know where I can look --or--
<dd><A HREF="#tag/44"
	><strong>Automated Login Around a Challenge Card</strong></a>

<dt><A HREF="#tag/45"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Can you possibly shed some light? --or--
<dd><A HREF="#tag/45"
	><strong>Mystery Question</strong></a>

<dt><A HREF="#tag/46"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>Idled Daemon on Linux --or--
<dd><A HREF="#tag/46"
	><strong>idled RPM for Red Hat</strong></a>

<dt><A HREF="#tag/47"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	><strong>Monthly Win (Lose) Modem Question</strong></a>
<dt><A HREF="#tag/48"
	><img src="../gx/dennis/qbub.gif" height="28" width="50"
	  alt="(?)" border="0"
	></a>IMAP/POP daemon on RH 6.0 and 6.1 --or--
<dd><A HREF="#tag/48"
	><strong>Installing a POP Daemon on Red Hat Linux</strong></a>

<!-- index_text ends -->
</DL>
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/greeting"><HR WIDTH="75%" ALIGN="center"></A>
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>Greetings from Jim Dennis</H3>
<!-- begin greeting -->
<BLOCKQUOTE>
All,
</BLOCKQUOTE>
<BLOCKQUOTE>
This is going to be a great year for Linux.
</BLOCKQUOTE>
<BLOCKQUOTE>
I was at a Fry's (a chain of computer stores in California and
around the west coast of the U.S.) in Palo Alto a couple of weeks
ago.  They had Loki games for Linux at the endcap of one aisle,
boxes of Corel's new Linux distribution at the end of another, and
copies of _Linux_Unleased_ at the end of another.  As Heather and I
wandered past the a components wall we heard a customer insisting
that he needed a "100% Linux compatible" motherboard.  While I was
browsing the magazines, Heather brought over a store employee who
she heard telling one of his co-workers that he needed to go study
Linux 'cause he was hearing so much about it.  When we were in the
check out stand the guy next to us was buying a copy of 
<A HREF="http://www.turbolinux.com/">TurboLinux</A>
4.0 and a small stack of books to go with it.  (No, I didn't see
copies of my book there yet.  Darn!).
</BLOCKQUOTE>
<p><em>[ I brought that employee over to give him my business card, after
answering a handful of his questions.  Business is booming for Linux
<a href="http://www.starshine.org/">consulting</a>, too. -- Heather ]
</em></p>
<BLOCKQUOTE>
That was just a short trip to the store to get some party supplies
(hosting some cypherpunks from the RSA conference).  We wanted to
special lighting.
</BLOCKQUOTE>
<BLOCKQUOTE>
While we were there we also picked up a couple of little UPS
power strips (CyberPower Systems <A HREF="http://www.cyberpowersystems.com"
	>http://www.cyberpowersystems.com</A>)
for a couple of the workstations around the house.  These were only
about $70 each and there were the only ones in their price range
that have serial connectors for UPS power management.  This wasn't
important for Heather and I, but we figured it would be a nice
feature to play with.  I figured that there wasn't much chance for
there to be a Linux driver in the package (there wasn't) but there
might be some freeware already done (there is).
</BLOCKQUOTE>
<BLOCKQUOTE>
The cool thing is that I found the link to the University of
Iowa powstatd (power status daemon) 
(<A HREF="http://dollar.biz.uiowa.edu/powstatd"
	>http://dollar.biz.uiowa.edu/powstatd</A>).
(The irritating thing is that that was a "JavaScript" driven link
on CyperPower's web site, but they may yet get another helping of
clue).  So <tt>powstatd</tt> is available as RPM and 
<A HREF="http://www.debian.org/">Debian</A> packages.  In fact it's
available as two different Debian packages depending on whether you
need the encryption support that makes it less dangerous to remotely
control the power/shutdown on other systems over your network using
this tool.
</BLOCKQUOTE>
<BLOCKQUOTE>
The gist of this is that the Linux software for this peripheral is
readily available, linked to the manufacturer's web site and that it
probably offers more utility and better security than the included
proprietary software.  (Also the fact that Alberto Maria Segre's
<tt>powstatd</tt> package is open source means that our *BSD cousins can
use it and that future operating systems will find it that much easier
to support).
</BLOCKQUOTE>

<p><em>[ Chances are pretty good that FreeBSD's support for Linux binaries
	would run it directly.  It's probably more important that our 
	cousins on non-Intel hardware, whether running Linux, *BSD or
	something else, will be able to recompile it. -- Heather ]</em></p>

<BLOCKQUOTE>
(I went back to a different Fry's last night and
picked up a copy of "Heroes of Might &amp; Magic III"
for Linux, which  was ported by Loki Software
<A HREF="http://www.lokigames.com"
	>http://www.lokigames.com</A>.  They had Linux copies
of Civilization, Quake III, and Railroad Tycoon.
They also had plush stuffed "Tux" penguins all over the store).
</BLOCKQUOTE>
<BLOCKQUOTE>
To many new Linux users this may not seem remarkable.  However,
to those of use who started using Linux back in about '92 it's
pretty incredible.
</BLOCKQUOTE>
<BLOCKQUOTE>
Last month I was looking through Microtimes and Computer
Currents (a couple of freebie local computer "newspapers"
which are almost all advertising for regional computer stores;
they each have SF Bay Area and Los Angeles editions).  I noticed
that many (about 25%) of the ads for computers systems now mention
Linux (and <A HREF="http://www.freebsd.org/">FreeBSD</A> in some cases).
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course, some people would hasten that the Silicon Valley isn't
middle america, and Fry's isn't the venue for "Joe Sixpack."
However, it's hard to deny that this is happening in other
places, too.  (Linux is particularly popular in other countries,
particularly Europe and Asia).  I seem to recall that IDC or
Gartner recently had to revise their estimates of how fast
Linux was growing --- especially on the desktop/client side.
</BLOCKQUOTE>
<BLOCKQUOTE>
I've experienced another indication of Linux growth over the
last few months.  When I first started doing the "Answer Guy"
column I received an average of 30 questions a month.  Now I
get about 50 per week!
</BLOCKQUOTE>
<BLOCKQUOTE>
(Sorry I can't answer them all.  I don't even have
a "fair" or sensible way to pick which questions I
answer.  Basically I answer them when I see them
or set them aside and hope for a night when I'm
watching TV and have idle fingers).
</BLOCKQUOTE>
<BLOCKQUOTE>
Some people might complain that "answer guy" mail volume is
not a representative sampling of overall Linux usage.  It could
be that I'm getting more popular among the existing Linux userbase.
Who knows.  I'm just a sysadmin, support guy and sometimes writer.
</BLOCKQUOTE>
<BLOCKQUOTE>
But this sure looks like a good year to be a Linux geek from
where I'm sitting.
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course anyone who wants to look into it for themselves
can point their web browser at <A HREF="http://www.google.com"
	>http://www.google.com</A> and
search on the string: "Linux market research" and read what
lots of other people are saying on the subject).
</BLOCKQUOTE>
<BLOCKQUOTE>
Makes me glad that I'm such a "curses curmudgeon."  The truth
is that the main reason I chose Linux is because Microsoft was
pushing MS Windows so hard.  I don't like GUIs and for a long
time I couldn't afford a monitor that was big enough to
display a reasonable working area (for an environment that insists
on cluttering half of the available space with menus, titles,
scroll bars, status lines, icon ribbons, ruler bars and other
crap that I don't need to see) and that had enough of a refresh
rate to let me work for hours without that exhausting flicker.
</BLOCKQUOTE>
<BLOCKQUOTE>
So, I decided to Learn UNIX so I could still do most of what I
wanted in "text mode" (through a terminal if necessary).  I grabbed
a (used) copy of Coherent and played with that enough to do the
basics.  From there I started reading the alt.os.linux news group
(just after its split from alt.os.minix, which I also used to
read).  Eventually I got access to enough bandwidth to download
my first distribution (SLS).  Later I bought my first Linux on a
CD (Yggdrasil).
</BLOCKQUOTE>
<em><P>
[ Although we know what happened to it (others became more popular by
updating faster) I swear I still don't know what happened to its author,
Peter MacDonald.  Even the Linux
<A HREF="http://www.kernelnotes.org/pub/linuxhq/raw/kernel.org/2.2.x/CREDITS"
	>CREDITS</A> file has no address for him.
</P>
<P>There was an excellent
<A HREF="http://www2.linuxjournal.com/lj-issues/issue2/2755.html"
	>article on the early distributions</a> in Linux Journal, Issue 2.
-- Heather ]
</P></em>
<BLOCKQUOTE>
But enough about the past.  Now about the future.  I don't know
any more about the future than anyone else.  However it does
appear that I'll be in New York at the LinuxExpo that'll be going
on there from February 1st through the 4th.  My co-authors should
also both be there, so come on my the <A HREF="http://www.linuxcare.com/">Linuxcare</A> booth or hunt me
down in the hallway track or at the BoFs (birds of a feather
meetings).
</BLOCKQUOTE>

<em><p>[ Hey, let's keep that straight.  It's 
<a href="http://www.linuxworldexpo.com/">LinuxWorld</a> conference and
expo in New York ... they couldn't take the URL "linuxworld" because
<a href="http://www.linuxworld.com/">Linux World magazine</a> already
had it.  They did manage to snag "linuxexpo.com", but "linux-expo.com"
leads to
<a href="http://www.linux-expo.com/international/linux-expo/linux-expo.html"
	>Linux Expo 2000</a> is in Paris, France, on the 1st through
	3rd of February.
</p><p>It's hard to tell, but I think it's the same parent group running
	it, so maybe that makes it less wacky that they're on the same
	dates (essentially competing with each other).  Apparently even
	the conference folks agree, there's enough Linuxers to go around.
</P><p>I ask, would it have been too hard to offer "paris.linuxworldexpo.com"
	and "newyork.linuxworldexpo.com"?  I'm getting really tired of seeing
	entire domains squished into the tiny existence of "www" being their
	only visible host.
</p><p>And before anybody asks, no. We're NOT going to both shows.
	-- Heather ]</p></em>

<BLOCKQUOTE>
Hope to see you all there.
</BLOCKQUOTE>
<!-- end greeting -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/1"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 1 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>DNS Ports: A bit about Name Resolution Protocols</H3>


<p><strong>From Matt Harrington  on Sun, 02 Jan 2000  
on the SAGE (USENIX Sysadmin's Guild) list</strong></p>
<!-- ::
DNS Ports: A bit about Name Resolution Protocols
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
is the following true or false?
</STRONG></P>
<P><STRONG>
a client talks to a nameserver on port 53/tcp.  the nameserver
answers back on a random udp port greater than 1023.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
It is false.  An FAQ that will answer your question
is at:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
<A HREF="http://www.intac.com/~cdp/cptd-faq/section2.html#ports"
	>http://www.intac.com/~cdp/cptd-faq/section2.html#ports</A>
</BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... However, I'll also add some detail here.
</BLOCKQUOTE>
<BLOCKQUOTE>
First point: normal DNS resolution occurs over UDP.
</BLOCKQUOTE>
<BLOCKQUOTE>
The usual sequence for a UNIX client is something like
this:
</BLOCKQUOTE>
<BLOCKQUOTE>
The application executes a call to <TT>"gethostbyname()</TT>"
(a standard library function, which is linked into
the libc on almost any UNIX platform). <TT> gethostbyname()</TT>
in glibc (Linux libc version 6.x) is implemented to
look at the contents of your <TT>/etc/nsswitch.conf</TT> file,
and apply a set of rules from that to load NSS (name
services systems) libraries.  Most Linux systems are
configured to use libnsscompat.so --- which uses
NIS/NIS+, DNS and traditional UNIX files (<TT>/etc/hosts</TT>,
<TT>/etc/networks</TT>).  You can see all of the NSS libraries
on most Linux systems using the command:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
ls <TT>/lib/libnss*</TT>
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... although you might have to look at the contents of
<TT>/etc/ld.so.conf</TT> for a list of other directories in
which other libnss libraries might exist.
</BLOCKQUOTE>
<BLOCKQUOTE>
Entries in <TT>/etc/nsswitch.conf</TT> will refer to these
libraries (take the basename of the library file and
trim off the "libnss" prefix to relate library name
to the nsswitch.conf keyword).
</BLOCKQUOTE>
<BLOCKQUOTE>
Before I get back to describing the DNS IP protocols
(your question) I'll mention that all this complexity and
redirection is actually useful since it allows an admin
to configure his Linux (or other GNU system) to use
files, DNS, NIS, NIS+, as well as more obscure Hesiod,
and new LDAP and NDS naming/directory services without
having to recompiling any of the standard utilities on
any system.
</BLOCKQUOTE>
<BLOCKQUOTE>
It's also important to realize that the Linux and UNIX
doesn't have any sort of "resolver daemon" nor is this
a function of the kernel (a system call or device driver
or anything like that).  This is just a set of libraries
to which almost all other applications are linked.
</BLOCKQUOTE>
<BLOCKQUOTE>
When the system is configured to use DNS (as they
almost all are) then the library functions open and
read the <TT>/etc/resolv.conf</TT> file.  This gives a list
of DNS servers to which the resolver will direct its
initial queries.
</BLOCKQUOTE>
<BLOCKQUOTE>
The query will be over UDP, with an arbitrary unprivileged
source port and a destination port of 53 (which is the
DNS query port listed in your <TT>/etc/services</TT> file).
</BLOCKQUOTE>
<BLOCKQUOTE>
The initial response should come from one of the DNS servers
as listed in <TT>/etc/resolv.conf</TT>, and be directed back to
(have a destination port equal to) the source of the query.
The source of the response should also be port 53.
</BLOCKQUOTE>
<BLOCKQUOTE>
Notice that I mentioned "initial" queries and responses.
That's because the DNS protocol allows a server to
refer the client to some other DNS server.  Thus there
may be an initial response that amounts to: "I don't
know, go ask ..."
</BLOCKQUOTE>
<BLOCKQUOTE>
Thus the standard packet filtering rules that you're
thinking about require one to allow UDP traffic from
port 53 to any unprivileged port in your domain.
</BLOCKQUOTE>
<BLOCKQUOTE>
Naturally this seems a bit too loose.  One approach is
to have the firewall track outstanding DNS requests
maintaining a context state and only permitting responses
back to host/port pairs that have outstanding DNS queries.
This is call "stateful" packet inspection and it is one
of the features that distinguishes a "firewall" from a
simple "packet filter."
</BLOCKQUOTE>
<BLOCKQUOTE>
(Actually I hate to use the term "firewall" because it
is so nebulous.  However, I have to simplify a bit or
I can't say anything).
</BLOCKQUOTE>
<BLOCKQUOTE>
A better approach is to configure your caching name
server(s) so they never forward clients to other name
servers.  Thus you can have one or more "sacrificial"
caching nameservers on your perimeter network, allow
all DNS traffic to those, and have a set of rules on
the interior router/packet filters that allows all
DNS traffic from those to your hosts.
</BLOCKQUOTE>
<BLOCKQUOTE>
This is the architecture I recommend.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
i can't seem to find the answer in various o'reilly books.  of
course, someone walked off with the DNS one.
</STRONG></P>
<P><STRONG>
the reason i ask is that i'm trying to write a cisco access list
which blocks all traffic to my subnet.  i still want to talk to
the nameservers though, which are on another subnet.  note: i
don't even have access to the router.  i'm just trying to make it
easy for the overworked network guys to put this filter in place.
</STRONG></P>
<P><STRONG>
DNS only seems to work if the following line is in place...
</STRONG></P>
<Pre><STRONG>
access-list ### permit udp host ip.of.name.server any gt 1023
</STRONG></Pre>
<P><STRONG>
---matt
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
You could restrict this to require that the packets
come <EM>from</EM> port 53.
</BLOCKQUOTE>
<BLOCKQUOTE>
Implicitly you are trying to use the architecture that
I've recommended above.  You're trying to limit the
DNS traffic that comes into your subnet so that it
all comes from a particular name server.
</BLOCKQUOTE>
<BLOCKQUOTE>
Note that this requires that you configure your caching
name server so that it never "forwards" DNS requests
(tells the client to go ask a different server).  This
is done by configuring the caching name server with
it's own "forwarders" directive (providing it with a
list of some nearby "better connected" nameservers), and
by using the "slave" directive in BIND 8.x.
</BLOCKQUOTE>
<BLOCKQUOTE>
Hope that explains it O.K.  If not you might consider
posting a more detailed question to "Ask Mr. DNS" at
Acme Byte and Wire (<A HREF="http://www.acmebw.com/askmr.htm"
	>http://www.acmebw.com/askmr.htm</A>).
</BLOCKQUOTE>

</BLOCKQUOTE>
<!-- sig -->


<!-- end 1 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 1 -->
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>DNS Ports: Answers from another Recipient</H3>


<p><strong>Robert Hajime Lanning answered on Sun, 02 Jan 2000  
on the SAGE (USENIX Sysadmin's Guild) list</strong></p>
<BLOCKQUOTE>
Hmm.  That message was to the SAGE (USENIX Sysadmin's Guild)
(<A HREF="http://www.usenix.org/sage"
	>http://www.usenix.org/sage</A>) list, and not to my "Answer Guy"
persona as I'd initially thought.
</BLOCKQUOTE>
<!-- ::
DNS Ports: Answers from another Recipient
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
DNS is udp not tcp
</STRONG></P>
<P><STRONG>
Zone transfers can be tcp.
</STRONG></P>
<P><STRONG>
Request:
client (libresolv) random above 1023 -&gt; server (named) port 53
</STRONG></P>
<P><STRONG>
Response:
server port 53 -&gt; client same port that request was sent from
</STRONG></P>
<P><STRONG>
name server to name server:
53 -&gt; 53
53 &lt;- 53
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Mr. Robert Hajime Lanning answered Matt's question before I did.
However, I didn't see that until I got further through my
inbox.
</BLOCKQUOTE>

</BLOCKQUOTE>
<!-- sig -->


<!-- end 1 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 1 -->
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>More on the DNS Ports &amp; Firewalling Question</H3>


<p><strong>Jim Duncan answered on Sun, 02 Jan 2000  
on the SAGE (USENIX Sysadmin's Guild) list</strong></p>
<!-- ::
More on the DNS Ports &amp; Firewalling Question
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Matt Harrington writes:
is the following true or false?
</STRONG></P>
<P><STRONG>
a client talks to a nameserver on port 53/tcp.  the nameserver answers
back on a random udp port greater than 1023.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
False.  The nameserver should answer back to the source port of the query.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
i can't seem to find the answer in various o'reilly books.  of course,
someone walked off with the DNS one.
</STRONG></P>
<P><STRONG>
the reason i ask is that i'm trying to write a cisco access list which
blocks all traffic to my subnet.  i still want to talk to the nameservers
though, which are on another subnet.  note: i don't even have access to
the router.  i'm just trying to make it easy for the overworked network
guys to put this filter in place.
</STRONG></P>
<P><STRONG>
DNS only seems to work if the following line is in place...
</STRONG></P>
<Pre><STRONG>
access-list ### permit udp host ip.of.name.server any gt 1023
</STRONG></Pre>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
RFC 2181, Clarifications to the DNS Specification, says:
</BLOCKQUOTE>
<Blockquote>
	<BlockQuote>
4.2. Port Number Selection
</BlockQuote></Blockquote>
<Blockquote><Blockquote>
Replies to all queries must be directed to the port from which they
were sent.  When queries are received via TCP this is an inherent
part of the transport protocol.  For queries received by UDP the
server must take note of the source port and use that as the
destination port in the response.  Replies should always be sent from
the port to which they were directed.  Except in extraordinary
circumstances, this will be the well known port assigned for DNS
queries [RFC1700].
</Blockquote></Blockquote>
<BLOCKQUOTE>
So this means if the query came in to port 53 from source port nnnnn, it
must go back out to port nnnnn, source port 53.  And almost always, the
destination port inbound and source port outbound will be 53.
</BLOCKQUOTE>
<BLOCKQUOTE>
If your goal is to allow outside resolvers and servers to query your own
name servers, then you need to allow port 53, both UDP and TCP, through to
the IP address of your name server, e.g.,
</BLOCKQUOTE>

<blockquote><pre>  access-list ### permit udp host ip.of.name.server eq domain any
  access-list ### permit tcp host ip.of.name.server eq domain any
</pre></blockquote>
<BLOCKQUOTE>
Why tcp?  Because if the response is too large for a UDP packet, the rules
say to retry using TCP.  Also, TCP is typically used for zone transfers.
</BLOCKQUOTE>
<BLOCKQUOTE>
Some folks know the second rule but not the first -- a little knowledge is
a dangerous thing -- and so they apply two rules like this:
</BLOCKQUOTE>

<blockquote><pre>  access-list ### permit udp host ip.of.name.server eq domain any
  access-list ### permit tcp host ip.of.name.server eq domain host secondary.name.server
</pre></blockquote>
<BLOCKQUOTE>
They may have additional lines like the second, one for each secondary
name server providing fallback for their primary zones.  But this is wrong
because it neglects the case where TCP is called into play because the UDP
response is too big for a single packet, and then things will begin to
fail in strange ways.
</BLOCKQUOTE>
<BLOCKQUOTE>
I should point out that some folks may never see this behavior because
they never see a response too big for UDP.  Also, while there are a small
number of different servers out there, there are a multitude of resolvers,
and many of them are broken or not fully tested for situations like this.
It's possible that if the response it too big, the resolver may break
anyhow, regardless of the access-list configuration on the Cisco router.
</BLOCKQUOTE>
<BLOCKQUOTE>
It's easier, by the way, to provide access as in the first examples I list
above because you're explicitly allowing the access to domain name service
on the name server on the inbound interface.  That's better than opening
up a huge range of ports, outbound, to do the inverse with "gt 1023".
</BLOCKQUOTE>
<BLOCKQUOTE>
Hope this helps.
</BLOCKQUOTE>
<BLOCKQUOTE>
Jim
</BLOCKQUOTE>

<!-- sig -->


<!-- end 1 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/2"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 2 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Tape Drive Errors</H3>


<p><strong>From M Wyn  on Thu, 20 Jan 2000  
</strong></p>
<!-- ::
Tape Drive Errors
~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Please also send me a copy of your answer if you
got one. Many thanks.
</STRONG></P>
<P><STRONG><DL><DT>
Michael Wyn
</DL></STRONG></P>
<P><STRONG>
I've just bought a Dell 1300 server with factory-installed
RedHat 6.1. The machine was ordered with an internal Seagate DAT
tape drive. It is a SCSI, DDS-3 24G, STD124000N (3.5")
internal unit.  The <TT>/var/log/dmesg</TT> file identifies the drive:
"<TT>Detected scsi tape st0 at scsi0, channel 0, id 6, lun 0</TT>".
</STRONG></P>
<P><STRONG>
Issuing command (as root):
</STRONG></P>
<P><STRONG><BlockQuote>
 '<TT>mt -f <TT>/dev/st0</TT> status</TT>' with a DAT in, returns
</BlockQuote></STRONG></P>

<pre><strong>     "SCSI 2 tape drive:
     File number= -1, block number=-1, partition=0
     Tape block size 0 bytes. Ddensity code 0x0 (default).
     Soft error count since last status =0
     General status bits on (10000):
     IM_REP_EN"
</strong></pre>
<P><STRONG>
and the tape access lite blinks indicating error
reading the tape.  Ejected tape then re-inserted it to clear
the blinking lite then issuing command (as root):
</STRONG></P>

<pre><strong>     'mt -f /dev/st0 rewind'
</strong></pre>
<P><STRONG>
returns: "<TT>/dev/st0: Input/output error</TT>"
</STRONG></P>
<P><STRONG>
Doing a  '<TT>tar cvf /dev/st0 .</TT>' will return I/O errors. In
short, the tape drive is not useable.
</STRONG></P>
<P><STRONG>
RedHat folks suggested to install the '<TT>mt-st0.5b-4.i386.rpm</TT>'.
Issuing '<TT>rpm -iq mt-st</TT>' returns a message saying that it is
installed. Trying to '<TT>rpm -Uvh mt-st-0.5b-4.i386.rpm</TT>' and got
the "package installed" message.  Tried to de-install using
'<TT>rpm -e mt-st-0.5b-4.i386.rpm</TT>' and got '<TT>package not installed</TT>'
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
They definitely don't understand your question!
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Dell told me to call <A HREF="http://www.linuxcare.com/">Linuxcare</A>.  No answer just yet. Any idea?
Private email would be highly appreciated. Thanks.
Michael Wyn
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Oddly enough I work for Linuxcare.
</BLOCKQUOTE>
<BLOCKQUOTE>
On most 4mm DAT drives the "blinking" LED error
is an indication that the drive needs to be cleaned.
I'd run a cleaning tape into the drive and let it
run.
</BLOCKQUOTE>
<BLOCKQUOTE>
I highly recommend running your data through Lee
McLoughlin's 'buffer' program.  That should be
included with your distribution or find it at
Freshmeat (<A HREF="http://www.freshmeat.net"
	>http://www.freshmeat.net</A>) or RPM Find
(<A HREF="http://www.rpmfind.net"
	>http://www.rpmfind.net</A>).  'buffer' will
smooth the system's access to the tape drive,
ensure steady flow and good "streaming."  Search
the back issues of my column for the gory details.
</BLOCKQUOTE>
<BLOCKQUOTE>
Other than that I'd suggest having the drive
serviced.  It wouldn't hurt to upgrade your
kernel (if you're still running 2.2.5, which
shipped with the most recent <A HREF="http://www.redhat.com/">Red Hat</A>).  However,
I've never heard of any software/driver problems
with the Linux st (SCSI tape) drivers.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 2 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 2 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Seagate SCSI tape problem</H3>


<p><strong>From M Wyn on Fri, 21 Jan 2000  
</strong></p>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I hate suggesting hardware RMA (return merchandise
authorization) --- but this does sound very hardware-ish
</BLOCKQUOTE>
<P><Strong><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>Thanks for your note.
<br>I cleaned the drive using a brand new cleaning tape from Dell.
No success. Additional info:
</strong><P>
<P><Strong>
when I tried issuing '<TT>mt -f /dev/st0 load</TT>', I got
"<TT>st0: error with sense data: [valid=0] Info fld=0x0,
current st09:001 sense key Hardware error. /dev/st0: Input/Output error</TT>"
</strong></P>
<P><Strong>
You may be right that I have a defective tape drive unit (even it
was received in Dec. 99). Incidentally, I erased a voice message
from a Dell representative saying that after the unit was shipped,
they found out that DAT tape drive was not "certified" yet [.. with
linux 6.1 and Dell 1300 server..].
</strong></P>
<P><Strong>
I'll be contacting them this morning.
If you have additional comments/suggestions, please email them
to me.
</strong></P>
<P><Strong>
Sincerely;
<br>Michael Wyn
</strong></P>

<!-- end 2 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 1 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Tape Drive Errors</H3>

<p><strong>From M Wyn on Sun, 30 Jan 2000  
</strong></p>
<p><strong>
Thanks for your note.
It turns out that the tape driver terminator came loose during shipping.
Pressed it in firmly (a sweet click was heard!) and the tape is
running AOK now.
</strong></p>
<p><strong>
Sincerely;
</strong></p>
<p><strong>
Michael Wyn
</strong></p>

<!-- end 1 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/3"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 3 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Drivers for SCSI/DAT Tape Drives</H3>


<p><strong>From Dave Lammon  on Thu, 20 Jan 2000  
</strong></p>
<!-- ::
Drivers for SCSI/DAT Tape Drives
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi,
<br>We are using a Compaq Proliant to do some of our DNS work since NT will
not support the way our reverse delegation is done.
</STRONG></P>
<P><STRONG>
I'm trying to use a shareware tape backup program and the compaq has a
compaq DAT on a scsi channel.
</STRONG></P>
<P><STRONG>
I'm sort of new with Linux and I prbably dont have device support
for the tape drive. Do I use ftape or is there another module to
use for this.  I will try compiling a new kernel and see what
options are there. I am using Redhat 6x.
</STRONG></P>
<P><STRONG>
Any help would be apreciated.
</STRONG></P>
<P><STRONG>
Thanks
<br>Dave Lammon
<br>Network Administrator
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
There should be no special work required to use a
SCSI tape drive under Linux.  You access those through
the st driver (the <TT>/dev/st0</TT> node for the first drive
and, <TT>/dev/st1</TT>, etc for other drives).
</BLOCKQUOTE>
<BLOCKQUOTE>
If this is an autochanger you might want to get the
'<tt>mtx</tt>' utility which can be found at its author's web site:
</BLOCKQUOTE>
<BLOCKQUOTE><DL><DT>
Dandelion Digital's Linux Home Page
<DD><A HREF="http://www.dandelion.com/Linux"
	>http://www.dandelion.com/Linux</A>
</DL></BLOCKQUOTE>
<BLOCKQUOTE>
... this is like the '<tt>mt</tt>' command but it adds support
for commands like: "next", "previous", etc (and the
<TT>ioctl()</TT>'s to go with them).
</BLOCKQUOTE>
<BLOCKQUOTE>
If you can't access your tape drive, try loading the
<tt>st.o</tt> module.  If you've built your own kernel for this
system, go back into your kernel sources, re-run the
make menuconfig (or make xconfigure, or whatever you
like) and make sure that you have the SCSI tape support
compiled in available as a module.
</BLOCKQUOTE>
<BLOCKQUOTE>
Note that using auto-loading support for the tape modules
has been a problem in the past.  I highly recommend that
you manually load and unload your <tt>st.o</tt> driver (or build
it statically into your kernel).  The problem is that an
autoloaded <tt>st.o</tt> might get auto-unloaded at an inopportune
time (when there's been enough inactivity on the driver.
In those cases, when the driver is re-loaded it will
reset the drive and rewind the tape.  This could be bad
if you intended to APPEND new datasets to an existing
tape.
</BLOCKQUOTE>
<!-- sig -->


<!-- end 3 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 3 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>DAT</H3>


<p><strong>From Dave Lammon on Fri, 21 Jan 2000  
</strong></p>
<p><strong>
Thank You,
<br>this is excellent help, far more than I expected.
I did manage to get the DAT to work with the tape software. I used
<TT>/dev/st0</TT> and it looks like its working.
I greatly appreciate the help.
</strong></p>
<p><em>[
p.s. Dave, turn off the HTML+plaintext option in your mailer.  Thanks.
 -- Heather. ]</em></p>

<!-- end 3 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/4"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 4 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Lost Password</H3>


<p><strong>From Joy Higgins  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Lost Password
~~~~~~~~~~~~~
:: -->
<P><STRONG>
My boyfriend put Linux <A HREF="http://www.caldera.com/">Caldera</A> on the home computer which means
the only one left is my work one...  I know practically nothing
about computers to begin with so be patient okay??
</STRONG></P>
<P><STRONG>
He was making a third user name and for some reason he not only
couldn't get into that users desktop (wording?  I'm sorry!) and
then he found he couldn't log into root either.  He tried getting
the password but it didn't work...
</STRONG></P>
<P><STRONG>
He called a computer guy that told him it sounds like the computer
is now worth the metal it took to make it because of Linux being
on it but not accessible and we could purchase a couple thousand
dollars of a "password cracker" if we wish...  we do not.  Is
there any way to get roots password because we think it was
changed instead of having the third users password entered in (I
hope that makes sense to you).  Can you help us please?  I just
want my computer back.
</STRONG></P>
<P><STRONG>
Joy
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Wow!  The &quot;computer guy&quot; your boyfriend called is
either a scam artist or an IDIOT.
</BLOCKQUOTE>
<BLOCKQUOTE>
For the record you can buy my book for less than
thirty dollars (U.S.) and the first thing I cover
in the "Emergencies" appendix is how to recover from
a lost root password.  This is also one of the
most common FAQs on the 
	<a href="news:comp.unix.admin">comp.unix.admin</a> newsgroup.
</BLOCKQUOTE>
<BLOCKQUOTE>
For Linux all you have to do is:
</BLOCKQUOTE>
<BLOCKQUOTE><dl>
<dt>1. Reboot 
	<dd>(try [<tt>Ctrl</tt>]+[<tt>Alt</tt>]+[<tt>Delete</tt>])
<dt>2. During the LILO prompt type:
<dd><tt>(kernel/image name) init=/bin/sh rw</tt>
<br>
... note that's usually going to be just:
<br><tt>linux init=/bin/sh rw</tt>
<dt>3. This should start the Linux kernel, 
<dd>with the
root filesystem mounted in read/write mode.
The cool thing is that none of your normal
init processes (like the <tt>getty</tt>s that
ask for your name and call the login program)
will be started.
<dt>4. (Maybe) mount your <TT>/usr</TT> filesystem with a
command like:
<dd><tt>mount /usr</TT>
<dt>5. Change your root password with a command like:
<dd><tt>passwd</tt>
<dt>6. Flush the cache buffers:
<dd><tt>sync; sync; sync</tt>
<dt>7. (Maybe) unmount <TT>/usr</TT>:
<dd><tt>umount /usr</TT>
<dt>8. Remount the root fs in readonly mode:
<dd><tt>mount -o remount,ro /</tt>
<dt>9. Let <tt>init</tt> clean up and reboot the system:
<dd><tt>exec /sbin/init 6</tt>
<br>... there is a "6" (six) at the end of that
command.
</dl></BLOCKQUOTE>
<BLOCKQUOTE>
That's it.  Don't worry about the couple of lines
where I said '(Maybe)' --- you can follow those steps
too, if you don't understand.  The errors from unnecessarily
executing those steps are harmless.
</BLOCKQUOTE>
<BLOCKQUOTE>
You can follow a similar procedure using a "rescue"
diskette.  However, I'll let you buy my book (or
visit <A HREF="http://www.toms.net/rb"
	>http://www.toms.net/rb</A>) for the details on that
approach.  That book is "<a href="http://www.amazon.com/exec/obidos/ASIN/1562059343/linuxsystemadmin/104-3347499-9099625">Linux System Administration</a>"
by M Carling, Stephen Degler, and me (New Riders
Publishing).
</BLOCKQUOTE>

<BLOCKQUOTE>
Hope that helps.  Don't let that "computer guy" near
any of your Linux boxes.  (Even if he knows quite a bit
about MS Windows I wouldn't let him near any of my systems,
his advice was horridly uninformed and it sounds like he
delivered his misinformation with an air of authority
and conviction that exacerbates the problem).
</BLOCKQUOTE>
<!-- sig -->


<!-- end 4 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 4 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Linux password lost</H3>


<p><strong>From Joy Higgins on Tue, 18 Jan 2000  
</strong></p>
<P><STRONG>
Thank you so much for your quick response!!  I'm printing it out and
bringing it home...  and the "computer guy" isn't getting any more business!
</STRONG></P>
<P><STRONG>
<IMG SRC="../gx/dennis/smily.gif" ALT=":)" 
		height="24" width="20" align="middle">  Thanks again!
</STRONG></P>
<P><STRONG>
Joy
</STRONG></P>

<!-- end 4 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/5"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 5 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>When AUTH is ident, not Authentication</H3>


<p><strong>From John Garetti on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
When AUTH is ident, not Authentication
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi.  My name is John.  Wondering if there is a way to tell the
ftpd from Wash. Univ. to send authentication requests over the
same port as the main ftp port.  It seems to be using port 113
which is driving my router admin people up the wall.
</STRONG></P>
<P><STRONG>
Thx.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
The FTP daemon is actually doing an "ident" request
(which is laughingly called the "auth" protocol).
Search any good engine on the string "identd" or
the phrase "inetd daemon" for more details.  For
the real guts of it look at the RFC that describes
it:
</BLOCKQUOTE>
<BLOCKQUOTE><DL><DT>
Identification Protocol
<DD><A HREF="http://www.faqs.org/rfcs/rfc1413.html"
	>http://www.faqs.org/rfcs/rfc1413.html</A>
</DL></BLOCKQUOTE>
<BLOCKQUOTE>
This is not "authentication" like asking for a password or a
key or anything like that.  It just asks the remote system
what username owns a given TCP socket and it is used for
logging.  Obviously the remote system might respond with
anything.  The result cannot be trusted unless the remote
system is known to be secure and under the same
administration as the FTP server.
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway you should be able to disable this behaviour and/or
block the port.  This is especially important if you plan
to let MS Windows clients access this server (since they
don't support the ident/auth protocol, but the attempts
will cause significant connection delays).
</BLOCKQUOTE>

<!-- sig -->


<!-- end 5 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 5 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>WUFTP and authentication</H3>


<p><strong>From John Garetti on Tue, 18 Jan 2000  
</strong></p>
<p><strong>
thx for the info.
</strong></p>

<!-- end 5 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/6"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 6 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>How do you say "Dial on Demand"</H3>


<p><strong>From edj  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
How do you say "Dial on Demand"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
This may be really trivial for unix gurus, but I can't contain my
excitement at having successfully routed my small office LAN
through my linux box to a single ppp account! Broadband's too
expensive and before I got this set up we were running around
telling each other to hang up coz we needed to check our
e-mail! Heh, now we can all surf the web at the same time.
This is no small feat for a Mac user.  
<IMG SRC="../gx/dennis/smily.gif" ALT=";)" 
		height="24" width="20" align="middle">
</STRONG></P>
<P><STRONG>
But I have one challenge which I think I'm going to need some
help with. On a Mac I can get the PPP client to dial the ISP
automatically when a TCP/IP application starts up and needs
to connect to the internet. How do I do this on linux?
</STRONG></P>
<P><STRONG>
-edj
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
The feature you're asking for is called "dial
on demand."  Under Linux this used to require
an additional package called '<tt>diald</tt>'.  However,
it is also now a built in feature of the PPP
daemon (<tt>pppd</tt>).
</BLOCKQUOTE>
<BLOCKQUOTE>
Search the <tt>pppd(8)</tt> man page for the term "demand"
and read through that a bit.
</BLOCKQUOTE>
<BLOCKQUOTE>
I notice that Al Longyear's PPP FAQ is desparately
out of date and should be updated sometime soon.
It still refers us to diald.  Of course you <EM>can</EM>
still use diald in any event, but you should be able
to simply add the "demand" keyword to your
<TT>/etc/ppp/options</TT> file.
</BLOCKQUOTE>
<BLOCKQUOTE>
Hope that helps.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 6 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 6 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>"edj": Re: PPP Dial on Demand</H3>


<p><strong>From star on Thu, 20 Jan 2000  
</strong></p>
<P><strong>
Hi Jim,
<br>Thanks, that really helped.
</strong></p>
<P><strong>
- -edj
</strong></p>

<!-- end 6 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/7"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 7 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Looking for ...</H3>
<H4 ALIGN="center">TAG, we're it.</H4>


<p><strong>From Ashish Duggal  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Looking for ...
~~~~~~~~~~~~~~~
TAG, we're it.
:: -->
<P><STRONG>
hi !
<br>sorry to bother you. but, i was wondering if i could write to you on this
address for linux answers ?
</STRONG></P>
<P><STRONG>
thanks and regards
<br>ashish
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
You'll be much better off looking for those answers
perhaps by searching the Linux Gazette archives
(<A HREF="http://www.linuxgazette.com"
	>http://www.linuxgazette.com</A>) before sending questions
to me.
</BLOCKQUOTE>
<BLOCKQUOTE>
I'm getting a lot more "Answer Guy" mail than I
used to, and I have a lot less time to answer it.
</BLOCKQUOTE>
<BLOCKQUOTE>
That means that your chances of being one of the
ones I get to in a given month are getting lower
every day.
</BLOCKQUOTE>
<BLOCKQUOTE>
My criteria for answering questions are not well
defined. It depends mostly on what mood I'm
in and how much TV I'm watching (I mostly answer
LG AG mail while watching television).
</BLOCKQUOTE>

<!-- sig -->

<!-- end 7 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 7 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Looking for the Linux Gazette</H3>


<p><strong>From tedbdodd on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Looking for the Linux Gazette
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I found an answer to a Linux question you had answered.  I
found it through a search engine.  I surmise that you write
articles for a magazine or something. What would this be?
</STRONG></P>
<P><STRONG>
Ted B
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I've been writing the "Answer Guy" column for
the Linux Gazette (<A HREF="http://www.linuxgazette.com"
	>http://www.linuxgazette.com</A>)
for about three years now.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 7 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/8"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 8 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Hello Routing, Goodbye Masquerading</H3>


<p><strong>From hax0r on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Hello Routing, Goodbye Masquerading
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I've done masquerading a couple of times thanks to the wealth of
information on it, esp. with cable/dsl.
</STRONG></P>
<P><STRONG>
But now I'm in a situation where I actually have 30 or so ip's to work
with so I dont need to masquerade, only thats all I know how to do
The linux box is to act as a normal firewall/gateway for various win
boxen
</STRONG></P>
<P><STRONG>
Do I simply have to add the corrent routes for eth0 and eth1 and
<TT>echo 1 &gt; /proc/sys/net/ipv4/ip_forward?</TT>
</STRONG></P>
<P><STRONG>
the main command I have for masq now is
<br><tt>$IPCHAINS -A forward -s $INTERNALNET -d 0/0 -j MASQ</tt>
<br>do I have to change MASQ to ACCEPT or delete this line altogether?
</STRONG></P>
<P><STRONG>
Justin
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
You can just delete the line.
</BLOCKQUOTE>
<BLOCKQUOTE>
Routing really is that simple.  You configure your
interfaces with their routes, you enable the kernel's
routing flag through the <TT>sysctl()</TT> (<TT>/proc/sys/net/.../</TT>) and
that's it.
</BLOCKQUOTE>
<BLOCKQUOTE>
Note that you will probably still want to use ipchains to
implement some packet filtering rules.  Those are there to
protect yourself from script-kiddies who are scanning the
'net for vulnerable hosts.  They have scripts that are
trying known exploits to break into any systems they can
find (generally by scanning IP address ranges).
</BLOCKQUOTE>
<BLOCKQUOTE>
Note that your router (Linux) is the only thing between your
MS-Windows boxes and the Internet.  Win '98 and NT are
relatively safe from "takeover" exploits.  They don't offer
interactive login service by default, and their APIs don't
readily support remote control.  So the principle dangers to
your MS Windows systems are in the following three
categories:
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
DoS: denial of service

<li>
File Service Leakage

<li>
Viruses

<li>
Trojan Horses
</ul>


MS Windows systems are typically not very robust.
Historically they have been locked up, or rebooted when they
receive gibberish network traffic on any port to which they
are listening.  It is lucky for Windows users that their OS
ships "deaf" and doesn't listen for much.
</BLOCKQUOTE>
<BLOCKQUOTE>
The "file sharing" features in MS Windows are notorious
complex, insecure, and unstable.  You should definitely stop
all traffic between ports 137 through 139 and the Internet.
</BLOCKQUOTE>
<BLOCKQUOTE>
Packet filtering won't protect you from viruses and trojan
horses.  These you'll primarily get via e-mail attachments,
and your best defense is to avoid executing programs and
opening documents that are sent to you.  (Unfortunately most
Microsoft application products currently support various
forms of executable macros and dynamic content embedded in
their "data").
</BLOCKQUOTE>
<BLOCKQUOTE>
Personally I'd suggest that you actually continue to use IP
masquerading as much as you can.  It's somewhat safer in
that the script kiddies can't establish direct connections
to your internal systems.
</BLOCKQUOTE>
<BLOCKQUOTE>
At the same time you should protect your Linux router using
a combination of packet filtering and hosts.deny
(TCP_Wrappers) rules, and by disabling any services that you
aren't actively using.  Replace telnet with ssh, and FTP
with scp or sslftp.  Read the Security HOWTO
(<A HREF="http://www.linuxdoc.org/HOWTO/Security-HOWTO.html"
	>http://www.linuxdoc.org/HOWTO/Security-HOWTO.html</A>) by Kevin
Fenzi and Dave Wreski and the Linux Administrators Security
Guide (<A HREF="http://metalab.unc.edu/lasg"
	>http://metalab.unc.edu/lasg</A>)
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
(Warning!: you'll need
a PDF viewer for that last URL, I've heard that Kurt agreed
to open this up to HTML conversion but I can't find a handly
link to it at the moment).
</UL></BLOCKQUOTE>
<!-- sig -->

<p><em>[ The HTML version is now available at
 <A HREF="http://www.securityportal.com/lasg/"
	>http://www.securityportal.com/lasg/</A>.  
	To find this, I looked in the FAQ found at the URL Jim gave,
	found that that the main site didn't work, and decided to
	try it with standard HTTP instead of HTTPS after all.  The
	home page there is quite basic but led me to the correct
	place.  Enjoy! 
	-- Heather ]</em></p>
	

<!-- end 8 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 8 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>+routing -masquerading</H3>


<p><strong>From Justin Azoff on Tue, 18 Jan 2000  
</strong></p>

<p><strong>
Thanks for all the info on routing etc, no wonder i couldnt find any info
on it, its too simple.
<br>Unfortunately the dsl provider that finally came through only gave us one
ip so im back to masquerading
<IMG SRC="../gx/dennis/smily.gif" ALT=":)" 
		height="24" width="20" align="middle">
</strong></p>
<p><strong>
Justin
</strong></p>

<!-- end 8 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/9"><HR WIDTH="75%" ALIGN="center"></A>
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Linksys Ether16 NIC installation issues, as asked...</H3>

<p><em>[ This was our most popular question for answers from the crowd to
	help out the Answer Guy.  So, for those of you who missed it, the
	original question was... -- Heather ]</em></p>

<P><STRONG><FONT COLOR="#000066"><EM>
From Chuck Whinney on Sun, 05 Dec 1999
</EM></FONT></STRONG></P>
<P><STRONG><FONT COLOR="#000066"><EM>
I cant seem to get my Linksys Ether16 LAN card to work under linux. I turned
off the PnP liek teh linksys website said, and I turned the motherboard
setting from PnP on that IRW to the ISA setting. Linux still never
recognizes it.
</EM></FONT></STRONG></P>
<P><STRONG><FONT COLOR="#000066"><EM>
Any ideas? Thanks! Chuck
</EM></FONT></STRONG></P>

<!--              . . . . . . . . . . . . . . . . . . .              -->
<p><hr width="40%" align="center">
<!-- begin 9 -->
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>More on Linksys Ether16 Cards</H3>

<p><strong>rabuno answered on Sun, 02 Jan 2000  
</strong></p>
<!-- ::
More on Linksys Ether16 Cards
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<BLOCKQUOTE>
A loyal reader offers this answer to supplement one from
last month.
</BLOCKQUOTE>
<p><strong><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Chuck Whinney (no email) asks you:
</strong></p>

<p><em>[ Nobody's email is listed in Answer Guy messages, because
        I strip them out unless it's actually important to the
        question or commentary.  I believe privacy is important,
        and I won't have spambots harvesting addresses
        via this column.  I've snipped the repeat, as I just did that
	above. -- Heather ]</em></p>

<p><strong><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
The Linksys Ether16 is a nice cheap card.  Out of p-n-p mode it acts like
a NE2000, at least close enough so the Linux ne driver has no trouble
running it.  The card comes with a DOS floppy with the configuration
program, but Chuck shouldn't need to use that unless the card has been
previously used (in a Winxx machine) or unless he wants to set goofy IO
address or IRQ settings. The last couple I've purchased new ($30 at my
local office supply store) came defaulted to NE2000 mode, IRQ=5, IO
address=300.
</strong></p>
<p><strong>
The only possible causes of trouble in Chuck's case, imho, would be:
<ul>
<li> a damaged card or a damaged slot
<li> a conflict with some other device
<li> Linksys has modified their chipset so the card is no longer compatable
</ul>
</strong></p>
<p><strong>
If Chuck continues to have troubles with the card feel free to send him my
email &amp; I can try to help him out.
</strong></p>
<p><strong>
I loyally read your column in LG.  Thanks; you are providing a great
service.  Happy New Year.
</strong></p>

<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Thanks, rabuno.  I occasionally get other clarifications and
corrections, and sometimes I'm not that good about getting them
forwarded into the column.  I'd like to thank everyone who
helped me out on this column last year, and I'd love to be able
to answer all the questions that come to me.  I think I missed
about 400 from last year.  They're still in my "lgaz/2do" folder
in case I get laid up with nothing else to do for a couple of
months during this new millenium.
</BLOCKQUOTE>

<!-- sig -->

<!-- end 9 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 12 -->
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>A Solution to: How to detect Linksys Ether16 Cards</H3>

<p><strong>Claude Baker answered on Sat, 08 Jan 2000  
</strong></p>
<!-- ::
A Solution to: How to detect Linksys Ether16 Cards
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<BLOCKQUOTE>
Here's another reader-contributed answer to using those pesky
NE2000 clone Linksys Ether16 ethernet cards:
</BLOCKQUOTE>
<p><strong><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
        HEIGHT="28" WIDTH="50" BORDER="0"
        >
The writer questions how to detect a LinkSys Ether16 and you suggest
another card.
</strong></p>
<p><strong>
I have that card in a router/firwall box which is based upon a P133 with
a PCI motherboard. I'm ashamed to admit it, but I spent 2-3 months
figuring out how to configure the card. As you might guess, I was
looking in the wrong places because I thought that I was misconfiguring
the routing and masquerading.
</strong></p>
<p><strong>
The Linksys card is an ne2000 clone and it is setup using a DOS utility
found on the driver diskette. The driver software may be downloaded from
the LinkSys site and it is an executable that copies itself to a
floppy.  Once the download is on a floppy, a:\utility\setup queries the
card to display IRQ and I/O addresses. The utility also allows you to
set the desired IRQ, I/O address, and select between RJ-45 or BNC I/O on
the card. All setup choices are saved in non-volatile memory.
</strong></p>
<p><strong>
Setup on my machine also required a change in the Award BIOS - I had to
specify the IRQ I used to be a "Legacy ISA" rather than "PCI/ISA PnP"
for Linux.
</strong></p>
<p><strong>
I spent some time setting up a Linux Router Project distribution for
that machine and have a recollection that in addition to pulling in the
non-PCI ne2000 module, I also needed an 8309 module. My impression is
that the ne2000 is part of the 8309 family.
</strong></p>
<p><strong>
Claude Baker
</strong></p>
<!-- sig -->

<!-- end 12 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 25 -->
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>Linksys Ether16 NIC installation issues</H3>

<p><strong>marcus.post answered on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
More Suggestions on Linksys Ether16
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I wanted to comment on this because some easy items where missed in
answering this customer. THe chipset is fully supported, being an NE2000
clone that works just fine. If he is having difficulty installing it, here's
where he should check:
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I got about three or four items to expound on this
message.  Presumably that means that I didn't do a
very good job answering the question.
</BLOCKQUOTE>
<BLOCKQUOTE>
These days I try to forward/respond to corrections and
commentary on the threads in previous months.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
#1 Conflicts. This is not likely a problem, since the Ether software that
sets the IRQ and I/O of the card checks for conflicts before setting the
resources. If you have not installed new hardware, or turned on any extra on
board peripherals (Serial, Parallel, or USB ports), this shouldn't be an
issue.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I'm not familiar with this particular NE2000 clone.
Older ethercards commonly were set by pins and jumpers.
I'd also not trust the IRQ detection on an ISA bus.
Classically this has not been reliable.  As you suggest
an installed card which was inactive might not respond
to IRQ probing but could cause problems later  when it
was active.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
#2 How the driver is loaded. As a shot in the dark, you are likely using
redhat, in which case the best choice is to use Linux Config to set up the
module to load at boot. Most distros will work the same way, but some you
have to manually edit rc.* files. THere is a linux-conf topic for network
interfaces, but I forget what it is called ATM. If you have to edit the rc.*
files, look for a <tt>rc.modules</tt> file; most distrobutions have one with the
network card modules already specified, but commented out. Find the one with
your module ( <tt>ne2k.o</tt> I believe) and uncomment it. In either case, don't
worry about specifying the IRQ; you only need to note the I/O address for
this card. <EM>VERY IMPORTANT</EM> when specifying the I/O port, use "<tt>0x320</tt>"
instead of  "<tt>320</tt>". You have to specify the number is hex, which is '<tt>0x</tt>'. So,
if the software that disabled your plug n play on the card said it was using
port "<tt>330</tt>", tell linux that the port is "<tt>0x330</tt>" Don't expect the module to
autodetect the card: on this card, it almost never works (I own three of
them personally), while autodetect works on other cards, such as my SMC. I
don't know why, but don't count on the module to detect the card.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I presume you're referring to the '<tt>linuxconf</tt>' program.
I'd suggest using '<tt>insmod</tt>' to load the appropriate loadable
module manually.
</BLOCKQUOTE>
<BLOCKQUOTE>
You make a good point about using the 0x prefix to
indicate that you are providing a hexadecimal address.
Presumably you could convert 0x300 to its decimal equivalent
though I've never tried it.
</BLOCKQUOTE>
<BLOCKQUOTE>
One thing I do like about PCI --- it supports much
easier and robust autodection than the old ISA cards.
</BLOCKQUOTE>
<BLOCKQUOTE>
You also have chosen reasonal I/O port addresses,
0x300, through 0x330 are the most common ethernet I/O
base port mappings.  I've also seen 0x240, and 0x280.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
#3. I dont know about ISA IRQ changes you made in the BIOS. From personal
experience, they just aren't needed. You sound comfortable enough with them,
so you may want to change them back to normal once you are positve the Linux
configurations are correct and complete.
</STRONG></P>
<P><STRONG>
#4 Standard troubleshooting: If you dont get an error when booting, check
'<tt>ifconfig</tt>'. You may just need to assign the card an address, subnet, et al.
Or, run dhcpcd if you have a DHCP server/cable modem/DSL router/whatever.
Try a different ISA slot. If all looks good locally, but you cant reach
outside of your own box, check your cables, subnet mask. First answer if the
problem is hardware or software. Tackle it logically.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I thought he specified that he was getting <tt>SIOCSIFADDR:</tt>
errors (meaning that the driver isn't seeing the interface).
If you can successfully set an address etc. with
'<tt>ifconfig</tt>' then you should check for external connections,
link lights, and similar problems.
</BLOCKQUOTE>
<BLOCKQUOTE>
I have found that some 10/100 ethernet cards seem to be
"allergic" to some hubs.  So be sure to try a "known
working" connection.
</BLOCKQUOTE>
<BLOCKQUOTE>
In particular I don't like the Linksys hubs, but I've
never had problems with the Netgear products.
</BLOCKQUOTE>
<BLOCKQUOTE>
Running tcpdump on your interface can be a useful was
to check for functionality.  That should work so long
as there is any traffic on the segment and the driver
is loaded correctly.  Thus you can isolate it to
the higher level (addressing, masking, routing tables)
or the lower (driver kernel, or physical link layer).
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Best of luck,
<br>Toodles
</STRONG></P>

<!-- sig -->

<!-- end 25 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/10"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 10 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Clarification/Correction: stty -parenb</H3>

<p><strong>From Lamar Owen  on Thu, 23 Dec 1999  
</strong></p>
<!-- ::
Clarification/Correction: stty -parenb
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
<tt>parenb</tt> (and <tt>-parenb</tt>) is the <tt>PAR</tt>ity <tt>EN</tt>a<tt>B</tt>le toggle.  <tt>parodd</tt> (and <tt>-parodd</tt>)
are to further set odd or even, with the default (IIRC) being even.
</STRONG></P>
<P><STRONG>
--
<br>Lamar Owen
<br>WGCR Internet Radio
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Thanks for that clarification.  I should have known that.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 10 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/11"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 11 -->
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>Radio Time Source with Serial Interface</H3>


<p><strong>From Shawn Bibb  on Sat, 08 Jan 2000  
</strong></p>
<!-- ::
Radio Time Source with Serial Interface
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<BLOCKQUOTE>
In response to one of my discussions about NTP and
time synchronization for disconnected (home) networks
I commented on how I'd like to find a cheap GPS
receiver with a serial interface.  Those make
good time sources for your home NTP server.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
i have one of these and it works very well.  ~$100.  i recommend it.
<br><tt><A HREF="http://www.atomictime.com/Atomic%20Time%20Web%20v4/Product17.html"
	>http://www.atomictime.com/Atomic%20Time%20Web%20v4/Product17.html</A></tt>
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
It this one radio or GPS?   It shouldn't matter, either
should keep us to within on second which is high enough
resolution for most of us.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 11 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/13"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 13 -->
<H3 align="left"><img src="../gx/dennis/bbubble.gif" 
	height="50" width="60" alt="(!) " border="0"
	>Id "x" respawning</H3>


<p><strong>Bill McElhannon answered on Tue, 18 Jan 2000  
</strong></p>
<BLOCKQUOTE>
A forward on an old issue.
</BLOCKQUOTE>
<p><strong><img src="../gx/dennis/bbub.gif" 
	height="28" width="50" alt="(!) " border="0"
	>
Hello,
</strong></p>
<p><strong>
I had this problem today and found that it was caused by my root file 
system being full.  This may be old news but I just thought I would pass 
it along in case it could help someone.
</strong></p>
<p><strong>
Thanks for your great work in The Linux Gazette, I really enjoy it and 
have learned a lot.
</strong></p>
<p><strong>
Bill McElhannon
</strong></p>
<!-- sig -->

<!-- end 13 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/14"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 14 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Outlook Clients Fail to find Mail Host</H3>


<p><strong>From Ted Allison on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Outlook Clients Fail to find Mail Host
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Mr. Dennis,
</STRONG></P>
<P><STRONG>
We have recently begun to experience a new strange problem relating to
trying to send email through our Linux 2.0.34 box. We have over 30 users
that have Outlook 2000 and connect to our Linux box to send and receive
email with no problems at all. The settings in Outlook 2000 are to use POP3
to receive email and SMTP to send email.
</STRONG></P>
<P><STRONG>
The problem is this: New users that we added cannot send email as they
receive an error message that states that Outlook 2000 cannot find
mail.xxxdomain.com. They can receive email with no problems, but all of
the sudden new users cannot send email. Existing users have no problems
sending or receiving, just new users which is very odd.
</STRONG></P>
<P><STRONG>
Any ideas as to what the problem may be? We would appreciate any help in
this matter.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Can they ping mail.xxxdomain.com (actual domain
name anonymized)?
</BLOCKQUOTE>
<BLOCKQUOTE>
The error suggests a problem with the DNS
resolving on the new clients.  I'd look at that
first.  Then I'd look at other ways in which
these new systems might differ from
the existing clients.
</BLOCKQUOTE>
<BLOCKQUOTE>
Try using the TELNET.EXE client on one of these
new system to connect to port 25 of the Linux
box (mail.xxxdomain.com).  If that works than the
problem is purely with your client system and you
should call a Microsoft support center.
</BLOCKQUOTE>
<p><em>[
Ted forwarded it to his colleague, Jeff.
 -- Heather. ]</em></p>
<p><strong><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Jim,
</strong></p>
<p><strong>
Thanks for the reply as I appreciate it. The problem ended up being that
some POPs blocked Port 25 as I did the Telnet test and could not connect to
the port.
</strong></p>
<p><strong>
Thanks again,
<br>Jeff
</strong></p>

</BLOCKQUOTE>
<!-- sig -->


<!-- end 14 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/15"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 15 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Answer Guy Debunks Time Machine Myth for Y2K</H3>

<p><strong>From Tom  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Answer Guy Debunks Time Machine Myth for Y2K
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hello Mr. Dennis [Answerguy!]
</STRONG></P>
<P><STRONG>
Thanks for spending (many I suppose 
<IMG SRC="../gx/dennis/smily.gif" ALT=";-)" 
		height="24" width="20" align="bottom"> hours answering tons of mails. The
2c tips and the Answerguy section are really my favourite pages.
I'm overwhelmed by your knowledge - but please tell me about your finest
secret... the time machine... My html version of the LG49 contains eMails
from December 2000. Booooah.
<br>Thanks again for your great work!
</STRONG></P>
<P><STRONG>
Greetings
<br>Tom
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Our editor and host mentioned that he had a problem like
that.
</BLOCKQUOTE>
<BLOCKQUOTE>
I think its been fixed on the primary Linux Gazette
web site now.  However, it might still appear wrong
on some mirrors.
</BLOCKQUOTE>

<!-- sig -->

<!-- end 15 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 3 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>The Answer Guy LG #49 - psychic, already .....</H3>


<p><strong>From Malcolm Macsween  on Tue, 4 Jan 2000  
<br>Answered by the Linux Gazette Editor, Mike Orr.
</strong></p>

<P><STRONG>
The answer guy is really excelling himself this month ....
</STRONG></P>
<P><STRONG>
How exactly did he help me to fix my Mosix cluster on the Linux 2.4 SMP
cluster in Oct , 2000 - I've forgotten already. Sorry - maybe you can
refresh my memory .... perhaps my memory management module is faulty,
but I seem to have forgotten the whole year.
</STRONG></P>
<P><STRONG>
<A HREF="http://www.linuxgazette.com/issue49/lg_answer49.html"
	>http://www.linuxgazette.com/issue49/lg_answer49.html</A>
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
It was my too-successful attempt to update the copyright dates on the
articles in bulk, combined with Jim's time machine.
</BLOCKQUOTE>
<BLOCKQUOTE>
The dates are corrected.  The new files will be visible at noon today
(UTC-0800).
</BLOCKQUOTE>
<BLOCKQUOTE>
Thanks for the letter.  This is the most humorous of the complaints
I received, and probably the one I will publish.
</BLOCKQUOTE>

<!-- end 3 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/16"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 16 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Call Microsoft</H3>


<p><strong>From Anthony Hunt  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Call Microsoft
~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I am unable to use my Reveal Sound Card (VER. 1.09 REV. 4A) with my
Creative Labs Modem Blaster. My operating system is windows 98.  Any
suggestions?
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
... and read a bit of our webazine before mailing
its columnists.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 16 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/17"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 17 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>LILO for Loading "Other" OS': Setting the Default Boot Stanza</H3>


<p><strong>From Cavaiani, Don  on Sun, 02 Jan 2000  
</strong></p>
<!-- ::
LILO for Loading "Other" OS': Setting the Default Boot Stanza
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi James,
</STRONG></P>
<P><STRONG>
If I put the "<tt>other</tt>" (the msdos portion) code in the lilo.conf  
B/4  the <tt>image =</tt> ... for the Linux O/S, will msdos load as the 
default (i.e., if the operator does not enter anything) instead of Linux.
</STRONG></P>
<P><STRONG>
Or, is there another way to do this?
</STRONG></P>
<P><STRONG>
Thanks,
<br>Don
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
<TT>/sbin/lilo</TT> will make the first "stanza" (section) of the
<TT>/etc/lilo.conf</TT> file the default unless there is an explicit
'<tt>default=</tt>' directive in the "global" section.
</BLOCKQUOTE>
<BLOCKQUOTE>
If you do use the '<tt>default=</tt>' directive, refer to the desired
stanza by its label.
</BLOCKQUOTE>
<BLOCKQUOTE>
The issues of whether the OS will boot without any
keystroke intervention, how long it will wait, whether
it will prompt the user by default, and what the prompt
message will look like can all be answered by reading
the <tt>lilo.conf(5)</tt> man page.
</BLOCKQUOTE>

<p><em>[ It's likely there is also more than you ever wanted to
        know about LILO in the directory under <tt>/usr/docs</tt>
        (or <tt>/usr/share/docs</tt>)  for the lilo package.
-- Heather ]</em></p>
<!-- sig -->


<!-- end 17 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/18"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 18 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>KVM Switches: All are NOT Created Equal</H3>


<p><strong>From Michael Slaven  on Fri, 24 Dec 1999  
</strong></p>
<!-- ::
KVM Switches: All are NOT Created Equal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Jim-
</STRONG></P>
<P><STRONG>
Here's the story...
</STRONG></P>
<P><STRONG>
Raritan Computer manufactures bulletproof KVM switches. We have recently
begun to get positive feedback from the Linux community because our switches
do NOT occasionally allow keyboard/mouse lock-ups like our competitors.  We
use a dedicated emulation chip for EACH computer connected to the switch.
</STRONG></P>
<P><STRONG>
Unfortunately, most of the public perceives occasional lock-ups as normal
for KVM switches and this is definitely not the case.
</STRONG></P>
<P><STRONG>
This said, getting that message out to the Linux community is not easy.  I'm
interested in:
</STRONG></P>

<p><strong><ol>
<li> How you have your office set up ( how many computers)
<li> If you have the need for a KVM switch
<li> If so, I'd be willing to "lend" you one for 30-40 to test and evaluate.
</ol></strong></p>

<P><STRONG>
All I would ask in return is that if someone asks you about KVM switches,
you at least can tell them that all switches are not created equal.
</STRONG></P>
<P><STRONG>
Let me know what you think.
<br>Thanks for your time.
</STRONG></P>
<P><STRONG>
Michael Slaven
<br>OEM Manager
<br>Raritan Computer Inc.
<A HREF="http://www.raritan.com"
	>http://www.raritan.com</A>
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Well, I don't think I'll be considered a corporate shill
for simply including your message as it was written to me.
</BLOCKQUOTE>
<BLOCKQUOTE>
I'll have to admit that I haven't purchased any Raritans,
though I've seen them in some of the offices of my
customers, etc.  Of course I'm aware that there are
differences among different types of KVM switches.
</BLOCKQUOTE>
<BLOCKQUOTE>
It's always been my opinion that the biggest gain is from
using any of the "active" (electronic) switches.  Using
the mechanical A-B switch boxes will occasionally cause
the failure of a chip on your motherboard (effectively
meaning you'll have to replace about 1 motherboard in
20 per year of daily use).
</BLOCKQUOTE>
<BLOCKQUOTE>
Hopefully the future of USB will solve this problem for
keyboards and mice (I'm not aware of any problems
with mechanical switching of monitors).  On the one
hand I think USB is overly complicated and expensive.
On the other hand, it will will hopefully save future
generations of computer users from fussing with the
sorts of DTE/DCE, CTS/RTS, DSR/DTR problems that we
old fogeys have had to fight with RS-232.
</BLOCKQUOTE>

<p><em>[ I've occasionally seen monitors get weird color effects when
        switching, but so far, every such case has turned out to be
        solved when the video cord was reseated or replaced.  There
        hasn't been any evidence that it was somehow any fault of the
        switch.  I've never used a Raritan;  most were Belkins and
        ProTec. -- Heather ]</em></p>

<BLOCKQUOTE>
Anyway, if you put up some white papers and actually
describe some of the failure modes (capacititive
discharge?) and how your components and designs are
better for protecting computers than those used by
your competitors, you'll probably gain some more
converts.  (My personal needs have been too modest
--- and Raritan has been too expensive --- for me so far).
</BLOCKQUOTE>

<!-- sig -->


<!-- end 18 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/19"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 19 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>More on Maximal Mount Counts &amp; Volume Labels and UUIDs</H3>

<p><strong>From ghaverla on Thu, 23 Dec 1999  
</strong></p>
<!-- ::
More on Maximal Mount Counts &amp; Volume Labels and UUIDs
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Dear Answer Guy,
</STRONG></P>
<P><STRONG>
Nice column.  I'm up to my eyeballs in updates (I'm updating
2 Linux machines and 1 Solaris).  Anyway, in the current
"The Answer Guy", you have a reply from Ted T'so on
Maximal Mount Counts which suggests a solution to a
problem I ran into last night.  I'm updating a PC which
has 2 SCSI controllers from 
<A HREF="http://www.suse.com/">S.u.S.E.</A> to 
<A HREF="http://www.debian.org/">Debian</A>, and found that
because the controllers are seen in the reverse order
now, that the devices the disks are assigned to has changed.
Since the one controller is to be used for low performance
or not always connected devices, I don't want that controller
being seen first, which is what has happened under Debian.
These labels, as in
</STRONG></P>
<Pre><STRONG>
LABEL=temp /tmp ext2 defaults 1 2
</STRONG></Pre>
<P><STRONG>
or
</STRONG></P>
<Pre><STRONG>
UUID=3a30d6b4-08a5-11d3-91c3-e1fc5550af17 /usr ext2 defaults 1 2
</STRONG></Pre>
<P><STRONG>
Are they assigned to the entire disk, or to partitions
of a disk?  The way the reply is worded it seems the label goes
with the disk, and not with the partition.
</STRONG></P>
<P><STRONG>
Thanks for any light you can shed on this.
</STRONG></P>
<P><STRONG>
Gord
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
The UUIDs and labels are on filesystems (partitions),
and not on disks (physical volumes).
</BLOCKQUOTE>
<BLOCKQUOTE>
Obviously things will get more confusing and interesting
as we develop LVM (logical volume management) subsystems
under Linux.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 19 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/20"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 20 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Netscape 4.7 as a POP Client</H3>


<p><strong>From Carlos Germn Siufi  on Fri, 07 Jan 2000  
</strong></p>
<!-- ::
Netscape 4.7 as a POP Client
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I can't connect to my pop3 account using Netscape Messenger v4.7. My
problem is my user ID. It's the e-mail address. Example:
<br>"<tt>username@domain.com</tt>"
<br>I think Netscape only sends "<tt>username</tt>" not 
"<tt>username@domain.com</tt>". Now
I'm using the command <tt>fetchmail</tt> with the <tt>-u</tt> parameter. 
Example:
<br>"<tt>fetchmail mail.domain.com -u username@domain.com</tt>". 
<br>It works. How can I fix Netscape Messenger?
</STRONG></P>
<P><STRONG>
Germn Siufi
<br>[From Argentina]
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
German,
</BLOCKQUOTE>
<BLOCKQUOTE>
My personal inclination would be to use <tt>fetchmail</tt> to fetch
your mail into your local spool (or inbox) and just use Netscape
Communicator on that.  I'd also configure NS to feed
outgoing mail to my MTA (my local copy of <tt>sendmail</tt>) and
let that do my masquerading, or use its support for
"from" rewriting (through the <tt>genericstable</tt> FEATURE) and
other mail handling.
</BLOCKQUOTE>
<BLOCKQUOTE>
If you really insist on using NS' built-in POP and SMTP
support and letting it do this stuff directly then I'd
just play with the entry in the "Edit, Preferences,
Identity" dialog, trying to put in your full username@
domain name address.
</BLOCKQUOTE>

<!-- sig -->

<!-- end 20 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/21"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 21 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>error: Interrupted system call</H3>


<p><strong>From Robert Richardson  on Fri, 07 Jan 2000  
</strong></p>
<!-- ::
error: Interrupted system call
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi James
</STRONG></P>
<P><STRONG>
I am not sure who I should direct this question to: I have Dell
5100 workstation running RedHat Linux 6.0 (Kernel 2.2.5-15),
setup with NTP to provide time for LAN.  It works great but I
sometimes, see in the the NTP log file, the message "<tt>29 Dec
16:28:33 ntpd[634]: select(11, #---#--#---, 0L, 0L, &amp;0.000000)
error: Interrupted system call</tt>".  This causes no problems, as
far as I can tell, but is there anything I should be concerned
about.  I will appreciate any information you can provide.
Attached is a copy of the NTP log file.  Thanks
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I'm not sure what's causing this.  However, I'd
suggest a couple of rather simple steps:
</BLOCKQUOTE>
<BLOCKQUOTE>
First, there was a bug on the default XFree86 servers
and some of the video cards that were shipping with
some Dell systems.  The symptom was a very slow system
clock.  The solution was to upgrade the XFree86 RPMs.
</BLOCKQUOTE>
<BLOCKQUOTE>
Second, the 2.2.5 kernels that shipped with 
<A HREF="http://www.redhat.com/">Red Hat</A>
6.0 were pretty bad (as Linux kernels go).  I'd
strongly recommend an upgrade to the 2.2.14 kernels
(which are MUCH more stable).
</BLOCKQUOTE>
<BLOCKQUOTE>
So download the kernel sources and build it. I don't
recommend using the RPM (or any package managment
system) for doing kernel upgrades.  I just use the
main sources and build them using the Makefiles
(usually using <tt>make menuconfig</tt>).
</BLOCKQUOTE>
<BLOCKQUOTE>
In this case I suspect a combination of an XFree86
bug and a kernel bug which is causing the problems
with the system clock.  <tt>xntpd</tt> could easily be
sensitive to these sorts of things.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 21 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/22"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 22 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Overclocking a Motherboard? 233Mhz to 450Hmz?</H3>


<p><strong>From Steve on Fri, 07 Jan 2000  
</strong></p>
<!-- ::
Overclocking a Motherboard? 233Mhz to 450Hmz?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I have a motherboard in my PC that says it has a max processor
speed of 233mhz, i did'nt know this when i resently purchased a
450mhz CPU. Is there any way i can override this issue, my max bus
speed is 66.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I wouldn't recommend it.  Bare motherboards are not very
expensive so you should be able to pick up one for
about a $100 or less that will take the CPU that you
got and still allow you to pull in your old DIMMs,
and adapter cards from the existing system.
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course I'd double check the RAM (DIMMs, SIMMs or
whatever you've got) and make sure it is fast enough
that you aren't wasting the investment in the new CPU.
</BLOCKQUOTE>
<BLOCKQUOTE>
Personally I don't recommend CPU upgrades at all.
I suggest that people buy the CPU, motherboard, and
RAM together, and get them matched to one another.
Also it is quite unlikely that you applications are
actually CPU bound.  Your CPU investment would probably
have been better spent in extra RAM or a faster
controller.
</BLOCKQUOTE>
<BLOCKQUOTE>
As you say your current motherboard's bus speed is
only 66Mhz.  You probably want a motherboard that
runs at closer to 100Mhz (at least PC100 RAM).  You
don't want the CPU sitting there waiting for its
own RAM all the time.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 22 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/23"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 23 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Fixing a lilo.conf After the Fact</H3>


<p><strong>From Don Benesch  on Fri, 07 Jan 2000  
</strong></p>
<!-- ::
Fixing a lilo.conf After the Fact
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Answerguy,
<br>Can you tell me how to switch operating systems on LiLo?
When I installed Redhat Linux I was not given the chance of selecting the 
startup OS and it defaults to Linux. I share this computer, and need it to 
start up in windows.  I can <tt>Fdisk /mbr</TT>, but I thought that there 
might be a quicker way to switch the * to the Windows OS.
Also, If I do <TT>/mbr</TT>, how do I put Lilo back on without going thru 
the whole install?
</STRONG></P>
<P><STRONG>
<br>Thanks
<br>Don (New to Linux)
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Go back and read some of my articles on LILO.  Just go the
the Linux Gazette web site and use their search engine.
</BLOCKQUOTE>
<BLOCKQUOTE>
You'll find a number of sample configurations files
(<TT>/etc/lilo.conf</TT>) and many long-winded explanations
of how to use the <TT>/sbin/lilo</TT> utility to write, re-write,
and remove the LILO boot loader code from your MBR,
your superblocks, etc.
</BLOCKQUOTE>
<BLOCKQUOTE>
Basically you want to add an "<tt>other</tt>" stanza to your
<TT>/etc/lilo.conf</TT> and run the <TT>/sbin/lilo</TT> command.  That's
all there is to it.  Understanding how that works and
what to put in that stanza and what your other alternatives
might be is why you need to do all that homework.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 23 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/24"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 24 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>CRC Error -- System Halted --</H3>


<p><strong>From Tom Manning  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
CRC Error -- System Halted --
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi there...
</STRONG></P>
<P><STRONG>
Problem I'm having with Linux is this: Couple of days ago, worked
great. Then one morning I booted up, typed "<tt>linux</tt>" at the LILO
prompt, and it immediately said "<tt>CRC ERROR --SYSTEM HALTED--</tt>"
</STRONG></P>
<P><STRONG>
End of story. <tt>CTRL-ALT-DEL</tt> doesn't even work, it has to be reset
manually. I can boot into Windows just fine.
</STRONG></P>
<P><STRONG>
Linux and Windows are on seperate hard drives, I'm running a
Celeron266 with 96MB RAM, ABIT BX6(1) motherboard....  What do you
think?
</STRONG></P>
<P><STRONG>
Thanks very much
</STRONG></P>
<P><STRONG>
Tom  
<br>[Canada?]
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
It sounds like an ailing hard drive to me.  Try a
boot/rescue floppy (Tom's Root/Boot is nice for this --
<A HREF="http://www.toms.net/rb"
	>http://www.toms.net/rb</A>).
</BLOCKQUOTE>
<BLOCKQUOTE>
If you can't mount your filesystems, try running fdisk to
view the partition table. The command '<tt>fdisk -l</tt>' will list
all available partitions on all drives (except for the
<A HREF="http://www.debian.org/">Debian</A> fdisk which will require a 
series of commands like
'<tt>fdisk -l /dev/hda ; fdisk -l /dev/hdb</TT>' etc depending on the
number of drives you have --- they use a more powerful
version of fdisk which nonetheless has this limitation).
</BLOCKQUOTE>
<BLOCKQUOTE>
It's possible that the CRC error is only affecting your
track 0 (where your MBR, and the partition table are
stored).
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway it is almost certainly a hardware problem.  If
you have a backup, I'd replace the drive (or at least
reformat it with badblock checking enabled) and restore
your system and data. If you don't have a backup, you
might be able to recover some of your data and filesystems
through some low-level disk editing heroics.
</BLOCKQUOTE>
<BLOCKQUOTE>
(If you've given up on recovering the filesystems and
data, and you want to confirm that it really is hardware
and not some Linux glitch, try using MS Windows to
repartition and reformat that second drive.  Not that
MS Windows does that any better than Linux --- but you'll
know by that it's not "just us").
</BLOCKQUOTE>

<!-- sig -->


<!-- end 24 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/26"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 26 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Out of the Blue Strategic Advice for Red Hat</H3>


<p><strong>From dennis garber on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Out of the Blue Strategic Advice for <A HREF="http://www.redhat.com/">Red Hat</A>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
In order for redhat to succeed, they must do 4 things.
</STRONG></P>
<P><STRONG><ol>
<li> Buy www.phatlinux.com's distrubution.  Offer it as an
alternative to yours

<li> Buy www.trelos.com 's version vmware.com

<li> Buy the technology of the lothar project.  Which allows windows
plug and play devices to work under linux.

<li> Get some focus groups together to see if the information in the
documentation is getting accross to non programmers.
</ol>
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I have no idea where this advice comes from.
</BLOCKQUOTE>
<BLOCKQUOTE>
Are you a share holder or investor in PhatLinux, Trelos
Lothar, etc?
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course this raises the question: "succeed at what?"
</BLOCKQUOTE>
<BLOCKQUOTE>
I presume you mean something like: "for them to justify
their valuation by reporting profits on a scale to match
the earnings to capitalization ratio of traditional
companies."
</BLOCKQUOTE>
<BLOCKQUOTE>
Since I'm not a shareholder of Red Hat my initial
gut reaction is: "who cares?"
</BLOCKQUOTE>
<BLOCKQUOTE>
If I was a Red Hat shareholder I wouldn't ever expect
them to report profits or earning in line with their
market cap.  It's a speculative holding, bought by people
who believe that its "buzz" will keep other investors
interested.  That's basically like Yahoo! and other
high flying Internet stocks.
</BLOCKQUOTE>
<BLOCKQUOTE>
It appears to me that the stock market's absurd gains
in the last decade amount to a simple fact of the
current prosperity and concentration of wealth in
our economy:  "There's no where else to stash it."
</BLOCKQUOTE>
<BLOCKQUOTE>
It is generally accepted that putting money into banks
for a paltry 3% to 5% return is a way to slowly LOSE
your money due to inflation and taxation.  Other
forms of investment such as real estate and the bond
market are driven more by inflation.  When we have low
inflation those investments won't "perform" well.
</BLOCKQUOTE>
<BLOCKQUOTE>
Meanwhile the poor are getting poorer, the middle
class are working hard and spending more, and the rich
are getting richer.  The hard working middle class
have put money (or had it deducted) into pension plans.
</BLOCKQUOTE>
<BLOCKQUOTE>
So we have billions of dollars (the holdings of the
pension plans, and those of the rich individuals and
corporations) which have to "go somewhere."  There's
incredible social and economic pressure for that money
to be "working."
</BLOCKQUOTE>
<BLOCKQUOTE>
Since the U.S. economy is the strongest in the world
and the North American continent is one of the
most politically stable there is little incentive to
invest overseas.  So most of the money will stay
on our stock markets.
</BLOCKQUOTE>
<BLOCKQUOTE>
(This is not to say that we are the "good guys."  From what
I've read of Chomsky, Uncle Sam stirs up much of this
international trouble. We later don our white hat and make a
great show of our heroic efforts to make peace.  To read
more on that topic visit the "The Noam Chomsky Archive"
<A HREF="http://www.lbbs.org/chomsky/index.cfm"
	>http://www.lbbs.org/chomsky/index.cfm</A> and consider getting
and reading a copy of "Deterring Democracy" in particular).
</BLOCKQUOTE>
<BLOCKQUOTE>
As for Red Hat I don't know that PhatLinux is such a
critical aquisition for them.  There have been several
"FAT Linux" distributions (running under a subdirectory
on an MS-DOS/MS Windows filesystem) over the years.
There is a Macmillan product known as something like:
"Linux for Windows" (which might be a re-packaging
of PhatLinux for all I know).  You can find info about
it at <A HREF="http://www.macmillansoftware.com/mac_software"
	>http://www.macmillansoftware.com/mac_software</A>
if you're willing to put up with the JavaScript that they
force all over their page.  It's basically unusable in
Lynx and I don't feel inclined to fire up X to look
at it (since I'm writing this through an ssh link
about three U.S. states from my home mailbox).
</BLOCKQUOTE>
<BLOCKQUOTE>
So, Red Hat could create a "no-repartition" Linux
product.  They could buy a company that's done it
(build or buy --- it's the recurring question for every
business' software strategy).
</BLOCKQUOTE>
<BLOCKQUOTE>
I have no experience with PhatLinux
(<A HREF="http://www.phatlinux.com"
	>http://www.phatlinux.com</A>) so I can't offer an opinion on
the technical merits for this suggestion.  They (Red Hat)
would presumably want their own analysts to make that
decision.
</BLOCKQUOTE>
<BLOCKQUOTE>
TreLOS' "Win4Lin" (<A HREF="http://www.trelos.com"
	>http://www.trelos.com</A>) clone of
VMWare (<A HREF="http://www.vmware.com"
	>http://www.vmware.com</A>) might be an
interesting aquisition.  Of course, with Red Hat's
market capitization they could court VMWare directly.
</BLOCKQUOTE>
<BLOCKQUOTE>
I've never used either of these products personally.
Most of my associates at <A HREF="http://www.linuxcare.com/">Linuxcare</A> 
(<A HREF="http://www.linuxcare.com/">www.Linuxcare.com</A>)
use VMWare when they need to access "legacy" MS Windows apps
(and even when they want to run a copy of Linux under a virtual
machine).
</BLOCKQUOTE>
<BLOCKQUOTE>
Again, I can't speak to the technical merits of such an
aquisition.
</BLOCKQUOTE>
<BLOCKQUOTE>
There's also Kevin Lawton's Freemware
(<A HREF="http://www.freemware.org"
	>http://www.freemware.org</A>) is an open source project to
implement something like Win4Lin and VMWare.  Kevin Lawton
wrote the Bochs package which is a shareware virtual machine
(that implements an x86 on any UNIX platform).
</BLOCKQUOTE>
<BLOCKQUOTE>
Meanwhile let's not forget the <A HREF="http://www.winehq.com/">WINE</A> project
<A HREF="http://www.winehq.com"
	>http://www.winehq.com</A> which is continuing to plug away at
running MS Windows programs under Linux (in this case
without need for an emulator or hardware virtualization
layer).
</BLOCKQUOTE>
<BLOCKQUOTE>
So, Red Hat (or other Linux companies) have a smorgasbord of
MS-Windows binary compatability technologies to choose from.
</BLOCKQUOTE>
<BLOCKQUOTE>
Lothar (<A HREF="http://www.linux-mandrake.com/lothar"
	>http://www.linux-mandrake.com/lothar</A>) is a project
that is being spear-headed by MandrakeSoft, a competitor to
Red Hat.  In addition it basically overlaps some of the
functionality that Red Hat hopes to implement in Linuxconf
(a package in which they've already invested some effort and
support).  However, Lothar does seem to be an open source
project --- so any contribution by Red Hat could benefit
them (and everyone ele).  It looks like Lothar is focused
primarily on the administration and configuration of
hardware.  Basically let's provide a good UI for "adding
hardware" (one that's better and more robust than Win '9x's
infamous "Adding Hardware" wizard).
</BLOCKQUOTE>
<BLOCKQUOTE>
Your last suggestion makes more sense than any of the
others.  Of course one should be careful with "focus goups."
If the methods used in selecting participants and conducting
the research aren't exceptionally good, then you just end
up drawing conclusion from the exercise that match
assumptions that you fed into it.
</BLOCKQUOTE>
<BLOCKQUOTE>
All of your suggestions do have a consistent theme.  They
all relate to the growth of Linux on the PC desktop.
</BLOCKQUOTE>
<BLOCKQUOTE>
It seems that Red Hat doesn't consider that to be a
strategic priority.  I can understand their point of
view there.  They are trying to "break into" lucrative
niches "where the money is."  That is suggested by
their aquisition of Cygnus.
</BLOCKQUOTE>
<BLOCKQUOTE>
Linux on the desktop will probably happen.  Red Hat will
probably help.  However, the migration away from MS Windows
on home and client systems will be primarily driven by users
and free programmers (including Red Hat developers in their
"free" time).
</BLOCKQUOTE>
<BLOCKQUOTE>
Meanwhile, Red Hat has "bigger fish to fry" (or so they
hope).
</BLOCKQUOTE>
<BLOCKQUOTE>
As to which breeds of fish they're cooking, I wouldn't
know.  Unfortunately for them Red Hat seems to lack focus.
They claim to want to build up their services --- yet they
still lack credibility in their support and professional
services offerings.
</BLOCKQUOTE>
<BLOCKQUOTE>
Their bread and butter has been shrink wrap --- and they are
getting nailed by Macmillan's Mandrake based packages (which
have a well-established retail channel through their ties to
book stores).
</BLOCKQUOTE>
<BLOCKQUOTE>
Their purchase of Cygnus would suggest a diversification
into tool chain and embedded systems (the strengths of
that company).
</BLOCKQUOTE>
<BLOCKQUOTE>
Their announced strategic relationships with Oracle et al
suggest a focus on the IT server room --- the old NT killer.
</BLOCKQUOTE>
<BLOCKQUOTE>
I personally see these as different directions.  None of
them point to Joe consumer and the desktop.
</BLOCKQUOTE>
<BLOCKQUOTE>
Their support of <A HREF="http://www.gnome.org/">GNOME</A> can be 
seen as a desktop oriented
initiative.  However, it seems that the public, even the
IT purchasing public suffers from the delusion that servers
need GUIs.  So I'm not sure that this is a compelling argument.
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway I think that Red Hat does hope to "cash in on" the
name recognition that they've built.  They don't seem to
think that retail sales of their distribution will sustain
reasonable growth for them.  They're right!
</BLOCKQUOTE>
<BLOCKQUOTE>
The Linux market is overly "distribution"-manic.  There is
relatively little difference among distributions.  Red Hat,
<A HREF="http://www.suse.com/">S.u.S.E.</A>, 
<A HREF="http://www.caldera.com/">Caldera</A>, 
<A HREF="http://www.turbolinux.com/">TurboLinux</A>, 
<A HREF="http://www.debian.org/">Debian</A>, Corel and 
<a href="http://www.stormix.com/">Stormix</a> are
all fundamentally the same software.
</BLOCKQUOTE>

<p><em>[ With different installers, each having their own idea of glitz.  
	Actually, the packaging system
	is a slight delimiter -- .rpm vs .deb -- but with the help of
	a small package called <tt>alien</tt>, even that can generally
	be overcome quickly.
-- Heather ]</em></p>

<BLOCKQUOTE>
With an effective LSB (*) we wouldn't even have to ask
"what distribution is that for/from?"  You could simply
install, configure and manage any package from the open
source world without worrying about the details.
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
(Linux Standards Base: <A HREF="http://www.linuxbase.org"
	>http://www.linuxbase.org</A>)
</ul>

I think Red Hat realizes the truth in this and is frantically
seeking other revenue streams.  The sad think is that the
shrink-wrapped/packaging business is not such a bad one
to be in.  It did, after all, get them where they are today.
</BLOCKQUOTE>

<!-- sig -->
<!-- end 26 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/27"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 27 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>"Hardening" a Red Hat (into a Helmet?)</H3>


<p><strong>From Judith Bride  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
"Hardening" a <A HREF="http://www.redhat.com/">Red Hat</A> (into a Helmet?)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Mr. Dennis,
<br>Can you direct me to a source that will tell me how to secure our
RHLinux 6.0 DNS server.  I am new to Linux.  We only use it for DNS, so
we want to make sure we've closed all unnecessary services.
</STRONG></P>
<P><STRONG>
Thanks.....
<br>Judith
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
You could start with Bastille Linux at
<A HREF="http://www.bastille-linux.org"
	>http://www.bastille-linux.org</A>
</BLOCKQUOTE>

<!-- sig -->

<!-- end 27 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/28"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 28 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Virtual Mail Hosting in a Single Inbox</H3>


<p><strong>From Dina Yazbeck  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Virtual Mail Hosting in a Single Inbox
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Dear Sir
</STRONG></P>
<P><STRONG>
I am basicaly trying to host a domain and have all the emails of
the users of this domain (<tt>remotedomain.com</tt>) sent to one particular
mailbox (such as <tt>remotedomain@myisp.net</tt>) This is straigh forward.
Assuming that the remote domain machine (LINUX) polls the ISP
server.  What is the procedure to use to retrieve this mail and
distribute it the respective mailboxes of the users mail boxes.
Waiting for your reply.
</STRONG></P>
<P><STRONG>
Thank you.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Personally I despise this method of virtual
mail hosting, and I won't do it to my friends and
customer (nor would I let an ISP do it to me).
</BLOCKQUOTE>
<BLOCKQUOTE>
However, you can read the Fetchmail FAQ for
too much information on this.
</BLOCKQUOTE>
<BLOCKQUOTE><blockquote><code>
<A HREF="http://www.tuxedo.org/~esr/fetchmail/fetchmail-FAQ.html"
	>http://www.tuxedo.org/~esr/fetchmail/fetchmail-FAQ.html</A>
</code></blockquote></BLOCKQUOTE>

<!-- sig -->

<em><p>[ It might be possible to severely abuse plus-addressing to do
        it. See the Procmail Tips Pointer, and jump to section 13.2:</p>

<blockquote><code><a href="http://www.faqs.org/faqs/mail/procmail/tips-pointer/"        >http://www.faqs.org/faqs/mail/procmail/tips-pointer/</a>
</code></blockquote>

<p>-- Heather ]</p></em>

<!-- end 28 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/29"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 29 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Out-"Fox"-ing the Fox?</H3>


<p><strong>From S.R. Dawson  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Out-"Fox"-ing the Fox?
~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Not sure if you can help me, but I have thousands of records stored in the
original Foxbase+, Version 2.0 database, which are all *.dbf files, totally
MS-Dos based. Are there any utilities that I could aquire which would be
able to read these files and convert to a Windows-based database?
</STRONG></P>
<P><STRONG>
Thank you.
<br>Steve Dawson
<br>Terre Haute, In
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I suppose you could install Linux, and write some
scripts using dbview (*) convert them to text,
copy them back to an MS-DOS partition and then use them
in Microsoft's Foxbase!
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
( <A HREF="http://www.infodrom.north.de/~joey/Linux/Debian/dbview.html"
	>http://www.infodrom.north.de/~joey/Linux/Debian/dbview.html</A> )
</ul>

Actually I don't do (MS) Windows and it's too early
in the year for me to be thinking about April Fool's Day.
</BLOCKQUOTE>
<BLOCKQUOTE>
Why don't you just ask a nice purveyor of MS Windows
software (tens of thousands of apps at your local
Egghead --- err, Software Supermarket)?
</BLOCKQUOTE>

<!-- sig -->


<!-- end 29 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/30"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 30 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Adding a Disk</H3>


<p><strong>From Samuel Q Roodman  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Adding a Disk
~~~~~~~~~~~~~
:: -->
<P><STRONG>
I recently got Mandrake 6.1 up and running on Pentium 90 with 48
mb of ram.  The question I have is: The system is running with a
scsi drive and I wish to add another.  How do I access the drive
to format it and then access the directories once its formated?
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Add the new drive by assigning it a unique SCSI ID
for the bus/cable on which you are adding it, and
resolving any termination issues that come up.
</BLOCKQUOTE>
<BLOCKQUOTE>
Once you've restored your system to functionality ---
with the new drive physically/electronically
connected then it's easy.
</BLOCKQUOTE>
<BLOCKQUOTE><ol>
<li>run:		<tt>fdisk /dev/sdb</TT>
<br>(Assuming you only have one drive now,
the new drive should be <TT>/dev/sdb</TT>).

<li> create any partitions you like on the
new drive.  BE CAREFUL!  Don't blow away
partitions on your old drive.  I recommend
that your existing drives be assigned
IDs that are numerically than the new drive(s).

<li>for each partition:
<br><tt>mke2fs -c /dev/sdbX</TT>

<br>.... BE CAREFUL!  Make sure that you use the
appropriate <TT>/dev/sd?</TT> node or you'll format
one of your existing filesystems.

<li> edit your <TT>/etc/fstab</TT>.  I use a text editor (<tt>vi</tt>
or <tt>xemacs</tt> in vi emulation mode), but there are
several user interfaces (GUIs and text/curses
menuing systems) that can help you with that.
</ol></BLOCKQUOTE>
<BLOCKQUOTE>
Typical new entries might look something like:
</BLOCKQUOTE>

<blockquote><pre>/dev/sdb1       /u1	ext2	defaults	1  0
/dev/sdb2       /u2	ext2	defaults	2  0
</pre></blockquote>
<BLOCKQUOTE>
... The device names should match the ones
you used for those <tt>mke2fs</tt> commands.  The second
column lists "mount points" which should be
empty directories that you create wherever it
suits your needs.  You can name them anything
you like (pretty much).
</BLOCKQUOTE>
<BLOCKQUOTE>
Read the <tt>fstab(5)</tt> man page using the command:
<br><tt>man fstab</tt>
</BLOCKQUOTE>
<BLOCKQUOTE>
... the (5) is a UNIX convention for referring to a
keyword or man page reference by specifying which
chapter or section of the man pages is appropriate.
</BLOCKQUOTE>
<BLOCKQUOTE>
(That convention arose because many system calls,
library functions, and commands and some commands
and their configuration files have the same
names).
</BLOCKQUOTE>
<BLOCKQUOTE>
That's basically all there is to it.  Once you've physically
connected the new drives, you can do all of this (including
mounting the new filesystems and using them) without
rebooting.
</BLOCKQUOTE>
<BLOCKQUOTE>
Note that the example as given would automatically
mount these new filesystems on reboot.  To use these
filesystems after editing the fstab and WITHOUT rebooting
simply issue a series of commands like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
mount /u1; mount /dev/sdb2
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... where you refer to the unique value in either of the
first two columns/fields of the fstab entries (the device
or the mount point).  The mount command will search the
fstab for a matching entry and supply the rest of its
arguments therefrom.
</BLOCKQUOTE>
<BLOCKQUOTE>
(Of course you can read the mount(8) man page for info
on mounting filesystems without editing the fstab file.
To do a temporary mount you simply provide all of the
details on the mount command line, and leave your
fstab alone).
</BLOCKQUOTE>
<BLOCKQUOTE>
Note: if you mount a filesystem over a non-empty
directory there will be no harm done.  However the
underlying contents will be inaccessible (hidden)
until you umount the overlaid fs.  This is NOT
recommended practice, so you should consider it a
mistake if you do this.
</BLOCKQUOTE>

<!-- sig -->

<!-- end 30 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/31"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 31 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Serial Capture</H3>


<p><strong>From Glenn Proctor  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Serial Capture
~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Is there a way to view ascii data in a terminal session coming through
my linux pc's serial port? My business does a lot of data ingest over
direct connections, muxes and that sort of thing. Quite often I wish I
had a quick way to troubleshoot or check new connections to see that
the data coming across is ungarbled or is even hitting the serial
port.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Look for TTYSnoop at Freshmeat:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><code>
<A HREF="http://www.freshmeat.net/appindex/1999/09/05/936520647.html"
	>http://www.freshmeat.net/appindex/1999/09/05/936520647.html</A>
</code></BlockQuote></BLOCKQUOTE>

<!-- sig -->

<!-- end 31 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/32"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 32 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Remote Control through Telnet</H3>


<p><strong>From Dirk Blennemann  on Tue, 11 Jan 2000  
</strong></p>
<!-- ::
Remote Control through Telnet
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Dear James,
</STRONG></P>
<P><STRONG>
I noticed your address on the <A HREF="http://www.linuxcare.com/">Linuxcare</A> pages and understood that
your are a Linux expert.
</STRONG></P>
<P><STRONG>
I like to control a Linux server via Telnet. Do you have an idea
where I may find information about that subject?
</STRONG></P>
<P><STRONG>
Thank you very much in advance!
</STRONG></P>
<P><STRONG>
Dirk
<br>[Germany]
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Any book on Unix will tell you how to access text
mode and shell applications and utilities.  Linux and
UNIX basically don't distinguish among text console,
serial terminal, telnet, and other forms of terminal
access.
</BLOCKQUOTE>
<BLOCKQUOTE>
There's not much else to say on that subject.
I recommend the use of <tt>ssh</tt>, SSL telnet or other secure
variants of the client/server package to protect you
from sniffing (which is a big problem for traditional
<tt>telnet</tt>) and spoofing (which is the bane of 
<tt>rsh</tt> and <tt>rlogin</tt>).
</BLOCKQUOTE>
<BLOCKQUOTE>
It is also possible to remotely execute graphical
applications.  You run any X server on a system at
hand (in front of you), and you can run X Windows
programs on other hosts (clients) by exporting the
DISPLAY environment variable on the remote shell.
</BLOCKQUOTE>

<p><em>[ As long as the client running the app can remotely access 
	the I/O server on port 6000 or so. -- Heather ]</em></p>

<BLOCKQUOTE>
<tt>ssh</tt> will allow this very easily and securely.  It
can automatically export the appropriate variable/value
to your remote host and will encrypt all the X lib
protocol traffic through its own tunnel.
</BLOCKQUOTE>
<BLOCKQUOTE>
This is a rather big topic, but any books on Linux
and UNIX should cover it in great detail.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 32 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/33"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 33 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Jaton 107 Blade 3D and XFree86</H3>


<p><strong>From Eduardo Castello  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Jaton 107 Blade 3D and XFree86
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I have a Jaton 107 Blade 3D with 8Mb and a SamSung Syncmaster 550s
and I can't configure the X server!!!
</STRONG></P>
<P><STRONG>
What should I do?!!!
</STRONG></P>
<P><STRONG>
Please help me!!!!!!!!!!!!!!!!!
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I have never heard of a "Jaton 107" --- but Blade 3D are
Trident chipsets.  A search on <A HREF="http://www.google.com/linux"
	>http://www.google.com/linux</A>
shows people reporting success with AGP Blade 3D and
XFree86 3.3.5 and another using XFree86 3.3.4 from 
<A HREF="http://www.suse.com/">S.u.S.E.</A>
(AGP or PCI unspecified).
</BLOCKQUOTE>
<BLOCKQUOTE>
The XFree86 web site is the canonical source of what
chipsets are supported by their X server.  The Trident
Blade3D is listed on the 3.3.5 support list at
<A HREF="http://www.xfree86.org/3.3.5/README3.html"
	>http://www.xfree86.org/3.3.5/README3.html</A>
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course this assumes that you're trying to use XFree86.
There are also commercial X servers like X Inside
(from Xig) and and Metro-X (from Metrolink).
</BLOCKQUOTE>
<BLOCKQUOTE>
Your message doesn't give any clues as to what distribution
you're using, what X server you're having trouble with,
or even what specific problem you're having.
</BLOCKQUOTE>
<BLOCKQUOTE>
Hint:  When asking for tech support, especially free
support, via e-mail BE SPECIFIC!  At least tell the nice
support person what you tried, and what happened.
</BLOCKQUOTE>
<BLOCKQUOTE>
Other Hint:  Do your homework.  Read some of the back
issues of my column and you'll find about 100 messages
where people have asked variations of: How do I get
X to work with _____ video card?  I answer them all
about the same way.  I look for the video card in
Google, Alta Vista, Yahoo! etc to see if I can guess
the chipset.  Then I look at the XFree86 site to see
if its on their supported list.  Then I suggest that they
consider getting one of the other X servers or getting
a supported video card.  (Meanwhile my searches include
the keyword: Linux so I also get some testimonials and
comments from Linux users who mention these cards).
</BLOCKQUOTE>
<BLOCKQUOTE>
The answer is always the same:
</BLOCKQUOTE>
<BLOCKQUOTE><ol>
<li> Determine the chipset.
<li> Check XFree86 web site and FAQ
<li> Check a few search engines
<li> Consider purchasing a replacement:
    <ol type="a">
    <li> a supported card
    <li> one of the commercial X servers
    </ol>
</ol></BLOCKQUOTE>

<!-- sig -->


<!-- end 33 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/34"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 34 -->
<H3 align="left"><img src="../../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Redirecting stdin into telnet</H3>


<p><strong>From Christopher Smith  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Redirecting stdin into telnet
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I'm running <A HREF="http://www.redhat.com/">Red Hat</A> 6.0, and I'm 
trying to redirect my telnet
stdin from a file.  Whenever I use either a pipe or <tt>&lt;</tt> input, the
client connects, informs me that the <tt>escape is ^]</tt>, and says <tt>the
remote server has closed the connection</tt>.  What's wrong?
</STRONG></P>
<P><STRONG>
Example: $ <tt>telnet csmith &lt; input.txt</tt>
</STRONG></P>
<P><STRONG>
Christopher Smith
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I've seen examples of telnet scripting being done this
way.  However, I think it probably depends on the
version of telnet that you're using and there is a
better way.
</BLOCKQUOTE>
<BLOCKQUOTE>
For example when I do an strace on my copy of
telnet I find a number of system calls like:
</BLOCKQUOTE>

<blockquote><pre>ioctl(0, SNDCTL_TMR_STOP, {B134 -opost -isig -icanon echo ...}) = -1 ENOTTY (Inappropriate ioctl for device)
</pre></blockquote>
<BLOCKQUOTE>
Note that result: <tt>ENOTTY</tt> which is kernel speak for
"Error, this file handle doesn't refer to a terminal
device (TTY)"
</BLOCKQUOTE>
<BLOCKQUOTE>
This suggests that telnet is detecting that its
input file handle is not a terminal device, and is
bailing at that point.  
<ul><li> (It would be nice if it
gave an error message a unique error code and if
they listed this constraint in their man pages).</ul>
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway, simple redirection is not the way to
run interactive programs like telnet under scripted
control.  You probably want to use the 'expect'
scripting language instead.
</BLOCKQUOTE>
<BLOCKQUOTE>
For example, here's a simple 'expect' script to
control telnet sessions:
</BLOCKQUOTE>

<blockquote><pre>#!/usr/bin/expect -f
# Sample telnet automation
## call with autotel host username password

set host [lindex $argv 0]
set rcfile [open ~/.autotel/$host  r ]
gets $rcfile user
gets $rcfile pass
spawn telnet  "$host"
expect "login:"
send "$user\r"
expect "word:"
send "$pass\r"
interact
</pre></blockquote>
<BLOCKQUOTE>
This appears in my book (<a href="http://www.amazon.com/exec/obidos/ASIN/1562059343/linuxsystemadmin/104-3347499-9099625"
	>Linux System Administration</a>,
published by New Riders Publishing).  You call it like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
autotel foo
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... and it will automatically look for a .autotel/foo
file under you home directory, read a pair of lines
for the user name and password.  Then it uses them to
login to the host (whose name must match the
<tt>.autotel/</tt> filename (*) ).
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
(Actually the version of this on my own
system read three lines from the autotel
files: a location, and the username/password
pair).
</UL></BLOCKQUOTE>
<BLOCKQUOTE>
As I say this is a very simple 'expect' script.  It
shows the most basic features of the language:
you can do all of the normal things like open
files, read from and write to them, do basic string
handling and arithmetic, etc.  But the features of
'expect' for which it is renouned include the ability
to '<tt>spawn</tt>' interactive processes on psuedo-terminals
(ptys), and to '<tt>expect</tt>' certain patterns from the
them, and '<tt>send</tt>' strings back to them.
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course 'expect' has support for the common conditional
and looping structures, and the '<tt>expect</tt>' function supports
timeouts values.  So you can write arbitrary handling for
errors and situations that don't match your intended
dialog.
</BLOCKQUOTE>
<BLOCKQUOTE>
There's also the '<tt>interact</tt>' function which allows
your script to turn the keyboard back over to you,
so that the script then passively relays your input
and the program's output.  Actually the '<tt>interact</tt>'
function is even more powerful than than since it
can also monitor the communications and dynamically
"catch" certain key sequences, expanding them into
macros, or using them as triggers to execute your
own defined procedures or to break out of the
interaction and complete other parts of the script.
</BLOCKQUOTE>
<BLOCKQUOTE>
So, I'd check out the 'expect' programming language
and see if that will help.  Here's an untested script
that would do something like what you wanted:
</BLOCKQUOTE>

<blockquote><pre>#!/usr/bin/expect -f
# Sample telnet "feeder"

set host [lindex $argv 0]
set infilename [lindex $argv 1]
set infile [open $infilename r ]
spawn telnet  "$host"
while [ gets $infile line ] {
    sleep 1
    send -- $line
    }

</pre></blockquote>
<BLOCKQUOTE>
(This would just blindly feed lines into a telnet
session from your input file.  It's pretty stupid,
but you'd call it with something like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
telfeeder host.domain.not ./filename
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... note the lack of redirection here).
</BLOCKQUOTE>
<BLOCKQUOTE>
Note that it's also possible to use C-Kermit
(the kermit communications package from Columbia
University <A HREF="http://www.columbia.edu/kermit"
	>http://www.columbia.edu/kermit</A>) to automate
and script a communications session.  I wrote an
article about this for SysAdmin Magazine
(<A HREF="http://www.samag.com/archive/0607/index.shtml"
	>http://www.samag.com/archive/0607/index.shtml</A>) back
in 1997.  The key point of that article (which is
not online, though I could probably re-publish myself
now) is that Kermit is not just a file transfer protocol
and it is not limited simply to modem and serial
communications, it has support for telnet and rlogin
protocols.
</BLOCKQUOTE>
<BLOCKQUOTE>
In fact Kermit as improved since my article:
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
it now supports Kerberos authentication and encryption

<li>
it has internal SSL support

<li>
it can use some other program like ssh for its
communications channel.

<li>
it can now operate as an alternative to FTP
using providing a number of advantages over the
somewhat decrepit FTP protocol.

<li>
the license has been clarified and liberalized
a bit, to allow re-distribution with free OS
packages (like Linux, *BSD, etc) etc.
</UL></BLOCKQUOTE>
<BLOCKQUOTE>
(Some of these were features I recommended to Frank
de la Cruz, the father of Kermit, during my research and
in subsequent e-mail conversations.  However, I'm by no
means the only person to make these sorts of suggestions and
I couldn't claim any credit for their development).
</BLOCKQUOTE>
<BLOCKQUOTE>
One other alternatives to 'expect' that comes to mind is the
<tt>Expect.pm</tt>, PERL module which add 'expect' features to the
PERL 5 language.  (The old PERL 4 had a <tt>comm.pl</tt> library that
offered some of these features as well).
</BLOCKQUOTE>
<BLOCKQUOTE>
I'm sure there are others.
</BLOCKQUOTE>
<BLOCKQUOTE>
Hopefully this will help you solve the real problem that
you're bumping into.  Obviously, solving the problem goes
way beyond just answering the question you asked.
</BLOCKQUOTE>

<!-- sig -->

<!-- end 34 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/36"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 36 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>New Installation Stops at LI</H3>


<p><strong>From Gene Becker  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
New Installation Stops at LI
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I have loaded my new <A HREF="http://www.redhat.com/">Red Hat</A> 6.1 several times and when I reboot it comes up
to LI and then blinks a curser. At this point I can do nothing and it will
set there indefinitely.
HELP!
</STRONG></P>
<P><STRONG>
Gene Becker
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Next time you re-install, try putting your boot or root
Linux filesystem in a SMALL partition at the beginning
of the drive.  I'd suggest a <TT>/boot</TT> filesystem of less
than 32Mb and/or a root (<TT>/</TT>) filesystem of less than
127Mb.
</BLOCKQUOTE>
<BLOCKQUOTE>
If you can't do that because you have an MS-DOS
or MS Win '9x partition in the way, then use LOADLIN.EXE.
</BLOCKQUOTE>
<BLOCKQUOTE>
The probably is probably that your BIOS doesn't
know how to access parts of your disk, particularly
those portions of the hard disk that lie beyond the
1024 cylinder boundary.
</BLOCKQUOTE>
<BLOCKQUOTE>
I've explained this well over 100 times in this
column so I highly recommend searching on the terms
LILO and LOADLIN in the Linux Gazette archives. (Using
the search engine).  That's at
<A HREF="http://www.linuxgazette.com"
	>http://www.linuxgazette.com</A>  and you can find
many mirrors to them at <A HREF="http://www.google.com/linux"
	>http://www.google.com/linux</A>
</BLOCKQUOTE>

</BLOCKQUOTE>
<!-- sig -->

<!-- end 36 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/37"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 37 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Netscape can't find ANY of THEM</H3>


<p><strong>From Space on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Netscape can't find ANY of THEM
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi,
</STRONG></P>
<P><STRONG>
I know this is a silly question, but I just can't seem to figure this
out. I setup my ISP and dial in and log on ok, then when I open Netscape and
try to open a web page Netscape can't find any of them!?!?! I had it fixed
once but since then I have reinstalled RH 6.1 again and can't remember how I
fixed it. I am starting a journal and keeping track from now on! Thanks
Answer Guy
</STRONG></P>
<P><STRONG>
Space@
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Sounds like you have something wrong with your
<TT>/etc/resolv.conf</TT> (like it's empty or it doesn't
list any valid name servers).
</BLOCKQUOTE>
<BLOCKQUOTE>
Ask your ISP for a list of preferred name servers.
(You can use just about any on there on the
Internet so long as you have IP addressing and
routing working, but it's polite to use the
ones that are "close" to you).
</BLOCKQUOTE>
<BLOCKQUOTE>
If that still doesn't work, then look at
your <tt>nsswitch.conf</tt> and consider replacing it
with something more like:
</BLOCKQUOTE>

<blockquote><pre># /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat
group:          compat
shadow:         compat

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

</pre></blockquote>
<BLOCKQUOTE>
The <tt>nsswitch.conf</tt> that comes with 
<A HREF="http://www.redhat.com/">Red Hat</A> is
silly and makes all sorts of reference to NIS and NIS+
services which you probably aren't using.  Those
should be harmless though they do impact performance.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 37 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/38"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 38 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Can't Log in as 'root' via telnet</H3>


<p><strong>From liberty on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Can't Log in as 'root' via telnet
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
hi ; !
</STRONG></P>
<P><STRONG>
I can t make a "root" login from a computer to the linux computer
with telnet , but I can make it with another name user , and after
i can make "<tt>su</tt>" command ....  do you know this problem or
security,? thanks
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
That's the way it's supposed to work.
The normal login services check for a file
named <TT>/etc/securetty</TT> and will refuse to accept
a direct root login from any terminal/device that is
not listed there.
</BLOCKQUOTE>
<BLOCKQUOTE>
Depending on the exact distribution and version it
may be possible to simply rename that file if you
insist on over-riding this policy and allowing root
logins from anywhere.  In other cases you might have to
edit one or more of the "service" files under <TT>/etc/pam.d/</TT>
to remove the lines that refer to the PAM securetty
module.
</BLOCKQUOTE>
<BLOCKQUOTE>
In general it is better to accept this policy and
use '<tt>su</tt>'  Indeed it is even better to disable telnet
and replace it with '<tt>ssh</tt>' (which generally doesn't
impose this restriction, though it can be configured
to do so).
</BLOCKQUOTE>

</BLOCKQUOTE>
<!-- sig -->


<!-- end 38 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/39"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 39 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Exceed (MS Windows X Server) and Linux</H3>


<p><strong>From Sam.Young on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Exceed (MS Windows X Server) and Linux
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
James:
</STRONG></P>
<P><STRONG>
I came across an article regarding Exceed and Linux authored by
you and I wanted to drop you a line.
</STRONG></P>
<P><STRONG>
I have Exceed V6.1 on a Win98 PC and a Linux V6.0 server.  I'd
like to use exceed on the Win98 PC to do a X-windows emulation to
the Linux server.
</STRONG></P>
<P><STRONG>
Can you point me in the right direction for some configuration
instructions?  What do I have to 'start' on the Linux server?
What 'start up method' should I use in Exceed?  What command do I
need to pass from the Exceed client to Linux to work properly?
</STRONG></P>
<P><STRONG>
Thanks.  Sam
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
The most I would have done is made a passing
reference to Exceed.  I've never installed or configured
it myself, though I've used it occasionally.
</BLOCKQUOTE>
<BLOCKQUOTE>
Linux can support all of the common Unix X protocols.
So you can run <tt>xdm</tt> (X display manager) under Linux and
Exceed should offer options to broadcast or query
for "managed displays" (which should find any Linux
box running <tt>xdm</tt>).  This networking function of xdm
is really more core to its operation than the simple
GUI login that most Linux users think of when they
talk about <tt>xdm</tt>.
</BLOCKQUOTE>
<BLOCKQUOTE>
It's also possible to configure your Linux system
to allow <tt>rsh</tt>/<tt>rlogin</tt> (or <tt>telnet</tt>, <tt>ssh</tt>, etc) and the only
commands you should have to run on it in order to
allow it to open windows on your X server (Exceed)
is: <tt>export DISPLAY=</tt>$YOUR_EXCEED_WINDOWS_IP_or_DNSNAME<tt>:0</tt>
(don't forget the colon zero at the end of that).
</BLOCKQUOTE>
<BLOCKQUOTE>
That's all there should be to it.  Once you've
remotely executed that command, and possibly added
the Linux box to your "<tt>xhost</tt>" or access control
list then you should be able to use X clients to your
heart's content.
</BLOCKQUOTE>
<BLOCKQUOTE>
Exceed is a commercial package.  It should have come
with documentation and there should be technical support
available.  Using Exceed to display your Linux X clients
is ABSOLUTELY NO DIFFERENT then using it with any generic
UNIX system.  So, if you have any other trouble, get them
to deliver the tech support that you've paid for.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 39 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/40"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 40 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Double Reverse DNS Strikes Again</H3>


<p><strong>From Nelson Carvalho  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Double Reverse DNS Strikes Again
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
hello
<br>im contacting regarding linux. i have linux box with apach and fpt and
<tt>sendmail</tt> (pop3,smtp) and a dns server and dhcp server and it work fine and
fast from linux machine to linux machine. now i also have this linux box
connected to a few windows machines, now i try to <tt>ftp</tt> from the windows
machine to the linux box and it takes at least 90 seconds for it to connect
to it, once connected it is fast and good. it also does the same thing if i
try using outlookexpress to check email on the linux box. it takes about 90
seconds for it to connect and send messages, just wondering if you have any
suggestions on what might be happening?
<br>the web browser for www works with no hesitation, only ftp and mail take 90
seconds or more to establish a connection.
<br>also these computers are not connected to the internet, its a private
network.
</STRONG></P>
<P><STRONG>
i appriciate any help u could give me
<br>thanks.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
It sounds like you don't have DNS nor <TT>/etc/hosts</TT> entries
for your MS Windows clients.  If you add the IP addresses
and some names for those clients to one or the other of
these then your problem will probably go away.
</BLOCKQUOTE>
<BLOCKQUOTE>
Search my back issues on the string "double reverse dns"
or "double reverse lookup" for the gory details. (Hint:
it has to do with TCP Wrappers and how it figures how
"who" is connecting so that it can log the connection and
so that it can make policy decisions according to the
content in your <TT>/etc/hosts.allow</TT> and <TT>/etc/hosts.deny</TT> files).
</BLOCKQUOTE>
<BLOCKQUOTE>
The easiest and smartest solution is to make sure that
you have proper reverse entries in your DNS zones and/or
your <TT>/etc/hosts</TT> files for all of your systems.
</BLOCKQUOTE>

<!-- sig -->

<!-- end 40 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/41"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 41 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Closing Ports, Disabling Unwanted Services</H3>


<p><strong>From Troy Miller on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Closing Ports, Disabling Unwanted Services
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I'm new to Linux and I'm trying to secure my PC.  I have a DSL line and I
found out I have 4 open ports (FTP, Finger, Telnet and SMTP).  I'm trying to
find a resource on how to close these ports.  I do not plan to use them at
this time.  I don't want to compromise my system.
</STRONG></P>
<P><STRONG>
Thanks,
<br>Troy
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Bravo!  You are doing the right thing.
</BLOCKQUOTE>
<BLOCKQUOTE>
Three of the services you mention are usually launched
dynamically by inetd.  So you can disable them by
editing your <TT>/etc/inetd.conf</TT> file, find these services
by name, and commenting them out of the file (inserting
a "<tt>#</tt>" (hash/pound sign) at the beginning of those lines).
After that you can send a HUP signal to inetd to force it
to re-initialize itself.  You can use the following command
to do that:
</BLOCKQUOTE>
<BLOCKQUOTE><BLOCKQUOTE><CODE>
kill -HUP $(cat /var/run/inetd.pid)
</CODE></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
Of course, in this case you aren't running ANY other
inetd services so you can even just kill you inetd process
using a command like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
/etc/rc.d/init.d/inetd stop
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... or something like that.  (The exact path to your
<TT>/etc/.../init.d</TT> scripts might differ depending on
your distribution).
</BLOCKQUOTE>
<BLOCKQUOTE>
You can also find an remove the <tt>rcX.d</tt> scripts that
start inetd during boot if you like.  Your system
might have a '<tt>chkconfig</tt>' command to manage those
SysV init symlinks for you, or you can use the
technique that I've described here before
(create <TT>/etc/.../rc*.d/disabled</TT> directories, and
move the S??... symlinks into those as appropriate).
</BLOCKQUOTE>
<BLOCKQUOTE>
Search the back issues for "sysv init" to hear the
long-winded discussion of how all of that works.
</BLOCKQUOTE>
<BLOCKQUOTE>
That leaves the SMTP service.  That is probably being
provided by sendmail, which is probably being loaded
"standalone" (not dynamically through inetd).  So you
also want to find the <TT>/etc/.../rcX.d/S*</TT> script that's
starting sendmail and disable that.
</BLOCKQUOTE>
<BLOCKQUOTE>
After you've done that you'll have a machine that
doesn't provide any network services to anyone.
</BLOCKQUOTE>
<BLOCKQUOTE>
You can double check that using a command like:
</BLOCKQUOTE>
<BLOCKQUOTE><BLOCKQUOTE><CODE>
netstat --inet -an
</CODE></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
... and looking for anything that's in the LISTEN
state.  You can also check it using a port scanner
like nmap from another system.  (I'm guessing that
you've already been playing with one of those,
to get the information on which you've based this
question).
</BLOCKQUOTE>

<!-- sig -->


<!-- end 41 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/42"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 42 -->
<H3 align="left"><img src="../../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Daemons</H3>


<p><strong>From sangeeth george  on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Daemons
~~~~~~~
:: -->
<P><STRONG>
sir,
</STRONG></P>
<P><STRONG>
i am sangeeth george, doing my final year Btech.in
information technology.recently i came across a new
topic(which not actually a new one but i came to know
only recently)called "Daemons".since then i had been
fetching for materials to learn more about it.but i
couldn't find any worthy one.can u help me in getting
more info about this topic. i've got a lot of doubts
about it and i would like to share with you.some of
them are,
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
A daemon under UNIX (and some other operating
systems) is a program which runs in the background,
has no controlling terminal (is detached) and is
(under UNIX and Linux) in it's own process group.
</BLOCKQUOTE>
<BLOCKQUOTE>
Other than those (relatively minor and technical)
details it is just a program.
</BLOCKQUOTE>
<BLOCKQUOTE>
I've heard that the term originally was 'dmon'
from Multics, or ITS or some other predecessor
to UNIX.  I guess it stood for "device monitor."
</BLOCKQUOTE>
<BLOCKQUOTE>
However, since I'm on my <A HREF="http://www.debian.org/">Debian</A> box, which has
a '<tt>dict</tt>' client, and a '<tt>dictd</tt>' (dictionary daemon)
and several freely available lexicons installed
I'll just yank in a definition from that:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
[using my <tt>xemacs</tt> macro equivalent of vi's <tt>:r!dict daemon</tt>]
</BlockQuote></BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
From Jargon File (4.0.0/24 July 1996) [jargon]:
</STRONG></P>

<em><strong><font color="#000033"><br>  daemon /day'mn/ or /dee'mn/ /n./  [from the mythological
<br>     meaning, later rationalized as the acronym `Disk And Execution
<br>     MONitor'] A program that is not invoked explicitly, but lies
<br>     dormant waiting for some condition(s) to occur.  The idea is that
<br>     the perpetrator of the condition need not be aware that a daemon is
<br>     lurking (though often a program will commit an action only because
<br>     it knows that it will implicitly invoke a daemon).  For example,
<br>     under {{ITS}} writing a file on the {LPT} spooler's directory
<br>     would invoke the spooling daemon, which would then print the file.
<br>     The advantage is that programs wanting (in this example) files
<br>     printed need neither compete for access to nor understand any
<br>     idiosyncrasies of the {LPT}.  They simply enter their implicit
<br>     requests and let the daemon decide what to do with them.  Daemons
<br>     are usually spawned automatically by the system, and may either
<br>     live forever or be regenerated at intervals.
<br>
<br>     Daemon and {demon} are often used interchangeably, but seem to
<br>     have distinct connotations.  The term `daemon' was introduced to
<br>     computing by {CTSS} people (who pronounced it /dee'mon/) and
<br>     used it to refer to what ITS called a {dragon}.  Although the
<br>     meaning and the pronunciation have drifted, we think this glossary
<br>     reflects current (1996) usage.
</font></strong></em>
<P><STRONG>
From The Free On-line Dictionary of Computing (15Feb98) [foldoc]:
</STRONG></P>

<em><strong><font color="#000033"><br>  daemon
<br>
<br>     &lt;operating system&gt; /day'mn/ or /dee'mn/ (From the mythological
<br>     meaning, later rationalised as the acronym "Disk And Execution
<br>     MONitor") A program that is not invoked explicitly, but lies
<br>     dormant waiting for some condition(s) to occur.  The idea is
<br>     that the perpetrator of the condition need not be aware that a
<br>     daemon is lurking (though often a program will commit an
<br>     action only because it knows that it will implicitly invoke a
<br>     daemon).
<br>
<br>     For example, under {ITS} writing a file on the {LPT} spooler's
<br>     directory would invoke the spooling daemon, which would then
<br>     print the file.  The advantage is that programs wanting files
<br>     printed need neither compete for access to, nor understand any
<br>     idiosyncrasies of, the {LPT}.  They simply enter their
<br>     implicit requests and let the daemon decide what to do with
<br>     them.  Daemons are usually spawned automatically by the
<br>     system, and may either live forever or be regenerated at
<br>     intervals.
<br>
<br>     {Unix} systems run many daemons, chiefly to handle requests
<br>     for services from other {host}s on a {network}.  Most of these
<br>     are now started as required by a single real daemon, {inetd},
<br>     rather than running continuously.  Examples are {cron} (local
<br>     timed command execution), {rshd} (remote command execution),
<br>     {rlogind} and {telnetd} (remote login), {ftpd}, {nfsd} (file
<br>     transfer), {lpd} (printing).
<br>
<br>     Daemon and {demon} are often used interchangeably, but seem to
<br>     have distinct connotations (see {demon}).  The term "daemon"
<br>     was introduced to computing by {CTSS} people (who pronounced
<br>     it /dee'mon/) and used it to refer to what {ITS} called a
<br>     {dragon}.
<br>
<br>     (11 May 1995)
</font></strong></em>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
It's obvious that the Jargon file and FOLDOC
entries are basically the same.  I believe that
the Jargon entry was adopted by FOLDOC.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
1.It is possible for us to retrieve the commands
that   we have entered in a shell promptusing 'uparrow
key'.Is it due to the action of Daemons . if  yes,name
of that daemon?
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
What you're describing is a feature of some
of the common UNIX/Linux command shells.  It is
not done through any sort of daemon.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
2. in one of the magazine i've read that Daemons are
much more powerful than TSR ,as Tsr need some user
intervention.is it true?can u give an eg. for that.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
That is hogwash.  The old MS-DOS print spooler
TSR (terminate/stay resident) was about as close
to a daemon as you can get under MS-DOS (serving almost
the same function as the <tt>lpd</tt> line printer daemon
under Linux and the BSD UNIX').
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
3.surely there must be some kind of difference exsists
between ordinary programs and daemons in the
INSTALLATION part ,since daemons are executed by
system itself . can you explain me how to(where
to)install a program if we want it to act as a Daemon.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
No.  Daemons can be started by any user at
any time under UNIX.  A daemon is just a program
that detaches itself from it's controlling terminal
(by closing STDIN, standard input, STDOUT, standard
output, and STDERR, standard error file descriptors)
and using the<TT> setpgrp()</TT> system call to set itself
into a separate process group.
</BLOCKQUOTE>
<BLOCKQUOTE>
Most daemons on most UNIX systems are started by
the init process (either directly, via <TT>/etc/inittab</TT>,
or through one of the rc*) scripts during the boot
process.
</BLOCKQUOTE>
<BLOCKQUOTE>
The most common daemons are:
</BLOCKQUOTE>
<BLOCKQUOTE><dl>
<dt>inetd:	<dd>"Dispatcher"  --- starts other
daemons in response to network connections
on well known service (WKS) ports as
specified in the <TT>/etc/inetd.conf</TT> and the
<TT>/etc/services</TT> files.
<dt>
sendmail: <dd>Handles SMTP, 
	<br>competitors: qmail and Postfix
<dt>
init:	<dd>"Father of all processes" --- it
starts all of the rc* scripts, and
it monitors all terminals, and consoles
forcing new getty and xdm processes
on them as login sessions are ended.
<dt>
httpd:  <dd>Web server daemon.
<dt>
cron:  <dd>Scheduler: this keeps a list of commands
to be run at given intervals.  cron performs
most of the routine system maintenance
<dt>
atd:	<dd>The at service used to be managed by
cron (there was a cron job that ran every
minute to execute any outstanding at jobs).
However, recently (a couple years ago)
at was set into a separate daemon in most
Linux distributions.  This is particularly
useful on laptops where the old method would
keep the disk drives spinning unnecessarily.
<dt>
lpd:	<dd>print spool server
</dl>
</BLOCKQUOTE>
<BLOCKQUOTE>
... et cetera.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
4.what really is the importance of Daemons in new
world (say E-commerce)?(i raised this question since i
may most probably take a seminar on this topic)
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
There is nothing special about daemons.
</BLOCKQUOTE>
<BLOCKQUOTE>
What is the importance of background jobs
in e-commerce and the "new world?"  They are
just programs.  Likewise for daemons.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
kindly provide me anwsers to these
questions + any website from where i can learn more
about it.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
You need a basic book on UNIX.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
expecting an early reply from you.
</STRONG></P>
<P><STRONG>
thanking you
<br>sangeeth george t
</STRONG></P>

<!-- sig -->

<!-- end 42 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/43"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 43 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Using a Downloaded .iso Image for System Upgrade</H3>


<p><strong>From ljones on Tue, 18 Jan 2000  
</strong></p>
<!-- ::
Using a Downloaded .iso Image for System Upgrade
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hello,
</STRONG></P>
<P><STRONG>
I have <A HREF="http://www.redhat.com/">Red Hat</A> 5.2 installed, and have successfully downloaded the
.iso image for 6.1.
</STRONG></P>
<P><STRONG>
How do I use the image to upgrade?
</STRONG></P>
<P><STRONG>
Lawrence
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Basically you have to burn that image onto a CDR or
CDRW using '<tt>cdrecord</tt>'
</BLOCKQUOTE>
<BLOCKQUOTE>
Then you can boot from the CD media and do your upgrade.
</BLOCKQUOTE>
<BLOCKQUOTE>
It would be nice if you could just mount the .iso
image on a loopback block device and run the upgrade
utility from that.  However, I don't think you can
do that.  There's no problem with the mounting part,
just use a command like:
</BLOCKQUOTE>
<BLOCKQUOTE><BLOCKQUOTE><CODE>
mount -o loop /path/to/....iso /mnt/loop
</CODE></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
... to mount the <tt>.iso</tt> file as a filesystem.  The
problem is that the installer/upgrader for Red Hat
is set up to run from the initrd (initial RAM disk)
or from the init process.  I haven't torn it apart
and looked that closely at it --- but it doesn't
seem like you can just mount the image, or the CD
and run the installer/upgrader.  You have to boot
from it.
</BLOCKQUOTE>

<!-- sig -->

<p><em>[ Should be pretty easy to boot from one of its floppy images, then 
	point to your loopback mounted drive location as a file source.
	You </em>might<em> have to mount it at /cdrom in order to convince
	the diskette to use it. -- Heather ]</em></p>

<!-- end 43 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/44"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 44 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Automated Login Around a Challenge Card</H3>


<p><strong>From Wayne Xin  on Thu, 20 Jan 2000  
</strong></p>
<!-- ::
Automated Login Around a Challenge Card
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Sorry for the bold disturbance. I've been frustrated with this problem.
Hope you can point me to the right solution.
</STRONG></P>
<P><STRONG>
I have a battery based security card that changes my password for ISP
connection every minute. So I can't totally automate my login process
with a fixed password. Is there a place that talks about pausing in the
middle of a script for me to type in the password and then continuing to
capture the remotely assigned IP?
</STRONG></P>
<P><STRONG>
Appreciate your help.
<br>PS: I am talking linux 6.1 (X86) modem/ISP configuration 
<IMG SRC="../gx/dennis/smily.gif" ALT=":)" 
		height="24" width="20" align="middle">
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
In the 'expect' scripting language you can
use an '<tt>interact</tt>' function with one or more "escape
patterns."
</BLOCKQUOTE>
<BLOCKQUOTE>
Here's an example:
</BLOCKQUOTE>

<blockquote><pre>#!/usr/bin/expect -f

spawn telnet  "somehost"
expect "login:"
send "myname\r"
expect "enter key from your card:"
interact "\r" {
	return
	}
expect "success"
## continue with script
interact
</pre></blockquote>
<BLOCKQUOTE>
In this case we open a telnet to "somehost" and we
automate part of the login (waiting for a login:
prompt, sending a name, waiting for a sort of
password for your card).
</BLOCKQUOTE>
<BLOCKQUOTE>
The interesting part of this is where we have the
'interact' directive.  In this case we interact
until an [Enter] key is entered and when we see that
escape sequence we execute some 'expect' code (in this
case all we're doing is executing the 'return' from
the interact to the rest of our script).
</BLOCKQUOTE>
<BLOCKQUOTE>
It's possible in 'expect' to have multiple "escape
sequences" or "macros" as options to the the '<tt>interact</tt>'
function.  Each of these can have its own block of
'expect' code.  These other bits of code can '<tt>spawn</tt>'
other programs that have their own nested '<tt>interact</tt>'
functions, etc.
</BLOCKQUOTE>
<BLOCKQUOTE>
Obviously (as I've shown) you can also have multiple
'<tt>interact</tt>' sessions in a script.  (It should also be
obvious that you'll only get to the second and subsequent
sessions by using a '<tt>return</tt>' from each of the
preliminary '<tt>interact</tt>' invocations.
</BLOCKQUOTE>
<BLOCKQUOTE>
Most 'expect' syntax is derived from the TCL libraries
around which it is build.  TCL is a language that was
designed to be embedded into other applications and
utilities and 'expect' is a utility which lets you
run interactive programs, connected to psuedo-terminals
and control them through its '<tt>expect</tt>', '<tt>send</tt>',
and related functions.  The rest of the language is
TCL.
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway that's the easiest way that I know of to
do this under Linux.  There's also an <tt>Expect.pm</tt>
PERL module.  I haven't used it, but it should have
most of the same features.
</BLOCKQUOTE>

<!-- sig -->


<!-- end 44 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/45"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 45 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Mystery Question</H3>


<p><strong>From Robert Polk  on Thu, 20 Jan 2000  
</strong></p>
<!-- ::
Mystery Question
~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hello,
</STRONG></P>
<P><STRONG>
Currently I am contracting for an LA based company.  We currently
have internal mail as well as a majority of users still using POP
mail from an ISP.
</STRONG></P>
<P><STRONG>
We'll say the domain name is <tt>z.com</tt>.  My question is in regard to
MX records.
</STRONG></P>
<P><STRONG>
Example:	<tt>domain z.com</tt>
</STRONG></P>

<pre><strong> MX preference 10 external.z.com
 MX preference 10 mail.z.com
</strong></pre>
<P><STRONG>
then it continues with 20, etc preferences.
</STRONG></P>
<P><STRONG>
Currently most users are still using this external mail for their
internet email (<tt>external.z.com</tt>). There are however, about 20
users internally that are only using the internal mail host for
their internet email (<tt>mail.z.com</tt>)=
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I'm not sure what the question is.
</BLOCKQUOTE>
<BLOCKQUOTE>
There is a problem if you're using both of these hosts
(mail.z.com and external.z.com) as POP servers for the one
domain.  Unless you're doing some sort of address rewriting
or other mail routing on one or the other of these then any
piece of mail for z.com could land on either of these hosts.
Since each of them has equal MX values, and there are no
lower MX values for the z.com domain, the mail that lands on
one or the other will stay there.
</BLOCKQUOTE>
<BLOCKQUOTE>
In general you don't want to have this ambiguity.
The lowest MX for a given domain or subdomain should
lead to one unique host.  The secondaries and tertiaries
can be ambiguous since they will all relay their mail
to the lower MX hosts.
</BLOCKQUOTE>
<BLOCKQUOTE>
You can do scaling in a few ways at the MTA level.
For example you can have a big aliases file (DBM)
or a set of NIS/NIS+ maps or an LDAP server to
provide aliasing of recipients to specific POP
servers.  This can give provide a "flat" external
mail profile (everyone is @z.com) while allowing
you to scale to a much larger number of users
than you could support on a single POP server.
</BLOCKQUOTE>
<BLOCKQUOTE>
(This assumes also that you'll configure all
the mail hubs to re-write outgoing mail to
masquerade the From: and Return: addresses).
</BLOCKQUOTE>
<BLOCKQUOTE>
Maybe the question you were asking is how to
have your mail servers distinquish between
the internal and external users.  In that case,
just use aliases.  Mail that's <EM>addressed</EM> to
"external.z.com" will ignore the z.com MX record.
Likewise for any that's <EM>addressed</EM> to "mail.z.com"
</BLOCKQUOTE>
<BLOCKQUOTE>
To understand this you must note the distinction
between where hosts to which mail is SENT and those
to which it is ADDRESSED.  Mail is sent to a host
according to it's MX records.  What that host does
with it depends on how it is addressed.  If the
mail is addressed to any of the names that are on
on a hosts "whoami" list (the sendmail 'w' class)
then rewriting, aliasing, and local delivery are
performed.
</BLOCKQUOTE>
<BLOCKQUOTE>
(I'm shamelessly limiting the MTA terminology
here to that of 'sendmail' --- the various other
MTAs have similar features and concepts).
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway, I've said more than enough given that
I have no idea of what your question really is.
</BLOCKQUOTE>

</BLOCKQUOTE>
<!-- sig -->


<!-- end 45 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/46"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 46 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>idled RPM for Red Hat</H3>


<p><strong>From dsrao  on Thu, 20 Jan 2000  
</strong></p>
<!-- ::
idled RPM for <A HREF="http://www.redhat.com/">Red Hat</A>
~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi ,
</STRONG></P>
<P><STRONG>
Where can i find idled daemon for Linux(RedHat 6.1) &amp; what
are the neccessary steps for installing the same. Thanks in advance.
</STRONG></P>
<P><STRONG>
-ganesh
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Look at:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><code>
<A HREF="http://rpmfind.net/linux/RPM/idled.html"
	>http://rpmfind.net/linux/RPM/idled.html</A>
</code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... The RPM Find repository (<A HREF="http://rpmfind.net/linux/RPM"
	>http://rpmfind.net/linux/RPM</A>)
is about the best place to find contributed RPMs for
just about any RPM distribution.  There is also an rpmfind
utility (<A HREF="http://rpmfind.net/linux/rpm2html/rpmfind.html"
	>http://rpmfind.net/linux/rpm2html/rpmfind.html</A>)
which can automate much of the process of finding
RPM files, resolving their dependencies, etc.
</BLOCKQUOTE>
<BLOCKQUOTE>
I'm not sure if idled is still being maintained.
</BLOCKQUOTE>
<BLOCKQUOTE>
You might also look at autolog
(<A HREF="http://www.rpmfind.net/linux/RPM/autolog.html"
	>http://www.rpmfind.net/linux/RPM/autolog.html</A>)
which can also automatically log out shell
sessions after inactivity.  The only RPMs I
found on this were for <A HREF="http://www.suse.com/">S.u.S.E.</A> 
--- so You might
have to grab an SRC RPM and rebuild it.
(Red Hat doesn't list dependencies and provisions
using the same keys as S.u.S.E).
</BLOCKQUOTE>

<!-- sig -->


<!-- end 46 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/47"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 47 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Monthly Win (Lose) Modem Question</H3>


<p><strong>From ilijam on Thu, 20 Jan 2000  
</strong></p>
<!-- ::
Monthly Win (Lose) Modem Question
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I have Rockvel 56,6 KB V90 Data Voice Fax. Linux doesn't detects him
under Win u need to install some special drivers, can u tell where can i find them.
</STRONG></P>
<P><STRONG>
thanks bye
<br>[From Macedonia]
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Rockwell modems typically use the Rockwell chipsets.
These are winmodems.  Rockwell refuses to release
programming details about these chips, ergo there are
officially NO Linux drivers for them.
</BLOCKQUOTE>
<BLOCKQUOTE>
For more info on those look at:
</BLOCKQUOTE>
<BLOCKQUOTE><DL><DT>
Linux VooDoo (Ultimate Source for Linux Drivers?)
<DD><A HREF="http://www.linuxvoodoo.org/drivers/cards/modems"
	>http://www.linuxvoodoo.org/drivers/cards/modems</A>
</DL></BLOCKQUOTE>
<BLOCKQUOTE>
.... and at the Linux "Winmodem Support" Page
(<A HREF="http://linmodems.org"
	>http://linmodems.org</A>).  NOTE:  WWW.linmodems.org DOES NOT
WORK.  You must use &quot;<A HREF="http://linmodems.org"
	>http://linmodems.org</A>&quot; if you want
to see their web pages.
</BLOCKQUOTE>
<BLOCKQUOTE>
(I didn't know that and had to hunt down the URL
through Google after trying several variations of
www.linmodems.org, ...linmodem.or, ...linmodems.com, etc).
</BLOCKQUOTE>

<em><p>[ As of press time, you don't have to.
	<a href="http://www.linmodems.org/"
		>http://www.linmodems.org/</a> worked just fine
	for me.</p>
<p>But while I have you here, I know that the Lucent (binary-only) driver was 
	mentioned on the <a href="http://www.debian.org/Lists-Archives/"
		>Debian mailing list</a> for laptop users.  After
	some messing with it, the user was actually successful in getting
	a usable modem. -- Heather ]</p></em>

<BLOCKQUOTE>
Gawd!  A new millennium and I'm still getting Winmodem
questions!   (Please! No mail about how the new
millenium doesn't start until 2001 --- I'm with Linus
on this, I don't care.  It's a tenth of one per cent different!)
</BLOCKQUOTE>

<!-- sig -->
<!-- end 47 -->
<!--     .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.     -->
<A NAME="tag/48"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 48 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>Installing a POP Daemon on Red Hat Linux</H3>

<p><strong>From Hongwei Li  on Sat, 22 Jan 2000  
</strong></p>
<!-- ::
Installing a POP Daemon on <A HREF="http://www.redhat.com/">Red Hat</A> Linux
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi,
</STRONG></P>
<P><STRONG>
I recently installed RedHat 6.0 and 6.1 on two machines,
respectively.  Everything looks working except that users can not
access their e-mail accounts on these two servers from PC Windows
using Netscape Mail or MS Outlook Express although they can access
the e-mails using telnet, pine.  Apparently, POP3 daemon is not
working on these two RH Linux boxes.
</STRONG></P>
<P><STRONG>
Somebody said I can retrieve POP3 daemon from IMAP package.  But,
I don't know where it is and how to do it.  Could you help me?
How to check the system if POP3 daemon is installed and working?
Where can I get IMAP package and retrieve POP3 daemon, then
installed it and let it run? or should I get something else?
</STRONG></P>
<P><STRONG>
I would greatly appreciate your help!
</STRONG></P>
<P><STRONG>
Hongwei Li
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Your "somebody" is a smart cookie.  You sould listen
to him or her.  However, you might ask him (or her) for
a wee bit more detail.
</BLOCKQUOTE>
<BLOCKQUOTE>
Red Hat inexplicably puts their POP and IMAP daemons
in the same file.  You can install them using
something like the following procedure:
</BLOCKQUOTE>
<BLOCKQUOTE>
1) Mount your RH Linux CD (disc #1?) using
a command like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
mount /mnt/cdrom
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
2) Go to RPM directory using something like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
cd /mnt/cdrom/Redhat/RPMS
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
3) Install the imap....rpm package using a
command like:
</BLOCKQUOTE>
<BLOCKQUOTE><BLOCKQUOTE><CODE>
rpm -Uvh imap*
</CODE></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
... or:
</BLOCKQUOTE>
<BLOCKQUOTE><BLOCKQUOTE><CODE>
rpm -i imap*
</CODE></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
That's basically all there is to it.  You can
test for POP installlation/accessibility using a
command like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
telnet $TARGET 110
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... where $TARGET is replaced with the hostname or
IP address of the system on which you hope to find
a POP server.
</BLOCKQUOTE>
<BLOCKQUOTE>
If you get a "connection refused" or a "connection
closed by remote host" then you don't have POP installed
properly on the $TARGET system (or you have a firewall,
packet filter, or <TT>/etc/hosts.deny</TT> rule between your client
and the server).
</BLOCKQUOTE>
<BLOCKQUOTE>
Otherwise you should get something a little like this:
</BLOCKQUOTE>

<blockquote><pre>Trying 123.45.67.8...
Connected to popserver.wherever.not.
Escape character is '^]'.
+OK &lt;13260.948530011@popserver.wherever.not&gt;
USER nobody
+OK
PASS somedumbpassword
+OK Mailbox open, 4294967295 messages
QUIT
</pre></blockquote>
<BLOCKQUOTE>
The USER, PASS and QUIT commands were typed by me.  There
are additional POP 3 protocol commands you could use to play
with the server manually, but this is enough to verify that
the server is running, that the user name and password are
valid and that the POP server isn't having trouble opening
the user's mail spool.
</BLOCKQUOTE>
<BLOCKQUOTE>
NOTE: The PASS command is simply transmitting and
displaying your password.  Don't do this over an insecure
network or with a bad person looking over your shoulder!
</BLOCKQUOTE>
<BLOCKQUOTE>
(Also note:  The number of messages that the POP daemon
reports as being in your inbox had better be alot less
then what I show in this example: 2^32 - 1).
</BLOCKQUOTE>
<BLOCKQUOTE>
As for you question about whether you should get something
else (something other than the POP daemon that Red Hat
packages in their IMAP RPM file): That's entirely up to you.
</BLOCKQUOTE>
<BLOCKQUOTE>
I did dig up a page where Cameron Laird started
collecting notes for a comparison of POP daemons
(<A HREF="http://starbase.neosoft.com/~claird/comp.mail.misc/POP_comparison.html"
	>http://starbase.neosoft.com/~claird/comp.mail.misc/POP_comparison.html</A>)
</BLOCKQUOTE>
<BLOCKQUOTE>
It doesn't offer much commentary nor comparison, yet.
However, it does offer links to over a dozen POP servers.
Surprisingly I couldn't find any other online articles
that offer a comparison or summary of POP daemons and
server.
</BLOCKQUOTE>
<BLOCKQUOTE>
One of the most popular POP daemons is QPopper
(<A HREF="http://www.eudora.com/freeware/qpop.html"
	>http://www.eudora.com/freeware/qpop.html</A>).  This is
a (relatively) free package from the publishers of
the Eudora mail client software for Macs and MS Windows.
One of the principle advantages of this package is
its support for changing passwords through it's own
client/server protocol.  To enable this you have to
install the poppasswd daemon in addition to the
qpopper daemon.
</BLOCKQUOTE>
<BLOCKQUOTE>
If you replace your MTA (mail transport agent) with
qmail then you'll want to switch to the qmail-pop3d
daemon (which comes with qmail).  You can find out more
than you wanted to know about that and many addons,
and optional packages and patches related to it by
searching the Qmail home page (<A HREF="http://www.qmail.org"
	>http://www.qmail.org</A>)
on the term "POP."
</BLOCKQUOTE>
<BLOCKQUOTE>
It's a pity there isn't more info to guide users
in selecting a POP daemon.  Then again, basic POP
is a pretty protocol with only a very focussed purpose.
Any of them should do the basic job at hand.
</BLOCKQUOTE>
<BLOCKQUOTE>
If you're allowing POP from outside of your network
(beyond your organization's firewall or packet filters)
then you should require APOP authentication or you should
ensure that your outside clients are connecting through
a secure channel (like FreeS/WAN -- <A HREF="http://www.xs4all.nl/~freeswan"
	>http://www.xs4all.nl/~freeswan</A> --
or an ssh tunnel).
</BLOCKQUOTE>
<BLOCKQUOTE>
APOP is an extension to the POP protocol that uses a
challenge-response exchange to perform the authentication
(there's also a KPOP variation for sites using Kerberos).
What is remarkable is that I don't see options in any of
the software that I've looked at to DISABLE plain text
passwords (so that you can enforce a policy that your
external users MUST use APOP).
</BLOCKQUOTE>
<BLOCKQUOTE>
It doesn't sound like this will be a problem for you,
but if it is (and for the benefit of my other readers)
here's a couple of links to information about POP over
ssh, and how to configure a system to allow POP and/or
IMAP over SSL (secure socket layer).
</BLOCKQUOTE>
<BLOCKQUOTE><DL><DT>
Secure POP via SSH mini-HOWTO
<DD><A HREF="http://www.linuxdoc.org/HOWTO/mini/Secure-POP%2BSSH.html"
	>http://www.linuxdoc.org/HOWTO/mini/Secure-POP%2BSSH.html</A>
<dt>
linuxsec: [linux-security] Re: POP secure access??
<dd><A HREF="http://www-uxsup.csx.cam.ac.uk/lists/linuxsec/0104.html"
	>http://www-uxsup.csx.cam.ac.uk/lists/linuxsec/0104.html</A>
</DL></BLOCKQUOTE>
<BLOCKQUOTE>
Hope all that helps.
</BLOCKQUOTE>

<!-- sig -->

<!-- end 48 -->
<!--              . . . . . . . . . . . . . . . . . . .              -->
<HR WIDTH="40%" ALIGN="center">
<!-- begin 2 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif" 
	height="50" width="60" alt="(?) " border="0"
	>IMAP/POP daemon on RH 6.0 and 6.1</H3>

<p><strong>From Randall Gellens  on Sun, 30 Jan 2000  
</strong></p>
<P><STRONG><FONT COLOR="#000066"><EM>
One of the most popular POP daemons is QPopper
(<A HREF="http://www.eudora.com/freeware/qpop.html"
	>http://www.eudora.com/freeware/qpop.html</A>).  This is
a (relatively) free package from the publishers of
the Eudora mail client software for Macs and MS Windows.
</EM></FONT></STRONG></P>
<P><STRONG>
Why do you say "relatively"?
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
I was under the misconception that Qualcomm was imposing
some restrictions on the distribution of qpopper
derivatives.  However, I copied you so that you could
clear that up for me.  (I see that it's not listed
as "non-free" by my <A HREF="http://www.debian.org/">Debian</A> package lister and now
I see that it appears to be a BSDish license.
</BLOCKQUOTE>
<BLOCKQUOTE>
So, I was wrong to qualify it this way.  Qpopper is a
free package.
</BLOCKQUOTE>
<P><STRONG><FONT COLOR="#000066"><EM><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
If you replace your MTA (mail transport agent) with
qmail then you'll want to switch to the qmail-pop3d
daemon (which comes with qmail).  You can find out more
than you wanted to know about that and many addons,
and optional packages and patches related to it by
searching the Qmail home page (<A HREF="http://www.qmail.org"
	>http://www.qmail.org</A>)
on the term "POP."
</EM></FONT></STRONG></P>
<P><STRONG>
Many people use Qpopper and Qmail together.  There is a <TT>./configure</TT>
option for Qpopper to use Qmail's home dir mail spool.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Glad to hear it. I obviously haven't been using qpopper
recently.  I should probably switch.
</BLOCKQUOTE>
<P><STRONG><FONT COLOR="#000066"><EM><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
APOP is an extension to the POP protocol that uses a
challenge-response exchange to perform the authentication
(there's also a KPOP variation for sites using Kerberos).
What is remarkable is that I don't see options in any of
the software that I've looked at to DISABLE plain text
passwords (so that you can enforce a policy that your
external users MUST use APOP).
</EM></FONT></STRONG></P>
<P><STRONG>
By default, Qpopper does not permit users to log in with plain text
passwords if they are enabled for APOP (or SCRAM).
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Maybe the FAQ or README should clarify that.  Maybe
I missed it.  That's one of the reasons that I try to
copy the "right" people when I'm doing my "Answer Guy"
responses.  I learn from my mistakes that way.
</BLOCKQUOTE>
<BLOCKQUOTE>
Is SCRAM some variant of the CRAM-MD5? (challenge/response
authentication mechanism: RFC 2095 and 2195?)
</BLOCKQUOTE>
<BLOCKQUOTE>
Does that get around the need to store the POP user's
cleartext password on the server?  I read through these
RFCs and didn't quite get the part about storing
"contexts" rather than copies of the cleartext passwords.
(I didn't spend long on it, but I think I'm missing
some detail here --- I should probably read some source
code to an implementation to see what I missed).
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
	HEIGHT="28" WIDTH="50" BORDER="0"
	>
Randall Gellens
<em><br>Opinions are personal;    facts are suspect;    I speak for myself only
<br>--- randomly selected quote ---
<br>A child of five would understand this.  Send somebody to
fetch a child of five.        --Groucho Marx, _Duck Soup_
</em></STRONG></P>

<!-- sig -->

<!-- end 2 -->
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"
</H4>
<P> <hr> <P> 

<!-- QUICK TIPS SECTION ==================================================  -->
<center>
<H1><A NAME="tips"><IMG ALIGN=MIDDLE ALT="" SRC="../gx/twocent.gif">
More 2&#162; Tips!</A></H1> <BR>
Send Linux Tips and Tricks to <A HREF="mailto:gazette@ssc.com">
gazette@ssc.com
</A></center>

<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
<FONT COLOR="navy">Removing "Strange" files (response)
</FONT> </H3>
Sun, 30 Jan 2000 05:02:06 -0800
<BR>From: Jim Dennis &lt;<A HREF="mailto:jimd@starshine.org">jimd@starshine.org&gt;</A>


<P> Last month there was a shell script offered by 
Mendel Cooper &lt;thegrendel@theriver.com&gt; for removing files
with degenerate names.  That is to safely unlink those filenames
containing "special" or strange characters.

<P> It appears to be a dangerous script, and is probably not the
best was to accomplish his stated goals.

<P> There is no reason to blindly and indiscriminately remove all files
containing whitespace, and the character set 
<CODE>[+{;"\=?~()&lt;&gt;&amp;*|$]</CODE>.
There is good reason to warn the sysadmin about the existence of
such filename/links in the "common" areas of the file hierarchy.

<P> In fact this particular set of characters seem arbitrary. For
example why include the "open curly brace" and not its closing 
counterpart?  Experience has shown that one is much better off
using converse logic in these cases.  In other words, one should
define a set of the characters which are definitely to be allowed
in filenames rather than trying to think of all the characters 
that "might be bad."

<P> To safely find all files with such strange characters one can 
use a command like:
<PRE>
       find / -name '*[^][a-zA-Z0-9#%~:,._+-]*' 
</PRE>
... this defines a list of characters which I allow in my 
filenames: alphanumerics (<CODE>a-zA-Z0-9</CODE>), the square brackets
(<CODE>[]</CODE>) --- note that /usr/bin/[ is a standard link to the 
/usr/bin/test command --- a few bits of punctuation that are 
occasionally found in filenames (such as the "dot" and "tilde"
characters).

<P> Note that even this liberal list of allowed characters isn't 
liberal enough on my Debian and S.u.S.E. systems.  I find
some "accented" (High ASCII) character filename links among
some of the fonts and console/kbd map packages. I find that
many MP3 files contain spaces, ampersands, and apostrophes.

<P> In order to see characters that might not be displayed correctly
by your terminal you can use the "-v" option to the cat command
like so:
<PRE>
  find / -name '*[^])}{([a-zA-Z0-9@#$&amp;"'"'"'%~:,._+-]*' | cat -v	
</PRE>
<P> ... here I've even further liberalized my character set even
to allow single and double quotes to be allowed.  The part of 
this that might be confusing bears explanation:
<PRE>       	
   [^])}{([a-zA-Z0-9@#$&amp;"'"'"'%~:,._+-]
                        ^^^^^^
</PRE>

<P> Here I'm adding the double quote (which is quoted from the 
shell by the single quote way back at the beginning of this
argument), then I'm ending the current single quoted context
and immediately starting a double quoted one context.  This is
still part of the same shell argument (since I haven't introduced
any unquoted whitespace, or anything that is in a normal IFS).
Then I have a single quote (which is quoted by the double quotes)
and a terminating double quoted (ending that string), and another
opening single quote which goes to the end of the argument.

<P> It's ugly, but it is the easiest way to put a literal single 
quote into a shell argument.  (There are a number of characters
that are "special" or that have "metasyntactic" implications 
when they are in a double quoted context, but only the single
quote is significant inside of a single quoted context.

<P> Note also that I use the dash character as the last one inside my
character class.  That to indicate to the regex/globbing engine
that this particular dash represents itself (a literal dash) and
that it is NOT operating to indicate a range of other characters,
as it is when it appears in the a-z, A-Z, and 0-9 sequences.
Similarly I have the closing bracket as the first "normal"
character after the opening of the class and the "negation"
operator.  The regex/globbing engine that's used by find, bash and
the GNU utilities is well written enough to distinguish between the
literal inclusion of these "special" characters and their other
uses within the regex/glob character class defining syntax.  To
allow the use of the "^" (circumflex or "caret" ) character we can
include an additional instance of it later in the class definition
(anywhere other than the first or last character of the sequence).

<P> This regex "class definition" sequence is quite an advanced topic,
so it is easiest to use it as an example so long as you understand
what it does.  In other words you can safely use this example even
if you don't understand how to create such a pattern --- just be
sure that you know what it DOES.

<P> To safely remove a file with special characters in its name
one can use a syntax like:
<PRE>
       find . -maxdepth 1 -name .... -print0 | xargs -0 rm
</PRE>
... note that those are "zeros" in the -print0 'find' directive 
and the -0 option to 'xargs'  These "zero" arguments work together
to ensure that the filenames are passed from the 'find' process to
the rm command as NUL terminated strings.  The ASCII NUL character
(the 0-th in that encoding system) is really special and it really
can't be embedded in a filename.

<P> There are some other GNU utilities that accept a -0 or --null
option to allow 'find' to pass NUL-terminated arguments to them
including GNU tar and cpio.

<P> The ellipses in this example can be replaced with any globbing
pattern that exclusively matches the file(s) to be removed.  Use
the find command into a 'cat -v' process first to be sure that it
only lists those file that you really intend to remove.  Of course
the . argument could be replaced with any directory name or list of
names.

<P> Incidentally, the reason I came across this is because I'm starting
work on a "Linux Tips fortune cookie" file.

<H4>Mendel Cooper responds:</H4>

<P> That is correct, in the sense that all administrative tools, utilities,
and scripts are dangerous, especially those affecting the filesystem. Any
script coming from an outside source that is used blindly and without
understanding is dangerous.


<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
<FONT COLOR="navy">2C Tip
</FONT> </H3>
Wed, 12 Jan 2000 18:18:58 +0100 (CET)
<BR>From: Flavio Poletti &lt;<A HREF="mailto:poletti@writeme.com">poletti@writeme.com&gt;</A>

<P>         I've read the 2C Tip from Pat Bateman &lt;pat99@linustart.com&gt; and I found
it useful. I wrote a small Perl script that inspects all open ports and reports
about them. I want to share it with the others - and also  ask you to check  if
it works or if it is not useful!!!

<P> <A HREF="misc/tips/showports.pl.txt">showports.pl</A>

<P>         Good bye,

<P>                 Flavio Poletti.




<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
<FONT COLOR="navy">Quick html browse / edit
</FONT> </H3>
Wed, 19 Jan 2000 00:22:45 +0100
<BR>From: Paco &lt;<A HREF="mailto:fmunoz@geocities.com">fmunoz@geocities.com&gt;</A>

 
<P> If you want to edit your HTML code you have some choices, most of them
only allow you to change your bare code in a non Visual method. This can be
viewed as drawback but after the design of the 1st file of a given set must of
the work is Cut &amp; Paste, so you can use the Netscape editor to create the
template them clear all the junk code that it write and then use one of the
following options:

<PRE>
 - Just an editor and and your favorite browser
 Lynx, Netscape, konkeror ..... and another windows with vi, pico, joe, emacs or
somethings more "WYGIWYSish" 
 Use: Just from X, lauch all that you want and don't forget to reload your pages
after saving them

 - mc 
  midnight command can let you see html files (rendered by lynx) and edit them
with cooledit (Warning this a a console tool !! If you use one of them too
much you could end as a Computer Guru years later ! )
   Use: Just open a console and tipe mc (Most distros) browse with the arrows,
read files with F3/enter and edit them with F4


 - emacs : This "editor" have some features that help you to browse and edit your
html files. Is there anything that can't be programed in it? ;-)  
 Use: Just read all the emacs docs, and launch it (either in X or console)

 - Amaya lets you update your changes automagically and give you a treelike
view of your code's structure. (nice feature if you use a lots of tables) Made
by the w3 consortium, see http://www.w3.org 
 Use: Launched from X

 - One of the KDE tools :
  KDreamSite see http://www.raverx.seite.ms 
  WebMaker see http://www.services.ru/linux/webmaker 
  KWebDeb see http://mason.gmu.edu/~ebanker/kwebdev/index.html 
 Use: Launched from X

  Galway (good !, GNOME html editor)  see http://erin.netpedia.net/
 Use: Launched from X

  There are also others 

  CoffeCup (good but not Open Source) ,
 tkHTML
 asWedit
 plexel
 ASHE
 Bluefish (Nice!) see http://bluefish.linuxbox.com/
 Bulldozer (designed by the NASA!)
 ewin
 </PRE>

<P> You can allways go to http://www.freshmeat.net or even www.linuxberg.org and
search there for more stuff, I'm sure that this list is not complete.

<P> I strongly sugest you to use some short of scripting or templates to create
your pages. The target is to tipe your have your new text as plain text and get
nicely formated html pages just a "click/script" away. (Perl anyone?)

<P> Un saludo
Francisco Muoz



<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
<FONT COLOR="navy">Yet another tip
</FONT> </H3>
Sun, 23 Jan 2000 16:22:57 -0700 (MST)
<BR>From: Mendel Cooper &lt;<A HREF="mailto:thegrendel@theriver.com">thegrendel@theriver.com&gt;</A>

<P> Hello again, LG people.

<P> Here is another one for your 'tips' column.


<P> It seems that "whois" queries are no longer quite the same. A simple
"whois xyz.com" defaults to the Network Solutions server, but due to
political machinations these guys are playing it tight lipped and have
sharply restricted the amount of info returned on a "whois". If you
need the in-depth goods on a domain name, you now have to turn to an
alternate whois server, such as ripe.net.

<P> The following script, named 'wh', will do a domain name lookup on any of three
alternate whois servers. As root, save 'wh' to /usr/local/bin, and then create
three symbolic links in that directory, like so:

<PRE>
[root /usr/local/bin]# ln -s /usr/local/bin wh /usr/local/bin/wh-ripe
[root /usr/local/bin]# ln -s /usr/local/bin wh /usr/local/bin/wh-cw
[root /usr/local/bin]# ln -s /usr/local/bin wh /usr/local/bin/wh-radb
</PRE>


<P> The script can be invoked as 'wh zzz.com', which does a lookup of
zzz.com on the ripe.net server. If invoked as 'wh-cw zzz.com', it looks
up zzz.com on the cw.net server. If invoked as 'wh-radb zzz.com', it
looks up zzz.com on the radb server.

<P> These alternate servers unfortunately do not list as many domain names
as the Network Solutions server, but they do provide a great deal more
info on the ones they have.

<P> <A HREF="misc/tips/wh.sh.txt">wh</A>







<!-- END tips -->

<P> <hr> <P> 
<!--================================================================-->
<H4><font color="maroon">
Tips in the following section are answers to questions printed in the Mail
Bag column of previous issues.
</font></H4> 

<!-- BEGIN tips.answers -->

<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Linux clickability in windows NT Domain
</FONT> </H3>
Fri, 31 Dec 1999 15:09:38 -0600
<BR>From:  &lt;<A HREF="mailto:tdierkes@home.com">tdierkes@home.com&gt;</A>

<P> As a new feller, I'm flabbergasted that a question was asked that I KNEW!

<P> Network Neighborhood is using WINS to resolve the IP addresses.    The NT 
machines may have the correct domain name in there (DNS tab), but, on the 
WINS Addressing tab (start | settings | control panel | network | 
protocols | TCPIP | Properties | WINS Addressing)  there is a check tab 
for 

<P> "Enable DNS for Windows Resolution"

<P> That must be checked.

<P> Or, you could have your Linux machine name added to the WINS server. 





<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Making Linux talk to an NT network
</FONT> </H3>
Fri, 31 Dec 1999 16:08:52 -0600
<BR>From:  &lt;<A HREF="mailto:tdierkes@home.com">tdierkes@home.com&gt;</A>

<P> David,

<P> Use the Diagnostics found on 
http://us1.samba.org/samba/docs/DIAGNOSIS.html

<P> You might be better to at least read the FAQ first 
http://us1.samba.org/samba/docs/FAQ/

<P> I just got most of my Samba issues resolved this week.   I also felt like 
I was spinning my wheels for a while.   The Diagnostics will, besides help 
you identify your problems, will also point out what you need to do MOST, 
and that is, break your connectivity problems down into smaller bytes. 

<P> ie.   Let us start with the 1st problem of your 10 Easy Step guide you 
suggested.   Come back with the 1st specific problem and we can go from 
there.





<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">linux on a laptop
</FONT> </H3>
Fri, 31 Dec 1999 16:53:47 -0600
<BR>From:  &lt;<A HREF="mailto:tdierkes@home.com">tdierkes@home.com&gt;</A>

<P> Do not forget to check http://www.linuxgazette.com/wgindex.html which is 
the Linux Gazette search engine for anwers before asking.     I searched 
on ATI rate and got a lot of responses.





<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Not a tip, but rather a question
</FONT> </H3>
Fri, 31 Dec 1999 19:08:30 -0500
<BR>From: Gerard Beekmans &lt;<A HREF="mailto:glb@dds.nl">glb@dds.nl&gt;</A>

<P> Hi,

<BLOCKQUOTE>
	<P> I'm looking to add "disk mirroring" (RAID-1) to a SUSE 6.1 system with
	an AHA-2940U2W.. I must be
	looking in the wrong places, but it seems like information about this
	particular issue is scarce at best. 
	
	Any ideas? 

</BLOCKQUOTE>
<P> An idea is to use Software-RAID. This eliminates the need of a hardware
RAID controller.

<P> What you need to do, is read the Sofware-RAID mini HOWTO. You can get
this document from http://www.linuxdoc.org/


<P> You might have the file in /usr/doc/HOWTO/mini/ (or whever your system
stores HOWTOs)  but there's a chance your local version is outdated. So
download the one from the LDP site mentioned above to ensure yourself of
reading the latest version.



<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">pulse vs tone dialing
</FONT> </H3>
Fri, 31 Dec 1999 19:14:33 -0500
<BR>From: Gerard Beekmans &lt;<A HREF="mailto:glb@dds.nl">glb@dds.nl&gt;</A>

<P> Hi,

<BLOCKQUOTE>
	<P> currently my modem dials using tone, but my phone line needs pulse, how
	do fix it? 

</BLOCKQUOTE>
<P> You need to modify your modem's dial string.

<P> Currently, it says something like ATDT&lt;here phonenumber&gt;

<P> Change this to ATDP&lt;here phonenumber&gt; and it'll dial in pulse-mode
rather than in tone-mode.




<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Access 97
</FONT> </H3>
Sat, 1 Jan 2000 12:41:58 -0600
<BR>From: McKown, John &lt;<A HREF="mailto:JMckown@Insurdata.com">JMckown@Insurdata.com&gt;</A>

<P> First, happy new year!

<P> To the best of my, admittedly limited, knowledge, there is not a way to run
Access 97 directly on Linux. I think that I have seen some Linux ODBC
drivers which allow a Linux client to access an Access97 database running on
another computer. In particular, on
http://freshmeat.net/appindex/1999/12/07/944590737.html . This says that it
allows a Linux client to talk to any NT ODBC data source. This, of course,
requires running WindowsNT. You can do that by having two machines, one
running Linux the other running WindowsNT. Network them together with a
normal Ethernet connection. Or, you can purchase a product called VMWare
(http://www.vmware.com). This product allows you to install and run a
WindowsNT (or 95 or 98) system under Linux. Note - this DOES require you to
buy WindowsNT! It is not an emulator of WindowsNT, it simply allows a real
WindowsNT machine to run along with Linux on the same physical machine. I
have used this product to run Windows98 under Linux and it does work quite
well for me. VMWare allows the WindowsNT "virutal machine" to talk to Linux
via a "virtual" ethernet connection.

<P> Question, why must you use Access97? Linux has some nice database software
that is free. I'm thinking mainly of PostgreSQL and MySQL. The main thing
that they lack is a "builtin" GUI interface. But I'm sure that there are
some out there. Probably in Perl or Python, both of which can "talk" to
either of those database systems.






<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Re: pulse vs tone dialing
</FONT> </H3>
Sun, 2 Jan 2000 23:44:41 -0500
<BR>From: Pierre Abbat &lt;<A HREF="mailto:phma@oltronics.net">phma@oltronics.net&gt;</A>

<P> You need to change "atdt" to "atdp". Where you change this depends on how you
are dialing and perhaps on your distribution. On a Red Hat or Mandrake system
using "ifup ppp0" or UserNet, this is in
/etc/sysconfig/network-scripts/chat-ppp0. In kppp, hit Setup, Modem tab, Modem
Commands button. The config file is ~/.kde/share/config/kppprc if you need to
edit it by hand or program.

<P> phma



<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Running Microsoft Windows Apps on Linux.
</FONT> </H3>
2 Jan 00 12:38:23 ARST
<BR>From: Ivan Andres Hernandez Puga &lt;<A HREF="mailto:iahp@usa.net">iahp@usa.net&gt;</A>

<P> Dear Rick:

<P> Try with WINE (http://www.winehq.org).
I have heard that you can run MS-Office and VisualBasic 6 using that program.

<P> Luck.



<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Re: SNA Server
</FONT> </H3>
Tue, 04 Jan 2000 20:05:17 +0000
<BR>From: Burkhard Perkens-Golomb &lt;<A HREF="mailto:perkens@sdm.de">perkens@sdm.de&gt;</A>

<P> Just use metacrawler:

<P> http://www.metacrawler.com/index.html?nocookie

<P> and search for "sna linux" (without quotes).

<P> There's even an GPLed SNA Server available.

<P> 	Burkhard



<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Linux Red Hat installation kernel panic Unable to mount root
</FONT> </H3>
Thu, 6 Jan 2000 13:58:39 +0100
<BR>From: Ewan Gatherer (ECS) &lt;<A HREF="mailto:Ewan.Gatherer@ecs.ericsson.se">Ewan.Gatherer@ecs.ericsson.se&gt;</A>

<P> Hi 

<P> You should boot your linux box with the boot disk you created, or where meant to create when installing Linux. Once booted, if all goes well, you will have you linux box up and running. Then re-install lilo or your favourite boot manager by typing lilo. If you want to set the dos partition to startup by default use lilo -D dos. 

<P> If this does not solve your problem or things do not go as I mentioned above drop me a mail.

<P> Best regards

<P> Ewan Gatherer





<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Linksys Ether16 NIC installation issues, as asked in the Answer Guy,
 LG Jan 2k
</FONT> </H3>
Thu, 06 Jan 2000 14:33:19 -0700
<BR>From: Marcus Post &lt;<A HREF="mailto:marcus.post@wcom.com">marcus.post@wcom.com&gt;</A>

<BLOCKQUOTE>
	<P> From Chuck Whinney on Sun, 05 Dec 1999
I cant seem to get my Linksys Ether16 LAN card to work under linux. I turned
off the PnP liek teh linksys website said, and I turned the motherboard
setting from PnP on that IRW to the ISA setting. Linux still never
recognizes it.
Any ideas? Thanks! Chuck
</BLOCKQUOTE>

<P> I wanted to comment on this because some easy items where missed in
answering this customer. THe chipset is fully supported, being an NE2000
clone that works just fine. If he is having difficulty installing it, here's
where he should check:

<P> #1 Conflicts. This is not likely a problem, since the Ether software that
sets the IRQ and I/O of the card checks for conflicts before setting the
resources. If you have not installed new hardware, or turned on any extra on
board peripherals (Serial, Parallel, or USB ports), this shouldn't be an
issue.

<P> #2 How the driver is loaded. As a shot in the dark, you are likely using
redhat, in which case the best choice is to use Linux Config to set up the
module to load at boot. Most distros will work the same way, but some you
have to manually edit rc.* files. THere is a linux-conf topic for network
interfaces, but I forget what it is called ATM. If you have to edit the rc.*
files, look for a rc.modules file; most distrobutions have one with the
network card modules already specified, but commented out. Find the one with
your module ( ne2k.o I believe) and uncomment it. In either case, don't
worry about specifying the IRQ; you only need to note the I/O address for
this card. *VERY IMPORTANT* when specifying the I/O port, use "0x320"
instead of  "320". You have to specify the number is hex, which is '0x'. So,
if the software that disabled your plug n play on the card said it was using
port "330", tell linux that the port is "0x330" Don't expect the module to
autodetect the card: on this card, it almost never works (I own three of
them personally), while autodetect works on other cards, such as my SMC. I
don't know why, but don't count on the module to detect the card.

<P> #3. I dont know about ISA IRQ changes you made in the BIOS. From personal
experience, they just aren't needed. You sound comfortable enough with them,
so you may want to change them back to normal once you are positve the Linux
configurations are correct and complete.

<P> #4 Standard troubleshooting: If you dont get an error when booting, check
'ifconfig'. You may just need to assign the card an address, subnet, et al.
Or, run dhcpcd if you have a DHCP server/cable modem/DSL router/whatever.
Try a different ISA slot. If all looks good locally, but you cant reach
outside of your own box, check your cables, subnet mask. First answer if the
problem is hardware or software. Tackle it logically.

<P> Best of luck,
Toodles




<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Win98 ICS + Linux
</FONT> </H3>
Fri, 07 Jan 2000 23:11:51 +0100
<BR>From: Anders Hoglund &lt;<A HREF="mailto:anders.hoglund@linux.nu">anders.hoglund@linux.nu&gt;</A>

<P> Hello!

<P> It's easy to do that, run netcfg and click on "interfaces". Edit your
"eth0" with
"interface configuration protocol - dhcp", save and restart.
After that it should work!

<P> Sorry for my bad english!






<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Diamond SupraExpress 56i V PRO
</FONT> </H3>
Wed, 12 Jan 2000 15:40:19 +0100
<BR>From: Alberto Caso &lt;<A HREF="mailto:caso@intermail.es">caso@intermail.es&gt;</A>

<P> 	Hi,
	I read your question on Linux Gazette #48 about installing a Diamond
SupraExpress 56i V PRO under Linux and I have to give you bad news: it's
a winmodem. Well, it is not a full winmodem, as it does data compression
on the modem rather than on the PC, but it is partialy
software-controled, so it will only work with the proper drivers
installed. As the technical staff at Diamond told me (yes, I had a
SupraExpress 56i V PRO), there are no plans to provide drivers for
platforms other than Win32. I also emailed the developer support staff,
but I got no answer from them.
	Alberto.







<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Suggestion and ideas
</FONT> </H3>
Wed, 19 Jan 2000 01:37:34 +0100
<BR>From: Paco &lt;<A HREF="mailto:fmunoz@geocities.com">fmunoz@geocities.com&gt;</A>

<P> Just read a Linux newbie guide and an Instalation guide. :-)
Try not to read all the other stuff ... untill you need it or had finished the
instalation (and everything is working)

<P> 1  To get out from a manual just hit q (From the origins of the Unix world q
was the key to quit :-) You are right, This is said in noplace. I have figured
in and old VAX some years ago just after 10 minutes (You have to log out
before you could leave the terminal)

<P> 2 To copy a file use (much like the old MSDOS copy, well not really) use:
<CODE>cp file1 target</CODE>
 where target can be a file or a directory (just type man cp, now that you know
how to exit tit :-)  

<P> 3 Pico is nice, In console mode I use the midnight commander to navigate the
directories and just hit F4 to launch cooledit and edit files (Funtions keys
hints are at the bottom of the screen) Very easy. I miss it a lot when I use
the University Solaris box.

<P> 4 ???? 
 





<P> <hr> <P> 
<!--================================================================-->
<a name=""></a>
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
ANSWER: <FONT COLOR="navy">Re: HELP with LT Win Modem and SB 16 >Sound Blaster wanted!
</FONT> </H3>
Thu, 20 Jan 2000 15:49:55 +1300
<BR>From: Greig McGill &lt;<A HREF="mailto:rider@wave.co.nz">rider@wave.co.nz&gt;</A>

<P> Following up from your january issue, specifically:
<BLOCKQUOTE>
	From: Gerard Beekmans 
	<P> It's true; Winmodems don't work under Linux. Winmodems are
	specially designed to work with Microsoft Windows and are not supported
	in Linux. The only way to get a modem to work is to buy a
	non-winmodem.
</BLOCKQUOTE>

<P> This is not strictly true...

<P> Go to www.linmodems.org. 

<P> I managed to get my LT Winmodem going on my Acer notebook - runs sweeter than it did under win98.



 






<!-- END tips.answers -->



<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>
This page written and maintained by the Editor of the <I>Linux Gazette</I>.
Copyright &copy; 2000, <A HREF="mailto:gazette@ssc.com">gazette@ssc.com</A><BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<font color="maroon">
<H1>Web Applications with Database Connectivity</H1>
<h2>- getting started -</h2>
</FONT>
<H4>By <a href="mailto:mandreiana@yahoo.com">Marius Andreiana</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




<p><h3>Abstract</h3>
<p>Almost any company with a presence on the web uses some kind of database to 
  ease the content maintaining. This article will introduce a way to develop database-backed 
  web sites using open-source software : Linux, Apache, PostgreSQL, PHP3.<p>
  Although this is written for a Red Hat Linux system, most of it ( if not all )
  applies to other distributions.
  <p>
<h3>Contents</h3>
<UL>
	<LI><a href="#linux">Linux</a>
	<LI><a href="#apache">Apache</a>
	<LI><a href="#postgres">PostgreSQL</a>
	<LI><a href="#php3">PHP3</a>
	<LI><a href="#all">Putting it all together</a>
	<LI><a href="#res">Resources</a>
</UL>

<h2><p><a name="linux">Linux</a></h2>
<p>We all know about Linux... You could also check my 
<a href="http://www.linuxstart.com/~marius/intro/">Introduction to Linux</a>

<p>
<h2><p><a name="apache">Apache</a></h2>
<p>Apache is the most used web server on the internet. Originally based on NCSA, 
  it evolved into a far superior system which can rival (and probably surpass) 
  almost any other UNIX based HTTP server in terms of functionality, efficiency 
  and speed. Apache is an entirely volunteer effort, completely funded by its 
  members, not by commercial sales.
<p>Your Linux distribution includes Apache. Install it ( if it isn't already 
installed ) and start the HTTP daemon. 
  It's a very simple installation, so it won't be covered here. Test it by typing 
  in your web browser : <b>http://localhost/</b>. You should see a page which tells 
  you that the installation was successful.
<p>

<h2><p><a name="postgres">PostgreSQL</a></h2>
<p>PostgreSQL is an advanced Object-Relational database management system (DBMS) 
that supports almost all SQL constructs (including transactions, subselects and 
user-defined types and functions).
Postgres, developed originally in the UC Berkeley Computer Science Department, 
pioneered many of the object-relational concepts now becoming available in some 
commercial databases. It provides SQL92/SQL3 language support, transaction 
integrity, and type extensibility. PostgreSQL is a public-domain, open source
descendant of this original Berkeley code. 
<p>The easiest way to set up PostgreSQL is from 
<a href="ftp://ftp.redhat.com/pub/RedHat/6.1/RPMS/">RedHat's 6.1 RPMs</a>. 
Install everything beginning with <b>postgres</b>.
<p>I recommend not to store your database files in the default location,
<b>/var/lib/pgsql/</b>, but in <b>/home/postgresdb</b> ( or somewhere 
in <b>/usr/local</b> ). That way, if you have to reinstall the system, you
woun't lose the data ( you do have a separate partition for <b>/home</b>, 
don't you ? ).
<p>So how do you do this ? 

After installing the RPMs, user <b>postgres</b>
is the database administrator ( not <b>root</b> !). Logged in as root, set
up a password for <b>postgres</b> : 
<p><b># passwd postgres</b>
<p>
Next, create the directory and change it's
owner to be the PostgreSQL administrator :
<p>
<b># mkdir /home/postgresdb<br>
# chown postgres.postgres /home/postgresdb
</b>

<p>The location of database files is specified by PGDATA environment variable.
You should set this up so it's available to all users. Add this at the end
of <b>/etc/profile</b> file :
<p><b>PGDATA=/home/postgresdb<br>
PGLIB=/usr/lib/pgsql<p>
export PGDATA PGLIB
</b><p>
In order to use the database, the <b>postmaster</b> must be running.
You'll probably want it to run all the time, so let's add it to the
start-up daemons :
<p>
<b># setup</b>
<p>Select <b>Sytem services</b>, then make sure <b>postgresql</b> is
marked with a *.
<p>
Okay, one more thing. We must modify in <b>/etc/rc.d/init.d/postgresql</b>
 ( which is run at start-up ) the database directory. Replace every
 occurence of <b>/var/lib/pgsql</b> with <b>/home/postgresdb</b>
<p>Now you are ready to go. Start the <b>postgresql</b> service :
<p><b>
# /etc/rc.d/init.d/postgresql start
</b>
<p>
Being the first time it is run, the base database files will be created. Then
the postmaster will be started ( by default, TCP/IP communication is enabled ). 
<p>
It's time to test the instalation. Create a user <b>pguser</b> :
<p><b>
# adduser pguser<br>
# passwd pguser
</b><p>
Logged in as <b>postgres</b>, create the same user for PostgreSQL :
<p><b>
$ createuser pguser
</b><p>
Answer to the questions by not allowing this user to create databases, don't let it 
be a superuser and create a database for him. 
<p>
Log in as <b>pguser</b> and run <b>psql</b>. Create a table and insert
a few records :
<p><b>
pguser=> create table friends ( name varchar(30), email varchar(90) );<br>
pguser=> insert into friends values ( 'John', 'john@johnny.com' );<br>
pguser=> insert into friends values ( 'Mary', 'mary@linuxmail.com' );<br>
pguser=> select * from friends;<br>
</b>
<p>You could do this from <b>PgAccess</b> ( included in Postgres ) if
you want a graphical user interface, but for now try the command line 
( and don't forget the semi-colon at the end ). 
<p>
Time to move forward.

<p>
<h2><p><a name="php3">PHP3</a></h2>
<p>PHP is a server-side HTML-embedded scripting language with a strong 
  database integration layer. Writing a database-enabled web page is incredibly 
  simple. Supported databases include PostgreSQL, MySQL, Oracle, Sybase, Informix. 
<p>Again, the easiest way to set up PHP is from 
<a href="ftp://ftp.redhat.com/pub/RedHat/6.1/RPMS/">RedHat's 6.1 RPMs</a>.  
Install <b>php</b>, <b>php-manual</b>, <b>php-pgsql</b>.
<p>
Now let's tell Apache about PHP. Uncomment the follwing lines in 
<b>/etc/httpd/conf/httpd.conf<p>
LoadModule php3_module        modules/libphp3.so<br>
AddModule mod_php3.c
<p></b> and <b>/etc/httpd/conf/srm.conf<p>
AddType application/x-httpd-php3 .php3<br>
AddType application/x-httpd-php3-source .phps
</b><p>
You could also add to <b>DirectoryIndex</b> index.php3 ( in <b>srm.conf</b> )
<p> 
<p>Choose a place which will hold our work. For start you could use <b>/home/httpd/html/</b> 
  ( if that's your DocumentRoot defined in <b>srm.conf</b> ).
<p>
Let's test with a simple document named <b>test.php3</b> ( the extension is 
very important ) with a single line : <b>&lt;?php phpinfo() ?&gt;</b>
<p>
Access this file from your web browser from <b>http://localhost/test.php3</b>
<br>
You should see lots of information about PHP, your server ...
<p>


<h2><p><a name="all">Putting it all together</a></h2>
<p>Everything is set, let's get some results !
<p>Our friends John and Mary are still there, waiting for you.
Create a file named <b>friends.php3</b>. 
<a href="misc/andreiana/friends.php.txt">Here it is</a>, with
lots of comments.
<p>
<FONT color=#000000><FONT color="#0000BB">
&lt;?php<br><br></FONT><I><FONT color="#FF8000" size="-1">
//define&nbsp;variables&nbsp;used&nbsp;with&nbsp;the&nbsp;database</FONT></I><FONT color="#0000BB">
<br></FONT><I><FONT color="#FF8000" size="-1">
//usually&nbsp;this&nbsp;goes&nbsp;in&nbsp;an&nbsp;include&nbsp;file</FONT></I><FONT color="#0000BB">
<br>$PG_HOST=<FONT color="#DD0000">
<STRONG>"localhost"</STRONG></FONT><FONT color="#007700">;</FONT><br>$PG_PORT=5432<FONT color="#007700">;</FONT><br>$PG_DATABASE=<FONT color="#DD0000">
<STRONG>"pguser"</STRONG></FONT><FONT color="#007700">;</FONT><br>$PG_USER=<FONT color="#DD0000">
<STRONG>"pguser"</STRONG></FONT><FONT color="#007700">;</FONT><br><br>$PG_PASS=<FONT color="#DD0000">
<STRONG>""</STRONG></FONT><FONT color="#007700">;</FONT><br><br></FONT><I><FONT color="#FF8000" size="-1">
//let's&nbsp;open&nbsp;the&nbsp;database</FONT></I><FONT color="#0000BB">
<br>$dbconn=pg_connect<FONT color="#007700">(</FONT>&nbsp;<FONT color="#DD0000">
<STRONG>"dbname=$PG_DATABASE&nbsp;host=$PG_HOST&nbsp;port=$PG_PORT&nbsp;user=$PG_USER&nbsp;password=$PG_PASS"</STRONG></FONT>&nbsp;<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><FONT color="#007700">if</FONT>&nbsp;<FONT color="#007700">(</FONT>&nbsp;!&nbsp;$dbconn&nbsp;<FONT color="#007700">)</FONT>&nbsp;<FONT color="#007700">{</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color="#007700">echo</FONT>&nbsp;<FONT color="#DD0000">
<STRONG>"Error&nbsp;connecting&nbsp;to&nbsp;the&nbsp;database&nbsp;!&lt;br&gt;&nbsp;"</STRONG></FONT>&nbsp;<FONT color="#007700">;</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;printf<FONT color="#007700">(</FONT><FONT color="#DD0000">
<STRONG>"%s"</STRONG></FONT>,&nbsp;pg_errormessage<FONT color="#007700">(</FONT>&nbsp;$dbconn&nbsp;<FONT color="#007700">)</FONT>&nbsp;<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;exit<FONT color="#007700">(</FONT><FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><FONT color="#007700">}</FONT><br><br></FONT><I><FONT color="#FF8000" size="-1">
//the&nbsp;database&nbsp;handle&nbsp;is&nbsp;$dbconn</FONT></I><FONT color="#0000BB">
<br></FONT><I><FONT color="#FF8000" size="-1">
//run&nbsp;a&nbsp;sql&nbsp;command&nbsp;to&nbsp;insert&nbsp;another&nbsp;record</FONT></I><FONT color="#0000BB">
<br>$sqlcom=<FONT color="#DD0000">
<STRONG>"insert&nbsp;into&nbsp;friends&nbsp;values&nbsp;('Marius',&nbsp;'marius@marius.com')"</STRONG></FONT><FONT color="#007700">;</FONT><br><br>$dbres&nbsp;=&nbsp;pg_exec<FONT color="#007700">(</FONT>$dbconn,&nbsp;$sqlcom&nbsp;<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><FONT color="#007700">if</FONT>&nbsp;<FONT color="#007700">(</FONT>&nbsp;!&nbsp;$dbres&nbsp;<FONT color="#007700">)</FONT>&nbsp;<FONT color="#007700">{</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color="#007700">echo</FONT>&nbsp;<FONT color="#DD0000">
<STRONG>"Error&nbsp;:&nbsp;"</STRONG></FONT>&nbsp;+&nbsp;pg_errormessage<FONT color="#007700">(</FONT>&nbsp;$dbconn&nbsp;<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;exit<FONT color="#007700">(</FONT><FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><FONT color="#007700">}</FONT><br><br></FONT><I><FONT color="#FF8000" size="-1">
//let&nbsp;me&nbsp;know&nbsp;I've&nbsp;been&nbsp;added&nbsp;to&nbsp;the&nbsp;database&nbsp;by&nbsp;sending&nbsp;me&nbsp;an&nbsp;email</FONT></I><FONT color="#0000BB">
<br>mail<FONT color="#007700">(</FONT><FONT color="#DD0000">
<STRONG>"marius@marius.com"</STRONG></FONT>,&nbsp;<FONT color="#DD0000">
<STRONG>"Lucky&nbsp;winner&nbsp;!"</STRONG></FONT>,&nbsp;<br><FONT color="#DD0000">
<STRONG>"You've&nbsp;just&nbsp;won&nbsp;a&nbsp;row&nbsp;in&nbsp;our&nbsp;database.&nbsp;Congratulations&nbsp;!"</STRONG></FONT>,&nbsp;<FONT color="#DD0000">
<STRONG>"From&nbsp;:&nbsp;boss@db.com"</STRONG></FONT><FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br></FONT><I><FONT color="#FF8000" size="-1">
//yes,&nbsp;it's&nbsp;that&nbsp;simple</FONT></I><FONT color="#0000BB">
<br></FONT><I><FONT color="#FF8000" size="-1">
//(&nbsp;sending&nbsp;an&nbsp;email&nbsp;I&nbsp;mean,&nbsp;it's&nbsp;not&nbsp;so&nbsp;easy&nbsp;to&nbsp;win&nbsp;:)</FONT></I><FONT color="#0000BB">
<br><br></FONT><I><FONT color="#FF8000" size="-1">
//what&nbsp;do&nbsp;we&nbsp;have&nbsp;now&nbsp;in&nbsp;the&nbsp;database&nbsp;?<br></FONT></I><FONT color="#0000BB">
<br>$sqlcom=<FONT color="#DD0000">
<STRONG>"select&nbsp;*&nbsp;from&nbsp;friends"</STRONG></FONT><FONT color="#007700">;</FONT><br><br>$dbres&nbsp;=&nbsp;pg_exec<FONT color="#007700">(</FONT>$dbconn,&nbsp;$sqlcom&nbsp;<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><FONT color="#007700">if</FONT>&nbsp;<FONT color="#007700">(</FONT>&nbsp;!&nbsp;$dbres&nbsp;<FONT color="#007700">)</FONT>&nbsp;<FONT color="#007700">{</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color="#007700">echo</FONT>&nbsp;<FONT color="#DD0000">
<STRONG>"Error&nbsp;:&nbsp;"</STRONG></FONT>&nbsp;+&nbsp;pg_errormessage<FONT color="#007700">(</FONT>&nbsp;$dbconn&nbsp;<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;exit<FONT color="#007700">(</FONT><FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><FONT color="#007700">}</FONT><br><br></FONT><I><FONT color="#FF8000" size="-1">
//and&nbsp;interpret&nbsp;the&nbsp;results</FONT></I><FONT color="#0000BB">
<br>$row=0<FONT color="#007700">;</FONT><br>$rowmax=pg_NumRows<FONT color="#007700">(</FONT>$dbres<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><br><FONT color="#007700">while</FONT>&nbsp;<FONT color="#007700">(</FONT>$row&lt;$rowmax<FONT color="#007700">)</FONT><br><FONT color="#007700">{</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;$do&nbsp;=&nbsp;pg_Fetch_Object<FONT color="#007700">(</FONT>$dbres,&nbsp;$row<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;$s=<FONT color="#DD0000">
<STRONG>"&lt;p&gt;$do-&gt;name&nbsp;|&nbsp;$do-&gt;email\n"</STRONG></FONT><FONT color="#007700">;</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;printf<FONT color="#007700">(</FONT><FONT color="#DD0000">
<STRONG>"%s"</STRONG></FONT>,&nbsp;$s<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;$row++<FONT color="#007700">;</FONT><br><FONT color="#007700">}</FONT><br><br></FONT><I><FONT color="#FF8000" size="-1">
//close&nbsp;the&nbsp;database</FONT></I><FONT color="#0000BB">
<br>pg_close<FONT color="#007700">(</FONT>&nbsp;$dbconn&nbsp;<FONT color="#007700">)</FONT><FONT color="#007700">;</FONT><br><br></FONT><I><FONT color="#FF8000" size="-1">
//That's&nbsp;all.&nbsp;This&nbsp;isn't&nbsp;a&nbsp;tutorial&nbsp;to&nbsp;PHP,&nbsp;I&nbsp;wanted&nbsp;to&nbsp;show&nbsp;you&nbsp;how</FONT></I><FONT color="#0000BB">
<br></FONT><I><FONT color="#FF8000" size="-1">
//it&nbsp;can&nbsp;be&nbsp;done.&nbsp;As&nbsp;you&nbsp;can&nbsp;see,&nbsp;it&nbsp;isn't&nbsp;hard&nbsp;at&nbsp;all</FONT></I><FONT color="#0000BB">
<br>?&gt;<br></FONT></FONT>

<p>
<p>
You can find more on the web. All of this is open-source, remember ? You'll
easily find scripts made by various people doing lots of things
and more open-source projects ( go get your shopping cart :)

<h2><a name="res">Resources</a></h2>
<UL>
	<LI><a href="http://www.apache.org">Apache</a>
	<LI><a href="http://www.postgresql.org">PostgreSQL</a>
	<LI><a href="http://www.postgresql.org/docs/awbook.html">PostgreSQL: Introduction and Concepts</a>
	<LI><a href="http://w3.one.net/~jhoffman/sqltut.htm">SQL Tutorial</a>
	<LI><a href="http://www.php.net">The PHP Home</a> 
</UL>


<p>
<p>Well, that's it. You are now able to start developing database-enabled
web applications. Of course, you should learn more. Much more.
<p>
<p>





<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Marius Andreiana<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Interview with Mike Cowpland, Corel Corporation</font></H1>
<H4>By <a href="mailto:prakash@freeos.com">Prakash Advani</a></H4>
</center>

<BLOCKQUOTE> <EM>
[Originally published on the FreeOS site as
<A HREF="http://www.freeos.com/linux/interviews/mikecowpland.ephtml">
http://www.freeos.com/linux/interviews/mikecowpland.ephtml</A>.  Reprinted here
at the author's request. -Ed.]
</EM> </BLOCKQUOTE>
<P> <HR> <P>  

<!-- END header -->




 
      <p align="left"><font face="Arial, Helvetica, sans-serif">Dr. Michael Cowpland, 
        president and CEO of <a href="http://www.corel.com">Corel</a> Corporation, 
        hardly needs an introduction. An engineer by qualification, Dr Cowpland 
        began his career at Bell Northern Research in 1964. In 1985, he founded 
        Corel one of the largest software companies in the world. 
        The company is now helping develop the fast growing Linux platform; 
        in fact, Corel plans to port a majority of its applications to Linux. 
        Mike Cowpland talks of his plans for Corel and his views on Linux to <a href="http://www.freeos.com">FreeOS.com</a>. 
        </font></p>

<p><font face="Arial, Helvetica, sans-serif" size="2"><b>What is Corel doing with 
  Linux?<br>
  </b></font><font face="Arial, Helvetica, sans-serif" size="2">Corel is 
  basically offering really comprehensive solutions to Linux. We are doing more 
  than any other company and are also providing complete connectivity to the Windows 
  world. We have recently launched Corel Linux for the desktop. This is currently 
  available in North America and can be downloaded from our Web site. We have 
  made an extremely easy to use distribution that can be installed even quicker 
  than Windows. The user can also connect seamlessly to the all the Windows files 
  on the network including Microsoft public files. With the announcement that 
  we made a few weeks ago, he can also connect to Windows applications to run 
  those. If someone has the legacy applications that they want to connect and 
  still enjoy the benefits of Linux, they can do that by having a single application 
  server serving up the group. So you can have a cluster of Linux desktops and 
  one Windows NT server and they can all load up their Windows applications from 
  there and while using their own native Linux applications on the desktop. So 
  that provides a complete solution where we provide the basic software, which 
  is the browser, the office suite and the graphic suite. Then they may have their 
  human resource or accounting software that they still have on Windows. They 
  can run on their server without having to run them on the desktop.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Will Corel become a Linux 
  company in the near future?<br>
  </b>Well, we are already very heavily a Linux company. That is supported by 
  the fact that we are we are the most popular download on the Web. If you look 
  at CNET the number one download site, we have been the number one Linux download 
  consistently so effectively we are already a Linux company. We are introducing 
  our Linux suite very shortly and that would give us more exposure and capability 
  in Linux. </font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Where do you see Linux 
  5 years from now?<br>
  </b>In 5 years, Linux will become the more dominant operating system in terms 
  of Unix. Windows will be more involved with back-end applications like it is 
  today.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Why did Corel decide 
  to develop its own distribution rather than adopting or embracing an existing 
  one?<br>
  </b>We did look at several distributions but found them very limited. They were 
  difficult to install and use and required an expert, which we did not find acceptable. 
  In Linux, when something is not happening, the best thing is to do it yourself 
  and that is exactly what we did. As compared to any other distribution, we received 
  the highest rating of 9 from CNET in addition to being CNET's Editor's Choice, 
  whereas Red Hat has received a rating of 8.</font></p>
<p><b><font face="Arial, Helvetica, sans-serif" size="2">Corel is primarily known 
  as a company developing Graphic suites and Office suites. Does this give a feeling 
  that Corel is losing its focus of developing applications?</font></b><font face="Arial, Helvetica, sans-serif" size="2"><br>
  </font><font face="Arial, Helvetica, sans-serif" size="2">Not really, a tremendous 
  amount of User Interface has been worked at with programs such as CorelDraw. 
  In Linux, it is a world team effort with each organization doing what its best 
  at. The kernel is still being developed by the kernel people and we simply use 
  it. We don't have to reduplicate that work. We are best at the user interface 
  and we are doing that. With our 50 million Windows users worldwide we have very 
  rich experience with that. We have made the user interface really easy to use 
  and the fact that our distribution has been well received proves it.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Corel has been a Windows 
  developers and is now a Linux developer. Does it affect your relationship with 
  Microsoft?<br>
  </b>We have always had a good relationship with Microsoft and continue to do 
  so. We use Visual Basic and they use our components. We can focus in certain 
  other areas, which I think in some ways it is going to be good for Microsoft. 
  They are, as you know, getting hammered for being a monopoly. Microsoft will 
  do better when they have competition OS around.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>What do you think is 
  better. Being a Linux Developer or being a Windows developer?<br>
  </b></font><font face="Arial, Helvetica, sans-serif" size="2">We 
  actually like being a multi-platform developer. Otherwise one company has too 
  much control over computer manufacturers - they can dictate terms. They can 
  insist that you bundle certain things or put logos in certain places, which 
  Microsoft has been known to do. I don't think that's good for anybody. Being 
  in the multi-platform world is healthier while maintaining connectivity, because 
  you don't want to have different islands which cannot talk to each other. We 
  consider connectivity as the biggest thing that Corel is doing for Linux. We 
  have our Windows experience and while we don't expect Windows to go away, we 
  do expect Linux to be just as important as Windows. Much of the work that we 
  will be doing on applications will be shared between the platforms.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>How is Corel helping 
  the Linux community?</b><br>
  </font><font face="Arial, Helvetica, sans-serif" size="2">We have been doing 
  work with Corel Linux in the GPL or Mozilla open source licenses. The Wine work 
  that we are doing is been put back into the community. The Corel File Manager, 
  all of which we wrote ourselves, has been put back into the community. We are 
  actually very supportive of the open source concept. On the applications side 
  we don't see those as being open source because there are dozens and dozens 
  of third party utilities that we select, tune-up and include. That's what makes 
  a very rich applications because the core software is only part of the source. 
  It is the other utilities that make them useful. As we have to pay royalties 
  for many of these, its impossible to give them free.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Which are the big vendors 
  who have agreed to pre-install Corel Linux on their systems?</b><br>
  PC Chips, that makes more motherboards than anybody else is installing Corel 
  Linux as we speak. We are working with other big vendors too which we will make 
  announcements over the next 6 months. I think a lot of end-user computer manufacturers 
  are waiting for applications such as Corel's office applications and graphic 
  applications to be available before they can really offer a consumer product. 
  We will have those available soon and we expect them to make announcements then.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>There are some installation-related 
  issues regarding Corel Linux 1.0. What is Corel doing about those?<br>
  </b>There are some issues regarding legacy hardware such as ISA, which has not 
  been as automated as the latest Bus. The fact is that developers are now focusing 
  on the high volume situation first. It will take a lot before it can cover every 
  legacy hardware and this is typical of any Linux distribution.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Corel had the Netwinder 
  Project, which for some reason did not take-off and Corel decided to spin it 
  off. What was the reason behind that?<br>
  </b>The project has divested to rebel.com, and we are an active partner there. 
  They are doing very well and just went through a private round of financing. 
  They have a product similar to Cobalt, which has a market capitalization of 3-4 
  billion US$. We are very happy with our 25% ownership of rebel that we got in 
  the Netwinder project. We just felt it was better off as a separate company 
  because hardware does require a separate focus.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Will Corel do something 
  similar with Corel Linux?<br>
  </b></font><font face="Arial, Helvetica, sans-serif" size="2">No, 
  because we are enabling 90% of the work between Windows applications 
  and Linux applications and to some extent Macintosh applications. That is more 
  proficient than other companies doing both Linux applications and Windows applications.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Are all Corel applications 
  going to be available for Linux? <br>
  </b>Yes, absolutely. We are also considering acquisition of other applications of 
  Windows to port over to Linux, to make our portfolio even more complete. We 
  are also looking at companies who have a dual platform strategy. It is easier 
  to buy technologies than to buy the whole company in a non-exclusive way.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><i>(Mike Cowpland refused 
  to give any further details about the companies that they plan to or are considering 
  to acquire. Said it was too pre-mature to discuss this now.)</i></font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Corel Office for Linux 
  was expected by the year-end of 1999? Apart from Word Perfect none of the other 
  applications are ported to Linux yet. What is the progress on that?</b><br>
  It should be available in beta form in a week's time and that's very close to 
  year-end.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>What about the competition 
  to your office suite from Star Office?<br>
  </b>The downloads of their office suite are running at 10% of our volumes which 
  is not very competitive. If you look at Sun's history of software it has been 
  dismal. Even now people complain that they are not even freeing up Java. IBM 
  is very upset that they are charging 3% license fees for anybody using Java 
  program. Sun's history on software has been the pits.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>What would happen if 
  Microsoft office were available for Linux?<br>
  </b>That would be good for the industry. More the applications on Linux, the 
  better. In fact we are working on that. With our GraphOn Bridges you will be 
  able to run Microsoft applications on Corel Linux without Microsoft having to 
  do any work. You still have to pay Microsoft's license but it will enable people 
  to rely on Linux without giving up on their favorite Windows applications.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Both Microsoft and Sun 
  are offering their office suites over the servers with the concept of application 
  service providers. What are Corel's plans?<br>
  </b>We are doing that too. We have an offering for ASP's as that provides very 
  low cost of ownership.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Does Corel plan to sell 
  computers with Linux and Corel apps preinstalled?<br>
  </b>No we would rather work with partners to do that.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>There have been some 
  controversies about the Corel Linux licensing which wasn't 100% GPL?<br>
  </b>Even Richard Stallman has been happy with our license. Being a big commercial 
  company, we have to be more careful of copyright than other smaller companies. 
  We had certain terms, which had to be introduced to ensure that everything was 
  legal.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Will Corel support other 
  free operating systems in the future?<br>
  </b>No. We think it is important to focus on Linux, as it is clearly the one.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>There were some talks 
  about Red Hat taking over Corel, is that going to happen?<br>
  </b>No, I don't think they would do that, because Red Hat is a much smaller 
  company than Corel. They have only 40-50 developers where as we have got 800 
  developers. We understand the Windows market, Red Hat does not.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>What if it happens?<br>
  </b></font><font face="Arial, Helvetica, sans-serif" size="2">It 
  is not going to happen (laughs).</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>If you had a choice to 
  be taken over by a company, which company would you prefer?<br>
  </b>None (laughs).</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>How does Corel plan to 
  make money out of the open source model?<br>
  </b>Corel has always been known to offer enormous value for money and thereby 
  the paradigm suits us very well. If you put a software in a box along with a 
  manual, it typically costs between 50 and 100 US$ and that's what an upgrade 
  sells for. It is really no different to our Windows model. The only difference 
  is that you get a good CD in the market with free downloads and that's why we 
  have had 2 million Word Perfect downloads, the number one rate of free download 
  of Corel Linux.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2">In my point of view, it 
  is very similar to the Windows model. It goes even faster and you still make 
  money on the boxes because some people don't want to wait for the downloads. 
  They want the CD and the manuals or they want the extra bells and whistles such 
  as the high level of support or may be some more bells and whistles such as 
  content. For example, on our Web site we have 50,000 images but if you want 
  to access 2 million then you have to join up and pay 30 US$ a year as 
  subscription. So it fits into a subscription model. We are looking at the Web 
  site as a revenue generator and are keen to develop a lot more traffic to our 
  portal <a href="http://www.corelcity.com">Corelcity.com</a>.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>Is Corel's Web site powered 
  by Corel Linux?<br>
  </b>Some part of it is on Solaris and Window NT, but the trend would be towards 
  moving to Corel Linux.</font></p>
<p><font face="Arial, Helvetica, sans-serif" size="2"><b>What are Corel's plans 
  for India?<br>
  </b>We are optimistic about the potential of the Indian market and are very 
  very keen on it. It is a huge market and English is commonly used. We also think 
  India is natural for Linux because it needs computers at the lowest possible 
  cost. Why would they want to pay the high price of Windows when they don't have 
  to? At the same time it is full of computer scientist who can improve Linux 
  because they have access to the source code. So India can become a major contributor 
  to Linux since they can all see the source code, use the source code and be 
  a part of the improvement. So it's much more exciting for India than simply 
  being a part of Microsoft's monopoly.</font></p>

  <EM>
<p><font face="Arial, Helvetica, sans-serif" size="2">Do you have any interesting 
  questions to Mike Cowpland which haven't been answered in this interview? Send 
  an email to <a href="mailto:prakash@freeos.com">Prakash Advani</a> and the top 
  5 questions will be forwarded to Mike Cowpland.</font></p>

<P> <font face="Arial, Helvetica, sans-serif" size="2">
<A HREF="http://Freeos.com">Freeos.com</A> islooking for people who can
provide news, articles and updates to our the Web site. If you are interested
in contributing in any way please e-mail <A
HREF="mailto:prakash@freeos.com">prakash@freeos.com</A>.</FONT>
</EM>


<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Prakash Advani<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<IMG ALT="HelpDex logo" SRC="../gx/collinge/HelpDex.gif" 
	WIDTH="78" HEIGHT="50" ALIGN="left">
<IMG ALT="HelpDex logo" SRC="../gx/collinge/HelpDex.gif" 
	WIDTH="78" HEIGHT="50" ALIGN="right">
<center>
<H1><font color="maroon">HelpDex</font></H1>
<H4>By <a href="mailto:shane_collinge@yahoo.com">Shane Collinge</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->



<BLOCKQUOTE><EM>
	[</EM>Linux Gazette<EM> is proud to present the Linux comic strip
	</EM>HelpDex<EM> by cartoonist Shane Collinge.  Each 
	</EM>Gazette<EM> issue will
	contain the Author's and Editor's favorite cartoons from the previous
	month.  All cartoons may be seen at
	<A HREF="http://mrbanana.hypermart.net/Linux.htm">
	http://mrbanana.hypermart.net/Linux.htm</A>.  A new cartoon is posted
	there daily Monday-Friday. -Ed.]
</EM></BLOCKQUOTE>

<P> HelpDex is a VERY lame Linux pun on "help desk".  Follow Carol and Tux,
her stuffed penguin toy, as they force their way through the corporate
programming world with style, panache and um, er, stuffed toys. -SC

<P>
<IMG ALT="HelpDex1.jpg" SRC="gx/collinge/HelpDex1.jpg" 
	WIDTH="750" HEIGHT="299">
<BR CLEAR="all">

<IMG ALT="HelpDex6.jpg" SRC="gx/collinge/HelpDex6.jpg" 
	WIDTH="750" HEIGHT="297">
<BR CLEAR="all">

<IMG ALT="HelpDex8.jpg" SRC="gx/collinge/HelpDex8.jpg" 
	WIDTH="750" HEIGHT="297">
<BR CLEAR="all">

<IMG ALT="HelpDex10.jpg" SRC="gx/collinge/HelpDex10.jpg" 
	WIDTH="750" HEIGHT="296">
<BR CLEAR="all">

<IMG ALT="agbdab.jpg" SRC="gx/collinge/agbdab.jpg" 
	WIDTH="750" HEIGHT="304">
<BR CLEAR="all">



<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Shane Collinge<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<font color="maroon">
<H1>Creating A Linux Certification Program, Part 8</H1>
<H2>"Dreams Become a Reality"</H2>
</font>
<H4>By <a href="mailto:rferrari@rainmanintl.com">Ray Ferrari</a></H4>
<BLOCKQUOTE> <EM>
	[ This is the continuation of a series begun by by Dan York. -ed.]
</EM> </BLOCKQUOTE>

</center>
<P> <HR> <P>  

<!-- END header -->




<P>On Tuesday,
January 11, 2000,  the culmination of hard work by a dedicated group
of volunteers worldwide has produced the first in a series of
certification tests for the Linux* community. The Linux Professional
Institute(LPI; <A HREF="http://www.lpi.org/">http://www.lpi.org</A>
)which was incorporated (nonprofit) in Ontario, Canada in October,
1999; has released its T1A Exam
<P>(<A HREF="http://www.lpi.org/t1alaunch.html">
http://www.lpi.org/t1alaunch.html</A> ) to the world through the
<A HREF="http://www.vue.com/linux">
Virtual University Enterprises'</A> (VUE)  
 1700 plus testing centers.  The  exam   qualifies the participant
towards certification at Level 1 (Junior-Level/ Linux system
administrator). This first exam is just one in a series which will be
available for the individual looking to add credentials to their
Linux knowledge and experience.
<P>In October 1998,
the concept of Linux certification was launched with the leadership
of Evan Leibovitch(current LPI Executive Director) and Dan
York(current Board Chairman)who were
introduced to each other by Jon &quot;maddog&quot; Hall of Linux
International. After many months of hard work and thousands of
volunteers, Evan Leibovitch proclaims, &quot;This    
is what we've been
working towards since the day we started.&quot; &quot;We've tried to
make our program challenging, vendor-neutral and accessible, and I
believe we've succeeded on all fronts&quot; according to Evan. Scott
Murray(Director of Exam Development) adds &quot;Our volunteers are a
crucial part of LPI, and the delivery of quality exams reflects the
hard work and care they have contributed to the program.&quot; &quot;We
want to provide a certification that is supported and respected by
it's community&quot; he says. And further acknowledgment comes from Dan
York; &quot;We've learned an amazing amount...and truly demonstrated
the power of a group of people working together to accomplish a
common goal!&quot; &quot;All that we can say is THANK YOU for helping
to make this dream a reality&quot; he says.
<P><BR>

<P>We would like to
thank the many people who have worked on the technical aspects of the
tests(submitting and reviewing test questions), those who have
staffed our booths at the shows around the globe, those who have
responded through our different channels of communication(web site,
e-mails, etc.), our participants in the Advisory Council, and most
importantly our financial sponsors; both individual, and
corporate(listed alphabetically) ;  Caldera Systems, IBM, Linuxcare,
SGI, SuSE, TurboLinux, and Wave Technologies. Our association with
Wave Technologies and ProsoftTraining.com have helped us greatly. We
have an extensive listing of our volunteers at
<A HREF="http://www.lpi.org/thanks99.html">http://www.lpi.org/thanks99.html</A>
.
<P><BR>

<P>Those
interested in taking the first exam(T1A) will need to register with
VUE; 
<A HREF="http://www.vue.com/linux/">http://www.vue.com/linux/</A>
and pay a fee of $100. The test will take approximately 1-2 hours. To
find the location nearest you go to
<A HREF="http://www.vue.com/testing/index.html">http://www.vue.com/testing/index.html</A>
.


<P>A call for help is
still being echoed for the submission of questions for the T2series
of exams. If you can help write questions for these  tests, please
visit our <A HREF="http://www.lpi.org/cgi-bin/tips.py">&quot;TIPS
system&quot;</A>. We could also use help reviewing all of the
questions  for these advanced tests. Plus, volunteers would be
greatly appreciated to help staff upcoming events. For a schedule of
events which we will be participating in, please see
<A HREF="http://www.lpi.org/i-events.html">http://www.lpi.org/i-events.html</A>.
Some events include the Linux World Expos, Linux Business Expos,
Atlanta Linux Showcase, and the following:


<P>     
  On February 2-4, we will be at Linux World in New York City and
Linux World
  Paris(contact <A HREF="mailto:tom@lpi.org">tom@lpi.org</A> ),
February 24-March 3 in Hannover, Germany for the
  CeBIT show( <A HREF="mailto:tom@lpi.org">tom@lpi.org</A>
), March 7-10 in Sydney, Australia for the Open Source    
Expo and Conference(contact
<A HREF="mailto:jon@cybersite.com.au">Jonathan Coombs</A>), and the
Linux Business Expo(with
Comdex) in Chicago on April
17-20, 2000. Please contact the above persons or Dan 
York <A HREF="mailto:dan@lpi.org">dan@lpi.org</A>)
if you can staff any of the booths for these shows.
<P><BR>

<P>Stay
tuned to the Linux Gazette and Linux Professional Institute,
as we move forward to making these dreams a reality within the Linux
community. 

<P><BR>

<P>*Linux is a
trademark of Linus Torvalds; Linux Professional Institute is a
trademark of the  Linux Professional Institute Inc.




<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Ray Ferrari<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">From Pico to Nano</font></H1>
or
<h3>The Slightly Bigger Editor</h3>
<H4>By <a href="mailto:guckes-nano@math.fu-berlin.de">Sven Guckes</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




<p>
The program "Pine" has become a popular program for both Email and News.
It makes use of a small and simple editor named "pico".
<p>

Pico's command set only has a dozen commands and it shows the most useful
commands in the last two lines of the display:
<p>

<table>
<tr>
<td>
<pre>	</pre>
<td bgcolor="#e0e0e0">
<FONT COLOR="#000000">
<pre>
   UW PICO(tm) 3.5                New Buffer

[...]

<b>^G</b> Get Help  <b>^O</b> WriteOut  <b>^R</b> Read File <b>^Y</b> Prev Pg   <b>^K</b> Cut Text  <b>^C</b> Cur Pos
<b>^X</b> Exit      <b>^J</b> Justify   <b>^W</b> Where is  <b>^V</b> Next Pg   <b>^U</b> UnCut Text<b>^T</b> To Spell
</pre>
</FONT>
</td>
</tr>
</table>
<p>

However, the source code for Pico is closely linked to the source code of Pine;
therefore you cannot download Pico on its own - you have to donwload
the source of the complete newsreader to install the little editor.
Worse:  Although Pine is freely available you should know this:
<p>

<center>
Pine and Pico are <b>not</b> "OpenSource"
</center>
<p>

<hr>
<h1> Pico is dead - long live Nano </h1>

Yes, you cannot just download the source for Pico and install on its own.
However, many users would like to use this kind of editor
and simply copy it everywhere for personal use.
<p>

That's why there is now an OpenSource project for a "Pico clone" -
"<b>Nano</b>".
(Think of it as "'<b>n ano</b>ther editor", if you like.)
<p>

The goal of Nano is to make a small editor like Pico available under
the GNU General Public Licence and to add some important commands,
while keeping the design, ie "small and beautiful".
<p>

<hr>
<h1>The Editor's New Clothes</h1>

Here is a screenshot of nano:
<p>

<table>
<tr>
<td>
<pre>	</pre>
<td bgcolor="#e0e0e0">
<FONT COLOR="#000000">
<pre>
<pre>
   nano 0.8.1                     New Buffer

.

^O Write Out ^_ Goto Line ^R Read File ^Y Prev Page ^K Cut Text  ^C Cur Pos
^X Exit      ^\ Replace   ^W Where Is  ^V Next Page ^U Uncut Txt ^T To Spell
</pre>
</FONT>
</td>
</tr>
</table>
<p>

The difference to <tt>pico</tt> is subtle -
no more copyright by the University of Washington ["UW ... (tm)"].  :-)
<p>

Also, the <tt>WriteOut</tt> command now is above the <tt>Exit</tt> command,
so you can see both "exit commands" in one column.
<p>

The new commands are in the second column -
<tt>GotoLine</tt> and <tt>Replace</tt>.
<p>

The <tt>Help</tt> command is still available with <tt>Control-G</tt> -
but when you invoke it then you will see this message:
<p>

<pre>
        [ Help function not yet implemented, nyah! ]
</pre>

But as with all program which develop fast -
the documentation is usually missing.
<p>

But do not despair - there's help on the command line:
<p>

<xmp>
$ nano -h
Usage: nano [GNU long option] [option] +LINE <file>

Option          Long option             Meaning
 -V             --version               Print version information and exit
 -c             --const                 Constantly show cursor position
 -h             --help                  Show this message
 -i             --autoindent            Automatically indent new lines
 -s [prog]      --speller=[prog]        Enable alternate speller
 -t             --tempfile              Auto save on exit, don't prompt
 -v             --view                  View (read only) mode
 -w             --nowrap                Don't wrap long lines
 -x             --nohelp                Don't show help window
 -z             --suspend               Enable suspend
 +LINE                                  Start at line number LINE
</xmp>

All these switches are pretty nice, of course.  Try them!
Maybe we will see these lines in some Unix programs from now on:

<pre>
        set editor="nano -citxz"
</pre>

<hr>
<h1> What's your version? </h1>

One of the things I like about program is that they
identify themself by their version (and relase date):
<p>

<pre>
$ nano -V
  nano version 0.8.0 by Chris Allegretta
</pre>

Soon this will hopefully show both important addresses -
that of the website and the email address:
<p>

<pre>
$ nano -V
  nano 0.8.0 http://go.to/nano-editor nano-editor@go.to by Chris Allegretta
</pre>

<hr>
<h1> Smaller, Faster, Better </h1>

You may now that "nano" and "pico" are used in the
decimal system for fractions like "centi" and "milli";
"nano" stands for "a billionth" (ie 10^(-9)), and
"pico" stands for "one trillionth" (ie 10^(-12)).
<p>

So, although "nano" is bigger than "pico"
I hope that nano will both be smaller in source
as well as in binary size.
<p>

<hr>
<h1> A quick look at history </h1>

As of Jan 31th, 2000, the current version is nano-0.8.1
and the tape GNU-zipped archive has about 72 kilobytes.
<p>

<pre>
        date	size	name-version
        ====	====	============
        000110	56k     nano-0.7.4
        000113  56k     nano-0.7.5
        000116  58k     nano-0.7.7
        000119  60k     nano-0.7.8
        000123  67k     nano-0.7.8
        000124  68k     nano-0.7.9
        000125  70k     nano-0.8.0
        000129  72k     nano-0.8.1
</pre>

On average each version adds 2K - so when nano-1.0.0
gets released it should be around 110k.  ;-)
<p>

<hr>
<h1> Installation </h1>

The author distributes RPMs for Nano now.
However, there is no ftp site which carries Nano yet.
So if you would like to install your own nano binary
then you could use a browser to download Nano -
or simply the nice tool "wget":
<p>

<pre>
   wget http://faculty.plattsburgh.edu/astyanax/nano/dist/nano-0.8.1.tar.gz
</pre>

Unpack with GNU tar:
<pre>
   gtar xvvzf nano-0.8.1.tar.gz
</pre>

.. and run the configure script and make the binary:
<pre>
   cd nano-0.8.1
   ./configure
   make
</pre>

The installation is pretty fast.  :-)
<p>

Now strip the binary:
<p>

<pre>
guckes@linux> ls -l nano
-rwx--x--x   1 guckes   users      120357 Jan 31 21:31 nano
guckes@linux> strip nano
guckes@linux> ls -l nano
-rwx--x--x   1 guckes   users       38232 Jan 31 21:34 nano
</pre>

Only 38K!
<p>

<pre>
guckes@linux> ls -l =pico
-rwxr-xr-x   1 root     root       159576 Aug 13 02:23 /usr/bin/pico
</pre>

Yes, Pico is bigger!
<p>

And if someone asks you why people delight in nanotechnology -
now you know.  Enjoy Nano!
<p>

<hr>
<h1> Discussing Nano </h1>

As far as I know there is no mailing list for the development of Nano yet.
Therefore please use the newsgroup
<a href="news:comp.editors">comp.editors</a>
to discuss <tt>Nano</tt>.
<p>

However, I am pretty sure that the news about Nano
will hit the newsgroup comp.mail.pine pretty soon.
I expect many users of Pine to switch to using Nano instead of Pico.
Expect crossposts - so please direct followups from comp.mail.pine:
<pre>
	Followup-To: comp.editors
</pre>
<p>

Thankyou.
<p>

<hr>
<h1> The Big Future </h1>

The author, Chris Allegretta, is currently working towards
"<b>Internationalization</b>" (I18N) of nano you should be able to edit
and see text of other languages which require the space
of two characters to make up one symbol in language.
<p>

Also, an interface to "<b>spell checking</b>" is in the works.
This needs lots of testing , of course.
So all you nerds with strange language -
please help checking and testing this code!
<p>

Personally, I hope that these commands will be added:
<p>

<ul>
<li> Visualization of the edit buffer's end.
<li> Visualization of trailing whitespace (noone ever sees it which is bad!).
<li> Visualization of _underlined_ and *ephasized* text. (very simple)
<li> Commands to jump to line before/after current paragraph.
<li> Command to "pipe" the current text to another (external) command.
<li> Substitution ("Subst", aka "search and replace") with these options:
     substitution starts at line 1 or optionally on current line;
     skip current match; perform substitution on all further matches.
</ul>

<hr>
<a name="links"></a>
<h1>Links and addresses</h1>

<pre>
Chris Allegretta  allegrcr@plattsburgh.edu
Nano editor maintainer

<a href="http://go.to/nano-editor"
        >http://go.to/nano-editor</a> or (currently)
<a href="http://faculty.plattsburgh.edu/astyanax/nano/"
	>http://faculty.plattsburgh.edu/astyanax/nano/</a>
Nano editor HomePage (run by Chris Allegretta)

<a href="http://faculty.plattsburgh.edu/astyanax/nano/dist/"
	>http://faculty.plattsburgh.edu/astyanax/nano/dist/</a>
Nano editor distribution location (only HTTP - no FTP or FTP mirrors yet)

<a href="http://faculty.plattsburgh.edu/astyanax/nano/dist/RPMS/"
	>http://faculty.plattsburgh.edu/astyanax/nano/dist/RPMS/</a>
Nano editor RPMs

<a href="http://www.math.fu-berlin.de/~guckes/pico/"
	>http://www.math.fu-berlin.de/~guckes/pico/</a>
Pico editor page (run by Sven Guckes)

Sven Guckes       guckes-nano@math.fu-berlin.de
Author of this article and evangelist for text based programs
such as elm, irc, lynx, mutt, nn, screen, slrn, vim, zsh.
Email since 1989, Usenet since 1992.  Webmaster of slrn.org, vim.org.
<a href="http://www.math.fu-berlin.de/~guckes/"
	>http://www.math.fu-berlin.de/~guckes/</a>
</PRE>





<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Sven Guckes<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Linux Site O' The Month: Unix Guru Universe</font></H1>
<H4>By <a href="mailto:slambo@linuxstart.com">Sean Lamb</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




<H2>What's This?</H2>

<P> This article is the the current installment in an ongoing series of site
reviews for the Linux community.  Each month, I will highlight a Linux-related
site and tell you all about it.  The intent of these articles is to let you
know about sites that you might not have been to before, but they will all have
to do with some aspect of Linux. Now, on with the story... 

<H2>Unix Guru Universe - "The Official Home Page for Unix System Administrators"</H2>
<h3><a href="http://www.ugu.com/">http://www.ugu.com</a></h3>

<P> I can hear you yelling now - "Hey waittaminnitt!  This is <i>Linux</i> Gazette,
not <i>UN*X</i> Gazette!"  Just hold your horses, and listen for a moment.  Linux
was originally written as a UNIX clone, right?  All right, that may be an 
oversimplification, but the ls command will work the same in UNIX
as in AIX or *BSD or Linux, right?  Well, let's take a look at what we can find.

<P> Unix Guru Universe (UGU) is a clearing house of information for a great majority of 
UNIX-like operating systems in use today.  This includes Solaris, HP-UX, OpenBSD and,
of course, our beloved Linux.  If we follow the link from the UGU home page to the
list of 80 UNIX flavors (yes, there really are that many), then the link to Linux, we 
are provided with a wealth of information about configuring, adminning and just using
Linux.

<P> Included in the Linux Articles section are the Network Administrator's Guide, the
Firewall and Proxy Server HOWTO and the Linux DNS Howto.  The Linux-specific section of
UGU also has a list of useful FTP and User Group sites as well as links to many of the larger
distributions (not just Redhat, Caldera and SuSE, but others too like Walnut Creek and
Yggdrasil).  There is also a Linux-specific web bulletin board under the Newsgroup link.

<P> However, don't forsake the rest of UGU just to get to the Linux-specific information.
If we look under the Beginners & Users Start Here link, we find helpful general information
including a brief history of UNIX, an Introduction To The UNIX Operating System, Commonly
Used Commands, and UNIX Commands For DOS Users.

<P> Even with these beginner documents, UGU is aimed at the sysadmin who is looking for a
handy reference on a wide variety of UNIX platforms.  UGU's about page says it best:

<blockquote>
... UGU was developed for the System Administrators who don't have time to surf/cruise/browse 
the internet looking across the world for the information they seek. It was developed so an 
Admin could go in find what they are looking for quickly and easily and get out. The page is 
for ALL Admins beginners to guru's alike to share.
</blockquote>

<P> On the Internet of today, it's hard to find sites that have more and better content than
flash.  UGU faces up to this challenge excellently; this site, aside from the home page, is
almost entirely graphics free.  This means, of course, that the site is exceedingly fast 
loading on even the pokiest of today's dial up connections (it's even tolerable at 2400 baud).  
UGU also avoids the use of tables and doesn't use frames so you can browse the site using almost
any browser currently available.

<P> Regular readers of this column will know that I like search engines.  For a newbie to any
site, it is much easier to get a feel for what's available by letting the search engine 
highlight the content that the user is looking for.  UGU's search engine is under the Find It
Fast, Find It Now link on the home page and the Search link at the bottom of each content page.
UGU's search provided quick and relevant results to my searches, returning information on the
UGU site as well as links to software developers' sites for further information.

<P> So, once you get your box up and running and you need information on how to admin it
efficiently and securely, check out the information at UGU.



<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Sean Lamb<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Large Objects and Perl DBI</font></H1>
<H4>By <a href="mailto:zing@tcu-inc.com">Mark Nielsen</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




If this document changes, it will be available here:
<a href="http://genericbooks.com/Literature/Articles/2">
http://genericbooks.com/Literature/Articles/2
</a>. 

<h2>Index:</h2>

<ol>
<li><a href="#Resources"> Resources</a>
<li><a href="#Intro"> Introduction</a>
<li><a href="#DBI"> Using Perl DBI</a>
<li><a href="#Large"> Using Large Objects and Perl</a>
<li><a href="#Web">Using the database server with a webserver.</a>
<li><a href="#Comments"> Comments</a>
</ol>
<hr> <a name="Resources"></a> <h2>Resources</h2>
I assume that you have DBI and DBD::Pg installed with Perl. 
<ol>
      <li> man DBI
      <li> man DBD::Pg
      <li> <a href="ftp://ftp.perl.com/CPAN/modules/by-category/07_Database_Interfaces/">
ftp://ftp.perl.com/CPAN/modules/by-category/07_Database_Interfaces/
</a>
      <li> <a href="http://www.postgresql.org/cgi/htsearch?config=pgsql-questions&restrict=&exclude=&method=and&format=builtin-long&sort=score&words=large+object+dbi"> A search for "large" and "dbi"</a> on one of the postgresql 
newsgroups. 
      <li> <a href="http://www.postgresql.org/doxlist.html"> http://www.postgresql.org/doxlist.html</a> -- A chapter on Large Objects in the Programmer's
Guide for PostgreSQL.
      <li> <a href="http://www.postgresql.org/docs/programmer/largeobjects3386.htm"> Two examples using psql</a> which explain how to use large objects. 
</ol>

<hr> <a name="Intro"></a> <h2>Introduction</h2>
I work at ZING Is Not GNU. We sell and distribute free books or literature. 
Well, besides selling books inexpensively, we also want people to download
the books. This creates a problem when you need to take megabytes of data
and put them into a database. I have programmed putting large amounts
of data into databases before, but only 100k or less of data per transaction. 
This was the first time I needed to put really large files into a database. 
My biggest problem was the fact it really isn't
documented well when you use Perl. Also, I never needed to use 
Large Objects with PostgreSQL before. I have used other database servers
for Large Objects, but not PostgreSQL. 
<p>
What are Large Objects? Large Objects are "things" (text or binary data) which
cannot fit into a normal field in a table. For example, a 100 megabyte file
cannot really fit into a field in a table.     
<p>
What were the technologies I was using? RedHat Linux, postgresql-6.5.3,
Perl 5 (with DBI, DBD::Pg, and Pg), and apache_1.3.9.  
<p> 
In general, how do you use Large Objects in PostgreSQL? You can save
large objects like "files" where the database server will let you input
a file and it will give you a number in return, and when you want to
retrieve the data, you use the number to export your data to a temporary
file on your hard drive. It is kind of weird. In order to extract a Large
Object, it sort of takes two steps. First, you copy the data to a file
on your computer, and then you can read it. The problem is, from my
point of view, is that data normally is read once. Here, it is read twice,
to make the file, and then to read the file. There isn't any way around this 
(as far I as know), but I am just new to Large Objects in PostgreSQL (I have
used them in other database servers before though), so perhaps there
are better ways.    
   


<hr> <a name="DBI"></a> <h2>Using Perl DBI</h2>
<a href="http://www.perl.com">
PERL</a> is a programming language used by many web and database professionals.
It took a couple of years, but now people are finally recognizing that
free and open software, like 
<a href="http://www.perl.com">PERL</a>,
<a href="http://www.php.net">PHP</a>, and
<a href="http://www.python.org">Python</a>
 can be used for commercial companies
as an alternative to bloated, inefficient, and unstable commercial 
programming languages (which most of the time you don't have source code
for, and hence, you can never be sure what you are using truly does
everything it claims to do -- there is one company I am 
talking about in particular). Being a contractor, I have noticed an 
explosion of Perl jobs (it pleases me greatly to see the rise of ethically
clean software), and hence, I am sure this will be useful to other contractors
out there who would prefer to use PostgreSQL over other alternatives.  
Perl DBI is a generic database interface for all database 
servers or files. In order to connect to a specific database, you also
need a Perl DBD driver. For example, to connect to PostgreSQL, I use Perl
DBI and Perl DBD:Pg. Here is a brief example of how I print out
the first and last names from a PostgreSQL database using the table
"people".
<pre>
#!/usr/bin/perl

use DBI;
use vars qw($dbh);
    ### zing is the database I am connecting to. 
$dbh ||= DBI-&gt;connect("dbi:Pg:dbname=zing");

my $Command = "select first_name,last_name from people 
          sort by last_name,first_name";

my $sth = $dbh-&gt;prepare($Command);
my $Result = $sth-&gt;execute;

while (my @row_ary  = $sth-&gt;fetchrow_array)
  {print "&lt;br&gt; $row_ary[0] $row_ary[1]\n";}
</pre>
The problem with PERL DBI is that the Large Object interface isn't
fined tuned yet, and you have to use the specific DBD driver for each
type of database. The problem with DBD::Pg is that Large Objects is
not well documented, and it took me a long time looking through 
newsgroups to find the answer I was looking for. Eventually, I also 
did manage to find 
<a href="http://www.postgresql.org/docs/programmer/largeobjects3386.htm">
this note on Large Objects</a>.   
   
<hr> <a name="Large"></a> <h2>Using Large Objects and Perl</h2>
ONE WARNING: The reason why temporary files are actually a good thing is
for the following reason, for big files, if you suck the data all into
memory at once, Perl running under Apache using mod_perl will use up
a lot of system memory and it won't give it back (even though Perl will
reuse the memory itself). Imagine if you have 10 people downloading
10 megabyte files and your Perl script loads the files into memory
before it prints them (instead of just printing them line-by-line). Apache
will use 100 megabytes of system memory (actually Perl will) and it won't
give it back. This can be bad. In other Database servers using Large Objects,
I could load the data directly into memory. I would not want to do that 
with really large files anyways. Read this 
<a href="http://perl.apache.org/guide/performance.html">
performance guide</a>  for more info.
<p>     

Okay, how do we import and export large object from PostgreSQL?
This following example comes straight from the 
<a href="http://www.postgresql.org/docs/programmer/largeobjects3386.htm">this
PostgreSQL documentation</a>. This example uses the program psql. 

<pre>
CREATE TABLE image (
    name            text,
    raster          oid
);

INSERT INTO image (name, raster)
    VALUES ('beautiful image', lo_import('/etc/motd'));

SELECT lo_export(image.raster, "/tmp/motd") from image
    WHERE name = 'beautiful image';
</pre> 
<p> Now, we need to convert this into perl. Here is a perl script which
would do the exact same thing. 
<pre>
#!/usr/bin/perl

use vars qw($dbh);
$dbh ||= DBI-&gt;connect("dbi:Pg:dbname=zing");

my $Command = "INSERT INTO image (name, raster)
            VALUES ('beautiful image', lo_import('/etc/motd'));";

my $sth = $dbh-&gt;prepare($Command);
$sth-&gt;execute();


$Command = "SELECT lo_export(image.raster, '/tmp/motd') from image
             WHERE name = 'beautiful image'";
$sth = $dbh-&gt;prepare($Command);
$sth-&gt;execute();
</pre> 
<p>
Those two examples do the following. The first command loads the file 
"/etc/motd" into a table. The second command takes the data in the table
and exports it to a file called "/tmp/motd". If you want to get the "oid"
of data in the table and export it to a file, you could also do this. 
<pre>

  ## This command will return a numeric "oid" number
$Command = "SELECT raster from image WHERE name = 'beautiful image'";
$sth = $dbh-&gt;prepare($Command);
$sth-&gt;execute();
my @row_ary  = $sth-&gt;fetchrow_array;
my $Oid = $row_ary[0];

  ## This command will export the data with the "oid" to a file
$Command = "SELECT lo_export($Oid, '/tmp/motd') from image";
$sth = $dbh-&gt;prepare($Command);
$sth-&gt;execute();
</pre> 

<p>
For live examples, ZING at 
<a href="http://www.genericbooks.com">www.genericboosk.com</a>
 has all of its Perl Scripts available for public viewing. Look for
scripts that view documents that are extracted from the database. 
ZING now has setup scripts to let people upload and download documents,
so we should have real live examples floating around on the website. 

<hr> <a name="Web"></a> <h2>Using the database server with a webserver.</h2>
Okay, what problems can you encounter when you use a webserver to 
input/output the data from a database server? Well, the biggest problem
I saw, was that if the database server and the webserver run under two
different accounts (like "www" and "pgsql"), the webserver and database
server may have problem reading the others temporary files. 
Here is a list of problems 
and their solutions. 

<ol>
  <li> The webserver cannot upload the file to PostgreSQL because it doesn't
  have super user privileges to use lo_import and lo_export. Well, give the
  webserver its own database server (same account), give the webserver
  super user status with the database server, or look into client-side
  commands that I never had a chance to look at yet, concerning lo_import
  and lo_export. 
  <li> The webserver cannot delete the exported files once the database
  server has exported them and the webserver doesn't need them anymore. 
  Make the webserver and database server run under the same account, 
  setup a "group" where the webserver can delete the database server
  files, or setup a cron job to delete the files every once in a while and
  save the files by the pid of the webserver so that they will tend
  to get overwritten by new processes later. ZING just saves files by their pid
  number so that the next time a document is pulled, it will overwrite the
  previous one (which isn't needed anymore).   
</ol>  
<p> At ZING, we export the files by the pid number of the child process
of the webserver. When the webserver needs to export another document,  
it hands the process to one of its children, and if the child already
has exported a document before, it will just overwrite the previous one
which makes it so we don't end up with tons of exported undeleted files.
Then, once an hour, we go through and delete any files older than 15 minutes. 
It is not as elegant as I would like, but it works fine. 
<p>
In general, it is a bad idea to let your webserver have super user
status or to have the webserver and database server run under the same
username. For security, you don't want your webserver having the power
to blow away the database server. Oh well. 

<hr> <a name="Comments"></a> <h2>Comments</h2>
I really don't like the way Large Objects are handled in PostgreSQL, or
any other database server I have used. There should be a way to treat
importing and exporting data from a database server as STDIN or STDOUT
where you can just grab the stuff line by line and not the whole darn
thing at once. I don't like the fact that we have to use intermediate files
to get to the data. It would be nice if we could choose to directly dump data
directly into memory or use temporary files if the data is too big to hold
in memory. CHOICE is the key word here. 
What does this mean? Since PostgreSQL is the best
free and open database server out there, help the guys out by
<a href="http://www.postgresql.org/devel-contrib.html">
becoming a developer for PostgreSQL!</a> Perhaps there is a way to directly
dump Large Objects into memory using PostgreSQL, and if there is, write
a follow-up to this article and prove me wrong! Actually, being able to
get Large Objects one line at a time would really be cool.    
<p>
Anyways, I will try to find better solutions, so 
<a href="mailto:zing@tcu-inc.com">let me know</a> if you hear
of any!
<p>
Large Objects have always been a pain for me. I have always wanted to
use Large Objects in PostgreSQL. Now that I had a reason, I finally
did it. Hopefully it will save other people headaches. If it saved you
from headaches, donate time or money to 
<a href="http://www.genericbooks.com">ZING</a>, or do something charitable
for some other cause! If we all do a little, it makes a big impact.    
<p>
My next goal is to do handle Large Objects in PostgreSQL using the
programming languages PHP and Python. After that, I want to see if there
is a way to use Large Objects without being a super user. 
 After that, I want to compare this
to MySQL. For licensing reasons and since PostgreSQL has always been
100% free and open, I prefer PostgreSQL over MySQL. However I want to
compare and contrast them to help make PostgreSQL better. Recently, MySQL
has relaxed its license, but I am going to stick with PostgreSQL since
they have always had the best license. 
<hr>

<a href="http://www.tcu-inc.com/mark">Mark Nielsen</a> works for 
<a href="http://www.tcu-inc.com">The Computer Underground</a> as a 
receptionist and as a
book binder at <a href="http://www.genericbooks.com">
ZING</a>. 
In his spare time, he does volunteer stuff, like writing
these documents for The Linux Gazette (and other magazines).

 







<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Mark Nielsen<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Creating Installation CDs from various Linux Distributions</font></H1>
<H4>By <a href="mailto:mark@tcu-inc.com">Mark Nielsen</A> and <a href="mailto:kris@tcu-inc.com">Krassimir Petrov</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




If this document changes, it will be available here: 
<a href="http://www.tcu-inc.com/mark/articles/cdburn.html">
http://www.tcu-inc.com/mark/articles/cdburn.html</a>

<h3> Index </h3>
<ol>
<li><a href="#Ref"> References</a>
<li><a href="#Intro"> Introduction to CD-ROM burning</a>
<li><a href="#ide"> Installing an IDE CD-ROM writer</a>
<li><a href="#programs"> Cdrecord and Xcdroast</a>
<li><a href="#download"> Download your favorite distributions.</a>
<li><a href="#write"> Write the CD-ROM</a>
<li><a href="#conclusions"> Conclusions and future articles</a>

</ol>

<hr>
<a name="Ref"></a>
<h1>References</h1>

<ol>
<li> <a href="http://www.guug.de/~winni/linux/cdr/html/">
CD-Writing HOWTO</a> by Winfried Trmper
<li> <a href="http://www.linuxdoc.org/HOWTO/mini/LILO.html">Lilo mini-Howto</a> 
<li><a href="http://www.fh-muenchen.de/rz/xcdroast"> Xcdroast</a>

</ol>

<hr>
<a name="Intro"></a>
<h1>Introduction to CD-ROM burning</H1>

The purpose of this article is to explain how to create an installation CD-ROM from one of the Linux distributions. We will limit ourselves to IDE CD-ROM writers, any ftp program, the program cdrecord, and the pre-made ISO images from various Linux distributions. We will also be touching the /etc/lilo.conf file. 
<p>
This document may be modified and distributed with or without the permission of its authors. The authors disclaim any warranties with regard to this document: use it at your own risk.


<hr>
<a name="ide"></a>
<h1>Installing an IDE CD-ROM writer</H1>

Using SCSI CD-ROM writers is usually easy, but most people have IDE CD-ROM writers and it is what we are using. Thus, we will talk only about IDE CD-ROM writers. 
<p>
First, there are two types of CD-ROM writers, CD-ROM recorders and CD-ROM re-writers. Either will work fine. CD-ROM recorders only write once to the cheap ($2 or cheaper) write-once CD-ROMs. The CD-ROM re-writers can also delete and re-write the more expensive rewriting CD-ROMs. CD-ROM rewriters also can behave as CD-ROM recorders. 
<p>
Second, in order to use an IDE CD-ROM writer, you must fool the computer into believeing that it is a SCSI CD-ROM writer. You do this by attaching a Linux kernel module called "ide-scsi" to your IDE CD-ROM wrtier and then by loading the ide-scsi module. There are two ways of attaching the ide-scsi module, by the lilo prompt or inside the /etc/lilo.conf file. We will assume your CD-ROM writer is at /dev/hdd. Here is a list that explains what /dev/hdd is. 

<ol> 
<li> If your CD-ROM writer is the master drive on the primary controller, it uses /dev/hda. 
<li> If your CD-ROM writer is the slave drive on the primary controller, it uses /dev/hdb. 
<li> If your CD-ROM writer is the master drive on the secondary controller, it uses /dev/hdc. 
<li> If your CD-ROM writer is the slave drive on the secondary controller, it uses /dev/hdd. 
</ol>

Now here are the two ways of attaching the ide-scsi module to your CD-ROM writer. 

<ol>
	<li> At the lilo prompt when your Linux boots up, hit the tab key. This will give you a list of kernels you can use. For example, we will use the word "linux" to represent a kernel on our system. If your kernel is called "linux" also, then type in
	<br> linux hdd=ide-scsi
	<br> and the CD-ROM writer located at /dev/hdd will become a scsi CD-ROM writer
		located at /dev/scd0.
	<li> If you want to use lilo to configure your CD-ROM writer, you need to put the following line in /etc/lilo.conf file:
		<br> append="hdd=ide-scsi"
		<br> and a sample file is here
		<pre>
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.2.5-15
        label=linux
        root=/dev/hda1
        initrd=/boot/initrd-2.2.5-15.img
        append="hdd=ide-scsi"
        read-only		
		</pre>
		and then after you are done editing this file, type the command "lilo" to install lilo. Then reboot. 
</ol>
<p>

In order to load the ide-scsi module, type "insmod ide-scsi" at the prompt. 
You can also put this command at the bottom of /etc/rc.d/rc.local (for RedHat people)
to have it load at boot time. 
<p>
Remember! After you can properly configured the IDE CD-ROM writer, your CD-ROM writer will be located at "/dev/scd0". If you want to keep it this way, do this:
<pre>
rm -f /dev/CD-ROM
ln -s /dev/scd0 /dev/CD-ROM
</pre>
Certain programs expect your CD-ROM to be at /dev/CD-ROM, and thus, this links (or creates an alias) your CD-ROM to /dev/CD-ROM. 

</p>

<hr>
<a name="programs"></a>
<h1>Cdrecord and Xcdroast</h1>
There are two programs to make CD-ROMs in Linux. The first is cdrecord and the second is a GUI program called Xcdroast. We will limit ourselves to the program cdrecord. However, here is a link for <a href="http://www.fh-muenchen.de/rz/xcdroast"> Xcdroast</a> if you want further information. One note about Xcdroast, you will need a spare primary partition (about 1 gig) to normally use Xcdroast.
<p>
After you have attached your CD-ROM writer to the ide-scsi module and you have loaded the ide-scsi module, you want to see if your CD-ROM writer is recognized by cdrecord. 
The command cdrecord has a special option that will attempt to recognize your device. To recognize the device, the format of the command is: # cdrecord -scanbus. 
<p>
If you have not installed the IDE CD-ROM writer properly, you will probably get this response:
<pre>
# cdrecord -scanbus
cdrecord: No such file or directory. Cannot open SCSI driver.
</pre>

If you properly installed your IDE CD-ROM writer, issuing the command "cdrecord -scanbus" should produce something like this: 

<pre>
# cdrecord -scanbus
Using libscg version 'schily-0.1'
scsibus0:
         0,0,0    0) 'ATAPI  " 'CD-R/RW CRW6206A'  '1.2A' Removable CD-ROM
         0,1,0    1) *
         0,2,0    2) *
         0,3,0    3) *
         .............
         0,7,0    7) *
</pre>

This basically means that the system recognized the Acer 6206A CD-RW as a SCSI device and is ready to record. There is something important to notice here: the triplet <0,0,0> which identifies the CD-R device. This triplet will be necessary for the proper use of cdrecord.

<hr>
<a name="download"></a>
<h1>Download your favorite Linux distribution</H1>

At this step, we download a distribution. In order to write a CD, we need a CD-image, better known as an ISO-image. Getting a distribution's ISO-image is fairly easy if you have used Netscape or any ftp program. 
<p>
The easiest way to search around for distributions is by browsing the Internet. You can use for that Netscape. You can go to a Linux metasite containing most of the distributions or you can go to the website of a specific distribution and download it either from there or from one of their mirrors. In our case, we went to Redhat's website but we preferred to download from one of the mirrors since they may be not as overloaded as Redhat's website. Our choice was 
<a href="ftp://sunsite.utk.edu/">ftp://sunsite.utk.edu</a> and here is the 
<a href="ftp://sunsite.utk.edu/pub/linux/redhat/redhat/redhat-6.1/iso/6.1-i386.iso">image for RedHat 6.1</a> on an Intel platform.
One note, for you Linux users, if you use Netscape to download an ISO image from an ftp site, press the "shift" key while you are pressing on the link for the ISO image, otherwise it will print the ISO image inside your browser and you will just see garbage. 
<p>
If you want to use another program besides Netscape to download files from an ftp site, use "ncftp" or "gftp". Remember, if your ftp program doesn't automatically detect binary or ascii mode, tell it to choose "binary" mode. Typing in "bin" at the prompt of your ftp program usually takes care of this. 
<p>
Here is a small list of ISO images. We didn't test the suse, caldera, or
Slackware images. We are not sure if the Slackware images are the latest
versions. 
<ol>
<li><a href="ftp://sunsite.utk.edu/pub/linux/redhat/redhat/redhat-6.1/iso/6.1-i386.iso">
ftp://sunsite.utk.edu/pub/linux/redhat/redhat/redhat-6.1/iso/6.1-i386.iso</a>
<li> <a href="ftp://sunsite.utk.edu/pub/linux/Mandrake/iso/mandrake70.iso">
ftp://sunsite.utk.edu/pub/linux/Mandrake/iso/mandrake70.iso</a>
<li> <a href="ftp://ftp.suse.com/pub/suse/i386/evaluation-6.3.iso">
ftp://ftp.suse.com/pub/suse/i386/evaluation-6.3.iso</a>
<li> <a href="ftp://ftp.caldera.com/pub/openlinux/2.3/iso-images/">
ftp://ftp.caldera.com/pub/openlinux/2.3/iso-images/</a>
<li> <a href="ftp://ftp.CD-ROM.com/pub/linux/slackware/iso/">
ftp://ftp.CD-ROM.com/pub/linux/slackware/iso/</a>
</ol>

<p>

We like 
ftp://sunsite.utk.edu/pub/linux/redhat/redhat/redhat-6.1/iso
because downloads are sometimes very fast. At 7am ET, we can achieve on average 380 KB/sec, which means that the download of almost 650 MB can be done in about 1/2 hour. We like it also for another reason: once you get into pub/Linux directory, you will notice there other Linux distributions: Mandarke and Debian. 
<p>
We downloaded the file 6.1-i386.iso in the folder /tmp
<p>
Now, that we have the CD-R setup and the file downloaded, we can proceed with writing the CD.
<p>

<hr>
<a name="write"></a>
<h1>Write the CD-ROM</h1>
You can use Xcdroast to install the image, but we will use cdrecord for this example. 
<p>
We put a blank CD-ROM writer in the CD-ROM writer drive, navigated with cd to /tmp directory, and issued the cdrecord command:

<pre>
cd /tmp
cdrecord -v speed=2 dev=0,0,0 6.1-i386.iso
</pre>

We now explain what the command means. First, cdrecord is the command itself. Second, -v is the option for verbose operation: this means that we will receive message from the kernel as the command executes. Third, speed=2 indicates the speed with which the recorder writes. Naturally, you should not use a speed higher than that of your own recorder. Our Acer has speed rating of 2x2x6 which means that our maximum write speed is 2. Fourth, you must designate in the command explicitly the CD-R device. We used dev=0,0,0. This is the "triplet" that we wrote about earlier. You use the output from your "cdrecord -scanbus" command to get this information. Finally, 6.1-i386.iso is the ISO image file that is to be written on the CD.

<hr>
<a name="conclusions"></a>
<h1>Conclusions and future articles</h1>

One note, professionals tend to use SCSI CD-ROM writers. SCSI systems are much better than standard IDE systems. 
<p>
In order to use some advanced CD-ROM writing capabilities, like re-writing and multi-session writing, you will need to use cdrecord and NOT Xcdroast (unless Xcdroast has changed in the meantime). 

<p>
This article was really just a simple article to pave the way for the next
few articles we are going to do. 
For our future articles, we will talk about how to make a bootable CD-ROM (instead of booting off of the hard drive or floppy drive), how to make a live filesystem on a bootable CD-ROM (some Linux distributions have examples), and how to make diskless Linux workstations. 


<hr>
<a href="mailto:kris@tcu-inc.com"> Dr. Krassimir Petrov</a> recently graduated from OSU.  
<a href="mailto:mark@tcu-inc.com">Mark Nielsen</a> works for 
<a href="http://www.tcu-inc.com">The Computer Underground</a> as a clerk and as a book binder at 
<a href="http://www.genericbooks.com">ZING</a>.
In his spare time, he does volunteer stuff, 
like writing articles for The Linux Gazette and developing ZING's website. 







<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Mark Nielsen and Krassimir Petrov<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Sharing Your Home</font></H1>
<H4>By <a href="mailto:jpollman@bigfoot.com">JC Pollman</A> and 
<A HREF="mailto:bill.mote@bigfoot.com">Bill Mote</A></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




<p>You move from computer to computer and from OS to OS but you need to
always be in your home directory. This article will show you how - in both
Linux and Microsoft Windows.
<br>&nbsp;
<p><b>Disclaimer: </b>This article provides information we have gleamed
from reading the books, the HOWTOs, man pages, usenet news groups, and
countless hours banging on the keyboard. It is not meant to be an all inclusive
exhaustive study on the topic, but rather, a stepping stone from the novice
to the intermediate user.&nbsp; All the examples are taken directly from
our home networks so we know they work.
<p><b>How to use this guide:</b>
<ul>
<li>
Words encapsulated by square brackets like [Enter] indicate the depression
of a key on the keyboard or a mouse button [Mouse1]</li>

<li>
Words encapsulated by squiggly brackets like {your name here} indicate
data that will/should be substituted with "real" data</li>

<br>Text depicted in italics are commands you, the user, should type at
a prompt</ul>
<b>Prerequisites:</b> In order to have your home directory wherever you
go, you have to have it on your server, so make certain you have an account
on your server. You will also need the samba, nfs client, and nfs server
installed.
<p><b>Protocols:</b> We have seen the question: how do I share a linux
drive to window so many times in the newsgroups that it should never have
to be asked again. But it still continues to be asked. Windows use the
smb protocol to share drives - not tcp/ip. So to share a linux resource
you have to run the smb protocol on linux. Samba is the program that does
this. Linux, on the other hand, uses the tcpip protocol, and the nfs program
is used to share the resources. The protocols are completely different,
but they can be run at the same time and share the same resources. There
is a serious problem with locking the files if both protocols are sharing
the same resource at the same time, but for home use this really should
not be a problem. Security is also a concern and we would strongly recommend
that your "/home server" be behind a firewall and tcp wrappers be running.
<p><a href="misc/pollman/samba.html">Sharing home to a windows box</a>
<p><a href="misc/pollman/nfs.html">Sharing home to another linux box</a>
<p><a href="misc/pollman/final-thoughts.html">Some final thoughts</a>




<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, JC Pollman and Bill Mote<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Source file management in a complex networked environment</font></H1>
<H4>By <a href="mailto:jrogers@visnetinc.com?subject=Re:cvs-ssh">James M. Rogers</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




When you have more than one person working on a project you need to
make sure that they don't overwrite each others changes.&nbsp; When you
only have a few directories then <A href="http://www.gnu.org/order/ftp.html">Revision Control System (RCS)</a> is
fine.&nbsp; But when you have dozens of projects with ten programmers and
your development environment is spread over several boxes, you have a project
management nightmare that RCS is just not up to handling.
<p>What you need is <A href="http://www.gnu.org/order/ftp.html">Concurent Version System (CVS)</A>. CVS is great
because it is network aware, works with entire directory trees and allows
multiple people to work on the same file at the same time without loosing
anyones changes.&nbsp; CVS is already installed in Redhat 6.0+.
<p>As great as CVS is it still allows your source code to go across the
internet without encrypting it.&nbsp; This month I am going to talk about
setting up a secure networked repository using Secure Shell (ssh).&nbsp;
Next month I will show you how to import your current projects into the
repository, how to check your code out, update files and check your code
back into the repository.
<br>&nbsp;
<ol>
<li>
Setup ssh on all of your boxes.&nbsp; This program is available <a href="ftp://sunsite.unc.edu/pub/packages/security/ssh/">here</a>.  The company that makes ssh can be found <a href="http://ssh.com">here</a>.
</li>

<li>
Setup sshd to run on the machine that will host the repository.</li>

<li>
Create a new user account for each group of programmers on the machine
that is hosting the repository account.&nbsp; For this example create a
new user called repository.</li>

<li>
Create a .ssh directory on everyone ones accounts, including the new repository
accounts.</li>

<li>
Run 'chmod 700 .ssh' as the owner of the home directory on everyones account,
including the repository accounts.</li>

<li>
Have everyone create a public and private key using ssh-keygen.</li>

<li>
Collect everyones ~/.ssh/identity.pub files and place these into the ~/.ssh/authorized_keys
in the repository account if they are allowed to work on that project.</li>

<li>
Run 'chmod 700 ~/.ssh/authorized_keys' as the repository account.</li>

<li>
Test to make sure that people can use 'ssh repository@repository_host'&nbsp;
where repository is the name of the group directory and repository host
is the name of the host that has the repository.</li>

<li>
Create a directory called ~/cvsroot in the repository home directory.</li>

<li>
Setup the followint two environmental variables in whatever shell script
rc file you need to.&nbsp; For me it was my ~/.bashrc file:</li>

<p><br>export CVS_RSH=ssh
<br>export CVSROOT=repository@repository_home:/home/repository/cvsroot
<br>&nbsp;
<li>
Login to another window to ensure that you still can login and that these
environmental variables got set correctly.</li>

<li>
Do a 'cvs init' command as any user authorized to use this repository and
you should get no error messages.</li>

<li>
If you get any error messages, start over from scratch and repeat directions
until you get it works.</li>

<li>
If you have any questions please contact me.</li>

<li>
Take this oportunity to play with both SSH and CVS.&nbsp; Read the documentation,
see if you can think up of new ways of using them.&nbsp; If anyone has
another way of setting up cvs repositories, please share with us!&nbsp;
I am especially interested in finding out how to setup a public cvs repository
like I see on the internet all the time.</li>
</ol>

And if anyone was paying attention, this is also how you can setup all of your own accounts so that you only have to log on once to a secure machine and then connect to anyother machine without logging in again.  I will discuss how to set that up in my next article in this series.





<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, James M. Rogers<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Developing Web Applications - Part III</font></H1>
<H4>By <a href="mailto:afsilva@liberty.edu">Anderson Silva</a></H4>
</center>
<P> <HR> <P>  

<!-- END header -->




<br> At this time, I will close the <b>Developing Web
Applications</b> series with a very helpful example that if you understand
it, you will be able to apply the same type of application to several other
types of online applications. I am talking about <b>creating your own online
bookmark</b>. Once you understand this example, you will be able to do
basic <b>mySQL</b> operations with php3.
<p> But before I get to the php3 code for the bookmark application,
you will need to create a mysql table to store your bookmarks.
There are several ways to administrate mySQL databases:
<ul>
<li>
Command Line: You can create all your tables, insert data, and query them
out from the mysql client. To do this, I would suggest you read the mySQL
Language reference at <a href=http://www.mysql.com>http://www.mysql.com</a></li>

<li>
GUI Based: You can download several different types of graphical interface
to administrator a mysql database. For example: xmysql and kmysql. To download
this tools, I would suggest: <a href=http://www.tuxfinder.com>http://www.tuxfinder.com</a></li>

<li>
Online Interface: This is definitely my favorite option. There is a very
nice tool called&nbsp; phpMyAdmin, which allows you to administrate one
or more mySQL database remotely through your browser. Here is the URL:
<a href=http://www.phpwizard.net/phpMyAdmin>http://www.phpwizard.net/phpMyAdmin</a></li>
</ul>
Choose whatever fits you better. For this small project,
I will give you the configuration that fits the needs for this application.
<p>&nbsp;&nbsp;&nbsp; Database Host: <b>myserver</b>
<br>&nbsp;&nbsp;&nbsp; Username: <b>myusername</b>
<br><b>&nbsp;&nbsp; </b>Password: <b>mypassword</b>
<br><b>&nbsp;&nbsp; </b>Database Name:&nbsp;<b> mydatabase</b>
<br><b>&nbsp;&nbsp; </b>Table Name: <b>bookmark</b>
<br>&nbsp;&nbsp;&nbsp; Fields in the <b>bookmark</b> table:&nbsp; <b>id,
url, description</b>
<p> All the information above is relevant when
coding the application. <b>Note:</b> The fields are the columns on the
database. The id was defined to allow every entry in your database to be
unique (<b>primary key</b>), it should be defined to be unique, and auto-increment.
<p> Once you have your database defined and working,
you may start coding your application, and here is how it goes:
<br>&nbsp;
<p> The HTML form that will capture the data and send
it in to the database:
[<A HREF="misc/silva/book_form.html.txt">text copy of this listing</A>]

<pre>
&nbsp;&nbsp;&nbsp; &lt;HTML&gt;
&nbsp;&nbsp;&nbsp; &lt;head&gt;
&nbsp;&nbsp;&nbsp; &lt;title&gt;Anderson's bookmark&lt;/title&gt;
&nbsp;&nbsp;&nbsp; &lt;/head&gt;
&nbsp;&nbsp;&nbsp; &lt;body bgcolor=white&gt;
&nbsp;&nbsp;&nbsp; &lt;form ACTION="sendbook.php3" METHOD="Post"&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;center&gt;&lt;p&gt;Enter The Bookmark Title:&lt;/font&gt;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input TYPE="text" SIZE="40" NAME="description"&gt; &lt;/p&gt;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;center&gt;&lt;p&gt;Enter The Bookmark URL:&lt;/font&gt;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input TYPE="text" SIZE="40" NAME="URL"&gt; &lt;/p&gt;&lt;/center&gt;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;p&gt;&lt;input TYPE="Submit" VALUE="Check"&gt;&lt;br&gt;
&nbsp;&nbsp;&nbsp;&nbsp; &lt;/form&gt;
&nbsp;&nbsp;&nbsp; &lt;a href="book.php3"&gt;View Bookmarks&lt;/a&gt;
&nbsp;&nbsp;&nbsp; &lt;/body&gt;
&nbsp;&nbsp;&nbsp; &lt;/html&gt;
</pre>


The above form will have to text fields: one for the
URL, the other for the URL description. The <b>form </b>tag will be responsable
for telling the browser what to do when the <b>Submit</b> button is pressed.
In this case it will call the php3 script <b>sendbook.php3</b>, and send
the data to that script.
<p> The following script is the <b>sendbook.php3</b>.
This script will open a connection to the mySQL database, and send the
data from the HTML form to the database.
[<A HREF="misc/silva/sendbook.php3.txt">text copy</A>]

<pre>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;?php
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //if any of the two fields is left blank, don't send data, but send an error message.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(!($description=="") || !($URL==""))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //connects to database&nbsp; server
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_connect(myserver, myusername, mypassword);
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //connects to the database
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_select_db('mydatabase');
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //this is the query command to insert into the bookmark&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // table the values from $description and $URL
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // inside the Columns description and URL
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_query("insert into bookmark(description, URL) values ('$description', '$URL')");
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //closes connection to database.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_close();
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //After the data is inserted, the browser will form a web page with&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // the following information.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "Thanks for adding the bookmark&lt;br&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;a href=book.php3&gt;View BookMraks&lt;/a&gt;&lt;br&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;a href=sendbook.html&gt;Add Another One&lt;/a&gt;&lt;br&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }else{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "You need to go to the form: &lt;a href=sendbook.html&gt;Sendbook&lt;/a&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ?&gt;
</pre>

The third and last script is called <b>book.php3</b>.
This script will query the data entered by sendbook.php3, and display on
the screen all of your bookmarks.
[<A HREF="misc/silva/book.php3.txt">text copy</A>]

<pre>
&nbsp;&nbsp;&nbsp; &lt;?&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;HTML&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;HEAD&gt;&lt;TITLE&gt;Afsilva's Bookmark&lt;/title&gt;&lt;/head&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;body bgcolor=white&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;IMG SRC=bookmark.jpg&gt;&lt;br&gt;&lt;br&gt;";
</pre>

<pre>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Connect to DB server
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_connect(myserver, myusername, mypasword);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Connect to Database
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_select_db("mydatabase");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Query the database for everything(*) that is on it.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT * FROM bookmark");
</pre>

<pre>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //mysql_num_rows() returns the number of bookmarks found.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $rows = mysql_num_rows($result);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "Number of bookmarks:";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //outputs the number of records (rows)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo $rows;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;br&gt;&lt;br&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $i=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;a href=sendbook.html&gt;Insert More BookMarks&lt;/a&gt;\n&lt;br&gt;&lt;br&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;table border=1&gt;";
</pre>

<pre>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //This allows you to access the query in a form of an array.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //The array index is the name of the field of the database.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ($row = mysql_fetch_array($result))
&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; echo "&lt;tr&gt;&lt;td&gt;\n";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // The . operator adds string together.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;a href=".$row["URL"]."&gt;".$row["description"]."&lt;/a&gt;\n";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;/td&gt;&lt;/tr&gt;";
&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; echo"&lt;/table&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mysql_close();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo"&lt;a href=../index.html target=_top&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "&lt;/HTML&gt;";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ?&gt;
</pre>

With these three files you should be able to get your
first bookmark application working, but just don't stop there. Work upon
it, and make your bookmark better, and smarter. From this example, you
should be able to build several other types of online utilities, like:
guestbooks, counters, surveys, etc.
<p> I hope that this article was useful, and taught you
something new. Feel free to email me at: <a href=mailto:afsilva@liberty.edu>afsilva@liberty.edu</a>, and send me your comments
and questions.



<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Anderson Silva<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


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

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

<center>
<H1><font color="maroon">Artificial Intelligence and Linux (2<SUP>nd</SUP> Edition)</font></H1>
<H4>By <a href="mailto:afsilva@liberty.edu">Anderson Silva</a></H4>
</center>

<BLOCKQUOTE><EM>
	[This is a revision of my article that came out in July 1999. The
	article had a few errors and was missing its
	conclusion. I have fixed these errors in this revision and added a few
	references for anyone who is interested in looking deeper into the
	field of AI. One thing I would like to stress is that this
	article covers only a very minimal area in AI. -AS]
</EM></BLOCKQUOTE>
<P> <HR> <P>  

<!-- END header -->




<p>Artificial Intelligence is a very controversial subject, but the way
I will approach it in this article is simple and fast. The way I have been
approaching AI is not through the philosophical or biological aspect, but
just as a computational subject. When humans want to fly, they don't need
to study the birds to learn how to do it, they just get into an airplane.
This is my way of approaching AI. We want to solve puzzles and games through
a computer without really comparing the way a human accomplishes tasks
differently from a computer.
<p>For the first time in the history of my school, there was going to be
offered an Artificial Intelligence (AI) class. I was very excited about
this class because you hear a lot about AI, but you don't really see a
lot of material for it on magazines and online articles.
<p>Probably the greatest example of an AI application is Turing's Test.
The test consists in a person being a room with a computer terminal, and
this person would start to chat with the computer. At the end the person
would have to figure out if he talked to a real person on the other end
of the terminal or with a computer program. And if the user confuses the
person with the computer then we would have reached AI.
<p>At LU we chose Prolog to be the implementation tool for AI. Our labs
at school are Windows NT based and we have only one Linux machine which
is designated to students. But I have been a Linux user for almost 2 years,
and I wanted to implement all my Prolog assignments in Linux.
<p>I did some research on the web and I found a great Prolog compiler for
Linux. Prolog is like Linux in a certain way, there are several flavors
that you can pick from. The one I chose was SWI Prolog 
(<A HREF="http://www.hio.hen.nl/faq/SWI-Prolog.html">
www.hio.hen.nl/faq/SWI-Prolog.html</A>).
Prolog is a very flexible language. Unlike other languages like C, C++
or Java, Prolog is based on formal mathematical logic, in this case: Predicate
Calculus. A Prolog program is normally made of facts with a set of rules.
To reach the final solution it has to satisfy this set of rules. Interpreting
these rules allows the computer to deduce the solution by itself. In Prolog
the facts are normally stored in a separate file called the knowledge base,
and rules in another file that is the actual program.
<p>Allow me to show a very basic search algorithm known as the 
<a href="gx/silva2/ai_graph.jpg">Depth First Search</a>(click for image).
<p>This program allows you to find a solution path from the START&nbsp;point
to some GOAL. The DFS&nbsp;algorithm is pretty simple so implement, since
it is a
recursive algorithm. What DFS&nbsp;does is go through the child of
each node in a sequential manner, therefore even though it is an easy way
to implement a
search algorithm, it is not time efficient.
<p><b>But why search a graph?</b><b></b>
<p>The nodes of a graph correspond to partial problem solution states and
the arcs correspond to steps in a problem-solving process. The graph also
defines one or more goal conditions, which are solutions to a problem instance.
The process of finding a solution path from the start to a goal is called
State space search (Luger and Stubblefield 1997).
<p>Through a graph you can find the solutions to several problems that
in our minds seems so easy. For example, an entire chess game can be represented
in graphs, mathematical problems, virtually anything that involves decision
making.
<br>
<hr>
<p>The Program below is the representation of the graph above in Prolog.
[<A HREF="misc/silva2/list1.txt">text version</A>]
<p>=========LIST&nbsp;#1=============
<pre>% Name:&nbsp;&nbsp; Anderson Silva
% Date:&nbsp;&nbsp; March 10, 1999

% ================================
% A graph that will be used for a
% Depth First Search Algorithm
% Knowledge Base.
% ================================

% linked/2
% A nodes and its children

linked(a, [b,c,d]).
linked(b, [e,f]).
linked(c, [g,h]).
linked(d, [i,j]).
linked(e, [k,l]).
linked(f, [l,m]).
linked(g, [n]).
linked(h, [o,p]).
linked(i, [p,q]).
linked(j, [r]).
linked(k, [s]).
linked(l, [t]).
linked(m, []).
linked(n, []).
linked(o, []).
linked(p, [u]).
linked(q, []).
linked(r, []).
linked(s, []).
linked(t, []).
linked(u, []).

% arc/2
% A rule that checks to see if
% there is an arc between two given nodes.

arc(X,Y):- linked(X,L), member(Y,L).</pre>

<hr>
<p>The algorthim that searches the graph for a specific goal:
[<A HREF="misc/silva2/list2.txt">text version</A>]
<p>=========#&nbsp;LIST&nbsp;#2=============
<pre>% Name:&nbsp;&nbsp; Anderson Silva
% Date:&nbsp;&nbsp; March 10, 1999
% ================================
% This is the Depth First Algorithm
% implemented in Prolog that will
% use the graph.pl knowledge base
% ================================

% reverse_write/1
% Inverts the order of the stack.

reverse_write([]).
reverse_write([H|T]):-reverse_write(T), write(H), nl.

% solve/2
% Gives the path in the reverse
% order since dfs is implemented as
% a stack

solve(INode, Solution):- consult('graph.pl'),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; query_goal,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dfs([], INode, Solution),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; reverse_write(Solution).

% query_goal/0
% Creates the goal to be reached
% during execution
% We start with abolish, so if solve is ran more
% than once, it will make sure it
% forgets the old goals and only look for the
% new on.

query_goal :- abolish(goal(Node)),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; write('Goal? [Followed by a period]'),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nl,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; read(Node),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; assert(goal(Node)).


% goal/1
% When the program runs for the first time
% query_goal needs to abolish at least one goal
% and that is why goal(standard) is used.

goal(standard).

% dfs/3
% The Actual recursive algorithm for the
% Depth First Search

dfs(Path, Node, [Node|Path]):- goal(Node).
dfs(Path, Node, Sol):- arc(Node, Node1),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \+ member(Node1, Path),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dfs([Node|Path], Node1, Sol).
</pre>

<hr WIDTH="100%">
<p>With this Prolog program, you will be able to run a Graph Search on
your computer. Notice that LIST&nbsp;#1 defines the graph, therefore you
can make changes in LIST&nbsp;#1 and make your own graphs, and see if the
algorithm will find the node you are looking for.
<p>There are several other search algorithms to solve AI&nbsp;problems,
for example:&nbsp;Breadth-First Search, Heuristic Search, Pattern-Directed
Search, and others.
<p>As I&nbsp;said, this is one small topic in AI, that I&nbsp;thought
it would be useful for some of you that would like to learn more about
AI. If you would like some other areas to reasearch, but you do not even
know where to start, here are a few topics:&nbsp;Expert Systems, Robots,
Knowledge Representation, Fuzzy Logic, Natural Language, Automated Reasoning,
and others.
<p>Finally, I&nbsp;would like to leave you with three books that I&nbsp;used
in college about AI.
<OL>
	<LI> Artificial Intellegence: Structures and Strategies for Complex
Problem Solving. Luger, George and Stubblefield, Willian.
	<LI> Prolog Programming in Depth. Covington, Michael et al.
	<LI> Are We Unique?. Trefil, James.
</OL>




<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>

Copyright &copy; 2000, Anderson Silva<BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->

<center><H2>
<A HREF="http://www.linuxgazette.com/">
<IMG SRC="../gx/newlogo.jpg" width=600 height=256 border=0
ALT="Linux Gazette... making Linux just a little more fun!"></a>
</H2>
<H4>Published by <A HREF="http://www.linuxjournal.com/"><I>Linux Journal</I></A></H4>
</center>

<P> <hr> <P> 

<H1><font color="maroon">The Back Page</font></H1>
<ul>
<li><a HREF="#authors">About This Month's Authors</a>
<li><a HREF="#notlinux">Not Linux</a>
</ul>

<a name="authors"></a>
<P> <HR> <P> 
<!--======================================================================-->

<center><H3><font color="maroon">About This Month's Authors</font></H3></center>

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

<!-- BEGIN bio -->
<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Marius Andreiana</H4>
Marius is 19 years old, and a student in the first year at Politehnica
Bucharest, Romania.  Besides Linux, he also loves music (from rock to dance),
dancing, having fun, spending time with friends. He is interested also in
science in general (and that quantum spooky connection :) and says, <EM>"I like
cooking (okay, maybe I don't like it a lot, but I have to cook because I live
alone while I'm at studies in Bucharest. Poor me :-) poor neighbours :-)"</EM>


<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Shane Collinge</H4>
Part computer programmer, part cartoonist, part Mars Bar. At night, he runs
around in a pair of colorful tights fighting criminals. During the day... well,
he just runs around.  He eats when he's hungry and sleeps when he's sleepy.                                           


<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Ray Ferrari</H4>
I am a new linux enthusiast who has been following the trend for over a
year now. I have successfully installed Debian and participate in
helping bring Linux to more people. I have been working with computers
for seven years on my own, learning as much as possible. I currently am
looking for a sales position within the Linux community. Talks are under
way with VALinux; my dream company. I have been a volunteer for both
Debian and LPI.



<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Sven Guckes</H4>
Sven, born in 1967, lives and studies
mathematics and computer science
in Berlin, Germany,
He supports the development of text based programs which are
freely available (OpenSource), highly customizable,
available on all platforms, and well supported.
He also comments all his setup files with lots of examples
 and makes available them available as "webpages".
His favourite programs as of today are:
 irc (sirc), lynx+w3m, (elm) mutt, slrn (nn, gnus), (tcsh) zsh.
He is the maintainer of the webpages on 
<A HREF="http://slrn.org">slrn.org</A> and <A HREF="http://vim.org">vim.org</A>.
For more info see <A HREF="http://go.to/guckes">http://go.to/guckes</A> 
or write to <A HREF="mailto:guckes@go.to">guckes@go.to</A>.

<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Sean Lamb</H4>
I am a computer science major and LAN Admin at Lakeland College's Madison, WI,
campus as well as a member of the Wisconsin DOT Help Desk and Server Backup
teams.  My previous Linux experience was solely with RedHat until installing
Caldera 2.2.  I am a member of MadLUG (the Madison Linux User Group, at <A
HREF=http://madlug.jvlnet.com>http://madlug.jvlnet.com</A>) and an active
contributor to the user group's web presence.  When I'm not playing with Linux,
I'm building and running my model railroad.  I can be reached at <A
HREF=mailto:slambo42@my-dejanews.com> slambo42@my-dejanews.com</A>.


<p> 
<h4><img align=bottom alt="" src="../gx/note.gif">Mark Nielsen</h4>
Mark founded The Computer Underground, Inc. in June of 1998. Since then,
he has been working on Linux solutions for his customers ranging from custom
computer hardware sales to programming and networking. Mark specializes in Perl,
SQL, and HTML programming along with Beowulf clusters. Mark believes in the
concept of contributing back to the Linux community which helped to start his
company. Mark and his employees are always looking for exciting projects to do.

<p> 
<h4><img align=bottom alt="" src="../gx/note.gif">Krassimir Petrov</h4>
Krassimir has a PhD in Agricultural Economics from Ohio State University.  He
also has an MA in Economics and a BA in Business (Finance, Accounting,
Management).

<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">JC Pollman and Bill Mote</H4>
JC has been playing with Linux since kernel 1.0.59. He spend way too much
time at the keyboard and even let his day job - the military - interfere once in
a while. His biggest concern about linux is the lack of documentation for the
intermediate user. There is already too much beginner's stuff, and the
professional material is often beyond the new enthusiast.

<P> Bill is the Technical Support Services manager for a multi-billion dollar
publishing company and is responsible for providing 1st and 2nd level
support services to their 500+ road-warrior sales force as well as their
3,500 workstation and laptop users.  He was introduced to Linux by a good
friend in 1996 and thought Slackware was the end-all-be-all of the OS world
... until he found Mandrake in early 1999.  Since then he's used his
documentation skills to help those new to Linux find their way.

<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">James Rogers</H4>
James Rogers is a systems programmer specializing in the area of Cloverleaf
HL7 routers.  He is also currently working on an open source library of HL7
routines.  He hopes to use this library to write an open source HL7
interface engine.


<P> 
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Anderson Silva</H4>
<A HREF="http://www.4christ.org/anderson.html">Anderson</A>
is a Senior at Liberty University majoring in Computer Science.
Originally from Brazil, he works at 
<A HREF="http://www.whetstonelogic.com">Whetstone Logic, Inc.</A> as an
Online Application Developer. 
He is also a member of the Association for Computing Machinery (ACM)
and the <A HREF="http://www.lylug.org/">
Lynchburg Linux User Group</A> in Lynchburg, Virginia.

<!-- END bio -->

<a name="notlinux"></a>
<P> <hr> <P> 
<!--====================================================================-->

<center><H3><font color="maroon">Not Linux</font></H3></center>

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

<P> In late January, I went to the 8th International 
<A HREF="http://www.python.org">Python</A> conference in 
Arlington, VA, and attended the
<A HREF="http://www.zope.org">Zope</A> track.  I have been a Python enthusiast
for several years, and have recently gotten excited about Zope, which is a
web application server.  I came back with a year's worth of projects in my
head, and zopified my personal sites (<A
HREF="http://mso.oz.net">mso.oz.net</A>) last weekend.  Now comes the harder
part: actually writing applications for this platform, especially since parts
of Zope are still in an alpha stage and are changing rapidly.  

<P> Eventually, the <EM>Gazette</EM> itself may migrate to a more interactive
environment like Zope.  However, because the <EM>Gazette's</EM> unique
distribution network depends on it being implemented in simple HTML which can
be viewed anywhere (including off-line), we will think long and hard before
making any major changes which may limit its accessibility.

<P> The folks who brought you the WTO protests are at it again with a plan to
<STRONG>Shut Down Microsoft</STRONG>.  There will be a street theater action
February 7th at 7:15am.  (Ugh, so early in the morning.)  If you will be in the
Seattle area and want more information on this, contact Direct Action Network
at 206-632-1656 or 206-632-9482.  I will try to have a report in next month's
<EM>Gazette</EM> on how it turns out.  (Does this remind anybody of the
<A HREF="http://www.svlug.org/events/tea-party-199811.shtml">
Silicon Valley Tea Party</A>, when Linux enthusiasts crashed the
housewarming party for a Microsoft developer support center in Palo Alto, CA,
in 1998?  Of course, the upcoming event will not be focused specifically on
Linux.)

<P> Thanks to all our authors, not just the ones above, but also those who wrote
giving us their tips and tricks and making suggestions. Thanks also to our
new mirror sites.
<P> 
Have fun!

<P> Michael Orr<br>
Editor, <A HREF="http://www.linuxgazette.com/"><i>Linux Gazette</i></A>, <A
HREF="mailto:gazette@ssc.com">gazette@ssc.com</a>

<!-- *** BEGIN copyright *** -->
<P> <hr> <P> 
<H5 ALIGN=center>
This page written and maintained by the Editor of the <I>Linux Gazette</I>.<BR>
Copyright &copy; 2000, <A HREF="mailto:gazette@ssc.com">gazette@ssc.com</A><BR> 
Published in Issue 50 of <i>Linux Gazette</i>, February 2000</H5>
<!-- *** END copyright *** -->


</BODY></HTML>