aboutsummaryrefslogtreecommitdiff
path: root/it_IT.ISO8859-15/books/handbook/serialcomms/chapter.sgml
blob: 6008b0c133d1d494eaa5b1df2d7ca9506480e1bf (plain) (blame)
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
<!--
     The FreeBSD Italian Documentation Project

     $FreeBSD$
     Original revision: 1.94
-->

<chapter id="serialcomms">
  <title>Comunicazioni Seriali</title>

  <sect1 id="serial-synopsis">
    <title>Sinossi</title>

    <indexterm><primary>comunicazioni seriali</primary></indexterm>

    <para>&unix; ha sempre avuto un supporto per le  comunicazioni seriali.
      In effetti, le prime vere macchine &unix; si appoggiavano a linee seriali
      per l'input e l'output da e verso l'utente.  Le cose sono cambiate molto
      dai giorni in cui un <quote>terminale</quote> consisteva in una stampante
      da 10 caratteri al secondo o in una tastiera.
      Questo capitolo coprir&agrave; alcuni dei modi nei quali
      FreeBSD usa le comunicazioni seriali.</para>

    <para>Dopo aver letto questo capitolo, saprai:</para>

    <itemizedlist>
      <listitem>
        <para>Come connettere terminali al tuo sistema FreeBSD.</para>
      </listitem>

      <listitem>
        <para>Come usare un modem per collegarti telefonicamente
          ad una macchina remota.</para>
      </listitem>

      <listitem>
        <para>Come permettere a utenti remoti di effettuare
          login sul tuo sistema via modem.</para>
      </listitem>

      <listitem>
        <para>Come avviare il tuo sistema da una console seriale.</para>
      </listitem>
    </itemizedlist>

    <para>Prima di leggere questo capitolo, dovresti:</para>

    <itemizedlist>
      <listitem>
        <para>Sapere come configurare ed installare un nuovo kernel
          (<xref linkend="kernelconfig">).</para>
      </listitem>

      <listitem>
        <para>Comprendere i permessi ed i processi &unix;
          (<xref linkend="basics">).</para>
      </listitem>

      <listitem>
        <para>Avere accesso al manuale tecnico per l'hardware seriale
          (modem o scheda multiporta) che vuoi usare con FreeBSD.</para>
      </listitem>
    </itemizedlist>
  </sect1>

  <sect1 id="serial">
    <title>Introduzione</title>

    <sect2 id="serial-terminology">
      <title>Terminologia</title>

      <variablelist>
        <varlistentry>
          <term>bps</term>

          <indexterm><primary>bit per secondo</primary></indexterm>

          <listitem>
            <para>Bits per Second (Bit per Secondo) &mdash; la frequenza alla
              quale vengono trasmessi i dati</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term>DTE</term>

          <indexterm><primary>DTE</primary></indexterm>

          <listitem>
            <para>Data Terminal Equipment (Attrezzatura per il Terminale Dati)
              &mdash; ad esempio, il tuo computer</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term>DCE</term>

          <indexterm><primary>DCE</primary></indexterm>

          <listitem>
            <para>Data Communications Equipment (Attrezzatura per le
              Comunicazioni Dati) &mdash; il tuo modem</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term>RS-232</term>

          <indexterm><primary>cavi RS-232C</primary></indexterm>

          <listitem>
            <para>Standard EIA per le comunicazioni tra hardware seriale</para>
          </listitem>
        </varlistentry>
      </variablelist>

      <para>Nel parlare della velocit&agrave; di comunicazione, questa
        sezione non usa il termine <quote>baud</quote>.  Il baud si riferisce
        al numero di transizioni degli stati elettrici che possono essere
        effettuati in un periodo di tempo, mentre i <quote>bps</quote>
        (bit per secondo) sono il termine <emphasis>corretto</emphasis> da usare
        (o almeno non sembra irritare troppo i perfezionisti).</para>
    </sect2>

    <sect2 id="serial-cables-ports">
      <title>Cavi e Porte</title>

      <para>Per collegare un modem o un terminale alla tua macchina FreeBSD,
        avrai bisogno di una porta seriale sul tuo computer e del cavo
        appropriato per il tuo dispositivo seriale.  Se sei gi&agrave; pratico
        con l'hardware ed i cavi necessari, puoi saltare tranquillamente questa
        sezione.</para>

      <sect3 id="term-cables">
        <title>Cavi</title>

        <para>Ci sono parecchi tipi diversi di cavi seriali.  I due
          tipi pi&ugrave; comuni per i nostri scopi sono i cavi null-modem
          ed i cavi standard (<quote>dritti</quote>) RS-232.
          La documentazione per il tuo hardware dovrebbe descrivere il tipo
          di cavi necessari.</para>

        <sect4 id="term-cables-null">
          <title>Cavi null-modem</title>

          <indexterm><primary>cavo null-modem</primary></indexterm>

          <para>Un cavo null-modem lascia passare alcuni segnali, come
            <quote>signal ground</quote>, direttamente, ma inverte altri
            segnali.  Ad esempio, il pin <quote>send data</quote> in un estremo
            va sul pin <quote>receive data</quote> nell'altro.</para>

          <para>Se ti piace fare i cavi da solo, puoi costruire un cavo
            null-modem da usare con i terminali.  Questa tabella mostra i nomi
            dei segnali RS-232C ed i numeri dei pin su un connettore
            DB-25.</para>

          <informaltable frame="none">
            <tgroup cols="5">
              <thead>
                <row>
                  <entry>Segnale</entry>

                  <entry>Pin #</entry>

                  <entry></entry>

                  <entry>Pin #</entry>

                  <entry>Segnale</entry>
                </row>
              </thead>

              <tbody>
                <row>
                  <entry>SG</entry>

                  <entry>7</entry>

                  <entry>si connette a</entry>

                  <entry>7</entry>

                  <entry>SG</entry>
                </row>

                <row>
                  <entry>TD</entry>

                  <entry>2</entry>

                  <entry>si connette a</entry>

                  <entry>3</entry>

                  <entry>RD</entry>
                </row>

                <row>
                  <entry>RD</entry>

                  <entry>3</entry>

                  <entry>si connette a</entry>

                  <entry>2</entry>

                  <entry>TD</entry>
                </row>

                <row>
                  <entry>RTS</entry>

                  <entry>4</entry>

                  <entry>si connette a</entry>

                  <entry>5</entry>

                  <entry>CTS</entry>
                </row>

                <row>
                  <entry>CTS</entry>

                  <entry>5</entry>

                  <entry>si connette a</entry>

                  <entry>4</entry>

                  <entry>RTS</entry>
                </row>

                <row>
                  <entry>DTR</entry>

                  <entry>20</entry>

                  <entry>si connette a</entry>

                  <entry>6</entry>

                  <entry>DSR</entry>
                </row>

                <row>
                  <entry>DCD</entry>

                  <entry>8</entry>

                  <entry></entry>

                  <entry>6</entry>

                  <entry>DSR</entry>
                </row>

                <row>
                  <entry>DSR</entry>

                  <entry>6</entry>

                  <entry>si connette a</entry>

                  <entry>20</entry>

                  <entry>DTR</entry>
                </row>
              </tbody>
            </tgroup>
          </informaltable>

          <note>
            <para>Collega internamente al cappuccio del connettore <quote>Data
                Set Ready</quote> (DSR) e <quote>Data Carrier Detect</quote>
              (DCD), e quindi a <quote>Data Terminal Ready</quote> (DTR) in
              quello remoto.</para>
          </note>
        </sect4>

        <sect4 id="term-cables-std">
          <title>Cavi Standard RS-232C</title>

          <indexterm><primary>cavi RS-232C</primary></indexterm>

          <para>Un cavo seriale standard passa tutti i segnali RS-232C diretti.
            Cio&egrave;, il pin <quote>send data</quote> su un estremo del cavo
            va nel pin <quote>send data</quote> sull'altro estremo.  Questo
            &egrave; il tipo di cavo da usare per collegare un modem al tuo
            sistema FreeBSD, ed &egrave; anche appropriato per alcuni
            terminali.</para>
        </sect4>
      </sect3>

      <sect3 id="term-ports">
        <title>Porte</title>

        <para>Le porte seriali sono i dispositivi attraverso i quali vengono
          trasferiti i dati tra il computer FreeBSD ed il terminale.  Questa
          sezione descrive il tipo di porte che esistono e come vengono indicate
          in FreeBSD.</para>

        <sect4 id="term-portkinds">
          <title>Tipi di Porte</title>

          <para>Esistono parecchi tipi di porte seriali.  Prima di comprare o
            costruire un cavo, avrai bisogno di assicurarti che sia adatto alle
            porte sul terminale e sul sistema FreeBSD.</para>

          <para>La maggior parte dei terminali avr&agrave; porte DB25.
            I personal computer, compresi i PC con FreeBSD, avranno porte DB25 o
            DB9.  Se hai una scheda seriale multiporta nel tuo PC, potresti
            avere porte RJ-12 o RJ-45.</para>

          <para>Guarda la documentazione fornita con l'hardware per
            le specifiche del tipo di porta usata.  Spesso basta anche
            un'ispezione visiva della porta.</para>
        </sect4>

        <sect4 id="term-portnames">
          <title>Nomi delle Porte</title>

          <para>In FreeBSD, si accede ad ogni porta seriale attraverso una voce
            nella directory <filename>/dev</filename>.  Ci sono due differenti
            tipi di voci:</para>

          <itemizedlist>
            <listitem>
              <para>Le porte di ingresso vengono dette
                <filename>/dev/ttyd<replaceable>N</replaceable></filename>
                dove <replaceable>N</replaceable> &egrave; il numero di porta,
                cominciando da zero.  Generalmente, puoi usare la porta di
                ingresso per i terminali.  Le porte di ingresso richiedono che
                la linea fornisca un segnale detto data carrier detect (DCD) per
                funzionare correttamente.</para>
            </listitem>

            <listitem>
              <para>Le porte di uscita vengono dette
                <filename>/dev/cuaa<replaceable>N</replaceable></filename>.
                In genere non si usano porte di uscita per i terminali, ma solo
                per i modem.  Puoi usare la porta di uscita se il cavo seriale
                o il terminale non supportano il segnale di carrier
                detect.</para>
            </listitem>
          </itemizedlist>

          <para>Se hai connesso un terminale sulla prima porta seriale
            (<devicename>COM1</devicename> in &ms-dos;), allora userai
            <filename>/dev/ttyd0</filename> per riferirti al terminale.  Se il
            terminale &egrave; sulla seconda porta seriale (anche nota come
            <devicename>COM2</devicename>), usa
            <filename>/dev/ttyd1</filename>, e cos&igrave; via.</para>
        </sect4>
      </sect3>
    </sect2>

    <sect2>
      <title>Configurazione del Kernel</title>

      <para>FreeBSD supporta quattro porte seriali di default.  Nel mondo
        &ms-dos;, queste sono note come  <devicename>COM1</devicename>,
        <devicename>COM2</devicename>, <devicename>COM3</devicename>, e
        <devicename>COM4</devicename>.  FreeBSD attualmente supporta
        schede d'interfaccia seriale multiporta <quote>stupide</quote>,
        come le BocaBoard 1008 e 2016, cos&igrave; come le schede multiporta
        intelligenti come quelle fatte dalla Digiboard
        e dalla Stallion Technologies.  Ad ogni modo, il kernel di default
        usa solo le porte COM standard.</para>

      <para>Per vedere se il tuo kernel riconosce una delle tue porte seriali,
        guarda i messaggi mentre il kernel viene avviato, o usa il comando
        <command>/sbin/dmesg</command> per far scorrere di nuovo i
        messaggi di avvio del kernel.  In particolare, cerca dei messaggi
        che inizino con i caratteri <literal>sio</literal>.</para>

      <tip>
        <para>Per vedere solo i messaggi che hanno la parola
          <literal>sio</literal>, usa il comando:</para>

        <screen>&prompt.root; <userinput>/sbin/dmesg | grep 'sio'</userinput></screen>
      </tip>

      <para>Ad esempio, su un sistema con quattro porte seriali, questi sono
        i messaggi dati dall'avvio del kernel specifici delle porte
        seriali:</para>

      <screen>sio0 at 0x3f8-0x3ff irq 4 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
sio2 at 0x3e8-0x3ef irq 5 on isa
sio2: type 16550A
sio3 at 0x2e8-0x2ef irq 9 on isa
sio3: type 16550A</screen>

      <para>Se il tuo kernel non riconosce tutte le tue porte seriali,
        probabilmente avrai bisogno di configurare un kernel FreeBSD
        adattato al tuo sistema.  Per informazioni dettagliate sulla
        configurazione del kernel, vedi pi&ugrave; avanti <xref
        linkend="kernelconfig">.</para>

      <para>Le linee rilevanti per i dispositivi nella tua configurazione
        del kernel dovrebbero apparire cos&igrave;, con FreeBSD&nbsp;4.X:</para>

      <programlisting>device            sio0    at isa? port IO_COM1 irq 4
device          sio1    at isa? port IO_COM2 irq 3
device          sio2    at isa? port IO_COM3 irq 5
device          sio3    at isa? port IO_COM4 irq 9</programlisting>


      <para>e cos&igrave;, con FreeBSD&nbsp;5.X:</para>

      <programlisting>device            sio</programlisting>

      <para>Puoi commentare o rimuovere completamente le linee per i
        dispositivi che non hai nel caso di FreeBSD&nbsp;4.X; per
        FreeBSD&nbsp;5.X devi modificare il file
        <filename>/boot/device.hints</filename> per configurare le porte
        seriali.  Guarda la pagina man di &man.sio.4;
        per informazioni aggiuntive sulla configurazione delle porte seriali e
        delle schede multiporta.
        Stai attento se stai usando un file di configurazione
        gi&agrave; usato per una versione differente di FreeBSD, poich&eacute;
        i flag dei dispositivi e la sintassi sono cambiati tra una versione e
        l'altra.</para>

      <note>
        <para><literal>port IO_COM1</literal> &egrave; una sostituzione per
          <literal>port 0x3f8</literal>, <literal>IO_COM2</literal> &egrave;
          <literal>0x2f8</literal>, <literal>IO_COM3</literal> &egrave;
          <literal>0x3e8</literal>, e <literal>IO_COM4</literal> &egrave;
          <literal>0x2e8</literal>, che sono indirizzi comuni per le rispettive
          porte seriali; gli interrupt 4, 3, 5, e 9 sono linee di richiesta di
          interrupt piuttosto comuni.  Da notare anche che le normali porte
          seriali <emphasis>non possono</emphasis> condividere degli interrupt
          sui bus ISA dei PC (le schede multiporta hanno dell'elettronica
          integrata che permette a tutte le 16550A sulla scheda di condividere
          uno o due linee di richiesta dell'interrupt).</para>
      </note>
    </sect2>

    <sect2>
      <title>File Speciali di Dispositivo</title>

      <para>Alla maggior parte dei dispositivi nel kernel si accede attraverso
        <quote>file speciali di dispositivo</quote>, che si trovano
        nella directory <filename>/dev</filename>.  Ai dispositivi
        <devicename>sio</devicename> si accede attraverso i
        <filename>/dev/ttyd<replaceable>N</replaceable></filename>
        (ingresso) e <filename>/dev/cuaa<replaceable>N</replaceable></filename>
        (uscita).  FreeBSD fornisce anche dei dispositivi di inizializzazione
        (<filename>/dev/ttyid<replaceable>N</replaceable></filename> e
        <filename>/dev/cuaia<replaceable>N</replaceable></filename>) e dei
        dispositivi di blocco
        (<filename>/dev/ttyld<replaceable>N</replaceable></filename> e
        <filename>/dev/cuala<replaceable>N</replaceable></filename>).  I
        dispositivi di inizializzazione vengono usati per inizializzare
        i parametri delle porte di comunicazione ogni volta che una porta
        viene aperta, come <literal>crtscts</literal> per i modem che usano
        le segnalazioni <literal>RTS/CTS</literal> per il controllo di flusso.
        I dispositivi di blocco vengono usati per fissare i flag sulle porte
        ed evitare che altri utenti o programmi cambino certi parametri;
        guarda le pagine man di &man.termios.4;, &man.sio.4;, e &man.stty.1;
        per maggiori informazioni sulle impostazioni dei terminali, sui
        dispositivi di blocco ed inizializzazione, e sull'impostazione delle
        opzioni del terminale, rispettivamente.</para>

      <sect3>
        <title>Creazione dei File Speciali di Dispositivo</title>

        <note>
          <para>FreeBSD&nbsp;5.0 include il file system &man.devfs.5;
            che crea automaticamente nodi per i dispositivi necessari.
            Se stai usando una versione di FreeBSD con il
            <literal>devfs</literal> abilitato puoi saltare tranquillamente
            questa sezione.</para>
        </note>

        <para>Uno script di shell di nome <command>MAKEDEV</command> nella
          directory <filename>/dev</filename> gestisce i file di dispositivo.
          Per usare <command>MAKEDEV</command> nella creazione del
          file di dispositivo per <devicename>COM1</devicename> (porta 0),
          fai <command>cd</command> su <filename>/dev</filename> e dai il
          comando <command>MAKEDEV ttyd0</command>.  Allo stesso modo, per
          creare il file di dispositivo per <devicename>COM2</devicename>
          (porta 1), usa <command>MAKEDEV ttyd1</command>.</para>

        <para><command>MAKEDEV</command> non crea solo i file speciali
          <filename>/dev/ttyd<replaceable>N</replaceable></filename>,
          ma anche i nodi
          <filename>/dev/cuaa<replaceable>N</replaceable></filename>,
          <filename>/dev/cuaia<replaceable>N</replaceable></filename>,
          <filename>/dev/cuala<replaceable>N</replaceable></filename>,
          <filename>/dev/ttyld<replaceable>N</replaceable></filename>, e
          <filename>/dev/ttyid<replaceable>N</replaceable></filename>.</para>

        <para>Dopo aver creato i nuovi file di dispositivo, fa attenzione nel
          controllare i permessi sui file (specialmente sui file
          <filename>/dev/cua*</filename>) per assicurarti che solo gli
          utenti che dovrebbero effettivamente avere accesso a questi
          dispositivi possano leggerli e
          scriverli &mdash; magari non vorrai permettere al tuo utente medio
          di usare il tuo modem per chiamare verso l'esterno.  I permessi
          predefiniti su
          <filename>/dev/cua*</filename> dovrebbero essere adatti:</para>

        <screen>crw-rw----    1 uucp     dialer    28, 129 Feb 15 14:38 /dev/cuaa1
crw-rw----    1 uucp     dialer    28, 161 Feb 15 14:38 /dev/cuaia1
crw-rw----    1 uucp     dialer    28, 193 Feb 15 14:38 /dev/cuala1</screen>

        <para>Questi permessi permettono all'utente <username>uucp</username> e
          agli utenti nel gruppo <username>dialer</username> di usare i
          dispositivi di uscita.</para>
      </sect3>
    </sect2>

    <sect2 id="serial-hw-config">
      <title>Configurazione della Porta Seriale</title>

    <indexterm><primary><devicename>ttyd</devicename></primary></indexterm>
    <indexterm><primary><devicename>cuaa</devicename></primary></indexterm>

    <para>Il dispositivo
      <devicename>ttyd<replaceable>N</replaceable></devicename> (o
      <devicename>cuaa<replaceable>N</replaceable></devicename>) &egrave; il
      normale dispositivo che si apre per le proprie applicazioni.
      Quando un processo apre il dispositivo, avr&agrave; un insieme di
      impostazioni di I/O predefinite per il terminale.
      Puoi visualizzare queste impostazioni con il comando:</para>

    <screen>&prompt.root; <userinput>stty -a -f /dev/ttyd1</userinput></screen>

    <para>Quando cambi le impostazioni per questo dispositivo, queste rimangono
      efficaci finch&eacute; il dispositivo non viene chiuso.  Quando viene
      riaperto, ritorna all'insieme di default.  Per effettuare dei cambiamenti
      all'insieme predefinito, modifica le impostazioni per il dispositivo di
      <quote>stato iniziale</quote>.  Ad esempio,
      per attivare di default modalit&agrave; <option>CLOCAL</option>,
      comunicazione a 8 bit, e controllo di flusso <option>XON/XOFF</option> per
      <devicename>ttyd5</devicename>, scrivi:</para>

    <screen>&prompt.root; <userinput>stty -f /dev/ttyid5 clocal cs8 ixon ixoff</userinput></screen>

    <indexterm>
      <primary>file rc</primary>
      <secondary><filename>rc.serial</filename></secondary>
    </indexterm>

    <para>Le inizializzazioni di sistema per i dispositivi seriali sono
      controllate in <filename>/etc/rc.serial</filename>.  Questo file
      influisce sui valori predefiniti dei dispositivi seriali.</para>

    <para>Per evitare cambiamenti da parte di qualche applicazione,
      modifica il dispositivo di <quote>blocco dello stato</quote>.
      Ad esempio, per bloccare la velocit&agrave; di
      <devicename>ttyd5</devicename> a 57600&nbsp;bps, scrivi:</para>

    <screen>&prompt.root; <userinput>stty -f /dev/ttyld5 57600</userinput></screen>

    <para>Ora, un applicazione che apra <devicename>ttyd5</devicename> e cerchi
      di cambiare la velocit&agrave; della porta rester&agrave; bloccata a
      57600&nbsp;bps.</para>

    <indexterm><primary><command>MAKEDEV</command></primary></indexterm>

    <para>Naturalmente, dovresti rendere i dispositivi di stato iniziale e stato
      di blocco scrivibili solo da <username>root</username>.</para>
    </sect2>
  </sect1>

  <sect1 id="term">
    <sect1info>
      <authorgroup>
        <author>
          <firstname>Sean</firstname>

          <surname>Kelly</surname>

          <contrib>Contributo di </contrib>
        </author>
      </authorgroup>
    </sect1info>

    <title>Terminali</title>

    <indexterm><primary>terminali</primary></indexterm>

    <para>I terminali forniscono un sistema di accesso conveniente ed a basso
      costo al tuo sistema FreeBSD quando non sei davanti alla console del
      computer o connesso ad una rete.  Questa sezione descrive l'uso dei
      terminali con FreeBSD.</para>

    <sect2 id="term-uses">
      <title>Uso e Tipi di Terminali</title>

      <para>I sistemi &unix; originali non avevano console.  Invece, la gente
        effettuava il login ed avviava programmi attraverso terminali connessi
        alle porte seriali del computer.  Ci&ograve; era abbastanza simile
        all'uso di modem e programmi terminale per collegarsi telefonicamente
        ad un sistema remoto e lavorare da riga di comando.</para>

      <para>I PC di oggi hanno console capaci di grafica di alta qualit&agrave;,
        ma l'abilit&agrave; di stabilire una sessione di login su una porta
        seriale esiste ancora in quasi ogni sistema operativo in stile &unix; di
        oggi; FreeBSD non fa eccezione.
        Usando un terminale attaccato ad una porta seriale inutilizzata, puoi
        effettuare il login ed eseguire qualsiasi programma testuale che
        potresti lanciare normalmente dalla console o da una finestra
        <command>xterm</command> in X Window.</para>

      <para>Un utente aziendale pu&ograve; connettere molti terminali ad un
        sistema FreeBSD e porli sulle scrivanie dei propri impiegati.  Un utente
        casalingo pu&ograve; usare qualcosa come un vecchio PC IBM o un
        &macintosh; come terminale connesso a un computer pi&ugrave; potente che
        faccia girare FreeBSD.
        Puoi anche trasformare quello che sarebbe un computer singolo utente in
        un potente sistema per utenti multipli.</para>

      <para>Per FreeBSD, esistono tre tipi di terminali:</para>

      <itemizedlist>
        <listitem>
          <para><link linkend="term-dumb">terminali <quote>stupidi</quote></link></para>
        </listitem>

        <listitem>
          <para><link linkend="term-pcs">PC che interpretano
            terminali</link></para>
        </listitem>

        <listitem>
          <para><link linkend="term-x">terminali X</link></para>
        </listitem>
      </itemizedlist>

      <para>Le sottosezioni rimanenti descrivono ognuno di questi tipi.</para>

      <sect3 id="term-dumb">
        <title>Terminali <quote>Stupidi</quote></title>

        <para>Questi terminali sono oggetti hardware specializzati che
          permettono di connettere dei computer tramite linee seriali.
          Essi vengono detti <quote>stupidi</quote> poich&eacute; hanno solo la
          potenza di calcolo necessaria per mostrare, inviare, e ricevere testo.
          Non potete eseguire nessun programma su di essi.
          &Egrave; il computer al quale vi collegate che ha la potenza
          per eseguire editor di testo, compilatori, email, giochi, e
          cos&igrave; via.</para>

        <para>Ci sono centinaia di tipi di terminali di questo tipo, venduti
          da molti produttori, incluso il VT-100 della Digital Equipment
          Corporation e il WY-75 della Wyse.  Quasi tutti funzioneranno con
          FreeBSD.  Alcuni terminali di alto livello possono anche mostrare
          della grafica, ma solo alcuni
          pacchetti software possono avvalersi di queste caratteristiche.</para>

        <para>I terminali stupidi sono popolari negli ambienti di lavoro nei
          quali i lavoratori non hanno bisogno di accedere ad applicazioni
          grafiche come quelle fornite dal sistema X Window.</para>
      </sect3>

      <sect3 id="term-pcs">
        <title>PC che Emulano Terminali</title>

        <para>Se un <link linkend="term-dumb">terminale stupido</link> ha appena
          le capacit&agrave; per mostrare, inviare, e ricevere testo, allora di
          certo un qualunque personal computer pu&ograve; funzionare come un
          terminale stupido.
          Tutto ci&ograve; di cui hai bisogno &egrave; il cavo appropriato ed un
          qualche programma per l'<emphasis>emulazione di terminale</emphasis>
          sul tuo computer.</para>

        <para>Una simile configurazione &egrave; comune in molte case.  Ad
          esempio, se il tuo
          coniuge sta lavorando alla console del sistema FreeBSD, tu puoi fare
          del lavoro testuale allo stesso momento da un PC meno potente
          connesso come terminale al sistema FreeBSD.</para>
      </sect3>

      <sect3 id="term-x">
        <title>Terminali X</title>

        <para>I terminali X sono i terminali pi&ugrave; sofisticati tra quelli
          disponibili.  Invece di collegarsi alla porta seriale, in genere
          ci si collega ad essi tramite un rete come Ethernet.  Invece di essere
          relegati alle applicazioni testuali, essi possono mostrare
          applicazioni X.</para>

        <para>Introduciamo i terminali X solo per una questione di completezza.
          Ad ogni modo, questo capitolo <emphasis>non</emphasis> affronta in
          modo completo l'installazione, la configurazione, o l'uso dei
          terminali X.</para>
      </sect3>
    </sect2>

    <sect2 id="term-config">
      <title>Configurazione</title>

      <para>Questa sezione descrive quello che hai bisogno di configurare sul
        tuo sistema FreeBSD per abilitare una sessione di login via terminale.
        Si assume che tu abbia gi&agrave; configurato il kernel con il supporto
        per la porta seriale alla quale &egrave; connesso il terminale &mdash;
        e che questo sia gi&agrave; connesso.</para>

      <para>Dovresti ricordare dal <xref linkend="boot"> che il processo
        <command>init</command> &egrave; responsabile del controllo di tutti i
        processi e dell'inizializzazione del sistema all'avvio.  Uno dei compiti
        svolti da <command>init</command> &egrave; la lettura del file
        <filename>/etc/ttys</filename> e l'avvio di un processo
        <command>getty</command> sui terminali disponibili.
        Il processo <command>getty</command> &egrave; responsabile della lettura
        di un nome di login e dell'avvio del programma
        <command>login</command>.</para>

      <para>Dunque, per configurare i terminali per il tuo sistema FreeBSD
        devono essere effettuati come <username>root</username> i seguenti
        passi:</para>

      <procedure>
        <step>
          <para>Aggiungi una linea a <filename>/etc/ttys</filename> relativa al
            file in <filename>/dev</filename> per la porta seriale, se non
            &egrave; gi&agrave; presente.</para>
        </step>

        <step>
          <para>Specifica che <command>/usr/libexec/getty</command> deve essere
            eseguito sulla porta, e specifica il tipo appropriato di
            <replaceable>getty</replaceable> dal file
            <filename>/etc/gettytab</filename>.</para>
        </step>

        <step>
          <para>Specifica il tipo di terminale predefinito.</para>
        </step>

        <step>
          <para>Imposta la porta su <quote>on</quote>.</para>
        </step>

        <step>
          <para>Specifica se la porta deve essere
            <quote>sicura</quote>.</para>
        </step>

        <step>
          <para>Forza <command>init</command> alla rilettura del file
            <filename>/etc/ttys</filename>.</para>
        </step>
      </procedure>

      <para>Come passo opzionale, potresti desiderare di creare un tipo di
        <replaceable>getty</replaceable> personale da usare nel secondo passo
        aggiungendo una linea in <filename>/etc/gettytab</filename>.  Questo
        capitolo non spiega come fare ci&ograve;; sei incoraggiato a leggere le
        pagine man di &man.gettytab.5; e &man.getty.8; per maggiori
        informazioni.</para>

      <sect3 id="term-etcttys">
        <title>Aggiunta di un Elemento in <filename>/etc/ttys</filename></title>

        <para>Il file <filename>/etc/ttys</filename> elenca tutte le porte
          del tuo sistema FreeBSD dalle quali vuoi permettere un login.
          Ad esempio, la prima console virtuale <filename>ttyv0</filename>
          &egrave; elencata in questo file.  Si pu&ograve; accedere al sistema
          dalla console grazie a questa voce.  Questo file contiene anche delle
          voci per altre console virtuali, porte seriali, e pseudo-tty.  Per un
          terminale connesso fisicamente, basta copiare l'elenco delle porte
          seriali in <filename>/dev</filename>
          senza la parte <filename>/dev</filename> (ad esempio,
          <filename>/dev/ttyv0</filename> verr&agrave; scritta come
          <devicename>ttyv0</devicename>).</para>

        <para>Un'installazione predefinita di FreeBSD include un file
          <filename>/etc/ttys</filename> con supporto per le prime
          quattro porte seriali: da <filename>ttyd0</filename> a
          <filename>ttyd3</filename>.  Se vuoi collegare un terminale
          a una di queste porte, non hai bisogno di aggiungere un'altra
          voce.</para>

        <example id="ex-etc-ttys">
          <title>Aggiunta di Voci per Altri Terminali a
            <filename>/etc/ttys</filename></title>

          <para>Supponiamo che si vogliano collegare due terminali ad un
            sistema: un Wyse-50 ed un vecchio PC IBM 286 con
            <application>Procomm</application> come programma di emulazione di
            terminale VT-100.  Colleghiamo il Wyse alla seconda porta seriale
            ed il 286 alla sesta (una porta su scheda seriale multiporta).
            Le voci corrispondenti nel file <filename>/etc/ttys</filename>
            apparirebbero cos&igrave;:</para>

          <programlisting>ttyd1<co
              id="co-ttys-line1col1">  "/usr/libexec/getty std.38400"<co
              id="co-ttys-line1col2">  wy50<co
              id="co-ttys-line1col3">  on<co
              id="co-ttys-line1col4">  insecure<co
              id="co-ttys-line1col5">
ttyd5   "/usr/libexec/getty std.19200"  vt100  on  insecure</programlisting>

          <calloutlist>
            <callout arearefs="co-ttys-line1col1">
              <para>Il primo campo in genere specifica il nome del file
              speciale per il terminale, come si trova in
              <filename>/dev</filename>.</para>
            </callout>

            <callout arearefs="co-ttys-line1col2">
              <para>Il secondo campo &egrave; il comando da eseguire per questa
                linea, generalmente &man.getty.8;.
                <command>getty</command> inizializza ed apre la linea,
                imposta la velocit&agrave;, richiede all'utente un nome di login
                e poi esegue il programma &man.login.1;.</para>

              <para>Il programma <command>getty</command> accetta un parametro
                (opzionale) da riga di comando, il tipo di
                <replaceable>getty</replaceable>.  Un tipo di
                <replaceable>getty</replaceable> configura le caratteristiche
                della linea del terminale, come la frequenza di bit per secondo
                e la parit&agrave;.  Il programma <command>getty</command> legge
                questa caratteristiche dal file
                <filename>/etc/gettytab</filename>.</para>

              <para>Il file <filename>/etc/gettytab</filename>
                contiene molte voci per le linee di terminale sia vecchie che
                nuove. In quasi tutti i casi, le voci che cominciano per
                <literal>std</literal> funzioneranno con i terminali connessi
                fisicamente. Queste voci ignorano la parit&agrave;.
                C'&egrave; una voce <literal>std</literal> per ogni frequenza di
                bps da 110 a 115200.  Naturalmente, puoi aggiungere le tue
                voci a questo file.  La pagina man di &man.gettytab.5;
                fornisce maggiori informazioni.</para>

              <para>Nell'impostare il tipo di <replaceable>getty</replaceable>
                nel file <filename>/etc/ttys</filename>, assicurati
                che le impostazioni di comunicazione sul terminale
                corrispondano.</para>

              <para>Nel nostro esempio, il Wyse-50 non usa parit&agrave; e si
                connette a 38400&nbsp;bps.  Il PC&nbsp;286 non usa parit&agrave;
                e si connette a 19200&nbsp;bps.</para>
            </callout>

            <callout arearefs="co-ttys-line1col3">
              <para>Il terzo campo &egrave; il tipo di terminale generalmente
                collegato alla linea tty.  Per le porte dial-up, viene usato
                tipicamente <literal>unknown</literal> o
                <literal>dialup</literal> poich&eacute; gli utenti possono
                collegarsi con praticamente qualunque tipo di terminale o
                programma.
                Per i terminali connessi direttamente, il tipo di terminale
                non cambia, quindi puoi mettere un vero tipo di terminale
                preso dal file database di &man.termcap.5; in questo
                campo.</para>

              <para>Per il nostro esempio, il Wyse-50 usa il tipo
                per il vero terminale mentre il PC 286 con
                <application>Procomm</application> in esecuzione
                verr&agrave; impostato per emulare un VT-100.</para>
            </callout>

            <callout arearefs="co-ttys-line1col4">
              <para>Il quarto campo specifica se la porta deve essere abilitata.
                Scrivere <literal>on</literal> qui far&agrave; s&igrave; che il
                processo <command>init</command> avvii il programma nel secondo
                campo, <command>getty</command>.  Se metti
                <literal>off</literal> in questo campo, non ci sar&agrave;
                nessun <command>getty</command>, e dunque nessun login sulla
                porta.</para>
            </callout>

            <callout arearefs="co-ttys-line1col5">
              <para>Il campo finale &egrave; usato per specificare se la porta
                &egrave; sicura.
                Segnare una porta come sicura significa
                confidare nel fatto che non ci sia rischio nel permettere
                all'account di <username>root</username> (o ad un altro con
                user ID uguale a 0) di effettuare il login da quella porta.
                Porte insicure non permettono il login a
                <username>root</username>.
                Su una porta insicura, gli utenti devono effettuare
                un login con accesso non privilegiato, e poi usare &man.su.1; o
                un meccanismo simile per ottenere privilegi superiori.</para>

              <para>&Egrave; fortemente consigliato l'uso di
                <quote>insecure</quote> anche per i terminali che si trovano
                dietro porte chiuse a chiave.
                &Egrave; abbastanza semplice effettuare il login e usare
                <command>su</command> se si ha bisogno di privilegi da
                superutente.</para>
            </callout>
          </calloutlist>
        </example>
      </sect3>

      <sect3 id="term-hup">
        <title>Come Forzare <command>init</command> a Rileggere
          <filename>/etc/ttys</filename></title>

        <para>Dopo aver effettuato i cambiamenti necessari al file
          <filename>/etc/ttys</filename> si deve mandare un segnale SIGHUP
          (hangup) al processo <command>init</command> affinch&eacute; sia
          costretto a rileggere il suo file di configurazione.
          Ad esempio:</para>

        <screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen>

        <note>
          <para><command>init</command> &egrave; sempre il primo processo
            eseguito su un sistema dunque avr&agrave; sempre PID 1.</para>
        </note>

        <para>Se tutto &egrave; stato impostato correttamente, tutti i cavi sono
          collegati, ed i terminali sono accesi, allora un processo
          <command>getty</command> dovrebbe essere in esecuzione su ogni
          terminale e a questo punto dovresti vedere dei prompt per il login sui
          tuoi terminali.</para>
      </sect3>
    </sect2>

    <sect2 id="term-debug">
      <title>Risoluzione dei Problemi di Connessione</title>

      <para>Anche con la pi&ugrave; meticolosa attenzione ai dettagli, qualcosa
        potrebbe comunque andare storto nell'impostazione di un terminale.
        Questa &egrave; una lista dei sintomi e di alcuni suggerimenti per
        risolverli.</para>

      <sect3>
        <title>Non Appare Nessun Prompt per il Login</title>

        <para>Assicurati che il terminale sia connesso e acceso.
          Se &egrave; un personal computer che funziona da terminale,
          assicurati che il programma di emulazione di terminale sia attivo
          sulla porta seriale giusta.</para>

        <para>Assicurati che il cavo sia ben connesso sia al terminale che
          al computer FreeBSD.  Assicurati che sia il giusto tipo di
          cavo.</para>

        <para>Assicurati che il terminale e FreeBSD siano concordi sul
          valore di bps e sulle impostazioni di parit&agrave;.  Se hai un
          terminale con un display video, assicurati
          che il contrasto e la luminosit&agrave; siano giusti.  Se &egrave;
          un terminale di stampa, assicurati che ci siano carta e inchiostro
          sufficienti.</para>

        <para>Assicurati che il processo <command>getty</command> sia attivo
          per quel terminale.  Ad esempio, per avere una lista dei processi
          <command>getty</command> con <command>ps</command>, scrivi:</para>

        <screen>&prompt.root; <userinput>ps -axww | grep getty</userinput></screen>

        <para>dovresti vedere una voce per il terminale.  Ad esempio,
          la schermata seguente mostra che
          <command>getty</command> &egrave; in esecuzione sulla seconda
          porta seriale <literal>ttyd1</literal> e sta usando la voce
          <literal>std.38400</literal> in
          <filename>/etc/gettytab</filename>:</para>

        <screen>22189  d1  Is+    0:00.03 /usr/libexec/getty std.38400 ttyd1</screen>

        <para>Se non c'&egrave; nessun processo <command>getty</command> in
          esecuzione, assicurati di aver abilitato la porta in
          <filename>/etc/ttys</filename>.
          Ricordati anche di eseguire <command>kill -HUP 1</command>
          dopo aver modificato il file <filename>ttys</filename>.</para>

        <para>Se il processo <command>getty</command> &egrave; attivo ma
          il terminale non mostra ancora un prompt di login,
          o se mostra un prompt ma non ti permette di digitare nulla,
          il tuo terminale o il tuo cavo potrebbero non supportare la
          transazione hardware.  Prova a cambiare il valore in
          <filename>/etc/ttys</filename> da <literal>std.38400</literal> a
          <literal>3wire.38400</literal> (e ricordati di dare un
          <command>kill -HUP 1</command> dopo aver modificato
          <filename>/etc/ttys</filename>).
          La voce <literal>3wire</literal> &egrave; simile a
          <literal>std</literal>, ma ignora l'handshake hardware.
          Potresti aver bisogno di ridurre i baud o
          di abilitare un controllo di flusso software usando
          <literal>3wire</literal> per evitare dei buffer
          overflow.</para>
      </sect3>

      <sect3>
        <title>Compaiono Caratteri Strani Invece di un Prompt di Login</title>

        <para>Assicurati che il terminale e FreeBSD siano concordi sui bps
          e sulle impostazioni di parit&agrave;.  Verifica i processi
          <command>getty</command> per assicurarti che sia in funzione il
          tipo corretto di <replaceable>getty</replaceable>.
          Se non &egrave; cos&igrave;,
          modifica <filename>/etc/ttys</filename> ed esegui <command>kill
            -HUP 1</command>.</para>
      </sect3>

      <sect3>
        <title>I Caratteri Appaiono Duplicati; la Password Viene Visualizzata
          Quando la Scrivo</title>

        <para>Cambia l'impostazione del terminale (o del programma di
          emulazione) da <quote>half duplex</quote> o
          <quote>local echo</quote> a <quote>full duplex</quote>.</para>
      </sect3>
    </sect2>
  </sect1>

  <sect1 id="dialup">
    <sect1info>
      <authorgroup>
        <author>
          <firstname>Guy</firstname>

          <surname>Helmer</surname>

          <contrib>Contributo di </contrib>
        </author>
      </authorgroup>

      <authorgroup>
        <author>
          <firstname>Sean</firstname>

          <surname>Kelly</surname>

          <contrib>Aggiunte di </contrib>
        </author>
      </authorgroup>
    </sect1info>

    <title>Servizio di Ricezione Chiamate</title>

    <indexterm><primary>servizio di ricezione chiamate</primary></indexterm>

    <para>La configurazione del sistema FreeBSD per il servizio di ricezione
      chiamate &egrave; molto simile alla connessione di terminali tranne per il
      fatto che si ha a che fare con dei modem invece che con dei
      terminali.</para>

    <sect2>
      <title>Modem Esterni contro Modem Interni</title>

      <para>I modem esterni sembrerebbero migliori per chiamare,
        poich&eacute; i modem esterni spesso possono essere configurati in
        maniera semipermanente tramite dei parametri immagazzinati in RAM non
        volatile e generalmente forniscono degli indicatori luminosi che
        mostrano lo stato degli importanti segnali RS-232.  Le lucine
        lampeggianti impressionano gli ospiti, ma sono anche molto
        utili per vedere se un modem sta funzionando in maniera
        appropriata.</para>

      <para>I modem interni in genere mancano della RAM non-volatile, quindi
        la loro configurazione pu&ograve; essere limitata solo impostando i DIP
        switch.  Se il tuo modem interno ha delle luci indicatrici di
        segnale, probabilmente &egrave; difficile vederle quando il case del
        sistema &egrave; al suo posto.</para>

      <sect3>
        <title>Modem e Cavi</title>

        <indexterm><primary>modem</primary></indexterm>

        <para>Se stai usando un modem esterno, allora avrai bisogno
          del cavo appropriato.  Un cavo seriale standard RS-232C
          dovrebbe essere sufficiente, posto che tutti i normali segnali siano
          connessi:</para>

        <itemizedlist>
          <listitem>
            <para>Sent Data (<acronym>TD</acronym>)</para>
          </listitem>

          <listitem>
            <para>Received Data (<acronym>RD</acronym>)</para>
          </listitem>

          <listitem>
            <para>Request to Send (<acronym>RTS</acronym>)</para>
          </listitem>

          <listitem>
            <para>Clear to Send (<acronym>CTS</acronym>)</para>
          </listitem>

          <listitem>
            <para>Data Set Ready (<acronym>DSR</acronym>)</para>
          </listitem>

          <listitem>
            <para>Data Terminal Ready (<acronym>DTR</acronym>)</para>
          </listitem>

          <listitem>
            <para>Carrier Detect (<acronym>CD</acronym>)</para>
          </listitem>

          <listitem>
            <para>Signal Ground (<acronym>SG</acronym>)</para>
          </listitem>
        </itemizedlist>

        <para>FreeBSD necessita dei segnali <acronym>RTS</acronym> e
          <acronym>CTS</acronym> per il controllo di flusso a velocit&agrave;
          superiori a 2400&nbsp;bps, del segnale <acronym>CD</acronym> per
          identificare quando c'&egrave; stata una risposta alla chiamata o
          quando una linea &egrave; stata scollegata, e del
          segnale <acronym>DTR</acronym> per dare il reset al modem dopo che una
          sessione &egrave; terminata.  Alcuni cavi sono connessi senza alcuni
          dei segnali necessari, dunque se hai dei problemi, come una sessione
          di login che non scompare quando la linea &egrave; sconnessa, potresti
          avere un problema col cavo.</para>

        <para>Come altri sistemi operativi &unix;, FreeBSD usa i segnali
          hardware per scoprire quando una chiamata &egrave; stata accettata
          o quando una linea &egrave; stata scollegata e per scollegare e
          resettare il modem dopo una chiamata.
          FreeBSD evita di mandare comandi al modem
          o di leggere i valori riportati dal modem.  Se hai familiarit&agrave;
          con la connessione dei modem a BBS di PC, questo potrebbe sembrarti
          scomodo.</para>
      </sect3>
    </sect2>

    <sect2>
      <title>Considerazioni sull'Interfaccia Seriale</title>

      <para>FreeBSD supporta interfacce di comunicazione EIA RS-232C
        (CCITT V.24) basate su NS8250, NS16450, NS16550, e NS16550A.
        I dispositivi 8250 e 16450 hanno buffer di un singolo carattere.
        Il dispositivo 16550 fornisce un buffer di 16 caratteri, che permette
        prestazioni del sistema migliori.  (Dei bug nel normale 16550
        impediscono l'uso del buffer di 16 caratteri, quindi usate 16550A se
        possibile).
        A causa del buffer a singolo carattere questi dispositivi richiedono
        un lavoro maggiore da parte del sistema operativo rispetto ai
        dispositivi a 16 caratteri di buffer, le schede d'interfaccia seriale
        basate su 16550A sono preferibili.  Se il sistema ha molte porte
        seriali attive o dovr&agrave; sopportare un grosso carico, le schede
        basate su 16550A sono migliori per comunicazioni a basso tasso
        d'errore.</para>
    </sect2>

    <sect2>
      <title>Breve Panoramica</title>

      <indexterm><primary>getty</primary></indexterm>

      <para>Come con i terminali, <command>init</command> lancia un processo
        <command>getty</command> per ogni porta seriale configurata
        per connessioni in ingresso.  Ad esempio, se un modem &egrave; connesso
        a <filename>/dev/ttyd0</filename>, il comando
        <command>ps ax</command> mostrer&agrave; questo:</para>

      <screen> 4850 ??  I      0:00.09 /usr/libexec/getty V19200 ttyd0</screen>

      <para>Quando un utente chiama la linea del modem e questo si collega, il
        modem riporter&agrave; la linea <acronym>CD</acronym> (Carrier Detect).
        Il kernel nota che la portante &egrave; stata rilevata e completa
        l'apertura della porta con <command>getty</command>.
        <command>getty</command> invia un prompt <prompt>login:</prompt> alla
        velocit&agrave; iniziale di linea specificata.
        <command>getty</command> aspetta per verificare che vengano ricevuti
        caratteri legittimi, e, in una tipica configurazione, se trova dei
        caratteri strani (probabilmente perch&eacute; la velocit&agrave; del
        modem &egrave; differente da quella di
        <command>getty</command>), <command>getty</command> cerca
        di calibrare la velocit&agrave; di linea fino a ricevere dei caratteri
        ragionevoli.</para>

      <indexterm>
        <primary><command>/usr/bin/login</command></primary>
      </indexterm>

      <para>Dopo che l'utente ha inserito il suo nome di login,
        <command>getty</command> esegue
        <filename>/usr/bin/login</filename>, che completa il login
        richiedendo la password per l'utente ed avviandone la shell.</para>
    </sect2>

    <sect2>
      <title>File di Configurazione</title>

      <para>Ci sono tre file di configurazione di sistema nella directory
        <filename>/etc</filename> che avrai probabilmente bisogno di modificare
        per permettere chiamate in ingresso sul tuo sistema FreeBSD.  Il primo,
        <filename>/etc/gettytab</filename>, contiene le informazioni di
        configurazione per il demone <filename>/usr/libexec/getty</filename>.
        Il secondo, <filename>/etc/ttys</filename> contiene le informazioni che
        dicono a <filename>/sbin/init</filename> quali dispositivi
        <filename>tty</filename> devono avere processi <command>getty</command>
        in esecuzione.
        Infine, si possono mettere comandi di inizializzazione nello script
        <filename>/etc/rc.serial</filename>.</para>

      <para>Ci sono due scuole di pensiero riguardo i modem su &unix;.
        Un gruppo preferisce configurare i propri modem in maniera che
        qualunque sia la velocit&agrave; con la quale un utente remoto si
        collega, l'interfaccia locale RS-232 computer-modem funzioni ad una
        velocit&agrave; fissa.
        Il beneficio di questa configurazione &egrave; che l'utente
        remoto vede sempre un prompt di login immediato.
        Il lato negativo &egrave; che il sistema non sa quale sia la vera
        velocit&agrave; di trasmissione
        dati di un utente, quindi programmi a tutto schermo come Emacs
        non modificheranno i loro metodi di rappresentazione dello schermo per
        ottimizzare la risposta su connessioni lente.</para>

      <para>L'altra scuola di pensiero configura le proprie interfacce RS-232
        verso il modem per variare la propria velocit&agrave; rispetto a quella
        di connessione dell'utente remoto.
        Ad esempio, le connessioni V.32bis (14.4&nbsp;Kbps) faranno s&igrave;
        che il modem faccia funzionare la propria interfaccia RS-232 a
        19.2&nbsp;Kbps, mentre le connessioni a 2400&nbsp;bps faranno s&igrave;
        che funzioni a 2400&nbsp;bps.
        Poich&eacute; <command>getty</command> non comprende nessun valore
        restituito dal modem riguardo la velocit&agrave; di connessione,
        <command>getty</command> dar&agrave; un messaggio
        <prompt>login:</prompt> ad una velocit&agrave; iniziale fissata e
        aspetter&agrave; i caratteri in risposta.  Se l'utente vede caratteri
        strani, si assume che sappia che dovr&agrave; premere
        <keycode>Invio</keycode> finch&eacute; non vedr&agrave; un prompt
        riconoscibile.  Se le frequenze di trasmissione non concordano,
        <command>getty</command> vedr&agrave; tutto ci&ograve; che l'utente
        preme come <quote>spazzatura</quote>, cercher&agrave; di passare alla
        velocit&agrave; seguente e invier&agrave;
        il prompt <prompt>login:</prompt> di nuovo.  Questa procedura
        potrebbe continuare ad nauseam, ma normalmente ci vogliono solo una o
        due pressioni sui tasti prima che l'utente veda un buon prompt.
        Ovviamente, questa
        sequenza di login non &egrave; pulita come la precedente a
        <quote>velocit&agrave; fissata</quote>, ma un utente su una
        connessione a bassa velocit&agrave; dovrebbe ricevere una risposta
        interattiva migliore da programmi a tutto schermo.</para>

      <para>Questa sezione cercher&agrave; di fornire informazioni di
        configurazione bilanciate, ma &egrave; indirizzata verso l'approccio di
        avere la frequenza di trasmissione del modem
        che segue la velocit&agrave; della connessione.</para>

      <sect3>
        <title><filename>/etc/gettytab</filename></title>

        <indexterm>
          <primary><filename>/etc/gettytab</filename></primary>
        </indexterm>

        <para><filename>/etc/gettytab</filename> &egrave; un file di
          configurazione sul modello di &man.termcap.5; per &man.getty.8;.
          Si prega di vedere la pagina man di &man.gettytab.5; per le
          informazioni complete sul formato del file
          e la lista delle sue possibilit&agrave;.</para>

        <sect4>
          <title>Configurazione a Velocit&agrave; Fissa</title>

          <para>Se stai fissando la frequenza di comunicazione del modem  ad
            una velocit&agrave; particolare, probabilmente non avrai bisogno di
            effettuare nessun cambiamento a
            <filename>/etc/gettytab</filename>.</para>
        </sect4>

        <sect4>
          <title>Configurazione a Velocit&agrave; Concordata</title>

          <para>C'&egrave; bisogno di impostare una voce in
            <filename>/etc/gettytab</filename> per dare a
            <command>getty</command> le informazioni sulla velocit&agrave; che
            si vuole usare per il modem.  Se si possiede un modem a
            2400&nbsp;bps, probabilmente &egrave; possibile usare
            la voce <literal>D2400</literal> gi&agrave; esistente.</para>

          <programlisting>#
# Terminali chiamanti veloci, a rotazione 2400/1200/300
# (pu&ograve; impostarsi in tutti i modi)
#
D2400|d2400|Fast-Dial-2400:\
        :nx=D1200:tc=2400-baud:
3|D1200|Fast-Dial-1200:\
        :nx=D300:tc=1200-baud:
5|D300|Fast-Dial-300:\
        :nx=D2400:tc=300-baud:</programlisting>

          <para>Se si possiede un modem con velocit&agrave; maggiore,
            probabilmente sar&agrave; necessario
            aggiungere una voce in <filename>/etc/gettytab</filename>; qui
            c'&egrave; un esempio per modem a 14.4&nbsp;Kbps modem con una
            velocit&agrave; massima d'interfaccia di 19.2&nbsp;Kbps:</para>

          <programlisting>#
# Aggiunte per un modem V.32bis
#
um|V300|High Speed Modem at 300,8-bit:\
        :nx=V19200:tc=std.300:
un|V1200|High Speed Modem at 1200,8-bit:\
        :nx=V300:tc=std.1200:
uo|V2400|High Speed Modem at 2400,8-bit:\
        :nx=V1200:tc=std.2400:
up|V9600|High Speed Modem at 9600,8-bit:\
        :nx=V2400:tc=std.9600:
uq|V19200|High Speed Modem at 19200,8-bit:\
        :nx=V9600:tc=std.19200:</programlisting>

          <para>Questo risulter&agrave; in una connessione a 8-bit, senza
            parit&agrave;.</para>

          <para>L'esempio precedente avvia la comunicazione a 19.2&nbsp;Kbps
            (per una connessione V.32bis), poi cicla tra 9600&nbsp;bps (per
            V.32), 2400&nbsp;bps, 1200&nbsp;bps, 300&nbsp;bps, e poi ancora a
            19.2&nbsp;Kbps.
            Il ciclo sulle frequenze di comunicazione &egrave; implementato con
            <literal>nx=</literal> (<quote>next table</quote>).
            Ogni linea usa una voce <literal>tc=</literal> (<quote>table
            continuation</quote>) per continuare a leggere le impostazioni
            <quote>standard</quote> per una frequenza particolare.</para>

          <para>Se hai un modem a 28.8&nbsp;Kbps e/o vuoi avvantaggiarti della
            compressione su un modem a 14.4&nbsp;Kbps, hai bisogno di usare una
            frequenza di comunicazione pi&ugrave; alta di 19.2&nbsp;Kbps.  Qui
            c'&egrave; un esempio di voce per <filename>gettytab</filename> che
            imposta la velocit&agrave; a 57.6&nbsp;Kbps:</para>

          <programlisting>#
# Aggiunte per modem  V.32bis o V.34 Modem
# Impostazione a 57.6 Kbps
#
vm|VH300|Very High Speed Modem at 300,8-bit:\
        :nx=VH57600:tc=std.300:
vn|VH1200|Very High Speed Modem at 1200,8-bit:\
        :nx=VH300:tc=std.1200:
vo|VH2400|Very High Speed Modem at 2400,8-bit:\
        :nx=VH1200:tc=std.2400:
vp|VH9600|Very High Speed Modem at 9600,8-bit:\
        :nx=VH2400:tc=std.9600:
vq|VH57600|Very High Speed Modem at 57600,8-bit:\
        :nx=VH9600:tc=std.57600:</programlisting>

          <para>Se hai una CPU lenta o un carico di sistema pesante e non hai
            porte seriale 16550A, potresti ricevere errori
            <errorname>sio</errorname> <quote>silo</quote> a
            57.6&nbsp;Kbps.</para>
        </sect4>
      </sect3>

      <sect3 id="dialup-ttys">
        <title><filename>/etc/ttys</filename></title>

        <indexterm><primary><filename>/etc/ttys</filename></primary></indexterm>

        <para>La configurazione del file <filename>/etc/ttys</filename>
          &egrave; stata affrontata nella <xref linkend="ex-etc-ttys">.
          La configurazione dei modem &egrave; simile ma dobbiamo passare
          un argomento differente a <command>getty</command> e specificare un
          tipo di terminale differente.  Il formato generale per la
          configurazione sia a velocit&agrave; fissata che per quella
          concordata &egrave;:</para>

        <programlisting>ttyd0   "/usr/libexec/getty <replaceable>xxx</replaceable>"   dialup on</programlisting>

        <para>Il primo elemento nella linea precedente &egrave; il file di
          dispositivo per questa voce &mdash; <literal>ttyd0</literal> significa
          che <filename>/dev/ttyd0</filename> &egrave; il file che verr&agrave;
          tenuto d'occhio da <command>getty</command>.  Il secondo elemento,
          <literal>"/usr/libexec/getty <replaceable>xxx</replaceable>"</literal>
          (<replaceable>xxx</replaceable> verr&agrave; rimpiazzato dalla
          capacit&agrave; iniziale di <filename>gettytab</filename>) &egrave;
          il processo che  <command>init</command> eseguir&agrave; sul
          dispositivo.  Il terzo elemento, <literal>dialup</literal>, &egrave;
          il tipo predefinito di terminale.  Il quarto parametro,
          <literal>on</literal>, indica a <command>init</command> che quella
          linea &egrave; operativa.  Potrebbe esserci un quinto parametro,
          <literal>secure</literal>, ma dovrebbe essere usato solo per i
          terminali che siano fisicamente sicuri (come la console di
          sistema).</para>

        <para>Il tipo di terminale predefinito (<literal>dialup</literal>
          nell'esempio precedente) potrebbe dipendere dalle preferenze locali.
          <literal>dialup</literal> &egrave; il terminale tradizionale
          predefinito sulle linee di ingresso in maniera che gli utenti possano
          personalizzare i loro script di login per notare quando il terminale
          &egrave; <literal>dialup</literal> e modificare
          automaticamente il loro tipo di terminale.  Ad ogni modo, l'autore
          ritiene pi&ugrave; semplice specificare <literal>vt102</literal> come
          tipo di terminale predefinito, poich&eacute; l'utente pu&ograve; usare
          semplicemente un'emulazione VT102 sul suo sistema remoto.</para>

        <para>Dopo aver effettuato i cambiamenti a
          <filename>/etc/ttys</filename>, puoi inviare un segnale
          <acronym>HUP</acronym> a <command>init</command> per fargli
          rileggere il file.  Puoi usare il comando
          <screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen>
          per inviare il segnale.  Se questa &egrave; la prima volta che cambi
          le impostazioni del sistema, puoi aspettare finch&eacute; il modem non
          sia configurato in maniera appropriata e connesso, prima di inviare il
          segnale a <command>init</command>.</para>

        <sect4>
          <title>Configurazione a Velocit&agrave; Fissa</title>

          <para>Per una configurazione a velocit&agrave; fissa, la voce
            in <filename>ttys</filename> ha bisogno di una voce che gestisca la
            velocit&agrave; fissa anche per <command>getty</command>.
            Per un modem la cui velocit&agrave; sulla porta
            sia bloccata a 19.2&nbsp;Kbps, la voce in <filename>ttys</filename>
            potrebbe essere cos&igrave;:</para>

          <programlisting>ttyd0   "/usr/libexec/getty std.19200"   dialup on</programlisting>

          <para>Se il tuo modem &egrave; bloccato su una frequenza di
            trasmissione differente, sostituisci il valore appropriato per
            <literal>std.<replaceable>velocit&agrave;</replaceable></literal>
            al posto di <literal>std.19200</literal>.  Assicurati di usare
            un tipo valido elencato in
            <filename>/etc/gettytab</filename>.</para>
        </sect4>

        <sect4>
          <title>Configurazione a Velocit&agrave; Concordata</title>

          <para>In una configurazione a velocit&agrave; concordata, la voce in
            <filename>ttys</filename> deve fare riferimento alla voce
            iniziale <quote>auto-baud</quote> (sic) in
            <filename>/etc/gettytab</filename>.  Ad esempio, se hai aggiunto la
            riga suggerita precedentemente per un modem con velocit&agrave;
            variabile che inizi a 19.2 Kbps (la riga in
            <filename>gettytab</filename> contenente
            il punto d'avvio <literal>V19200</literal>), la riga in
            <filename>ttys</filename> potrebbe essere questa:</para>

          <programlisting>ttyd0   "/usr/libexec/getty V19200"   dialup on</programlisting>
        </sect4>
      </sect3>

      <sect3>
        <title><filename>/etc/rc.serial</filename></title>

        <indexterm>
          <primary>file rc</primary>
          <secondary><filename>rc.serial</filename></secondary>
        </indexterm>

        <para>I modem ad alta velocit&agrave;, come i V.32, i V.32bis, e i V.34,
          necessitano di un controllo di flusso hardware
          (<filename>RTS/CTS</filename>).
          Puoi aggiungere dei comandi <command>stty</command> al file
          <filename>/etc/rc.serial</filename> per impostare i
          flag di controllo di flusso nel kernel FreeBSD per le porte del
          modem.</para>

        <para>Ad esempio per impostare il flag <literal>termios</literal>
          <varname>crtscts</varname> sui dispositivi di inizializzazione
          di ingresso e uscita della porta seriale numero 1
          (<devicename>COM2</devicename>), si possono aggiungere le
          seguenti linee a <filename>/etc/rc.serial</filename>:</para>

        <programlisting># Configurazione iniziale della porta seriale
stty -f /dev/ttyid1 crtscts
stty -f /dev/cuaia1 crtscts</programlisting>
      </sect3>
    </sect2>

    <sect2>
      <title>Impostazioni del Modem</title>

      <para>Se hai uno di quei modem i cui parametri possono essere impostati in
        maniera permanente in RAM non volatile, avrai bisogno di usare un
        programma terminale (come Telix su &ms-dos; o <command>tip</command>
        sotto FreeBSD) per impostare i parametri.  Collegati al modem usando le
        stesse velocit&agrave; iniziali e di comunicazione
        che userebbe <command>getty</command> e configura la RAM non volatile
        secondo queste necessit&agrave;:</para>

      <itemizedlist>
        <listitem>
          <para><acronym>CD</acronym> attivo per la connessione</para>
        </listitem>

        <listitem>
          <para><acronym>DTR</acronym> attivo per l'operazione; l'assenza del
            DTR porta allo scollegamento della linea e al reset del modem</para>
        </listitem>

        <listitem>
          <para><acronym>CTS</acronym> controllo di flusso dei dati
            trasmessi</para>
        </listitem>

        <listitem>
          <para>Disabilita il controllo di flusso
            <acronym>XON/XOFF</acronym></para>
        </listitem>

        <listitem>
          <para><acronym>RTS</acronym> controllo di flusso dei dati
            ricevuti</para>
        </listitem>

        <listitem>
          <para>Modalit&agrave; silenziosa (nessun codice di risposta)</para>
        </listitem>

        <listitem>
          <para>Nessun echo dei comandi</para>
        </listitem>
      </itemizedlist>

      <para>Leggi la documentazione del tuo modem per capire quali
        comandi e/o impostazioni per i DIP switch sia necessario
        fornirgli.</para>

      <para>Ad esempio, per impostare i parametri precedenti su un &usrobotics;
        &sportster; 14.400 esterno, si potrebbero dare questi comandi
        al modem:</para>

      <programlisting>ATZ
AT&amp;C1&amp;D2&amp;H1&amp;I0&amp;R2&amp;W</programlisting>

      <para>Potresti anche sfruttare questa opportunit&agrave; per raffinare
        le impostazioni del modem, ad esempio per decidere se dovr&agrave; usare
        V.42bis e/o la compressione MNP5.</para>

      <para>Il modem esterno &usrobotics; &sportster; 14.400 ha anche dei DIP
        switch che devono essere impostati; per altri modem, forse potrai usare
        queste impostazioni come esempio:</para>

      <itemizedlist>
        <listitem>
          <para>Switch 1: SU &mdash; DTR Normale</para>
        </listitem>

        <listitem>
          <para>Switch 2: N/D (Codici di Risposta Verbali/Codici di Risposta
            Numerici</para>
        </listitem>

        <listitem>
          <para>Switch 3: SU &mdash; Sopprime i Codici di Risposta</para>
        </listitem>

        <listitem>
          <para>Switch 4: GI&Ugrave; &mdash; Nessun echo, comandi offline </para>
        </listitem>

        <listitem>
          <para>Switch 5: SU &mdash; Auto risposta</para>
        </listitem>

        <listitem>
          <para>Switch 6: SU &mdash; Carrier Detect Normale</para>
        </listitem>

        <listitem>
          <para>Switch 7: SU &mdash; Carica i valori predefiniti
            dall'NVRAM</para>
        </listitem>

        <listitem>
          <para>Switch 8: N/D (Modalit&agrave; intelligente/modalit&agrave;
            stupida)</para>
        </listitem>
      </itemizedlist>

      <para>I codici di risposta dovrebbero essere disabilitati/soppressi per i
        modem chiamanti per evitare i problemi che possono capitare
        se <command>getty</command> d&agrave; incidentalmente un prompt
        <prompt>login:</prompt> ad un modem che si trova in modalit&agrave;
        di comando ed il modem restituisce l'eco del comando o un codice di
        risposta.  Questa sequenza pu&ograve; portare ad una lunga, stupida
        conversazione tra <command>getty</command> ed il modem.</para>

      <sect3>
        <title>Configurazione a Velocit&agrave; Fissa</title>

        <para>Per una configurazione a velocit&agrave; fissa, avrai bisogno di
          configurare il modem affinch&eacute; mantenga una frequenza dati
          da modem a computer indipendente dalla frequenza di comunicazione.
          Su un modem esterno &usrobotics; &sportster; 14.400
          questi comandi bloccheranno la velocit&agrave; dati tra modem e
          computer alla velocit&agrave; con la quale i comandi sono stati
          inviati:</para>

        <programlisting>ATZ
AT&amp;B1&amp;W</programlisting>
      </sect3>

      <sect3>
        <title>Configurazione a Velocit&agrave; Concordata</title>

        <para>Per una configurazione a velocit&agrave; concordata, sar&agrave;
          necessario configurare il modem affinch&eacute; modifichi la frequenza
          dei dati della porta seriale relativamente alla velocit&agrave; di
          arrivo.  Su un modem esterno &usrobotics; &sportster; 14.400, questi
          comandi causeranno il blocco della frequenza di trasmissione dati con
          correzione d'errore del modem sulla velocit&agrave; con il quale
          &egrave; stato inviato il comando, ma permetteranno variazioni della
          velocit&agrave; della porta seriale per le connessioni senza
          correzione d'errore:</para>

        <programlisting>ATZ
AT&amp;B2&amp;W</programlisting>
      </sect3>

      <sect3>
        <title>Verifica della Configurazione del Modem</title>

        <para>La maggior parte dei modem ad alta velocit&agrave; fornisce
          comandi per verificare i parametri funzionali usati dal modem in
          maniera pi&ugrave; o meno comprensibile.
          Sui modem esterni &usrobotics; &sportster; 14.400, il comando
          <command>ATI5</command> mostra le impostazioni che sono immagazzinate
          nella RAM non volatile.  Per vedere i veri parametri operativi del
          modem (cos&igrave; come vengono influenzati dai DIP switch del modem),
          usa i comandi <command>ATZ</command> e <command>ATI4</command>.</para>

        <para>Se hai modem di marche differenti, verifica il manuale del tuo
          modem per vedere come sia possibile un ulteriore controllo sui
          parametri di configurazione del modem.</para>
      </sect3>
    </sect2>

    <sect2>
      <title>Risoluzione dei Problemi</title>

      <para>Questi sono un po' di passi che &egrave; possibile seguire per
        verificare il funzionamento del modem sul tuo sistema.</para>

      <sect3>
        <title>Verifica del Sistema FreeBSD</title>

        <para>Collega il modem al sistema FreeBSD, avvia il sistema, e,
          se il tuo modem ha luci di indicazione dello stato, guarda se la luce
          <acronym>DTR</acronym> del modem si accende quando appare il prompt
          <prompt>login:</prompt> sulla console del sistema
          &mdash; se si accende, dovrebbe significare che FreeBSD ha avviato
          un processo <command>getty</command> sulla porta di comunicazione
          appropriata e sta aspettando una chiamata dal modem.</para>

        <para>Se l'indicatore <acronym>DTR</acronym> non lampeggia, effettua il
          login sul sistema FreeBSD dalla console e dai il comando <command>ps
            ax</command> per verificare se FreeBSD sta cercando di eseguire un
          processo <command>getty</command> sulla porta corretta.  Dovresti
          vedere linee come queste tra i processi mostrati:</para>

        <screen>  114 ??  I      0:00.10 /usr/libexec/getty V19200 ttyd0
  115 ??  I      0:00.10 /usr/libexec/getty V19200 ttyd1</screen>

        <para>Se vedi qualcosa di diverso, come questo:</para>

        <screen>  114 d0  I      0:00.10 /usr/libexec/getty V19200 ttyd0</screen>

        <para>ed il modem non ha ancora accettato chiamate, ci&ograve;
          significa che <command>getty</command> ha completato l'apertura della
          porta di comunicazione.
          Questo potrebbe indicare un problema nei cavi o un modem
          mal configurato, poich&eacute; <command>getty</command> non dovrebbe
          completare l'apertura della porta fino al rilevamento del segnale
          <acronym>CD</acronym> (carrier detect).</para>

        <para>Se non vedi nessun processo <command>getty</command> in attesa
          sulla porta <filename>ttyd<replaceable>N</replaceable></filename>
          scelta, ricontrolla le voci in <filename>/etc/ttys</filename> per
          vedere se ci sono errori l&igrave;.  Inoltre, controlla il file di log
          <filename>/var/log/messages</filename> per vedere se ci sono messaggi
          di <command>init</command> o <command>getty</command>
          riguardo i loro problemi.  Se ci sono messaggi, ri-ricontrolla i file
          di configurazione <filename>/etc/ttys</filename> e
          <filename>/etc/gettytab</filename>, ed anche i file speciali di
          dispositivo <filename>/dev/ttydN</filename>, cercando ogni errore,
          voce mancante, o file di dispositivo mancante.</para>
      </sect3>

      <sect3>
        <title>Tentativo di Connessione in Ingresso</title>

        <para>Cerca di collegarti dall'esterno al sistema; assicurati di usare 8
          bit, nessuna parit&agrave;, e 1 bit di stop sul sistema remoto.  Se
          non ottieni un prompt, o vengono visualizzati caratteri strani, prova
          a premere <keycode>Invio</keycode> circa una volta per secondo.
          Se dopo un po' ancora non vedi un prompt <prompt>login:</prompt>,
          prova inviare un'<command>INTERRUZIONE</command>.  Se stai usando un
          modem ad alta velocit&agrave; per effettuare la chiamata, prova a
          richiamare dopo aver bloccato la velocit&agrave; dell'interfaccia del
          modem (tramite <command>AT&amp;B1</command> su un &usrobotics;
          &sportster;, ad esempio).</para>

        <para>Se ancora non ottieni alcun prompt <prompt>login:</prompt>,
          verifica <filename>/etc/gettytab</filename> ancora e ricontrolla
          che:</para>

        <itemizedlist>
          <listitem>
            <para>La capacit&agrave; iniziale specificata in
              <filename>/etc/ttys</filename> per quella linea corrisponda a
              quella in <filename>/etc/gettytab</filename></para>
          </listitem>

          <listitem>
            <para>Ogni campo <literal>nx=</literal> corrisponda ad un
              valore in <filename>gettytab</filename></para>
          </listitem>

          <listitem>
            <para>Ogni campo  <literal>tc=</literal> corrisponda a un altro nome
              di capacit&agrave; in <filename>gettytab</filename></para>
          </listitem>
        </itemizedlist>

        <para>Se chiami ma il modem su FreeBSD non risponde,
          assicurati che il modem sia configurato per rispondere alla chiamata
          quando viene fornito un segnale <acronym>DTR</acronym>.  Se il modem
          sembra essere configurato correttamente, verifica che la linea
          <acronym>DTR</acronym> sia attiva controllando
          gli indicatori luminosi del modem (se ne ha).</para>

        <para>Se hai gi&agrave; controllato tutto quanto pi&ugrave; volte ed
          ancora non funziona, fai una pausa e riprova in seguito.  Se ancora
          non funziona puoi provare a inviare un messaggio di posta elettronica
          alla &a.questions; descrivendo il tuo modem ed il tuo problema, e i
          bravi ragazzi della lista cercheranno di darti una mano.</para>
      </sect3>
    </sect2>
  </sect1>

  <sect1 id="dialout">
    <title>Servizio di Effettuazione Chiamate</title>

    <indexterm><primary>servizio di effettuazione chiamate</primary></indexterm>

    <para>I seguenti sono consigli per far s&igrave; che la tua macchina sia in
      grado di connettersi tramite modem ad un altro computer.  Questo &egrave;
      appropriato per stabilire una sessione terminale con un host
      remoto.</para>

    <para>Questo &egrave; utile per collegarsi ad una BBS.</para>

    <para>Questo tipo di connessione pu&ograve; essere estremamente utile per
      ottenere un file da Internet se hai problemi con il PPP.  Se hai
      bisogno di usare l'FTP ed il PPP non funziona, usa la sessione terminale
      per eseguire l'FTP.
      Poi usa zmodem per trasferire il file sulla tua macchina.</para>

    <sect2>
      <title>Il Mio Modem Hayes Stock Non &Egrave; Supportato, Cosa Posso
        Fare?</title>

      <para>Effettivamente, la pagina man di <command>tip</command>
        &egrave; un po' datata.
        C'&egrave; un compositore Hayes generico gi&agrave; integrato. Usa
        semplicemente <literal>at=hayes</literal> nel tuo
        <filename>/etc/remote</filename> file.</para>

      <para>Il driver Hayes non &egrave; abbastanza intelligente da riconoscere
        alcune delle caratteristiche avanzate dei nuovi modem&mdash;messaggi
        come <literal>BUSY</literal>, <literal>NO DIALTONE</literal>, o
        <literal>CONNECT 115200</literal> lo confonderanno e basta.  Dovrai
        disattivare questi messaggi quando usate <command>tip</command> (usando
        <command>ATX0&amp;W</command>).</para>

      <para>Inoltre, il timeout di composizione per <command>tip</command>
        &egrave; di 60 secondi.
        Il tuo modem dovrebbe usare qualcosa di meno, altrimenti tip
        penser&agrave; che ci sia un problema di comunicazione.  Prova
        <command>ATS7=45&amp;W</command>.</para>

      <note>
        <para>Come viene fornito, <command>tip</command> non supporta ancora
          i modem Hayes completamente.  La soluzione &egrave; modificare il file
          <filename>tipconf.h</filename> nella directory
          <filename>/usr/src/usr.bin/tip/tip</filename>.  Ovviamente avrai
          bisogno della distribuzione con i sorgenti per fare ci&ograve;.</para>

        <para>Modifica la linea <literal>#define HAYES 0</literal> a
          <literal>#define HAYES 1</literal>.  Poi dai i comandi
          <command>make</command> e <command>make install</command>.
          Tutto funziona bene dopo aver fatto questo.</para>
      </note>
    </sect2>

    <sect2 id="direct-at">
      <title>Come Dovrei Inserire Questi Comandi AT?</title>

      <indexterm><primary><filename>/etc/remote</filename></primary></indexterm>

      <para>Inserisci quella che viene definita una voce <quote>diretta</quote>
        nel file <filename>/etc/remote</filename>.  Ad esempio, se il tuo modem
        &egrave; collegato alla prima porta seriale,
        <filename>/dev/cuaa0</filename>, allora inserisci la riga
        seguente:</para>

      <programlisting>cuaa0:dv=/dev/cuaa0:br#19200:pa=none</programlisting>

      <para>Usa la frequenza di bps pi&ugrave; alta supportata dal tuo modem per
        il valore di br.  Poi, digita <command>tip cuaa0</command> e verrai
        connesso al tuo modem.</para>

      <para>Se non c'&egrave; nessuna <filename>/dev/cuaa0</filename> sul tuo
        sistema, fai questo:</para>

      <screen>&prompt.root; <userinput>cd /dev</userinput> &prompt.root; <userinput>sh MAKEDEV cuaa0</userinput></screen>

      <para>O usa <command>cu</command> come <username>root</username> con il
        seguente comando:</para>

      <screen>&prompt.root; <userinput>cu -l<replaceable>linea</replaceable> -s <replaceable>velocit&agrave;</replaceable></userinput></screen>

      <para><replaceable>linea</replaceable> &egrave; la porta seriale
        (es. <filename>/dev/cuaa0</filename>) e
        <replaceable>velocit&agrave;</replaceable> &egrave; la velocit&agrave;
        (es. <literal>57600</literal>).  Quando hai finito di inserire i comandi
        AT premi <keycap>~.</keycap> per uscire.</para>
    </sect2>

    <sect2>
      <title>Il Simbolo <literal>@</literal> per il Valore pn Non
        Funziona!</title>

      <para>Il simbolo <literal>@</literal> come valore del numero telefonico
        dice a tip di andare a cercare un numero telefonico in
        <filename>/etc/phones</filename>.
        Ma il segno <literal>@</literal> &egrave; anche un carattere speciale
        nei file come <filename>/etc/remote</filename>.  Devi farne l'escape con
        un backslash:</para>

      <programlisting>pn=\@</programlisting>
    </sect2>

    <sect2>
      <title>Come Posso Chiamare Un Numero Telefonico Da Riga di
        Comando?</title>

      <para>Metti una cosiddetta voce <quote>generica</quote> in
        <filename>/etc/remote</filename>.  Ad Esempio:</para>

      <programlisting>tip115200|Chiama un qualunque numero a 115200 bps:\
        :dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
tip57600|Chiama un qualunque numero a 57600 bps:\
        :dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:</programlisting>

      <para>Poi puoi fare una cosa simile:</para>

      <screen>&prompt.root; <userinput>tip -115200 5551234</userinput></screen>

      <para>Se preferisci <command>cu</command> a <command>tip</command>,
        usa una voce generica per <literal>cu</literal>:</para>

      <programlisting>cu115200|Usa cu per chiamare un numero qualsiasi a 115200bps:\
        :dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:</programlisting>

      <para>e digita:</para>

      <screen>&prompt.root; <userinput>cu 5551234 -s 115200</userinput></screen>
    </sect2>

    <sect2>
      <title>Devo Digitare La Frequenza di bps Ogni Volta Che lo Faccio?</title>

      <para>Metti una voce per <literal>tip1200</literal> o
        <literal>cu1200</literal>, ma vai avanti e inserisci una qualunque
        frequenza di bps appropriata per il valore di br.
        <command>tip</command> pensa che un buon valore predefinito sia
        1200&nbsp;bps, motivo per cui cerca una voce per
        <literal>tip1200</literal>.
        Non sei obbligato a usare 1200&nbsp;bps, comunque.</para>
    </sect2>

    <sect2>
      <title>Accedo ad un Grande Numero di Host attraverso un Server di
        Terminali</title>

      <para>Invece di aspettare fino ad essere connesso e poi digitare
        <command>CONNECT &lt;host&gt;</command> ogni volta, usa la
        funzionalit&agrave; <literal>cm</literal> di tip.  Ad esempio, queste
        voci in <filename>/etc/remote</filename>:</para>

      <programlisting>pain|pain.deep13.com|La macchina di Forrester:\
        :cm=CONNECT pain\n:tc=deep13:
muffin|muffin.deep13.com|La macchina di Frank:\
        :cm=CONNECT muffin\n:tc=deep13:
deep13:Server di terminali del Gizmonics Institute:\
        :dv=/dev/cuaa2:br#38400:at=hayes:du:pa=none:pn=5551234:</programlisting>

      <para>ti permetteranno di digitare <command>tip pain</command> o
        <command>tip muffin</command> per collegarti agli host pain o muffin, e
        <command>tip deep13</command> per il server di terminali.</para>
    </sect2>

    <sect2>
      <title>Tip Pu&ograve; Provare Pi&ugrave; di una Linea per ogni
        Sito?</title>

      <para>Questo &egrave; spesso un problema quando una universit&agrave; ha
        molte linee di modem e molte migliaia di studenti cercano di
        usarle.</para>

      <para>Inserisci una voce per la tua universit&agrave; in
        <filename>/etc/remote</filename> e usa <literal>@</literal> per il
        campo <literal>pn</literal>:</para>

      <programlisting>big-university:\
        :pn=\@:tc=dialout
dialout:\
        :dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:</programlisting>

      <para>Poi, elenca i numeri di telefono dell'universit&agrave; in
        <filename>/etc/phones</filename>:</para>

      <programlisting>big-university 5551111
big-university 5551112
big-university 5551113
big-university 5551114</programlisting>

      <para><command>tip</command> prover&agrave; ognuno di questi secondo
        l'ordine, poi smetter&agrave;.  Se vuoi continuare a riprovare, esegui
        <command>tip</command> in un ciclo while.</para>
    </sect2>

    <sect2>
      <title>Perch&eacute; Devo Premere <keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>P</keycap>
        </keycombo> Due Volte per Inviare Un Solo <keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>P</keycap>
        </keycombo>?</title>

      <para><keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>P</keycap>
        </keycombo> &egrave; il carattere predefinito per
        <quote>forzare</quote>, usato per dire a <command>tip</command> che il
        prossimo carattere &egrave; un dato letterale.  Puoi impostare il
        carattere per forzare a qualsiasi altro carattere con il comando di
        escape <command>~s</command>, che significa <quote>imposta una
          variabile</quote>.</para>

      <para>Digita
        <command>~sforce=<replaceable>singolo-carattere</replaceable></command>
        seguito da un ritorno a capo.
        <replaceable>singolo-carattere</replaceable> &egrave; un
        qualsiasi carattere singolo.  Se non date nessun
        <replaceable>singolo-carattere</replaceable>, allora il carattere per
        forzare sar&agrave; il carattere nullo, che &egrave; possibile ottenere
        premendo <keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>2</keycap>
        </keycombo> o <keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>Spazio</keycap>
        </keycombo>.
        Un valore abbastanza buono per il
        <replaceable>singolo-carattere</replaceable> &egrave;
        <keycombo action="simul">
          <keycap>Shift</keycap>
          <keycap>Ctrl</keycap>
          <keycap>6</keycap>
        </keycombo>, che &egrave; usato solo da alcuni server di
        terminali.</para>

      <para>Potete far s&igrave; che il carattere per forzare sia un qualsiasi
        carattere vogliate specificando la riga seguente nel file
        <filename>&#36;HOME/.tiprc</filename>:</para>

      <programlisting>force=&lt;singolo-carattere&gt;</programlisting>
    </sect2>

    <sect2>
      <title>Improvvisamente Tutto Quello che Digito &Egrave; in
      Maiuscolo??</title>

      <para>Devi aver premuto <keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>A</keycap>
        </keycombo>, il <quote>raise character</quote>, di
        <command>tip</command> progettato specificamente per le persone con il
        tasto caps-lock rotto.  Usa <command>~s</command> come mostrato prima
        per impostare la variabile <literal>raisechar</literal> a qualcosa di
        ragionevole.  In pratica, puoi impostarla allo stesso valore del
        carattere per forzare, se pensi di non usare mai queste due
        caratteristiche.</para>

      <para>Qui c'&egrave; un file .tiprc di esempio per gli utenti
        <application>Emacs</application> che hanno bisogno di premere
        <keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>2</keycap>
        </keycombo> e <keycombo action="simul">
          <keycap>Ctrl</keycap>
          <keycap>A</keycap>
        </keycombo> molto spesso:</para>

      <programlisting>force=^^
raisechar=^^</programlisting>

      <para>Il carattere ^^ &egrave;
        <keycombo action="simul">
          <keycap>Shift</keycap>
          <keycap>Ctrl</keycap>
          <keycap>6</keycap>
        </keycombo>.</para>
    </sect2>

    <sect2>
      <title>Come Posso Trasferire File con <command>tip</command>?</title>

      <para>Se stai parlando ad altri sistemi &unix;, puoi mandare e ricevere
        file con <command>~p</command> (put) e
        <command>~t</command> (take).  Questi comandi eseguono
        <command>cat</command> ed <command>echo</command> sul sistema remoto
        per accettare e inviare file.  La sintassi &egrave;:</para>

      <cmdsynopsis>
        <command>~p</command>
        <arg choice="plain">file-locale</arg>
        <arg choice="opt">file-remoto</arg>
      </cmdsynopsis>

      <cmdsynopsis>
        <command>~t</command>
        <arg choice="plain">file-remoto</arg>
        <arg choice="opt">file-locale</arg>
      </cmdsynopsis>

      <para>non c'&egrave; controllo d'errore, quindi probabilmente dovresti
        usare un altro protocollo, come zmodem.</para>
    </sect2>

    <sect2>
      <title>Come Posso Eseguire zmodem con <command>tip</command>?</title>

      <para>Per ricevere file, avvia il programma di invio sul lato remoto.
        Poi, digita <command>~C rz</command> per iniziare a ricevere in
        locale.</para>

      <para>Per inviare file, avvia il programma di ricezione sul lato remoto.
        Poi, digita <command>~C sz <replaceable>files</replaceable></command>
        per inviarli sul sistema remoto.</para>
    </sect2>
  </sect1>

  <sect1 id="serialconsole-setup">
    <sect1info>
      <authorgroup>
        <author>
          <firstname>Kazutaka</firstname>

          <surname>YOKOTA</surname>

          <contrib>Contributo di </contrib>
        </author>
      </authorgroup>

      <authorgroup>
        <author>
          <firstname>Bill</firstname>

          <surname>Paul</surname>

          <contrib>Basato su un documento di </contrib>
        </author>
      </authorgroup>
    </sect1info>

    <title>Impostazione della Console Seriale</title>

    <indexterm><primary>console seriale</primary></indexterm>

    <sect2 id="serialconsole-intro">
      <title>Introduzione</title>

      <para>FreeBSD ha la capacit&agrave; di avviare un sistema con soltanto un
        terminale stupido su porta seriale come console.  Una configurazione
        simile dovrebbe essere utile per due tipi di persone:  amministratori di
        sistema che desiderano installare FreeBSD su macchine che non hanno
        tastiera o monitor connesso, e sviluppatori che vogliono effettuare il
        debug del kernel o dei driver.</para>

      <para>Come descritto nel <xref linkend="boot">, FreeBSD implementa un
        avviamento composto da tre stadi.  I primi due stadi sono
        nel blocco di avvio che viene immagazzinato all'inizio
        della slice di FreeBSD sul disco d'avvio.  Il blocco di avvio
        poi carica ed avvia il loader (<filename>/boot/loader</filename>)
        come terzo stadio.</para>

      <para>Per poter impostare la console seriale devi configurare il codice
        del blocco di avvio, il codice del loader ed il kernel.</para>
    </sect2>

    <sect2 id="serialconsole-howto-fast">
      <title>Configurazione della Console Seriale, Versione Essenziale</title>

      <para>Questa sezione presuppone che stai usando una configurazione
        di default, conosci come connettere le porte seriali e vuoi solamente
        una veloce panoramica su come abilitare una console seriale.  Se
        incontri difficolt&agrave; in questa procedura, consulta una spiegazione
        pi&ugrave; esaustiva di tutte le opzioni e delle configurazioni avanzate
        nella sezione <xref linkend="serialconsole-howto">.</para>

      <procedure>
        <step>
          <para>Connetti la porta seriale.  La console seriale sar&agrave; sulla
            <devicename>COM1</devicename>.</para>
        </step>

        <step>
          <para>Esegui <command>echo -h &gt; /boot.config</command> per
            abilitare la console seriale per il kernel e per il boot
            loader.</para>
        </step>

        <step>
          <para>Modifica il file <filename>/etc/ttys</filename> e cambia
            <literal>off</literal> in <literal>on</literal> per l'entry
            <literal>ttyd0</literal>.  Questo abilita il prompt di login
            sulla console seriale, che rispecchia la tipica configurazione delle
            console video.</para>
        </step>

        <step>
          <para><command>shutdown -r now</command> riavvier&agrave; il sistema
            con la console seriale abilitata.</para>
        </step>
      </procedure>
    </sect2>

    <sect2 id="serialconsole-howto">
      <title>Configurazione della Console Seriale</title>

      <procedure>
        <step>
          <para>Preparazione di un cavo seriale.</para>

          <indexterm><primary>cavo null-modem</primary></indexterm>

          <para>Avrai bisogno di un cavo null-modem o di un cavo seriale
            standard ed un adattatore null-modem.  Guarda
            <xref linkend="serial-cables-ports"> per una discussione
            sui cavi seriali.</para>
        </step>

        <step>
          <para>Scollegamento della tastiera.</para>

          <para>La maggior parte dei sistemi PC verifica la presenza di una
            tastiera durante il Power-On Self-Test (POST) e d&agrave; un errore
            se la tastiera non viene rilevata.  Alcune macchine si lamentano
            parecchio per la mancanza della tastiera e non proseguono l'avvio
            finch&eacute; non viene collegata.</para>

          <para>Se il tuo computer si lamenta per questo errore,
            ma si avvia lo stesso, allora non devi fare nulla di speciale.
            (Alcune macchine con BIOS Phoenix semplicemente dicono
            <errorname>Keyboard failed</errorname> e continuano ad avviarsi
            normalmente).</para>

          <para>Se il tuo computer rifiuta di avviarsi senza la tastiera
            allora dovrai configurare il BIOS affinch&eacute; ignori questo
            errore (se possibile).  Consulta il manuale della tua scheda madre
            per maggiori dettagli su come fare ci&ograve;.</para>

          <tip>
            <para>Impostare la tastiera su <quote>Non installata</quote> nel
              setup del BIOS <emphasis>non</emphasis> significa che non
              potrai usare la tastiera.  Tutto quel che fa &egrave; dire al BIOS
              di non verificare la presenza di una tastiera all'accensione, in
              modo che non segnali che la tastiera non &egrave; collegata.
              Puoi lasciare la tastiera collegata anche con questa opzione
              impostata a <quote>Non installata</quote> e la tastiera
              funzioner&agrave; lo stesso.</para>
          </tip>

          <note>
            <para>Se il tuo sistema ha un mouse &ps2;, le possibilit&agrave; di
              dover scollegare il mouse allo stesso modo della tastiera
              sono alte.
              Questo perch&eacute; i mouse &ps2; condividono dell'hardware
              con la tastiera e lasciando il mouse collegato potresti
              ingannare la verifica della tastiera facendogli credere
              che sia ancora presente.  Si dice che il sistema
              Gateway 2000 Pentium 90&nbsp;MHz con BIOS AMI funzioni
              cos&igrave;.
              In generale, questo non &egrave; un problema perch&eacute; il
              mouse non &egrave; comunque particolarmente utile senza la
              tastiera.</para>
          </note>
        </step>

        <step>
          <para>Collegamento di un terminale stupido alla
            <devicename>COM1</devicename>
            (<devicename>sio0</devicename>).</para>

          <para>Se non possiedi un terminale stupido, puoi usare un
            vecchio PC/XT con un programma per modem, o la porta seriale di un
            altra macchina &unix;.  Se non hai una <devicename>COM1</devicename>
            (<devicename>sio0</devicename>), trovane una.
            Attualmente, non c'&egrave; altro modo di scegliere
            una porta diversa dalla <devicename>COM1</devicename>
            per i blocco di avvio senza doverlo ricompilare.  Se stai
            gi&agrave; usando la <devicename>COM1</devicename> per un altro
            dispositivo, dovrai rimuoverlo temporaneamente ed
            installare un nuovo blocco di avvio ed un nuovo kernel
            una volta che FreeBSD sia funzionante.  (Si assume che la
            <devicename>COM1</devicename> sia sempre disponibile
            su un server di file/calcolo/terminali; se davvero hai bisogno
            della <devicename>COM1</devicename> per qualcos'altro
            (e non puoi passare quel qualcosa alla
            <devicename>COM2</devicename> (<devicename>sio1</devicename>)),
            allora probabilmente non dovresti nemmeno avere a che fare con
            tutto questo in primo luogo).</para>
        </step>

        <step>
          <para>Assicurati che il file di configurazione del tuo kernel abbia
            i parametri appropriati impostati per la
            <devicename>COM1</devicename>
            (<devicename>sio0</devicename>).</para>

          <para>I parametri rilevanti sono:</para>

          <variablelist>
            <varlistentry>
              <term><literal>0x10</literal></term>

              <listitem>
                <para>Abilita il supporto alla console per questa unit&agrave;.
                  Gli altri parametri di console sono ignorati se non &egrave;
                  fissato questo.
                  Attualmente, al massimo un'unit&agrave; pu&ograve; avere il
                  supporto alla console;  verr&agrave; preferita la prima
                  (secondo l'ordine nel file di configurazione) con questo
                  parametro.
                  Questa opzione non render&agrave; la porta seriale la
                  console.
                  Imposta il parametro seguente o usa l'opzione
                  <option>-h</option> descritta pi&ugrave; in basso, insieme a
                  questa impostazione.</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term><literal>0x20</literal></term>

              <listitem>
                <para>Forza questa unit&agrave; ad essere la console (a meno che
                  sia presente un'altra console con priorit&agrave; pi&ugrave;
                  alta), trascurando l'opzione <option>-h</option> discussa
                  precedentemente.  Questo parametro
                  rimpiazza l'opzione <literal>COMCONSOLE</literal> in FreeBSD
                  versione 2.<replaceable>X</replaceable>.  Il parametro
                  <literal>0x20</literal> deve essere usato insieme al
                  <option>0x10</option>.</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term><literal>0x40</literal></term>

              <listitem>
                <para>Riserva questa unit&agrave; (insieme a
                  <literal>0x10</literal>) e rende l'unit&agrave; indisponibile
                  per l'accesso normale.  Non dovresti impostare questo
                  parametro sull'unit&agrave; della porta seriale che desideri
                  usare come console seriale.  L'unico uso di questo parametro
                  &egrave; per designare l'unit&agrave; per il debug remoto
                  del kernel.  Guarda il <ulink
                    url="&url.books.developers-handbook;/index.html">Developer's
                    Handbook</ulink> per maggiori informazioni sul
                  debugging remoto.</para>

                <note>
                  <para>In FreeBSD&nbsp;4.0 o successivo, la semantica del
                    parametro <literal>0x40</literal> &egrave; leggermente
                    differente e c'&egrave; un altro parametro per specificare
                    una porta seriale per il debug remoto.</para>
                </note>
              </listitem>
            </varlistentry>
          </variablelist>

          <para>Esempio:</para>

          <programlisting>device sio0 at isa? port IO_COM1 flags 0x10 irq 4</programlisting>

          <para>Guarda la pagina man &man.sio.4; per maggiori dettagli.</para>

          <para>Se i parametri non sono stati impostati, sar&agrave; necessario
            eseguire UserConfig (su una console differente) o ricompilare il
            kernel.</para>
        </step>

        <step>
          <para>Creazione di <filename>boot.config</filename> nella directory
            radice della partizione <literal>a</literal> nel disco di
            avvio.</para>

          <para>Questo file istruir&agrave; il codice del blocco di avvio su
            come vuoi avviare il sistema.  Per poter attivare la console
            seriale, avrai bisogno di una o pi&ugrave; delle seguenti
            opzioni&mdash;se vuoi opzioni multiple, includile tutte sulla
            stessa linea:</para>

          <variablelist>
            <varlistentry>
              <term><option>-h</option></term>

              <listitem>
                <para>Passa dalla console interna a quella seriale.  Puoi usarla
                  per cambiare i dispositivi console.  Ad esempio, se avvii
                  dalla console interna (video), puoi usare
                  <option>-h</option> per dirigere il loader ed il kernel
                  in modo che usino la porta seriale come dispositivo per la
                  console.  Alternativamente, se avvii da porta seriale, puoi
                  usare l'opzione <option>-h</option> per dire al loader ed al
                  kernel di usare lo schermo come console.</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term><option>-D</option></term>

              <listitem>
                <para>Passa da una configurazione singola a una duplice.  Nella
                  configurazione singola la console sar&agrave; o quella interna
                  (il display video) o la porta seriale, a seconda dello
                  stato dell'opzione <option>-h</option> gi&agrave; descritta.
                  Nella configurazione duplice, sia il display video che la
                  porta seriale diventeranno la console allo stesso momento,
                  senza curarsi dello stato dell'opzione <option>-h</option>.
                  Ad ogni modo, nota che questa configurazione duplice ha
                  effetto solo durante l'esecuzione del blocco di avvio.
                  Una volta che il loader ha assunto il controllo, la console
                  specificata da <option>-h</option> diventa l'unica.</para>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term><option>-P</option></term>

              <listitem>
                <para>Fa s&igrave; che il blocco di avvio verifichi la presenza
                  della tastiera.  Se non ne viene rilevata nessuna, le opzioni
                  <option>-D</option> e <option>-h</option>
                  vengono impostate automaticamente.</para>

                <note>
                  <para>A causa delle costrizioni relative allo spazio
                    nelle versioni attuali del blocco di avvio, l'opzione
                    <option>-P</option> &egrave; in grado di riconoscere solo le
                    tastiere estese.  Le tastiere con meno di 101 tasti (e senza
                    i tasti F11 e F12) potrebbero non essere rilevate.
                    Le tastiere su alcuni computer portatili potrebbero
                    non essere rilevate a causa di questa limitazione.
                    Se questo &egrave; il caso del tuo sistema,
                    devi abbandonare l'opzione <option>-P</option>.
                    Sfortunatamente non c'&egrave; nessun metodo per aggirare
                    questo problema.</para>
                </note>
              </listitem>
            </varlistentry>
          </variablelist>

          <para>Usa l'opzione <option>-P</option> per selezionare
            la console automaticamente, o l'opzione <option>-h</option> per
            attivare la console seriale.</para>

          <para>Puoi includere altre opzioni come descritte in
            &man.boot.8;.</para>

          <para>Le opzioni, eccetto <option>-P</option>, verranno passate al
            loader (<filename>/boot/loader</filename>).  Il loader
            determiner&agrave; quale tra il video interno o la console seriale
            debba diventare la console esaminando lo stato dell'opzione
            <option>-h</option>.  Ci&ograve; significa che se specifichi
            l'opzione <option>-D</option> ma non la <option>-h</option>
            in <filename>/boot.config</filename>, puoi usare la porta seriale
            come console soltanto durante l'esecuzione del blocco di avvio; il
            loader user&agrave; il video interno come console.</para>
        </step>

        <step>
          <para>Avviamento della macchina.</para>

          <para>Quando avvii la tua macchina FreeBSD, il blocco di avvio
            scriver&agrave; il contenuto di <filename>/boot.config</filename>
            sulla console.  Ad esempio:</para>

          <screen>/boot.config: -P
Keyboard: no</screen>

          <para>La seconda linea appare solo se metti l'opzione
            <option>-P</option> in <filename>/boot.config</filename> ed indichi
            la presenza/assenza della tastiera.  Questo messaggio va alla
            console seriale o a quella interna, o a entrambe, a seconda
            dell'opzione in <filename>/boot.config</filename>.</para>

          <informaltable frame="none">
            <tgroup cols="2">
              <thead>
                <row>
                  <entry>Opzioni</entry>

                  <entry>I messaggi vanno a</entry>
                </row>
              </thead>

              <tbody>
                <row>
                  <entry>nessuna</entry>

                  <entry>console interna</entry>
                </row>

                <row>
                  <entry><option>-h</option></entry>

                  <entry>console seriale</entry>
                </row>

                <row>
                  <entry><option>-D</option></entry>

                  <entry>console seriale ed interna</entry>
                </row>

                <row>
                  <entry><option>-Dh</option></entry>

                  <entry>console seriale ed interna</entry>
                </row>

                <row>
                  <entry><option>-P</option>, tastiera presente</entry>

                  <entry>console interna</entry>
                </row>

                <row>
                  <entry><option>-P</option>, tastiera assente</entry>

                  <entry>console seriale</entry>
                </row>
              </tbody>
            </tgroup>
          </informaltable>

          <para>Dopo i messaggi precedenti, ci sar&agrave; una piccola pausa
            prima che il blocco di avvio continui nel caricamento del loader e
            prima che ulteriori messaggi vengano scritti sulla console.
            In circostanze normali, non hai necessit&agrave; di interrompere il
            blocco di avvio, ma potresti volerlo fare per verificare che tutto
            sia impostato correttamente.</para>

          <para>Premi un tasto qualsiasi, differente da
            <keycode>Invio</keycode>, alla console per interrompere il processo
            di avvio.  Il blocco di avvio aspetter&agrave; ulteriori azioni.
            Dovresti vedere qualcosa del genere:</para>

          <screen>>> FreeBSD/i386 BOOT
Default: 0:ad(0,a)/boot/loader
boot:</screen>

          <para>Verifica se il messaggio precedente appare sulla console seriale
            o su quella interna o su entrambe, secondo le opzioni poste in
            <filename>/boot.config</filename>.  Se il messaggio appare nella
            console corretta, premi <keycode>Invio</keycode> per continuare il
            processo di avvio.</para>

          <para>Se vuoi la console seriale ma non riesci a vedere il prompt sul
            terminale seriale, qualcosa &egrave; sbagliato nelle tue
            impostazioni.  Nel frattempo, scrivi <option>-h</option> e premi
            Invio (se possibile) per dire al blocco di avvio (e al loader e al
            kernel) di scegliere la porta seriale per la console.  Una volta
            che il sistema &egrave; attivo, torna indietro e verifica cosa
            &egrave; andato storto.</para>
        </step>
      </procedure>

      <para>Dopo che il loader &egrave; stato caricato e ti trovi nel terzo
        stadio del processo di avvio puoi ancora passare dalla console interna
        alla console seriale impostando le variabili d'ambiente appropriate nel
        loader.  Guarda la <xref linkend="serialconsole-loader">.</para>
    </sect2>

    <sect2 id="serialconsole-summary">
      <title>Sommario</title>

      <para>Qui c'&egrave; il sommario delle varie impostazioni discusse in
        questa sezione e la console eventualmente selezionata.</para>

      <sect3>
        <title>Caso 1: Imposti il Flag 0x10 per
          <devicename>sio0</devicename></title>

        <programlisting>device sio0 at isa? port IO_COM1 flags 0x10 irq 4</programlisting>

        <informaltable frame="none">
          <tgroup cols="4">
            <thead>
              <row>
                <entry>Opzioni in /boot.config</entry>

                <entry>Console durante i blocco di avvio</entry>

                <entry>Console durante il loader</entry>

                <entry>Console nel kernel</entry>
              </row>
            </thead>

            <tbody>
              <row>
                <entry>niente</entry>

                <entry>interna</entry>

                <entry>interna</entry>

                <entry>interna</entry>
              </row>

              <row>
                <entry><option>-h</option></entry>

                <entry>seriale</entry>

                <entry>seriale</entry>

                <entry>seriale</entry>
              </row>

              <row>
                <entry><option>-D</option></entry>

                <entry>seriale ed interna</entry>

                <entry>interna</entry>

                <entry>interna</entry>
              </row>

              <row>
                <entry><option>-Dh</option></entry>

                <entry>seriale ed interna</entry>

                <entry>seriale</entry>

                <entry>seriale</entry>
              </row>

              <row>
                <entry><option>-P</option>, tastiera presente</entry>

                <entry>interna</entry>

                <entry>interna</entry>

                <entry>interna</entry>
              </row>

              <row>
                <entry><option>-P</option>, tastiera assente</entry>

                <entry>seriale ed interna</entry>

                <entry>seriale</entry>

                <entry>seriale</entry>
              </row>
            </tbody>
          </tgroup>
        </informaltable>
      </sect3>

      <sect3>
        <title>Caso 2: Imposti il Flag 0x30 per sio0</title>

        <programlisting>device sio0 at isa? port IO_COM1 flags 0x30 irq 4</programlisting>

        <informaltable frame="none">
          <tgroup cols="4">
            <thead>
              <row>
                <entry>Opzioni in /boot.config</entry>

                <entry>Console durante i blocco di avvio</entry>

                <entry>Console durante il loader</entry>

                <entry>Console nel kernel</entry>
              </row>
            </thead>

            <tbody>
              <row>
                <entry>niente</entry>

                <entry>interna</entry>

                <entry>interna</entry>

                <entry>seriale</entry>
              </row>

              <row>
                <entry><option>-h</option></entry>

                <entry>seriale</entry>

                <entry>seriale</entry>

                <entry>seriale</entry>
              </row>

              <row>
                <entry><option>-D</option></entry>

                <entry>seriale ed interna</entry>

                <entry>interna</entry>

                <entry>seriale</entry>
              </row>

              <row>
                <entry><option>-Dh</option></entry>

                <entry>seriale ed interna</entry>

                <entry>seriale</entry>

                <entry>seriale</entry>
              </row>

              <row>
                <entry><option>-P</option>, tastiera presente</entry>

                <entry>interna</entry>

                <entry>interna</entry>

                <entry>seriale</entry>
              </row>

              <row>
                <entry><option>-P</option>, tastiera assente</entry>

                <entry>seriale ed interna</entry>

                <entry>seriale</entry>

                <entry>seriale</entry>
              </row>
            </tbody>
          </tgroup>
        </informaltable>
      </sect3>
    </sect2>

    <sect2 id="serialconsole-tips">
      <title>Consigli per una Console Seriale</title>

      <sect3>
        <title>Impostazione di una Velocit&agrave; Maggiore della Porta
          Seriale</title>

        <para>Di default, le impostazioni della porta seriale sono: 9600 baud, 8
          bit, nessuna parit&agrave;, ed 1 bit di stop.  Se desideri cambiare
          la velocit&agrave;, avrai bisogno di ricompilare almeno il blocco di
          avvio.  Aggiungi la linea seguente a
          <filename>/etc/make.conf</filename> e compila il nuovo blocco di
          avvio:</para>

        <programlisting>BOOT_COMCONSOLE_SPEED=19200</programlisting>

        <para>Guarda <xref linkend="serialconsole-com2"> per istruzioni
          dettagliate su come costruire e installare nuovi blocchi di
          avvio.</para>

        <para>Se la console seriale &egrave; configurata in qualche altra
          maniera invece di essere selezionata all'avvio con
          <option>-h</option>, o se la console seriale usata dal kernel
          &egrave; differente da quella usata dal blocco di avvio, allora
          dovrai aggiungere anche le opzioni seguenti al file di
          configurazione del kernel e compilare un nuovo kernel:</para>

        <programlisting>options CONSPEED=19200</programlisting>
      </sect3>

      <sect3 id="serialconsole-com2">
        <title>Utilizzo di una Porta Seriale Differente da
          <devicename>sio0</devicename> per la Console</title>

        <para>Usare una porta seriale differente da
          <devicename>sio0</devicename> come
          console richiede un po' di ricompilazione.  Se vuoi usare un'altra
          porta seriale per qualche motivo, ricompila il blocco di avvio, il
          loader ed il kernel come segue.</para>

        <procedure>
          <step>
            <para>Ottieni i sorgenti del kernel.  (Guarda il <xref
            linkend="cutting-edge">)</para>
          </step>

          <step>
            <para>Modifica <filename>/etc/make.conf</filename> e imposta
              <literal>BOOT_COMCONSOLE_PORT</literal> all'indirizzo della
              porta che vuoi usare (0x3F8, 0x2F8, 0x3E8 o 0x2E8).  Solo
              i dispositivi da <devicename>sio0</devicename> a
              <devicename>sio3</devicename> (<devicename>COM1</devicename>
              a <devicename>COM4</devicename>) possono essere usati; le schede
              seriali multiporta non funzioneranno.  Non sono necessarie
              impostazioni per gli interrupt.</para>
          </step>

          <step>
            <para>Crea un file di configurazione del kernel personalizzato e
              aggiungi i flag appropriati per la porta seriale che intendi
              usare.
              Ad esempio, se vuoi fare di <devicename>sio1</devicename>
              (<devicename>COM2</devicename>) la console:</para>

            <programlisting>device sio1 at isa? port IO_COM2 flags 0x10 irq 3</programlisting>

            <para>o</para>

            <programlisting>device sio1 at isa? port IO_COM2 flags 0x30 irq 3</programlisting>

            <para>I flag di console per le altre porte seriali non dovrebbero
              essere impostati.</para>
          </step>

          <step>
            <para>Ricompila ed installa il blocco di avvio ed il loader:</para>

            <screen>&prompt.root; <userinput>cd /sys/boot</userinput>
&prompt.root; <userinput>make</userinput>
&prompt.root; <userinput>make install</userinput></screen>
          </step>

          <step>
            <para>Ricompila ed installa il kernel.</para>
          </step>

          <step>
            <para>Scrivi il blocco di avvio sul disco di avvio con
              &man.disklabel.8; ed avvia con il nuovo kernel.</para>
          </step>
        </procedure>
      </sect3>

      <sect3 id="serialconsole-ddb">
        <title>Accesso al Debugger DDB dalla Linea Seriale</title>

        <para>Se desideri entrare nel debugger del kernel dalla console seriale
          (utile per diagnostiche remote, ma anche molto pericoloso se generi
          un BREAK spurio sulla porta seriale!) allora dovrai compilare
          il tuo kernel con le opzioni seguenti:</para>

        <programlisting>options BREAK_TO_DEBUGGER
options DDB</programlisting>
      </sect3>

      <sect3>
        <title>Come Ottenere un Prompt di Login sulla Console Seriale</title>

        <para>Anche se questo non &egrave; necessario, potresti desiderare un
          prompt di <emphasis>login</emphasis> sulla linea seriale, ora
          che puoi vedere i messaggi di avvio e puoi accedere a sessioni di
          debug del kernel attraverso la console seriale.
          Qui &egrave; spiegato come fare.</para>

        <para>Apri il file <filename>/etc/ttys</filename> con un editor
          e trova queste linee:</para>

      <programlisting>ttyd0 "/usr/libexec/getty std.9600" unknown off secure
ttyd1 "/usr/libexec/getty std.9600" unknown off secure
ttyd2 "/usr/libexec/getty std.9600" unknown off secure
ttyd3 "/usr/libexec/getty std.9600" unknown off secure</programlisting>

        <para>I dispositivi da <literal>ttyd0</literal> a
          <literal>ttyd3</literal>
          corrispondono a <devicename>COM1</devicename> fino a
          <devicename>COM4</devicename>.  Cambia <literal>off</literal> a
          <literal>on</literal> per la porta desiderata.  Se hai cambiato la
          velocit&agrave; della porta seriale, dovrai cambiare
          <literal>std.9600</literal> affinch&eacute; corrisponda
          all'impostazione corrente, ad es. <literal>std.19200</literal>.</para>

        <para>Potresti anche desiderare cambiare il tipo di terminale da
          <literal>unknown</literal> al tipo effettivo del tuo terminale
          seriale.</para>

        <para>Dopo avere modificato il file, devi dare un <command>kill -HUP
            1</command> affinch&eacute; i cambiamenti abbiano effetto.</para>
      </sect3>
    </sect2>

    <sect2 id="serialconsole-loader">
      <title>Cambiamento della Console dal Loader</title>

      <para>Le sezioni precedenti hanno descritto come impostare la console
        seriale lavorando sul blocco di avvio.  Questa sezione mostra come
        specificare a console inserendo alcuni comandi ed alcune variabili
        di ambiente nel loader.  Quando il loader verr&agrave; invocato al terzo
        stadio del processo di avvio, dopo il blocco di avvio, le impostazioni
        nel loader prenderanno il posto di quelle nel blocco di avvio.</para>

      <sect3>
        <title>Impostazione della Console Seriale</title>

        <para>Puoi facilmente specificare al loader ed al kernel di usare
          la console seriale scrivendo una sola riga in
          <filename>/boot/loader.rc</filename>:</para>

        <programlisting>set console=comconsole</programlisting>

        <para>Ci&ograve; sar&agrave; efficace in ogni caso, qualunque siano le
          impostazioni nel blocco di avvio discusse nella sezione
          precedente.</para>

        <para>Sarebbe meglio mettere la linea precedente come prima linea
          di <filename>/boot/loader.rc</filename> in modo da vedere
          i messaggi sulla console seriale il prima possibile.</para>

        <para>Altrimenti, puoi specificare la console interna come:</para>

        <programlisting>set console=vidconsole</programlisting>

        <para>Se non imposti la variabile di ambiente
         <envar>console</envar> del loader, quest'ultimo, e
          conseguentemente anche il kernel, useranno
          una console qualunque indicata dall'opzione
          <option>-h</option> nel blocco di avvio.</para>

        <para>Nelle versioni 3.2 o successive, &egrave; possibile specificare
          la console in
          <filename>/boot/loader.conf.local</filename> o
          <filename>/boot/loader.conf</filename>, piuttosto che in
          <filename>/boot/loader.rc</filename>.  Con questo metodo il tuo
          <filename>/boot/loader.rc</filename> dovrebbe apparire
          cos&igrave;:</para>

        <programlisting>include /boot/loader.4th
start</programlisting>

        <para>Poi, crea <filename>/boot/loader.conf.local</filename>  ed
          aggiungi l&igrave; la linea seguente.</para>

        <programlisting>console=comconsole</programlisting>

        <para>o</para>

        <programlisting>console=vidconsole</programlisting>

        <para>Guarda &man.loader.conf.5; per maggiori informazioni.</para>

        <note>
          <para>Al momento il loader non ha un'opzione equivalente alla
            <option>-P</option> del blocco di avvio, e non c'&egrave;
            possibilit&agrave; di scegliere automaticamente la console interna e
            la console seriale basandosi sulla presenza di una tastiera.</para>
        </note>
      </sect3>

      <sect3>
        <title>Utilizzo di una Porta Seriale Diversa da
          <devicename>sio0</devicename> per la Console</title>

        <para>Sar&agrave; necessario ricompilare il loader per usare una
          porta seriale differente da <devicename>sio0</devicename> per la
          console seriale.  Segui la procedura descritta nella <xref
            linkend="serialconsole-com2">.</para>
      </sect3>
    </sect2>

    <sect2 id="serialconsole-caveats">
      <title>Avvertimento</title>

      <para>L'idea di tutto questo &egrave; di permettere alla gente di mettere
        su server dedicati che non abbiano bisogno di hardware grafico o di
        tastiere.  Sfortunatamente, mentre la maggior parte dei sistemi
        ti permetteranno di avviare senza tastiera, ce ne sono alcuni che
        non ti permetteranno di partire senza un adattatore grafico.
        Le macchine con BIOS AMI possono essere configurate per partire senza
        adattatori grafici cambiando semplicemente il valore di <quote>graphics
          adapter</quote> nella configurazione CMOS a <quote>Not
          installed</quote>.</para>

      <para>Ad ogni modo, molte macchine non supportano questa opzione e si
        rifiuteranno di avviarsi se non si ha hardware grafico nel sistema.
        Con queste macchine, avrai bisogno di lasciare un qualche tipo di scheda
        grafica attaccata, (anche una scheda monocromatica di recupero) sebbene
        non avrai necessit&agrave; di collegare un monitor.
        Potresti anche tentare di installare un BIOS AMI.</para>
    </sect2>
  </sect1>
</chapter>

<!--
     Local Variables:
     mode: sgml
     sgml-declaration: "../chapter.decl"
     sgml-indent-data: t
     sgml-omittag: nil
     sgml-always-quote-attributes: t
     sgml-parent-document: ("../book.sgml" "part" "chapter")
     End:
-->