This file is indexed.

/usr/share/doc/HOWTO/fr-html/DOS-Win-to-Linux-HOWTO.html is in doc-linux-fr-html 2013.01-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

   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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for Linux (vers 25 March 2009), see www.w3.org">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.71">
<title>From DOS/Windows to Linux HOWTO</title>
</head>
<body>
<h1>From DOS/Windows to Linux HOWTO</h1>
<h2>Par Guido Gonzato, <a href=
"REMOVE_MEguido@ibogfs.cineca.it">REMOVE_MEguido@ibogfs.cineca.it</a>
(enlevez &laquo;REMOVE_ME&raquo;) ; adaptation fran&ccedil;aise :
Mark Hoebeke, <a href="mh@jouy.inra.fr">mh@jouy.inra.fr</a>.</h2>
v1.3.2, 22 F&eacute;vrier 1999
<hr>
<em>Ce HOWTO est consacr&eacute; &agrave; tous les (bient&ocirc;t
ex-?) utilisateurs de DOS et Windows qui ont d&eacute;cid&eacute;
de basculer vers Linux, le clone gratuit d'UNIX. L'objectif de ce
document est d'aider le lecteur &agrave; transposer sa connaissance
de DOS et Windows &agrave; l'environnement Linux, et
&eacute;galement de lui fournir des astuces sur la mani&egrave;re
d'&eacute;changer des fichiers et des ressources entre les deux
syst&egrave;mes d'exploitation.</em>
<hr>
<h2><a name="s1">1. Introduction</a></h2>
<h2><a name="ss1.1">1.1 Est-ce bien Linux qu'il vous faut
?</a></h2>
<p>Vous voulez basculer du monde DOS (cette d&eacute;finition
incluant Windows) vers Linux ? Bonne id&eacute;e : Linux est
techniquement sup&eacute;rieur au DOS, &agrave; Windows 9x et
m&ecirc;me &agrave; Windows NT. Mais prenez garde : cela ne vous
sera peut-&ecirc;tre pas si utile que &ccedil;a. Voici les
principales diff&eacute;rences entre DOS/Windows et Linux :</p>
<ul>
<li>Windows peut faire tourner Microsoft Office et des tas de jeux
; est consid&eacute;r&eacute; comme facile &agrave; installer et
configurer ; est notoirement instable ; est peu performant et sujet
&agrave; des plantages fr&eacute;quents.</li>
<li>Linux peut faire tourner StarOffice, un flop&eacute;e de
logiciels techniques mais moins de jeux ; peut &ecirc;tre difficile
&agrave; installer et &agrave; configurer ; est d'une
stabilit&eacute; &agrave; toute &eacute;preuve ; offre des
performances optimales et ne plante qu'extr&ecirc;mement
rarement.</li>
</ul>
<p>C'est &agrave; vous de d&eacute;cider ce dont vous avez besoin.
En outre, Linux vous donne la puissance mais n&eacute;cessite un
temps d'apprentissage pour la ma&icirc;triser. Ainsi, si vous
voulez utiliser avant tout des logiciels du commerce, ou si vous ne
vous sentez pas d'attaque pour apprendre quelques nouveaux concepts
et commandes, vous feriez mieux de regarder ailleurs. Soyez
conscient que de nombreux d&eacute;butants abandonnent &agrave;
cause des difficult&eacute;s rencontr&eacute;es au
d&eacute;marrage.</p>
<p>Des travaux sont en cours pour rendre Linux plus simple
d'utilisation, mais <em>n'esp&eacute;rez pas vous y sentir &agrave;
l'aise &agrave; moins de lire pas mal de documentation et de
l'utiliser au moins pendant quelques mois</em>. Linux ne vous
donnera pas de r&eacute;sultats imm&eacute;diats. En d&eacute;pit
de ces avertissements, je suis confiant &agrave; 100% que si vous
&ecirc;tes le bon type d'utilisateur, vous trouverez en Linux votre
Nirvana informatique. Au fait, Linux + DOS/Win peuvent coexister en
toute harmonie sur la m&ecirc;me machine.</p>
<p>Pr&eacute;requis pour ce howto : je supposerai que</p>
<ul>
<li>vous connaissez les bases des commandes et des concepts du DOS
;</li>
<li>Linux, et &eacute;ventuellement le syst&egrave;me X Window (X11
en abr&eacute;g&eacute;), sont correctement install&eacute;s sur
votre PC ;</li>
<li>votre interpr&eacute;teur de commandes (ou <i>shell</i>,
l'&eacute;quivalent de <code>COMMAND.COM</code>) est
<code>bash</code>.</li>
</ul>
<p>Sauf indication contraire, toute l'information de ce document
concerne ce vieux m&eacute;chant DOS. On trouvera des informations
&agrave; propos de Windows par-ci par-l&agrave;, mais gardez
&agrave; l'esprit que Windows et Linux sont totalement
diff&eacute;rents, contrairement au DOS qui est une esp&egrave;ce
de parent pauvre d'UNIX.</p>
<p>Veuillez &eacute;galement noter que ce document n'est ni une
introduction exhaustive ni un guide de configuration !</p>
<p>La version la plus r&eacute;cente de ce document est disponible
en diff&eacute;rents formats &agrave; l'adresse <a href=
"ftp://sunsite.unc.edu:/pub/Linux/docs/howto">ftp://sunsite.unc.edu:/pub/Linux/docs/howto</a>.</p>
<h2><a name="ss1.2">1.2 Oui, c'est bien Linux. Je veux en savoir
plus.</a></h2>
<p>Vous avez install&eacute; Linux et les programmes dont vous avez
besoin sur le PC. Vous vous &ecirc;tes cr&eacute;&eacute; un compte
utilisateur (si ce n'est pas le cas, tapez <code>adduser
votre_nom</code> <em>maintenant !</em>) et Linux est en train de
tourner. Vous venez d'entrer votre nom et votre mot de passe, et,
&agrave; pr&eacute;sent, vous regardez l'&eacute;cran en vous
demandant : &laquo;Et maintenant, que faire ?&raquo;</p>
<p>Ce n'est pas le moment de d&eacute;sesp&eacute;rer. Vous
&ecirc;tes sur le point de faire les m&ecirc;mes choses que celles
que vous aviez l'habitude de faire avec DOS/Win, et beaucoup plus.
Si vous &eacute;tiez sous DOS/Win au lieu d'&ecirc;tre sous Linux,
vous seriez en train de faire quelques-unes des t&acirc;ches
suivantes :</p>
<ul>
<li>faire tourner des programmes et cr&eacute;er, copier,
visualiser, effacer, imprimer et renommer des fichiers ;</li>
<li>faire des CD, des MD, des RD et des DIR dans vos
r&eacute;pertoires ;</li>
<li>formater des disquettes et copier des fichiers vers ou &agrave;
partir de celles-ci ;</li>
<li>personnaliser le syst&egrave;me ;</li>
<li>surfer sur l'Internet ;</li>
<li>&eacute;crire des fichiers .BAT et des programmes dans votre
langage pr&eacute;f&eacute;r&eacute; ;</li>
<li>le 1% restant.</li>
</ul>
<p>Vous serez ravi de savoir que ces t&acirc;ches peuvent
&ecirc;tre accomplies sous Linux de mani&egrave;re similaire au
DOS. Sous DOS, l'utilisateur moyen n'utilise qu'une fraction de la
bonne centaine de commandes disponibles : la m&ecirc;me chose,
jusqu'&agrave; un certain point, s'applique &agrave; Linux.</p>
<h3>Concepts introductifs</h3>
<p>La meilleure fa&ccedil;on d'apprendre quelque chose de nouveau
est de se jeter &agrave; l'eau. Il vous est chaudement
recommand&eacute; d'exp&eacute;rimenter et de jouer avec Linux :
&agrave; moins de vous connecter en tant que <code>root</code> cela
ne peut en aucun cas endommager le syst&egrave;me. Quelques points
&agrave; noter :</p>
<ul>
<li>avant tout, comment quitter Linux en toute
s&eacute;curit&eacute; ? Si vous &ecirc;tes devant un &eacute;cran
en mode texte, faites &lt;CTRL-ALT-DEL&gt;, attendez que le
syst&egrave;me commence &agrave; red&eacute;marrer ; &agrave; ce
moment-l&agrave;, &eacute;teignez le PC. Si vous travaillez sous X
Windows, tapez &lt;CTRL-ALT-BACKSPACE&gt; d'abord, puis
&lt;CTRL-ALT-DEL&gt;. Il ne faut <em>jamais</em> &eacute;teindre ou
red&eacute;marrer le PC directement : cela pourrait endommager le
syst&egrave;me de fichiers ;</li>
<li>contrairement au DOS, Linux est pourvu d'origine de
m&eacute;canismes de s&eacute;curit&eacute;. Des droits
d'acc&egrave;s sont associ&eacute;s aux fichiers et aux
r&eacute;pertoires ; par cons&eacute;quent, l'utilisateur normal ne
peut acc&eacute;der &agrave; certains d'entre eux, cf. <a href=
"#Permissions">Droits d'acc&egrave;s et
propri&eacute;t&eacute;</a>. &Agrave; l'inverse, DOS et Windows
vous permettront de rayer de la carte l'int&eacute;gralit&eacute;
du contenu de votre disque dur ;</li>
<li>il existe un utilisateur particulier appel&eacute;
&laquo;root&raquo; : c'est l'administrateur syst&egrave;me qui
dispose du pouvoir de vie et de mort sur la machine. Si vous
travaillez sur votre propre PC, c'est vous qui &ecirc;tes root.
Travailler sous root est <em>dangereux</em> : toute erreur peut
endommager s&eacute;rieusement voire d&eacute;truire le
syst&egrave;me, comme avec DOS/Win. Ne travaillez pas sous root
sauf en cas de n&eacute;cessit&eacute; absolue ;</li>
<li>une grande part de la complexit&eacute; de Linux provient du
fait qu'il est configurable &agrave; l'extr&ecirc;me : tout
param&egrave;tre et toute application peuvent virtuellement
&ecirc;tre personnalis&eacute;s gr&acirc;ce &agrave; un ou
plusieurs fichiers de configuration. Cette complexit&eacute; est le
prix &agrave; payer pour la puissance ;</li>
<li>les redirections et les <i>pipes</i> sont des capacit&eacute;s
secondaires du DOS, mais ils sont beaucoup plus importants et plus
puissants sous Linux. Des commandes simples peuvent &ecirc;tre
mises bout &agrave; bout pour accomplir des t&acirc;ches complexes.
Je vous encourage fortement &agrave; apprendre &agrave; vous en
servir.</li>
</ul>
<h3>Obtenir de l'aide.</h3>
<p>Il existe de nombreuses mani&egrave;res d'obtenir de l'aide avec
Linux. Les plus importantes sont de :</p>
<ul>
<li><em>lire la documentation</em> -- J'insiste. Bien que le HOWTO
que vous lisez en ce moment puisse servir d'introduction &agrave;
Linux, il y a plusieurs livres que vous devriez vraiment lire : le
&laquo;Linux Installation and Getting Started&raquo; par Matt Welsh
( <a href=
"http://sunsite.unc.edu/mdw/LDP/gs/gs.html">http://sunsite.unc.edu/mdw/LDP/gs/gs.html</a>),
le &laquo;Linux User Guide&raquo; de Larry Greenfield ( <a href=
"ftp://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/users-guide">
ftp://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/users-guide</a>)
, et la FAQ Linux ( <a href=
"http://sunsite.unc.edu/mdw/FAQ/Linux-FAQ.html">http://sunsite.unc.edu/mdw/FAQ/Linux-FAQ.html</a>).
Vous devriez vous sentir coupable jusqu'&agrave; ce que vous ayez
lu au moins l'un d'entre eux.</li>
<li>la documentation des paquetages install&eacute;s sur votre
machine se trouve souvent dans les sous-r&eacute;pertoires de
/usr/doc/ ;</li>
<li>pour obtenir un peu d'aide sur les &laquo;commandes
internes&raquo; du shell, tapez <code>help</code> ou mieux,
<code>man bash</code> ou <code>info bash</code> ;</li>
<li>pour avoir l'aide sur une commande, tapez <code>man
commande</code> qui invoque la page du manuel (<em>man</em>)
relative &agrave; <code>commande</code>. D'autre part, vous pouvez
taper <code>info commande</code> qui invoque la page d'informations
(<i>info</i>) traitant de <code>commande</code>. Info est un
syst&egrave;me de documentation &agrave; base d'hypertexte, dont
l'utilisation n'est peut-&ecirc;tre pas intuitive au d&eacute;but.
Enfin, vous pouvez essayer <code>apropos commande</code> ou
<code>whatis commande</code>. Pour toutes ces commandes, tapez
&laquo;q&raquo; pour quitter.</li>
<li>enfin, sur l'Internet : l'endroit appropri&eacute; pour obtenir
de l'aide est Usenet, par exemple dans <a href=
"news:comp.os.linux.setup">news:comp.os.linux.setup</a>. S'il vous
pla&icirc;t, ne m'envoyez pas de messages d'appel &agrave; l'aide
car je suis quelque peu d&eacute;bord&eacute;.</li>
</ul>
<h2><a name="ss1.3">1.3 Conventions</a></h2>
<p>Tout au long de ce document, les exemples figureront souvent au
format suivant : <code>&lt;...&gt;</code> est un argument
obligatoire, alors que <code>[...]</code> est optionnel. Par
exemple :</p>
<blockquote>
<pre>
<code>$ tar -tf &lt;fic.tar&gt; [&gt; fic-redir]
</code>
</pre></blockquote>
<p><code>fic.tar</code> doit &ecirc;tre sp&eacute;cifi&eacute;,
mais la redirection vers <code>fic_redir</code> est
optionnelle.</p>
<p>&laquo;LPM&raquo; signifie &laquo;Lisez les Pages du Manuel pour
de plus amples informations&raquo;. Je ne soulignerai jamais assez
combien il est important de lire la documentation.
&laquo;DOSWin&raquo; signifie &laquo;DOS/Windows&raquo;.</p>
<p>Lorsque l'invite (<i>prompt</i>) d'un exemple de commande est le
symbole <code>#</code>, cette commande ne peut &ecirc;tre
lanc&eacute;e que par root.</p>
<h2><a name="s2">2. Pour les impatients</a></h2>
<p>Envie de vous y mettre tout de suite ? Examinez ce tableau :</p>
<blockquote>
<pre>
<code>DOS                     Linux                   Notes
------------------------------------------------------------------------------

ATTRIB (+-)attr fic    chmod &lt;mode&gt; fic            completement different
BACKUP                 tar -Mcvf device dir/  idem
CD repertoire\         cd repertoire/         presque la meme syntaxe
COPY fic1 fic2         cp fic1 fic2           idem
DEL fic                rm fic                 attention, pas de undelete
DELTREE repertoire     rm -R repertoire/      idem
DIR                    ls                     pas exactement la meme syntaxe
DIR fic /S             find . -name fic       completement different
EDIT fic               vi fic                 Je ne pense pas que vous aimerez
                       jstar fic              un peu comme 'edit' sous DOS
EDLIN fic              ed fic                 n'y pensez meme pas
FORMAT                 fdformat,
                       mount, umount          syntaxe assez differente
HELP command           man command,           meme philosophie
                       info command
MD repertoire          mkdir repertoire/      presque la meme syntaxe
MORE &lt; fic             less fic               bien mieux
MOVE fic1 fic2         mv fic1 fic2           idem
NUL                    /dev/null              idem
PRINT fic              lpr fic                idem
PRN                    /dev/lp0,
                       /dev/lp1               idem
RD repertoire          rmdir repertoire/      presque la meme syntaxe
REN fic1 fic2          mv fic1 fic2           ne marche pas pour plusieurs fichiers
RESTORE                tar -Mxpvf device      syntaxe differente
TYPE fic               less fic               beaucoup mieux
WIN                    startx                 a mille lieues !
</code>
</pre></blockquote>
<p>S'il vous faut plus qu'un tableau de commandes, veuillez vous
reporter aux sections suivantes.</p>
<h2><a name="s3">3. &Agrave; la rencontre du bash</a></h2>
<p>Bonne nouvelle : avec Linux vous devez taper beaucoup moins de
caract&egrave;res &agrave; l'invite car l'interpr&eacute;teur de
commandes <code>bash</code> tape &agrave; votre place autant que
possible, et dispose de fonctionnalit&eacute;s d'&eacute;dition de
ligne du tonnerre. Pour commencer, la fl&egrave;che vers le haut
rappelle les lignes de commandes pr&eacute;c&eacute;dentes ; mais
il y a plus. L'appui sur &lt;TAB&gt; compl&egrave;te les noms de
fichiers et de r&eacute;pertoires, ainsi, taper</p>
<blockquote>
<pre>
<code>$ls /uTABloTABbTAB
</code>
</pre></blockquote>
<p>c'est comme taper</p>
<blockquote>
<pre>
<code>$ ls /usr/local/bin
</code>
</pre></blockquote>
<p>S'il y a des ambigu&iuml;t&eacute;s, comme lorsque vous
tapez</p>
<blockquote>
<pre>
<code>$ ls /uTABloTABiTAB
</code>
</pre></blockquote>
<p><code>bash</code> s'arr&ecirc;te parce qu'il ne sait pas si vous
voulez dire /usr/local/info ou /usr/local/include. Il faut fournir
plus de caract&egrave;res avant de taper &lt;TAB&gt; &agrave;
nouveau.</p>
<p>D'autres combinaisons utiles sont &lt;ESC-BACKSPACE&gt; qui
efface un mot sur la gauche, et &lt;ESC-D&gt; qui en efface un sur
la droite ; &lt;ESC-F&gt; d&eacute;place le curseur d'un mot vers
la gauche ; &lt;CTRL-A&gt; l'am&egrave;ne au d&eacute;but de la
ligne, &lt;CTRL-E&gt; vers la fin. La touche &lt;ALT&gt; est
&eacute;quivalente &agrave; la touche &lt;ESC&gt;.</p>
<p>On s'arr&ecirc;te l&agrave; pour le moment. Une fois
habitu&eacute;(e) &agrave; ces raccourcis, vous vous lasserez
tr&egrave;s rapidement de l'invite du DOS...</p>
<h2><a name="s4">4. Fichiers et Programmes</a></h2>
<h2><a name="ss4.1">4.1 Fichiers : notions
pr&eacute;liminaires</a></h2>
<p>La structure des r&eacute;pertoires et des fichiers sous Linux
est tr&egrave;s similaire &agrave; celle de DOSWin. Les fichiers
ont des noms qui doivent ob&eacute;ir &agrave; certaines
r&egrave;gles, ils sont stock&eacute;s dans des r&eacute;pertoires,
certains d'entre eux sont ex&eacute;cutables et parmi ceux-ci, la
plupart disposent d'options. De plus, il est possible d'utiliser
les caract&egrave;res <em>joker</em>, la redirection et les pipes.
Seules quelques diff&eacute;rences mineures existent :</p>
<ul>
<li>sous DOS, les noms de fichier sont au format appel&eacute; 8.3
; comme dans <code>TROPCOUR.TXT</code>. Linux peut faire mieux. Si
vous avez install&eacute; Linux en utilisant un syst&egrave;me de
fichiers comme ext2 ou umsdos, vous avez le loisir d'utiliser des
noms de fichier plus longs (jusqu'&agrave; 255 caract&egrave;res),
et avec plus d'un point : par exemple,
<code>Ceci_est.un.TRES_long.nom.de.fichier</code>. Veuillez noter
que j'ai utilis&eacute; aussi bien des majuscules que des
minuscules : en fait...</li>
<li>majuscules et minuscules dans les noms de fichier ou les
commandes sont diff&eacute;renci&eacute;es. Par cons&eacute;quent,
<code>NOMFIC.tar.tgz</code> et <code>nomfic.tar.gz</code> sont deux
fichiers diff&eacute;rents. De m&ecirc;me, <code>ls</code> est une
commande mais <code>LS</code> est une erreur ;</li>
<li>utilisateurs de Windows, faites attention en utilisant les noms
de fichier longs sous Linux. Si un nom de fichier contient des
espaces (ce qui n'est pas recommand&eacute; mais n&eacute;anmoins
possible), vous devez l'entourer avec des guillemets &agrave;
chaque fois que vous y faites r&eacute;f&eacute;rence. Par exemple
:
<blockquote>
<pre>
<code>$ # la commande suivante cree un repertoire appele "Mes vieux fichiers"
$ mkdir "Mes vieux fichiers"
$ ls
Mes vieux fichiers bin tmp
</code>
</pre></blockquote>
De plus, l'usage de certains caract&egrave;res est &agrave;
&eacute;viter : parmi eux, il y a <code>!*$&amp;</code>.</li>
<li>il n'existe pas d'extensions obligatoires comme .COM ou .EXE
pour les programmes ou .BAT pour les fichiers de commandes. Les
fichiers ex&eacute;cutables sont suivis d'un ast&eacute;risque
&laquo;<code>*</code>&raquo; lorsque vous faites la commande
<code>ls -F</code>. Par exemple :
<blockquote>
<pre>
<code>$ ls -F
Je_suis_un_rep/   cindy.jpg    cjpg*   lettre_a_Joe    mon_1er_script*  vieux 
</code>
</pre></blockquote>
Les fichiers <code>cjpg*</code> et <code>mon_1er_script*</code>
sont des ex&eacute;cutables, autrement dit des
&laquo;programmes&raquo;. Sous DOS, les copies de sauvegarde se
terminent en .BAK, alors que sous Linux elles se terminent par une
tilde &laquo;<code>~</code>&raquo;. De plus, un fichier
commen&ccedil;ant par un point est consid&eacute;r&eacute; comme
&eacute;tant cach&eacute;. Exemple : le fichier
<code>.Je.suis.un.fichier.cache</code> ne sera pas visible &agrave;
la suite de la commande <code>ls</code> ;</li>
<li>sous DOS, les options des commandes sont obtenues avec
<code>/option</code>, Linux utilise <code>-option</code> ou
--option. Exemple : <code>dir /s</code> devient <code>ls -R</code>.
Remarquez que de nombreux programmes DOS, comme <code>PKZIP</code>
ou <code>ARJ</code> utilisent les options dans le style
d'UNIX.</li>
</ul>
<p>&Agrave; pr&eacute;sent, vous pouvez aborder la section <a href=
"#Files">Traduire les commandes DOS en Linux</a>, mais &agrave;
votre place, je poursuivrais ici.</p>
<h2><a name="ss4.2">4.2 Liens symboliques</a></h2>
<p>UNIX est pourvu d'un type de fichier sans &eacute;quivalent sous
DOS : le lien symbolique. On peut l'imaginer comme un pointeur sur
un fichier ou un r&eacute;pertoire, et on peut l'utiliser en lieu
et place du fichier ou du r&eacute;pertoire sur lequel il pointe ;
cela ressemble aux raccourcis de Windows. Des exemples de liens
symboliques sont <code>/usr/X11</code>, qui pointe sur
<code>/usr/X11R6</code>; <code>/dev/modem</code>, qui pointe ou
bien sur <code>/dev/ttyS0</code> ou bien sur
<code>/dev/ttyS1</code>.</p>
<p>Pour fabriquer un lien symbolique :</p>
<blockquote>
<pre>
<code>$ ln -s &lt;fic_ou_rep&gt; &lt;nomdulien&gt;
</code>
</pre></blockquote>
<p>Exemple :</p>
<blockquote>
<pre>
<code>$ ln -s /usr/doc/g77/DOC g77manual.txt
</code>
</pre></blockquote>
<p>Il est alors possible de faire r&eacute;f&eacute;rence &agrave;
<code>g77manual.txt</code> au lieu de
<code>/usr/doc/g77/DOC</code>. Les liens apparaissent de la
mani&egrave;re suivante dans l'affichage du contenu des
r&eacute;pertoires :</p>
<blockquote>
<pre>
<code>$ ls -F
g77manual.txt@
$ ls -l
(des choses et d'autres...)           g77manual.txt -&gt; /usr/doc/g77/DOC
</code>
</pre></blockquote>
<h2><a name="Permissions"></a> <a name="ss4.3">4.3 Droits
d'acc&egrave;s et propri&eacute;t&eacute;</a></h2>
<p>Sous DOS, les fichiers et les r&eacute;pertoires disposent des
attributs suivants : A (archive), H (cach&eacute; : <i>hidden</i>),
R (lecture seule : <i>read-only</i>) et S (syst&egrave;me). Seuls H
et R ont un sens sous Linux : les fichiers cach&eacute;s sont ceux
qui commencent par un point, et pour ce qui est de l'attribut R,
lisez ce qui suit.</p>
<p>Sous UNIX un fichier poss&egrave;de des &laquo;droits
d'acc&egrave;s&raquo; et un propri&eacute;taire, qui, &agrave; son
tour, fait partie d'un &laquo;groupe&raquo;. Regardez cet exemple
:</p>
<blockquote>
<pre>
<code>$ ls -l /bin/ls
-rwxr-xr-x  1  root  bin  27281 Aug 15 1995 /bin/ls*
</code>
</pre></blockquote>
<p>Le premier champ contient les droits d'acc&egrave;s au fichier
<code>/bin/ls</code>, qui appartient &agrave; root et au groupe
bin. En laissant de c&ocirc;t&eacute; le reste de l'information,
souvenez-vous que la signification de <code>-rwxr-xr-x</code>, de
gauche &agrave; droite, est :</p>
<p><code>-</code> est le type de fichier (<code>-</code> = fichier
ordinaire, <code>d</code> = r&eacute;pertoire : <i>directory</i>, l
= lien etc.) ; <code>rwx</code> sont les droits d'acc&egrave;s pour
le propri&eacute;taire du fichier (lecture : <i>read</i>,
&eacute;criture : <i>write</i>, ex&eacute;cution) ;
<code>r-x</code> sont les droits d'acc&egrave;s pour le groupe
auquel appartient le propri&eacute;taire du fichier (lecture,
ex&eacute;cution) ; (je n'aborderai pas le concept de groupe, vous
n'en avez pas besoin pour survivre, tant que vous &ecirc;tes
d&eacute;butant ;-) <code>r-x</code> sont les droits d'acc&egrave;s
pour tous les autres utilisateurs (lecture, ex&eacute;cution).</p>
<p>Le r&eacute;pertoire <code>/bin</code> dispose lui aussi de
droits d'acc&egrave;s : cf. <a href=
"#Directories%20Permissions">Droits d'acc&egrave;s aux
r&eacute;pertoires</a> pour plus d'informations. C'est la raison
pour laquelle vous ne pouvez pas effacer le fichier
<code>/bin/ls</code> &agrave; moins d'&ecirc;tre root : vous n'avez
pas les droits pour le faire. Pour changer les droits
d'acc&egrave;s d'un fichier, la commande est :</p>
<blockquote>
<pre>
<code>$ chmod &lt;quiXperm&gt; &lt;fic&gt;
</code>
</pre></blockquote>
<p>o&ugrave; <code>qui</code> peut &ecirc;tre <code>u</code>
(utilisateur, ou propri&eacute;taire), <code>g</code> (groupe)
<code>o</code> (autres, <i>other</i>), <code>X</code> vaut
<code>+</code> ou <code>-</code>, et <code>perm</code> est &agrave;
choisir parmi <code>r</code> (lecture, <i>read</i>), <code>w</code>
(&eacute;criture, <i>write</i>) ou <code>x</code>
(ex&eacute;cution). Les usages courants pour <code>chmod</code>
sont les suivants :</p>
<blockquote>
<pre>
<code>$ chmod +x fichier
</code>
</pre></blockquote>
<p>cela positionne le droit d'ex&eacute;cution pour le fichier.</p>
<blockquote>
<pre>
<code>$ chmod go-rw fichier
</code>
</pre></blockquote>
<p>cela enl&egrave;ve les droits de lecture et d'&eacute;criture
pour tous except&eacute; le propri&eacute;taire.</p>
<blockquote>
<pre>
<code>$ chmod ugo+rwx fichier
</code>
</pre></blockquote>
<p>cela donne les droits de lecture, d'&eacute;criture et
d'ex&eacute;cution &agrave; tout le monde.</p>
<blockquote>
<pre>
<code># chmod +s fichier
</code>
</pre></blockquote>
<p>cela fabrique un fichier de type &laquo;setuid&raquo; ou
&laquo;suid&raquo; -- un fichier que tout un chacun peut
ex&eacute;cuter avec les privil&egrave;ges de son
propri&eacute;taire. Typiquement, vous rencontrerez des fichiers
suid appartenant &agrave; root ; souvent, il s'agit de fichiers
syst&egrave;me importants, comme le serveur X.</p>
<p>Un moyen plus court de faire r&eacute;f&eacute;rence aux droits
d'acc&egrave;s est d'utiliser les chiffres : <code>rwxr-xr-x</code>
peut &ecirc;tre exprim&eacute; comme 755 (chaque lettre correspond
&agrave; un bit : --- vaut 0, --x vaut 1, <code>-w-</code> vaut 2,
<code>-wx</code> vaut 3 etc.). Cela peut sembler difficile, mais
avec un peu de pratique, vous comprendrez le concept.
<code>root</code>, en tant que super-utilisateur, a la
possibilit&eacute; de changer les droits d'acc&egrave;s de
quiconque. LPM.</p>
<h2><a name="Files"></a> <a name="ss4.4">4.4 Fichiers : traduction
des commandes</a></h2>
<p>&Agrave; gauche, les commandes DOS, &agrave; droite, leurs
correspondants Linux.</p>
<blockquote>
<pre>
<code>ATTRIB:         chmod
COPY:           cp
DEL:            rm
MOVE:           mv
REN:            mv
TYPE:           more, less, cat
</code>
</pre></blockquote>
<p>Les redirections et la tuyauterie : <code>&lt; &gt; &gt;&gt;
|</code></p>
<p>Les jokers : <code>* ?</code></p>
<p><code>nul: /dev/null</code></p>
<p><code>prn, lpt1: /dev/lp0 ou /dev/lp1; lpr</code></p>
<h3>Exemples</h3>
<blockquote>
<pre>
<code>DOS                                     Linux
---------------------------------------------------------------------

C:\GUIDO&gt;ATTRIB +R FIC.TXT              $ chmod 400 fic.txt
C:\GUIDO&gt;COPY JOE.TXT JOE.DOC           $ cp joe.txt joe.doc
C:\GUIDO&gt;COPY *.* TOTAL                 $ cat * &gt; total
C:\GUIDO&gt;COPY FRACTALS.DOC PRN          $ lpr fractals.doc
C:\GUIDO&gt;DEL TEMP                       $ rm temp
C:\GUIDO&gt;DEL *.BAK                      $ rm * 
C:\GUIDO&gt;MOVE PAPIER.TXT TMP\           $ mv papier.txt tmp/
C:\GUIDO&gt;REN PAPIER.TXT PAPIER.ASC      $ mv papier.txt papier.asc
C:\GUIDO&gt;PRINT LETTRE.TXT               $ lpr lettre.txt
C:\GUIDO&gt;TYPE LETTRE.TXT                $ more lettre.txt
C:\GUIDO&gt;TYPE LETTRE.TXT                $ less lettre.txt
C:\GUIDO&gt;TYPE LETTRE.TXT &gt; NUL          $ cat lettre.txt &gt; /dev/null
        n/a                             $ more *.txt *.asc
        n/a                             $ cat section*.txt | less
</code>
</pre></blockquote>
<p>Notes:</p>
<ul>
<li><code>*</code> est plus malin sous Linux : <code>*</code>
d&eacute;signe tous les fichiers, sauf ceux qui sont cach&eacute;s
; <code>.*</code> d&eacute;signe tous les fichiers cach&eacute;s
(mais &eacute;galement le r&eacute;pertoire courant
&laquo;<code>.</code>&raquo; et son r&eacute;pertoire parent
&laquo;<code>..</code>&raquo; : attention !) ; <code>*.*</code> ne
d&eacute;signe que les fichiers qui contiennent, ou qui se
terminent par un &laquo;<code>.</code>&raquo; ; <code>p*r</code>
d&eacute;signe aussi bien &laquo;papier&raquo; que
&laquo;plier&raquo; ; <code>*c*</code> d&eacute;signe aussi bien
&laquo;ici&raquo; que &laquo;pacha&raquo; ;</li>
<li>lors de l'utilisation de <code>more</code>, tapez
&lt;ESPACE&gt; pour parcourir le fichier, et &laquo;q&raquo; pour
quitter. <code>less</code> est plus intuitif et vous permet
d'employer les fl&egrave;ches ;</li>
<li><code>UNDELETE</code> n'existe pas, alors <em>pensez-y &agrave;
deux fois</em> avant d'effacer quoi que ce soit ;</li>
<li>en plus des <code>&lt; &gt; &gt;&gt;</code> du DOS, Linux
dispose de <code>2&gt;</code> pour rediriger les messages d'erreur
(stderr) ; de plus, <code>2&gt;&amp;1</code> redirige stderr vers
stdout, alors que <code>1&gt;&amp;2</code> redirige stdout vers
stderr ;</li>
<li>Linux poss&egrave;de un autre joker : les <code>[]</code>.
Utilisation : <code>[abc]*</code> d&eacute;signe les fichiers
commen&ccedil;ant par a, b ou c ; <code>*[I-N1-3]</code>
d&eacute;signe les fichiers se terminant par I, J, K, L, M, N, 1,
2, ou 3 ;</li>
<li><code>lpr</code> &lt;fic&gt; imprime un fichier en t&acirc;che
de fond. Pour v&eacute;rifier l'&eacute;tat de la file
d'impressions, utilisez <code>lpq</code> ; pour retirer un fichier
de la file, utilisez <code>lprm</code> ;</li>
<li>il n'existe pas de <code>RENAME</code> identique &agrave; celui
du DOS ; en fait, <code>mv *.xxx *.yyy</code> ne marchera pas. Un
commande du type REN est disponible &agrave; l'adresse <a href=
"ftp://sunsite.unc.edu/pub/Linux/utils/file">ftp://sunsite.unc.edu/pub/Linux/utils/file</a>;</li>
<li>utilisez <code>cp -i</code> et <code>mv -i</code> pour
&ecirc;tre averti lorsqu'un fichier est sur le point d'&ecirc;tre
&eacute;cras&eacute;.</li>
</ul>
<h2><a name="ss4.5">4.5 Ex&eacute;cution de programmes : le
multi-t&acirc;ches et les sessions</a></h2>
<p>Pour lancer un programme, entrez son nom comme vous le feriez
sous DOS. Si le r&eacute;pertoire (cf. section <a href=
"#Directories">Utilisation des r&eacute;pertoires</a>) o&ugrave; se
trouve le programme est inclus dans le PATH (cf. section <a href=
"#System%20Initialisation">Fichiers d'initialisation du
syst&egrave;me</a>), le programme d&eacute;marrera. Une exception :
contrairement au DOS, sous Linux, un programme situ&eacute; dans le
r&eacute;pertoire courant ne s'ex&eacute;cutera pas &agrave; moins
que ce r&eacute;pertoire ne soit inclus dans le PATH.
<i>Escamotage</i></p>
<blockquote>NdT. : En fran&ccedil;ais dans le texte.</blockquote>
: si <code>prog</code> est votre programme, tapez
<code>./prog</code>.
<p>Voici &agrave; quoi ressemble une ligne de commande typique
:</p>
<blockquote>
<pre>
<code>$ commande [-o1 [-o2] ... [-on]] [arg1 [arg2] ... [argn]] [&lt; entree] [&gt; sortie]
</code>
</pre></blockquote>
<p>o&ugrave; <code>-o1</code>,...,<code>-on</code> sont les options
de la commande et <code>arg1</code>,...,<code>argn</code> sont les
arguments de la commande. Il est possible de sp&eacute;cifier
plusieurs commandes sur une seule ligne :</p>
<blockquote>
<pre>
<code>$ commande1 ; commande2 ; ... ; commanden
</code>
</pre></blockquote>
<p>C'est tout au sujet de l'ex&eacute;cution des commandes, mais on
peut facilement faire un pas de plus. L'une des principales
motivations pour l'utilisation de Linux est qu'il s'agit d'un
syst&egrave;me d'exploitation multi-t&acirc;ches -- il est capable
de faire tourner plusieurs programmes (qu'on appellera des
processus) en m&ecirc;me temps. Vous pouvez lancer des processus en
arri&egrave;re-plan et continuer &agrave; travailler dans la
foul&eacute;e. De plus, Linux vous permet d'avoir plusieurs
sessions : c'est comme si on travaillait sur plusieurs ordinateurs
&agrave; la fois !</p>
<ul>
<li>Pour passer &agrave; la session 1...6 parmi les consoles
virtuelles, tapez &lt;ALT-F1&gt; ... &lt;ALT-F6&gt;</li>
<li>Pour d&eacute;marrer une nouvelle session dans la m&ecirc;me
console virtuelle, sans quitter la session courante, tapez <code>su
- &lt;nomdelogin&gt;</code>. Par exemple : <code>su - root</code>.
Cela peut &ecirc;tre utile pour effectuer une t&acirc;che que seul
root peut accomplir, par exemple.</li>
<li>Pour clore une session, tapez <code>exit</code>. S'il reste des
jobs arr&ecirc;t&eacute;s (cf. plus loin) vous en serez
averti.</li>
<li>Pour lancer un processus en arri&egrave;re-plan, ajoutez une
&eacute;perluette &laquo;&amp;&raquo; &agrave; la fin de la ligne
de commande :
<blockquote>
<pre>
<code>$ nomduprog [-options] [arguments] [&lt; entree] [&gt; sortie] &amp;
[1] 123
</code>
</pre></blockquote>
Le shell associe un num&eacute;ro de job au processus (ex. :
<code>[1]</code> ; cf. plus loin), ainsi qu'un PID (<i>Process
Identification Number</i>
<blockquote>num&eacute;ro d'identification du
processus</blockquote>
) ; 123 dans notre exemple).</li>
<li>Pour voir combien il y a de processus, tapez <code>ps
ax</code>. Cela affichera la liste des processus qui tournent
actuellement.</li>
<li>Pour tuer (<em>terminate</em>) un processus, tapez <code>kill
&lt;PID&gt;</code>. Vous pouvez &ecirc;tre oblig&eacute; de tuer un
processus lorsque vous ne savez pas comment le quitter
proprement... &Agrave; moins d'&ecirc;tre root, il vous est
impossible de tuer les processus d'autres personnes. Quelquefois,
un processus ne pourra &ecirc;tre tu&eacute; qu'en faisant
<code>kill -SIGKILL &lt;PID&gt;</code>. De plus, le shell vous
permet d'arr&ecirc;ter ou de suspendre temporairement un processus,
de l'envoyer en arri&egrave;re-plan ou de le remettre au premier
plan. Dans ce contexte, les processus sont appel&eacute;s
&laquo;jobs&raquo;.</li>
<li>Pour voir combien il y a de jobs, tapez <code>jobs</code>. Dans
ce cas, les jobs sont identifi&eacute;s par leur num&eacute;ro de
job, et non pas par leur PID.</li>
<li>Pour arr&ecirc;ter un processus qui tourne au premier plan,
tapez &lt;CTRL-C&gt; (cela peut ne pas marcher).</li>
<li>Pour suspendre un processus qui tourne au premier plan, tapez
&lt;CTRL-Z&gt; (idem).</li>
<li>Pour envoyer un processus suspendu en arri&egrave;re-plan,
tapez <code>bg &lt;%job&gt;</code> (il devient alors un job).</li>
<li>Pour amener un job au premier plan, tapez <code>fg
&lt;%job&gt;</code>. Pour ramener au premier plan le dernier job
envoy&eacute; en arri&egrave;re-plan, il suffit de taper
<code>fg</code>.</li>
<li>Pour tuer un job, tapez <code>kill &lt;%job&gt;</code>,
o&ugrave; &lt;job&gt;peut &ecirc;tre 1, 2, 3,...</li>
</ul>
<p>&Agrave; l'aide de ces commandes, vous pouvez formater un
disque, compresser une flop&eacute;e de fichiers, compiler un
programme, et d&eacute;compresser et archiver le tout, tout cela en
m&ecirc;me temps, tout en gardant la main. Essayez-donc de faire
cela avec Windows, rien que pour voir la diff&eacute;rence de
performance (si &ccedil;a ne plante pas, bien s&ucirc;r).</p>
<h2><a name="ss4.6">4.6 Ex&eacute;cution de programmes sur des
ordinateurs distants</a></h2>
<p>Pour lancer un programme sur une machine distante dont le nom
est <code>machine.distante.edu</code>, il suffit de faire :</p>
<blockquote>
<pre>
<code>$ telnet machine.distante.edu
</code>
</pre></blockquote>
<p>Apr&egrave;s vous &ecirc;tre connect&eacute;, d&eacute;marrez
votre programme pr&eacute;f&eacute;r&eacute;. Cela va sans dire,
vous devez avoir un compte utilisateur sur la machine distante.</p>
<p>Si vous disposez de X11, il vous est m&ecirc;me possible de
faire tourner une application X sur une machine distante dont
l'affichage se fera sur votre &eacute;cran X. Soit
<code>machine.distante.edu</code> la machine distante disposant de
X, et <code>machine.locale.linux</code> votre machine Linux. Pour
faire tourner &agrave; partir de <code>machine.locale.linux</code>
une application X r&eacute;sidant sur
<code>machine.distante.edu</code>, il faut faire ce qui suit :</p>
<ul>
<li>d&eacute;marrez X11, lancez un &eacute;mulateur de terminal
comme <code>xterm</code> ou ses &eacute;quivalents, et tapez :
<blockquote>
<pre>
<code>$ xhost +machine.distante.edu
$ telnet machine.distante.edu
</code>
</pre></blockquote>
</li>
<li>apr&egrave;s vous &ecirc;tre connect&eacute;, tapez :
<blockquote>
<pre>
<code>remote:$ DISPLAY=machine.locale.linux:0.0
remote:$ nomduprogramme &amp;
</code>
</pre></blockquote>
(au lieu de <code>DISPLAY...</code>, il se peut que vous ayez
&agrave; taper <code>setenv DISPLAY
machine.locale.linux:0.0</code>. Cela d&eacute;pend du shell
distant.)</li>
</ul>
<p><i>Et voila</i> ! <code>nomduprogramme</code> va maintenant
d&eacute;marrer sur <code>machine.distante.edu</code> et ses
affichages se feront sur votre machine. Toutefois, il est inutile
d'essayer de le faire par modem, ce serait trop lent pour
&ecirc;tre utilisable. De plus il s'agit d'une m&eacute;thode
fruste et non s&eacute;curis&eacute;e : veuillez vous reporter au
&laquo;Remote X Apps mini-HOWTO&raquo; disponible &agrave;
l'adresse <a href=
"http://sunsite.unc.edu/LDP/HOWTO/mini/Remote-X-Apps">http://sunsite.unc.edu/LDP/HOWTO/mini/Remote-X-Apps</a>.</p>
<h2><a name="Directories"></a> <a name="s5">5. Utilisation des
r&eacute;pertoires</a></h2>
<h2><a name="ss5.1">5.1 R&eacute;pertoires : notions
pr&eacute;liminaires</a></h2>
<p>Nous avons d&eacute;j&agrave; vu les diff&eacute;rences entre
les fichiers sous DOSWin et Linux. Pour ce qui est des
r&eacute;pertoires, sous DOSWin, le r&eacute;pertoire racine est
<code>\</code>, sous Linux c'est <code>/</code>. De m&ecirc;me, les
r&eacute;pertoires imbriqu&eacute;s sont s&eacute;par&eacute;s par
<code>\</code> sous DOSWin, et par <code>/</code> sous Linux. Un
exemple de chemin d'acc&egrave;s :</p>
<blockquote>
<pre>
<code>DOS:     C:\ARTICLES\GEOLOGIE\MI_EOC.TEX
Linux:   /home/guide/articles/geologie/mi_eocene.tex
</code>
</pre></blockquote>
<p>Comme d'habitude, <code>..</code> est le r&eacute;pertoire
parent et <code>.</code> est le r&eacute;pertoire courant.
Rappelez-vous que le syst&egrave;me ne vous autorisera pas &agrave;
faire des <code>cd</code>, <code>rd</code> ou des <code>md</code>
n'importe o&ugrave; &agrave; votre convenance. Chaque utilisateur
place ses affaires dans son propre r&eacute;pertoire appel&eacute;
r&eacute;pertoire d'accueil (<i>home directory</i>),
attribu&eacute; par l'administrateur syst&egrave;me ; par exemple
mon r&eacute;pertoire d'accueil est <code>/home/guido</code>.</p>
<h2><a name="Directories Permissions"></a> <a name="ss5.2">5.2
Droits d'acc&egrave;s aux r&eacute;pertoires</a></h2>
<p>Les r&eacute;pertoires ont &eacute;galement des droits
d'acc&egrave;s. Ce que nous avons vu dans la section <a href=
"#Permissions">Droits d'acc&egrave;s et propri&eacute;t&eacute;</a>
(propri&eacute;taire, groupe et autres), s'applique
&eacute;galement aux r&eacute;pertoires. Pour un r&eacute;pertoire,
<code>rx</code> signifie que vous pouvez vous rendre dans ce
r&eacute;pertoire &agrave; l'aide de <code>cd</code>, et
<code>w</code> que vous pouvez effacer un fichier de ce
r&eacute;pertoire, ou le r&eacute;pertoire lui-m&ecirc;me.</p>
<p>Par exemple, pour emp&ecirc;cher d'autres utilisateurs de venir
fouiner dans <code>/home/guido/text</code> :</p>
<blockquote>
<pre>
<code>$ chmod o-rwx /home/guido/text
</code>
</pre></blockquote>
<h2><a name="Directories: Trans"></a> <a name="ss5.3">5.3
R&eacute;pertoires: traduction de commandes</a></h2>
<blockquote>
<pre>
<code>DIR:            ls, find, du
CD:             cd, pwd
MD:             mkdir
RD:             rmdir
DELTREE:        rm -rf
MOVE:           mv
</code>
</pre></blockquote>
<h3>Exemples</h3>
<blockquote>
<pre>
<code>DOS                                     Linux
---------------------------------------------------------------------

C:\GUIDO&gt;DIR                            $ ls
C:\GUIDO&gt;DIR  FIC.TXT                   $ ls fic.txt
C:\GUIDO&gt;DIR *.H *.C                    $ ls *.h *.c
C:\GUIDO&gt;DIR/P                          $ ls | more
C:\GUIDO&gt;DIR/A                          $ ls -l
C:\GUIDO&gt;DIR *.TMP /S                   $ find / -name "*.tmp"
C:\GUIDO&gt;CD                             $ pwd
        inapplicable, cf. notes         $ cd
        idem                            $ cd  
        idem                            $ cd  /temp
C:\GUIDO&gt;CD \AUTRES                     $ cd /autres
C:\GUIDO&gt;CD ..\TEMP\CORBEIL             $ cd ../temp/corbeille
C:\GUIDO&gt;MD PROGSNVX                    $ mkdir progsnvx
C:\GUIDO&gt;MOVE PROG ..                   $ mv prog ..
C:\GUIDO&gt;MD \PROGS\TURBO                $ mkdir /progs/turbo
C:\GUIDO&gt;DELTREE TEMP\CORBEIL           $ rm -rf temp/corbeille
C:\GUIDO&gt;RD PROGSNVX                    $ rmdir progsnvx
C:\GUIDO&gt;RD \PROGS\TURBO                $ rmdir /progs/turbo
</code>
</pre></blockquote>
<p>Notes :</p>
<ul>
<li>L'utilisation de <code>rmdir</code> ne peut se faire que sur
des r&eacute;pertoires vides. Pour effacer un r&eacute;pertoire et
tout son contenu, utilisez <code>rm -rf</code> (&agrave; vos
risques et p&eacute;rils).</li>
<li>Le caract&egrave;re &laquo;<code>~</code>&raquo; est un
raccourci pour le nom de votre r&eacute;pertoire d'accueil. Les
commandes <code>cd</code> ou <code>cd</code> vous emm&egrave;neront
dans votre r&eacute;pertoire d'accueil, quel que soit l'endroit
o&ugrave; vous &ecirc;tes ; la commande <code>cd /tmp/</code> vous
emm&egrave;nera dans
<code>/home/votre_rep_d_accueil/tmp</code>.</li>
<li><code>cd -</code> &laquo;d&eacute;fait&raquo; le dernier
<code>cd</code>.</li>
</ul>
<h2><a name="Floppies"></a> <a name="s6">6. Disquettes, disques
durs et consorts</a></h2>
<p>Il existe deux mani&egrave;res de g&eacute;rer les
p&eacute;riph&eacute;riques sous Linux : &agrave; la mani&egrave;re
du DOS, ou &agrave; celle d'UNIX. Faites votre choix.</p>
<h2><a name="ss6.1">6.1 Gestion des p&eacute;riph&eacute;riques
&laquo;&agrave; la DOS&raquo;</a></h2>
<p>La plupart des distributions Linux sont accompagn&eacute;es de
la suite Mtools, un ensemble de commandes parfaitement
&eacute;quivalentes &agrave; leurs correspondants DOS, mais
commen&ccedil;ant par un &laquo;m&raquo; : <code>mformat</code>,
<code>mdir</code>, <code>mdel</code>, <code>mmd</code>, etc. Ils
sont m&ecirc;me capables de conserver les noms de fichiers longs,
mais pas les droits d'acc&egrave;s aux fichiers. En configurant
Mtools, par l'&eacute;dition d'un fichier appel&eacute;
/etc/mtools.conf (dont un exemple est fourni), vous pouvez
&eacute;galement acc&eacute;der &agrave; la partition DOS/Windows,
aux lecteurs de CD--ROM et de Zip. Toutefois, pour formater une
disquette, la commande <code>format</code> ne fait pas l'affaire.
Il vous faudra pr&eacute;alablement ex&eacute;cuter, en tant que
root, la commande : <code>fdformat /dev/fd0H1440</code></p>
<p>Note : il ne vous est pas possible d'acc&eacute;der aux fichiers
d'une disquette avec une commande de type <code>less
a:fic.txt</code>! C'est l'inconv&eacute;nient d'acc&eacute;der aux
disques &agrave; la mani&egrave;re du DOS.</p>
<h2><a name="ss6.2">6.2 Gestion des p&eacute;riph&eacute;riques
&laquo; &agrave; la UNIX&raquo;</a></h2>
<p>UNIX aborde la gestion des p&eacute;riph&eacute;riques d'une
mani&egrave;re totalement diff&eacute;rente. Il n'existe pas de
volumes comme A: ou C: ; un disque, que ce soit une disquette ou
n'importe quoi d'autre, devient une partie du syst&egrave;me de
fichiers local par une op&eacute;ration que l'on appelle le
&laquo;montage&raquo;. Lorsque vous n'avez plus besoin du disque,
avant de l'&eacute;jecter il vous faut le
&laquo;d&eacute;monter&raquo;.</p>
<p>Le formatage physique d'un disque est une chose, y cr&eacute;er
un syst&egrave;me de fichiers en est une autre. La commande DOS
<code>FORMAT A:</code> fait les deux &agrave; la fois, mais Linux
fournit des commandes s&eacute;par&eacute;es. Pour formater une
disquette, voyez ci-dessus ; pour y cr&eacute;er un syst&egrave;me
de fichiers :</p>
<blockquote>
<pre>
<code># mkfs -t ext2 -c /dev/fd0H1440
</code>
</pre></blockquote>
<p>Vous pouvez utiliser <code>dos</code>, <code>vfat</code> (ce qui
est conseill&eacute;) ou d'autres formats &agrave; la place de
<code>ext2</code>. Une fois le disque pr&eacute;par&eacute;,
montez-le avec la commande :</p>
<blockquote>
<pre>
<code># mount -t ext2 /dev/fd0 /mnt
</code>
</pre></blockquote>
<p>en sp&eacute;cifiant le type adapt&eacute; pour le
syst&egrave;me de fichiers si vous n'utilisez pas
<code>ext2</code>. &Agrave; pr&eacute;sent, vous pouvez
acc&eacute;der aux fichiers de la disquette &agrave; l'aide de
<code>/mnt</code> au lieu de A: ou B:. Quelques exemples :</p>
<blockquote>
<pre>
<code>DOS                                     Linux
---------------------------------------------------------------------

C:\GUIDO&gt;DIR A:                         $ ls /mnt
C:\GUIDO&gt;COPY A:*.*                     $ cp /mnt/* .
C:\GUIDO&gt;COPY *.ZIP A:                  $ cp *.zip /mnt
C:\GUIDO&gt;EDIT A:FIC.TXT                 $ jstar /mnt/fic.txt
C:\GUIDO&gt;A:                             $ cd /mnt
A:&gt; _                                   /mnt/$ _
</code>
</pre></blockquote>
<p>Lorsque vous avez termin&eacute;, et avant d'&eacute;jecter la
disquette, vous <em>devez</em> la d&eacute;monter avec la commande
:</p>
<blockquote>
<pre>
<code># umount /mnt
</code>
</pre></blockquote>
<p>Bien &eacute;videmment, vous ne devez utiliser
<code>fdformat</code> et <code>mkfs</code> qu'avec des disquettes
non-format&eacute;es, et non pas avec celles d&eacute;j&agrave;
utilis&eacute;es. Si vous voulez utiliser le lecteur B:, faites
r&eacute;f&eacute;rence &agrave; <code>fd1H1440</code> et
<code>fd1</code> au lieu de <code>fd0H1440</code> et
<code>fd0</code> dans les exemples ci-dessus.</p>
<p>Il va sans dire que ce qui s'applique aux disquettes s'applique
&eacute;galement &agrave; d'autres p&eacute;riph&eacute;riques ;
par exemple, vous pouvez avoir envie de monter un autre disque dur
ou un lecteur de CD--ROM. Voici comment monter le CD--ROM :</p>
<blockquote>
<pre>
<code># mount -t iso9660 /dev/cdrom /mnt
</code>
</pre></blockquote>
<p>Ce qui pr&eacute;c&egrave;de &eacute;tait la mani&egrave;re
&laquo;officielle&raquo; de monter les disques, mais il y a une
astuce. Comme c'est assez p&eacute;nible de passer root pour monter
un disque ou un CD--ROM, chaque utilisateur peut &ecirc;tre
autoris&eacute; &agrave; les monter de la fa&ccedil;on suivante
:</p>
<ul>
<li>sous root, faites ce qui suit :
<blockquote>
<pre>
<code># mkdir /mnt/floppy ; mkdir /mnt/cdrom
# chmod 777 /mnt/floppy /mnt/cd*
# # assurez-vous que le peripherique correspondant au CD-ROM est correct
# chmod 666 /dev/hdb ; chmod 666 /dev/fd*
</code>
</pre></blockquote>
</li>
<li>ajoutez les lignes suivantes &agrave; /etc/fstab :
<blockquote>
<pre>
<code>/dev/cdrom      /mnt/cdrom  iso9660 ro,user,noauto          0       0
/dev/fd0        /mnt/floppy vfat    user,noauto             0       0
</code>
</pre></blockquote>
</li>
</ul>
<p>&Agrave; pr&eacute;sent, pour monter un disquette DOS et un
CD--ROM vous pouvez faire :</p>
<blockquote>
<pre>
<code>$ mount /mnt/floppy
$ mount /mnt/cdrom
</code>
</pre></blockquote>
<p>/mnt/floppy, et /mnt/cdrom sont &agrave; pr&eacute;sent
accessibles &agrave; tous les utilisateurs. Souvenez-vous que
d'autoriser tout le monde &agrave; monter des disques de cette
mani&egrave;re est un trou de s&eacute;curit&eacute; b&eacute;ant,
si cela vous pr&eacute;occupe.</p>
<p>Deux commandes utiles sont <code>df</code>, qui donne des
informations sur les syst&egrave;mes de fichiers mont&eacute;s, et
<code>du nomderepertoire</code> qui renseigne sur l'espace disque
utilis&eacute; par le r&eacute;pertoire.</p>
<h2><a name="Backing Up"></a> <a name="ss6.3">6.3 Les
sauvegardes</a></h2>
<p>Il existe plusieurs paquetages pour vous aider, mais le moins
que vous puissiez faire pour obtenir une sauvegarde sur plusieurs
volumes est (sous root) :</p>
<blockquote>
<pre>
<code># tar -M -cvf /dev/fd0H1440 rep_a_sauvegarder/
</code>
</pre></blockquote>
<p>Assurez-vous d'avoir une disquette format&eacute;e dans le
lecteur, et un paquet d'autres sous la main. Pour restaurer vos
affaires, ins&eacute;rez la premi&egrave;re disquette dans le
lecteur et faites :</p>
<blockquote>
<pre>
<code># tar -M -xpvf /dev/fd0H1440
</code>
</pre></blockquote>
<h2><a name="s7">7. Et Windows alors ?</a></h2>
<p>Le syst&egrave;me X Window est &laquo;l'&eacute;quivalent&raquo;
de Windows. &Agrave; l'oppos&eacute; de Windows ou du Mac, X11 n'a
pas &eacute;t&eacute; con&ccedil;u pour &ecirc;tre facile
d'utilisation ni esth&eacute;tique, mais uniquement pour munir les
stations de travail sous UNIX de capacit&eacute;s graphiques</p>
<blockquote>NdT. : Et surtout de la possibilit&eacute; de
d&eacute;porter l'affichage sur d'autres machines au travers du
r&eacute;seau</blockquote>
. Voici les principales diff&eacute;rences :
<ul>
<li>Alors que Windows adopte le m&ecirc;me <i>look and feel</i>
partout dans le monde, ce n'est pas la cas pour X11 qui est
beaucoup plus configurable. Son apparence g&eacute;n&eacute;rale
est d&eacute;finie par un composant-cl&eacute; appel&eacute; le
&laquo;gestionnaire de fen&ecirc;tres&raquo; (<i>window
manager</i>) dont il existe une large gamme : <code>fvwm</code>,
&eacute;l&eacute;mentaire mais agr&eacute;able et peu gourmand en
m&eacute;moire, <code>fvwm2-95</code>, <code>Afterstep</code>,
<code>WindowMaker</code>, <code>Enlightenment</code> et beaucoup
d'autres. Ce gestionnaire est habituellement invoqu&eacute; dans un
fichier nomm&eacute; <code>.xinitrc</code>.</li>
<li>Votre gestionnaire peut &ecirc;tre configur&eacute; de
mani&egrave;re &agrave; ce que les fen&ecirc;tres agissent comme
dans, hum, Windows : vous cliquez dessus pour les faire venir au
premier plan. Une autre possibilit&eacute; est de l'amener au
premier plan lorsque la souris se d&eacute;place dessus (la
fen&ecirc;tre obtient le &laquo;focus&raquo;). De plus, le
placement des fen&ecirc;tres sur l'&eacute;cran peut &ecirc;tre
automatique ou interactif : si, au lieu de votre programme, il
appara&icirc;t un cadre &eacute;trange, cliquez avec le bouton
gauche &agrave; l'endroit o&ugrave; vous voulez le faire
appara&icirc;tre.</li>
<li>la plupart des fonctionnalit&eacute;s peuvent &ecirc;tre
personnalis&eacute;es en &eacute;ditant un ou plusieurs fichiers de
configuration. Lisez la documentation de votre gestionnaire de
fen&ecirc;tres ; ces fichiers de configuration peuvent &ecirc;tre
<code>.fvwmrc</code>, <code>.fvwm2rc95</code>,
<code>.steprc</code>, etc. Un fichier de configuration type se
trouve g&eacute;n&eacute;ralement dans :
/etc/X11/window-manager-name/system.window-manager-name;</li>
<li>Les applications X11 sont &eacute;crites &agrave; l'aide de
biblioth&egrave;ques sp&eacute;ciales (les &laquo;widget
sets&raquo;) ; comme il en existe plusieurs, les applications ont
des apparences diff&eacute;rentes. Les plus
&eacute;l&eacute;mentaires sont celles utilisant les widgets Athena
(apparence 2--D; <code>xdvi</code>, <code>xman</code>,
<code>xcalc</code>) ; d'autres utilisent Motif
(<code>netscape</code>), d'autres encore utilisent Tcl/Tk, XForms,
Qt, Gtk et en veux-tu en voil&agrave;. Presque toutes ces
biblioth&egrave;ques fournissent en gros le m&ecirc;me look &amp;
feel que Windows.</li>
<li>Malheureusement, le mode d'interaction peut se
r&eacute;v&eacute;ler incoh&eacute;rent. En l'esp&egrave;ce,
lorsque vous s&eacute;lectionnez une ligne de texte &agrave; la
souris et tapez &lt;BACKSPACE&gt;, vous vous attendez &agrave; ce
que la ligne disparaisse, pas vrai ? Cela ne fonctionne pas avec
les applis bas&eacute;es sur Athena, mais avec celles utilisant
d'autres biblioth&egrave;ques de widgets.</li>
<li>Le mode de fonctionnement des ascenseurs (<i>scrollbars</i>) et
le redimensionnement d&eacute;pendent du gestionnaire de
fen&ecirc;tres et du widget set. Astuce : si les ascenseurs ne se
comportent pas &agrave; votre go&ucirc;t, essayez d'utiliser le
bouton du milieu, ou les deux boutons en m&ecirc;me temps pour les
d&eacute;placer.</li>
<li>Les applications n'ont pas d'ic&ocirc;ne par d&eacute;faut,
mais elles peuvent en avoir un certain nombre. La plupart des
gestionnaires de fen&ecirc;tres proposent un menu que l'on appelle
en cliquant sur le fond de l'&eacute;cran (<i>root window</i>) ; il
va sans dire que ce menu peut &ecirc;tre personnalis&eacute;. Pour
changer l'apparence du fond de l'&eacute;cran, utilisez
<code>xsetroot</code> ou <code>xloadimage</code>.</li>
<li>Le presse-papiers ne peut contenir que du texte, et se comporte
&eacute;trangement. Une fois un texte s&eacute;lectionn&eacute;, il
est d&eacute;j&agrave; copi&eacute; dans le presse-papiers :
d&eacute;placez vous ailleurs et cliquez sur le bouton du milieu
pour le coller. Il existe une application <code>xclipboard</code>
fournissant de multiples tampons pour le presse-papiers.</li>
<li>Le glisser-d&eacute;placer est une option, et n'est disponible
qu'avec les applications et/ou les gestionnaires de fen&ecirc;tres
qui l'int&egrave;grent.</li>
</ul>
<p>Pour &eacute;conomiser la m&eacute;moire, il est
pr&eacute;f&eacute;rable d'utiliser des applications utilisant les
m&ecirc;mes biblioth&egrave;ques, mais cela peut se
r&eacute;v&eacute;ler difficile &agrave; appliquer.</p>
<p>Il existe des projets visant &agrave; doter X11 d'une apparence
et d'un comportement aussi coh&eacute;rents que Windows. Gnome,
<a href="http://www.gnome.org">http://www.gnome.org</a> et KDE,
<a href="http://www.kde.org">http://www.kde.org</a>, sont
&eacute;patants. Donnez-leur une chance : vous ne regretterez plus
votre bureau Windows.</p>
<h2><a name="s8">8. Personnalisation du syst&egrave;me</a></h2>
<h2><a name="System Initialisation"></a> <a name="ss8.1">8.1
Fichiers d'initialisation du syst&egrave;me</a></h2>
<p>Sous DOS, deux fichiers importants sont
<code>AUTOEXEC.BAT</code> et <code>CONFIG.SYS</code>,
utilis&eacute;s lors du d&eacute;marrage pour initialiser le
syst&egrave;me, positionner quelques variables d'environnement
comme PATH et FILES, et, le cas &eacute;ch&eacute;ant lancer un
programme ou un fichier de commandes. Sous Linux, il y a une
flop&eacute;e de fichiers d'initialisation, qu'il vaut mieux ne pas
bidouiller pour certains d'entre eux &agrave; moins de savoir
exactement ce que vous faites. Je vous dirai quels sont les plus
importants de toute fa&ccedil;on :</p>
<blockquote>
<pre>
<code>FICHIERS                                NOTES

/etc/inittab                            pas touche pour le moment !
/etc/rc.d/*                             idem
</code>
</pre></blockquote>
<p>Si vous vous contentez de positionner le PATH et d'autres
variables d'environnement, ou d&eacute;sirez changer les messages
de login, ou souhaitez lancer automatiquement un programme
apr&egrave;s vous &ecirc;tre connect&eacute;, consid&eacute;rez les
fichiers suivants :</p>
<blockquote>
<pre>
<code>FICHIERS                                NOTES

/etc/issue                              positionne le message de pre-connexion
/etc/motd                               positionne le message de post-connexion
/etc/profile                            positionne $PATH, d'autres variables etc.
/etc/bashrc                             positionne alias et fonctions etc.
/home/votre_home/.bashrc                positionne vos alias et fonctions
/home/votre_home/.bash_profile   ou 
/home/votre_home/.profile               definit l'environnemement et lance vos programmes
</code>
</pre></blockquote>
<p>Si ce dernier fichier existe (remarquez que c'est un fichier
cach&eacute;), il sera lu apr&egrave;s que vous vous soyez
connect&eacute; et les commandes qu'il contient seront
ex&eacute;cut&eacute;es.</p>
<p>Un exemple -- examinez ce fichier
<code>.bash_profile</code>:</p>
<hr>
<pre>
# Je suis un commentaire
echo Environnement:
printenv | less   # equivalent de la commande SET sous DOS
alias d='ls -l'   # pour comprendre facilement ce qu'est un alias
alias up='cd ..'
echo "Je vous rappelle que le chemin est "$PATH
echo "Aujourd'hui nous sommes le `date`"  # utilise la sortie de la commande 'date'
echo "Bonjour, "$LOGNAME
# Ce qui suit est une "fonction" shell
ctgz() # Affiche le contenu d'une archive .tar.gz.
{
  for file in $*
  do
    gzip -dc ${file} | tar tf -
  done
}         
# fin du .profile
</pre>
<hr>
<p><code>$PATH</code> et <code>$LOGNAME</code>, vous l'aurez
devin&eacute;, sont des variables d'environnement. Il s'en trouve
beaucoup d'autres avec lesquels on peut s'amuser ; LPM pour des
applis comme <code>less</code> ou <code>bash</code> par
exemple.</p>
<p>Ajouter la ligne suivante &agrave; votre /etc/profile vous
fournira approximativement un &eacute;quivalent de <code>PROMPT
$P$G</code> :</p>
<blockquote>
<pre>
<code>export PS1="\w\\$ "
</code>
</pre></blockquote>
<h2><a name="ss8.2">8.2 Fichiers d'initialisation de
programmes</a></h2>
<p>Sous Linux, tout peut potentiellement &ecirc;tre
personnalis&eacute; pour convenir &agrave; vos besoins. La plupart
des programmes ont un ou plusieurs fichiers d'initialisation que
vous pouvez triturer, souvent appel&eacute;s
<code>.nomdeprogrammerc</code> et situ&eacute;s dans votre
r&eacute;pertoire d'accueil. Les premiers que vous aurez envie de
modifier sont :</p>
<ul>
<li><code>.inputrc</code> : utilis&eacute; par <code>bash</code>
pour d&eacute;finir les touches du clavier ;</li>
<li><code>.xinitrc</code> : utilis&eacute; par <code>startx</code>
pour initaliser le syst&egrave;me X Window ;</li>
<li><code>.fvwmrc</code> : utilis&eacute; par le gestionnaire de
fen&ecirc;tres <code>fvwm</code> ;</li>
<li><code>.joerc, .jstarrc</code> : utilis&eacute; par
l'&eacute;diteur <code>joe</code> ;</li>
<li><code>.jedrc</code> : utilis&eacute; par l'&eacute;diteur
<code>jed</code> ;</li>
<li><code>.pinerc</code> : utilis&eacute; par l'outil de traitement
de courrier &eacute;lectronique <code>pine</code> ;</li>
<li><code>.Xdefault</code> : utilis&eacute; par de nombreux
programmes X Window.</li>
</ul>
<p>Pour tous ceux-ci et d'autres que vous rencontrerez t&ocirc;t ou
tard, LPM. Au cas o&ugrave;, je vous signale l'existence du
<i>Configuration HOWTO</i> disponible &agrave; l'adresse
<code><a href=
"http://sunsite.unc.edu/mdw/HOWTO/Config-HOWTO.html">http://sunsite.unc.edu/mdw/HOWTO/Config-HOWTO.html</a></code>
.</p>
<h2><a name="s9">9. Le r&eacute;seau : concepts</a></h2>
<p>Non seulement la connexion au r&eacute;seau par modem est
disponible sous Linux, mais elle est &eacute;galement plus stable
et plus rapide. Ce dont il s'agit, c'est &laquo;PPP&raquo;, le
protocole employ&eacute; pour se connecter &agrave; l'Internet
&agrave; l'aide de modems. Vous avez besoin d'un noyau
int&eacute;grant le support PPP et d'un outil pour composer les
num&eacute;ros et &eacute;tablir la connexion.</p>
<p>Pour r&eacute;cup&eacute;rer votre courrier chez votre
fournisseur d'acc&egrave;s Internet (<em>FAI</em>), vous aurez
besoin d'un outil appel&eacute; &laquo;r&eacute;cup&eacute;rateur
de mail&raquo; utilisant le protocole POP ; lorsque le courrier est
r&eacute;cup&eacute;r&eacute;, tout se passera comme s'il avait
&eacute;t&eacute; livr&eacute; directement sur votre babasse Linux.
Vous utiliserez ensuite un MUA (<em>Mail User Agent</em> ou agent
utilisateur de courrier) comme <code>pine</code>,
<code>mutt</code>, <code>elm</code> ou l'un des nombreux autres
pour g&eacute;rer votre courrier.</p>
<p>Alors que sous Windows, le programme de composition de
num&eacute;ros est invoqu&eacute; automatiquement au lancement
d'une application Internet, sous Linux, on proc&egrave;de dans
l'autre sens : on compose d'abord le num&eacute;ro, puis on lance
l'application. Un truc du nom de <code>diald</code> fournit le
comportement habituel. L'installation et la configuration d'un
r&eacute;seau avec connexion par modem &eacute;tait habituellement
l'une des choses les plus difficiles &agrave; faire sous Linux,
mais ce n'est plus le cas : veuillez vous reporter au Configuration
HOWTO.</p>
<p>Enfin, un mot du &laquo;Voisinage r&eacute;seau&raquo; : il vous
est possible de faire croire aux machines Windows du r&eacute;seau
local que votre station Linux est un serveur Windows NT/9x. La
formule magique est Samba : il ne s'agit pas de la danse
br&eacute;silienne endiabl&eacute;e, mais d'une
impl&eacute;mentation du protocole SMB pour Linux. Rendez-vous
&agrave; <a href=
"http://samba.anu.edu.au/samba">http://samba.anu.edu.au/samba</a>.</p>
<h2><a name="s10">10. Un peu de programmation</a></h2>
<h2><a name="Shell Scripts"></a> <a name="ss10.1">10.1 Les
<i>shell-scripts</i> : des fichiers .BAT dop&eacute;s aux
anabolisants</a></h2>
<p>Si vous utilisiez des fichiers .BAT pour cr&eacute;er des
raccourcis pour de longues lignes de commandes (moi-m&ecirc;me j'en
ai fait pas mal), vous pouvez atteindre ce but en ins&eacute;rant
des lignes d'<i>alias</i> appropri&eacute;s (cf. l'exemple
ci-dessus) dans le <code>profile</code> ou le
<code>.bash_profile</code>. Mais si vos .BAT &eacute;taient plus
compliqu&eacute;s, alors vous adorerez le langage de <i>script</i>
que vous offre le <i>shell</i> : il est aussi puissant que ce bon
vieux QBasic, si ce n'est plus. Il poss&egrave;de des variables,
des structures comme <code>while, for, case, if... then...
else</code> et des tas d'autres fonctionnalit&eacute;s : il peut
&ecirc;tre une bonne alternative &agrave; un &laquo;vrai&raquo;
langage de programmation.</p>
<p>Pour &eacute;crire un script -- l'&eacute;quivalent d'un fichier
.BAT sous DOS -- tout ce que vous avez &agrave; faire c'est
d'&eacute;crire un fichier ASCII contenant les instructions, de le
sauver, et de le rendre ex&eacute;cutable &agrave; l'aide de la
commande <code>chmod +x &lt;fichierscript&gt;</code>. Pour
l'ex&eacute;cuter, tapez son nom.</p>
<p>Un mot d'avertissement. L'&eacute;diteur du syst&egrave;me
s'appelle <code>vi</code>, et, d'apr&egrave;s mon
exp&eacute;rience, la plupart des nouveaux utilisateurs le trouvent
tr&egrave;s ardu. Je ne m'&eacute;tendrai pas sur son utilisation,
veuillez consulter le livre de Matt Welsh ou faire une recherche
sur le Net. Je me contenterai de dire que :</p>
<ul>
<li>pour ins&eacute;rer du texte, tapez <code>i</code> puis votre
texte ;</li>
<li>pour effacer des caract&egrave;res; tapez &lt;ESC&gt; puis
<code>x</code> ;</li>
<li>pour quitter <code>vi</code> sans enregistrer, tapez
&lt;ESC&gt; puis <code>:q!</code> ;</li>
<li>pour enregistrer et quitter, tapez &lt;ESC&gt; puis
<code>:wq</code>.</li>
</ul>
Un bon &eacute;diteur pour d&eacute;butants est <code>joe</code> :
en le lan&ccedil;ant avec la commande <code>jstar</code>, vous
obtiendrez les m&ecirc;mes raccourcis-clavier que ceux de
l'&eacute;diteur de DOSWin. <code>jed</code> en mode WordStar ou
IDE est m&ecirc;me mieux. Veuillez consulter la section <a href=
"#Programs">O&ugrave; trouver les applications</a> pour savoir
o&ugrave; obtenir ces &eacute;diteurs.
<p>L'&eacute;criture de scripts sous <code>bash</code> est un sujet
tellement vaste qu'il n&eacute;cessite un livre en lui-m&ecirc;me,
et je ne creuserai pas le sujet plus avant. Je me contenterai de
vous donner un exemple de shell-script duquel vous pourrez extraire
quelques r&egrave;gles de base :</p>
<hr>
<pre>
#!/bin/sh
# exemple.sh
# Je suis un commentaire.
# Ne changez pas la premiere ligne, elle doit se trouver a cet endroit.
echo "Ce systeme est : `uname -a`" # utilise la sortie de la commande
echo "Mon nom est $0" # variables predefinies
echo "Vous m'avez transmis les $# parametres suivants : "$*
echo "Le premier parametre est : "$1
echo -n "Quel est votre nom ? " ; read votre_nom
echo notez la difference : "salut $votre_nom" # citation avec "
echo notez la difference : 'salut $votre_nom' # citation avec '
REPS=0 ; FICS=0
for fic in `ls .` ; do
  if [ -d ${fic} ] ; then # si fic est un repertoire
    REPS=`expr $REPS + 1`  # REPS = REPS + 1
  elif [ -f ${fic} ] ; then
    FICS=`expr $FICS + 1`
  fi
  case ${fic} in
    *.gif|*jpg) echo "${fic}: image" ;;
    *.txt|*.tex) echo "${fic}: fichier texte" ;;
    *.c|*.f|*.for) echo "${fic}: fichier source" ;;
    *) echo "${fic}: fichier generique" ;;
  esac
done
echo "il y a ${REPS} repertoires et ${FICS} fichiers"
ls | grep "ZxY--!!!WKW"
if [ $? != 0 ] ; then # code de retour de la derniere commande
  echo "ZxY--!!!WKW introuvable"
fi
echo "ca suffit... tapez 'man bash' pour en savoir plus."
</pre>
<hr>
<h2><a name="ss10.2">10.2 &laquo;E-C-iez&raquo; par
vous-m&ecirc;me</a></h2>
<p>Sous UNIX, le langage du syst&egrave;me est le C, que vous
l'aimiez ou non. Des douzaines d'autres langages (Java, FORTRAN,
Pascal, Lisp, Basic, Perl, awk...) sont &eacute;galement
disponibles.</p>
<p>En partant du principe que vous connaissez le C, voici quelques
lignes directrices pour ceux d'entre vous qui ont &eacute;t&eacute;
trop g&acirc;t&eacute;s par le Turbo C++ ou l'un de ses cousins
sous DOS. Le compilateur C de Linux s'appelle <code>gcc</code> et
n'est pourvu d'aucun des gadgets qui accompagnent en
g&eacute;n&eacute;ral ses &eacute;quivalents DOS : pas de IDE
(<i>Integrated Development Environment</i> ou environnement de
d&eacute;veloppement int&eacute;gr&eacute;), ni d'aide en ligne ou
de d&eacute;bogueur int&eacute;gr&eacute; etc. Il s'agit juste d'un
compilateur en ligne de commande brut de d&eacute;coffrage,
tr&egrave;s puissant et efficace. Pour compiler votre
<code>hello.c</code> de base, vous ferez :</p>
<blockquote>
<pre>
<code>$ gcc hello.c
</code>
</pre></blockquote>
<p>ce qui cr&eacute;era un fichier ex&eacute;cutable appel&eacute;
<code>a.out</code>. Pour donner un nom diff&eacute;rent &agrave;
l'ex&eacute;cutable, faites :</p>
<blockquote>
<pre>
<code>$ gcc -o hola hello.c
</code>
</pre></blockquote>
<p>Pour int&eacute;grer une biblioth&egrave;que lors de
l'&eacute;dition de liens, ajoutez l'option -l&lt;nomdebibli&gt;.
Par exemple, pour int&eacute;grer la biblioth&egrave;que
math&eacute;matique :</p>
<blockquote>
<pre>
<code>$ gcc -o progmath progmath.c -lm
</code>
</pre></blockquote>
<p>(L'option <code>-l&lt;nomdebibli&gt;</code> oblige
<code>gcc</code> &agrave; int&eacute;grer la biblioth&egrave;que
<code>/usr/lib/lib&lt;nomdebibli&gt;.so</code>; ainsi,
<code>-lm</code> int&egrave;gre <code>/usr/lib/libm.so</code>).</p>
<p>Jusque-l&agrave;, tout va bien. Mais lorsque votre programme se
compose de plusieurs fichiers source, vous aurez besoin de
l'utilitaire <code>make</code>. Supposons que vous ayez
&eacute;crit un analyseur d'expresssions : son fichier source
s'appelle <code>parser.c</code> et il inclut (par
<code>#include</code>) deux fichiers d'en-t&ecirc;te,
<code>parser.h</code> et <code>xy.h</code>. Ensuite, vous souhaitez
utiliser les routines de <code>parser.c</code> dans un programme,
disons <code>calc.c</code>, qui &agrave; son tour inclut
<code>parser.h</code>. Quel bazar ! Que faut-il faire pour compiler
<code>calc.c</code> ?</p>
<p>Vous devrez &eacute;crire un <code>Makefile</code>, c'est ainsi
qu'on l'appelle, qui apprenne au compilateur quelles sont les
d&eacute;pendances entre fichiers source et fichiers objet. Dans
notre exemple :</p>
<hr>
<pre>
# Voici Makefile, utilise pour compiler calc.c
# Appuyez sur &lt;TAB&gt; aux endroits indiques !

calc: calc.o parser.o
&lt;TAB&gt;gcc -o calc calc.o parser.o -lm
# calc depend de deux fichiers objet : calc.o et parser.o

calc.o: calc.c parser.h
&lt;TAB&gt;gcc -c calc.c
# calc.o depend de deux fichiers source

parser.o:  parser.c parser.h xy.h
&lt;TAB&gt;gcc -c parser.c
# parser.o depend de trois fichiers source

# fin du Makefile.
</pre>
<hr>
<p>Enregistrez ce fichier sous le nom <code>Makefile</code> et
faites <code>make</code> pour compiler votre programme ; une
alternative est de l'enregistrer sous <code>calc.mak</code> et de
taper <code>make -f calc.mak</code>, et, bien s&ucirc;r, LPM. Vous
pouvez acc&eacute;der &agrave; quelques aides sur les fonctions C,
qui se trouvent dans les pages du <code>man</code>, &agrave; la
section 3, par exemple,</p>
<blockquote>
<pre>
<code>$ man 3 printf
</code>
</pre></blockquote>
<p>Pour d&eacute;boguer vos programmes, utilisez <code>gdb</code>.
Faites <code>info gdb</code> pour apprendre &agrave; vous en
servir.</p>
<p>De nombreuses biblioth&egrave;ques sont disponibles ; les
premi&egrave;res d'entre elles qui vous seront utiles sont
<code>ncurses</code> (effets en mode texte), et
<code>svgalib</code> (graphismes en mode console). Si vous vous
sentez assez enhardi pour aborder la programmation X11 (ce n'est
pas si difficile que cela), il existe des biblioth&egrave;ques qui
transforment l'&eacute;criture de programmes X11 en une promenade
de sant&eacute;. Regardez donc du c&ocirc;t&eacute; de <a href=
"http://www.xnet.com/%20blatura/linapp6.html">http://www.xnet.com/
blatura/linapp6.html</a> en n'oubliant pas que Gtk devient un
standard Linux.</p>
<p>Beaucoup d'&eacute;diteurs peuvent faire office d'IDE ;
<code>emacs</code> et <code>jed</code>, par exemple, sont capables
de mettre en &eacute;vidence la syntaxe, faire de l'indentation
automatique etc. Autrement, rapatriez le paquetage
<code>rhide</code> &agrave; partir de <a href=
"ftp://sunsite.unc.edu:/pub/Linux/devel/debuggers/">ftp://sunsite.unc.edu:/pub/Linux/devel/debuggers/</a>.
C'est un clone de l'IDE de Borland, et vous devriez
l'appr&eacute;cier.</p>
<h2><a name="s11">11. Le 1% restant</a></h2>
<p>En fait, il reste beaucoup plus que 1%...</p>
<h2><a name="ss11.1">11.1 Utilisation de tar et gzip</a></h2>
<p>Sous UNIX, il y a quelques applications tr&egrave;s
r&eacute;pandues pour l'archivage et la compression de fichiers.
<code>tar</code> sert &agrave; fabriquer des archives -- comme
<code>PKZIP</code> ou <code>Winzip</code> mais il ne fait
qu'archiver, sans compression. Pour fabriquer une nouvelle archive
:</p>
<blockquote>
<pre>
<code>$ tar -cvf &lt;nom_d_archive.tar&gt; &lt;fic&gt; [fic...]
</code>
</pre></blockquote>
<p>Pour extraire des fichiers d'une archive :</p>
<blockquote>
<pre>
<code>$ tar -xpvf &lt;nom_d_archive.tar&gt; [fic...]
</code>
</pre></blockquote>
<p>Pour examiner le contenu d'une archive :</p>
<blockquote>
<pre>
<code>$ tar -tf &lt;nom_d_archive.tar&gt; | less
</code>
</pre></blockquote>
<p>Vous pouvez compresser les fichiers &agrave; l'aide de
<code>compress</code>, mais il est obsol&egrave;te et ne devrait
plus &ecirc;tre utilis&eacute;, ou <code>gzip</code> :</p>
<blockquote>
<pre>
<code>$ compress &lt;fic&gt;
$ gzip &lt;fic&gt;
</code>
</pre></blockquote>
<p>qui cr&eacute;ent un fichier compress&eacute; portant
l'extension <code>.Z</code> (<code>compress</code>) ou
<code>.gz</code> (<code>gzip</code>). Ces programmes ne peuvent
compresser qu'un fichier &agrave; la fois. Pour d&eacute;compresser
:</p>
<blockquote>
<pre>
<code>$ compress -d &lt;fic.Z&gt;
$ gzip -d &lt;fic.gz&gt;
</code>
</pre></blockquote>
<p>LPM.</p>
<p>Il existe &eacute;galement les utilitaires <code>unarj</code>,
<code>zip</code> et <code>unzip</code> (compatibles avec PK??ZIP).
Les fichiers portant l'extension <code>.tar.gz</code> ou
<code>.tgz</code> (archiv&eacute;s avec <code>tar</code>, puis
compress&eacute;s avec <code>gzip</code>) sont aussi communs dans
le mode UNIX que les fichiers .ZIP sous DOS. Voici comment examiner
le contenu d'une archive au format <code>.tar.gz</code> :</p>
<blockquote>
<pre>
<code>$ tar -ztf &lt;fic.tar.gz&gt; | less
</code>
</pre></blockquote>
<h2><a name="Install"></a> <a name="ss11.2">11.2 Installation
d'applications</a></h2>
<p>Tout d'abord : l'installation de paquetages est le travail de
root. La plupart des applications Linux sont distribu&eacute;es
sous forme d'archives <code>.tar.gz</code> qui contiennent
typiquement un r&eacute;pertoire portant un nom appropri&eacute;
o&ugrave; se trouvent tous les fichiers et/ou
sous-r&eacute;pertoires. Un bonne habitude est d'installer ces
paquetages &agrave; partir de <code>/usr/local</code> &agrave;
l'aide de la commande :</p>
<blockquote>
<pre>
<code># tar -zxf &lt;archive.tar.gz&gt;
</code>
</pre></blockquote>
<p>puis de lire les fichiers README ou INSTALL. La plupart du
temps, l'application est distribu&eacute;e sous forme de code
source, que vous devrez compiler pour cr&eacute;er les binaires ;
en g&eacute;n&eacute;ral, en vous contentant de taper
<code>make</code> puis <code>make install</code>. Si l'archive
contient un script <code>configure</code> lancez celui-ci d'abord.
Bien &eacute;videmment, vous devez avoir les compilateurs
<code>gcc</code> ou <code>g++</code>.</p>
<p>D'autres archives doivent &ecirc;tre d&eacute;ball&eacute;es
&agrave; partir de / ; c'est notamment le cas pour les archives
<code>.tgz</code> de Slackware. D'autres archives contiennent des
fichiers mais pas de sous-r&eacute;pertoires -- attention &agrave;
ne pas mettre le souk ! Il faut toujours examiner le contenu d'une
archive avant de l'installer.</p>
<p>Debian et Red Hat ont leurs propres formats d'archives,
respectivement <code>.deb</code> et <code>.rpm</code>. Ce dernier
b&eacute;n&eacute;ficie d'une reconnaissance de plus en plus large
; pour installer un paquetage <code>rpm</code>, tapez :</p>
<blockquote>
<pre>
<code># rpm -i paquetage.rpm
</code>
</pre></blockquote>
<h2><a name="ss11.3">11.3 Astuces indispensables</a></h2>
<p><b>Le d&eacute;filement en arri&egrave;re</b> : l'appui sur
&lt;SHIFT + PAG UP&gt; (la touche grise) vous permet de remonter en
arri&egrave;re de quelques pages, en fonction de la quantit&eacute;
de m&eacute;moire vid&eacute;o dont vous disposez.</p>
<p><b>Le nettoyage de l'&eacute;cran</b> : s'il vous arrive de
faire <code>more</code> ou <code>cat</code> sur un fichier binaire,
votre &eacute;cran peut se retrouver rempli de caract&egrave;res
bizarres. Pour y remedier, tapez <code>reset</code> m&ecirc;me si
vous n'y voyez plus rien, ou entrez cete s&eacute;quence de
caract&egrave;res : <code>echo CTRL-V ESC c RETURN</code>.</p>
<p><b>Le collage de texte</b> : dans la console, voyez plus loin ;
sous X, cliquez et d&eacute;placez la souris en maintenant le
bouton enfonc&eacute; pour s&eacute;lectionner le texte dans une
fen&ecirc;tre <code>xterm</code>, puis cliquez avec le bouton
central (ou les deux boutons &agrave; la fois si vous avez une
souris &agrave; deux boutons) pour coller. Il existe
&eacute;galement un <code>xclipboard</code></p>
<blockquote>NdT. : Presse-papiers sous X.</blockquote>
(qui ne marche qu'avec du texte, h&eacute;las) ; ne vous laissez
pas perturber par son tr&egrave;s long temps de r&eacute;ponse.
<p><b>L'utilisation de la souris</b> : si vous avez install&eacute;
<code>gpm</code>, un pilote de souris pour la console, alors vous
pouvez cliquer et d&eacute;placer la souris sans rel&acirc;cher le
bouton pour s&eacute;lectionner du texte, puis cliquer avec le
bouton droit pour coller le texte s&eacute;lectionn&eacute;. Cela
marche d'une console virtuelle &agrave; l'autre.</p>
<p><b>Messages &eacute;mis par le noyau</b> : examinez
<code>/var/adm/messages</code>, ou <code>/var/log/messages</code>
en &eacute;tant root pour savoir ce que le noyau a &agrave; vous
dire, y compris les messages de d&eacute;marrage. La commande
<code>dmesg</code> est &eacute;galement bien pratique.</p>
<h2><a name="Programs"></a> <a name="ss11.4">11.4 O&ugrave; trouver
les applications</a></h2>
<p>Si vous vous demandez si vous pouvez ou non remplacer votre
bonne vieille application DOS/Win par un &eacute;quivalent Linux,
je vous propose de parcourir les principaux
&laquo;entrep&ocirc;ts&raquo; de logiciels pour Linux : <a href=
"ftp://sunsite.unc.edu/pub/Linux">ftp://sunsite.unc.edu/pub/Linux</a>,
<a href=
"ftp://tsx-11.mit.edu/pub/linux">ftp://tsx-11.mit.edu/pub/linux</a>,
et <a href=
"ftp://ftp.funet.fi/pub/Linux">ftp://ftp.funet.fi/pub/Linux</a>.
D'autres endroits id&eacute;aux pour commencer sont la &laquo;Linux
Applications and Utilities Page&raquo; situ&eacute;e &agrave;
<a href=
"http://www.xnet.com/%20blatura/linapps.shtml">http://www.xnet.com/
blatura/linapps.shtml</a>, et la page &laquo;officielle&raquo; de
Linux &agrave; <a href=
"http://www.linux.org">http://www.linux.org</a>.</p>
<h2><a name="ss11.5">11.5 Quelques trucs impossibles sous
DOS</a></h2>
<p>Linux peut faire tout un tas de choses qui &eacute;taient
p&eacute;nibles, difficiles ou impossibles sous DOS/Win. Voici une
petite liste qui devrait vous ouvrir l'app&eacute;tit :</p>
<ul>
<li><code>at</code> vous permet de lancer des programmes &agrave;
des heures sp&eacute;cifiques ;</li>
<li><code>awk</code> est un langages simple mais n&eacute;anmoins
puissant pour manipuler des fichiers de donn&eacute;es (mais pas
seulement). Par exemple, si <code>data.dat</code> est votre fichier
contenant des donn&eacute;es sur plusieurs champs,
<blockquote>
<pre>
<code>$ awk '$2   "abc" {print $1, "\t", $4}' data.dat
</code>
</pre></blockquote>
affiche tous les premiers et quatri&egrave;mes champs de chaque
ligne de <code>data.dat</code> dont le second champ contient
&laquo;abc&raquo;.</li>
<li><code>cron</code> est utile pour effectuer des t&acirc;ches de
mani&egrave;re p&eacute;riodique, &agrave; des dates et des heures
sp&eacute;cifiques. Tapez <code>man 5 crontab</code>.</li>
<li><code>file &lt;nomdefichier&gt;</code> vous indique le type de
<code>nomdefichier</code> (texte ASCII, ex&eacute;cutable, archive,
etc.) ;</li>
<li><code>find</code> (cf. &eacute;galement la section <a href=
"#Directories:%20Trans">R&eacute;pertoires : traduction de
commandes</a>) est l'une des commandes les plus puissantes et les
plus utiles. On l'utilise pour trouver des fichiers
r&eacute;pondant &agrave; certaines caract&eacute;ristiques, et
pour effectuer des actions sur ceux-ci. L'utilisation de base de
<code>find</code> est :
<blockquote>
<pre>
<code>$ find &lt;repertoire&gt; &lt;expression&gt;
</code>
</pre></blockquote>
o&ugrave; &lt;expression&gt; inclut les crit&egrave;res de
recherche et les actions. Exemples :
<blockquote>
<pre>
<code>$ find . -type l -exec ls -l {} \;
</code>
</pre></blockquote>
trouve tous les fichiers qui sont des liens symboliques et montrent
ce sur quoi ils pointent ;
<blockquote>
<pre>
<code>$ find / -name "*.old" -ok rm {} \;
</code>
</pre></blockquote>
trouve tous les fichiers correspondant au motif donn&eacute; et les
efface, apr&egrave;s vous avoir demand&eacute; confirmation ;
<blockquote>
<pre>
<code>$ find . -perm +111
</code>
</pre></blockquote>
trouve tous les fichiers dont les droits d'acc&egrave;s sont 111
(ex&eacute;cutables) ;
<blockquote>
<pre>
<code>$ find . -user root
</code>
</pre></blockquote>
trouve tous les fichiers appartenant &agrave; root. Il y a plein
d'autres possibilit&eacute;s -- LPM ;</li>
<li><code>grep</code> trouve des motifs de caract&egrave;res dans
des fichiers. Par exemple,
<blockquote>
<pre>
<code>$ grep -l "geologie" *.tex
</code>
</pre></blockquote>
affiche tous les fichiers *.tex contenant le mot
&laquo;geologie&raquo;. La variante <code>zgrep</code> marche avec
les fichiers &laquo;gzipp&eacute;s&raquo;. LPM ;</li>
<li><b>Les expressions r&eacute;guli&egrave;res</b> constituent un
m&eacute;canisme complexe mais fichtrement puissant pour effectuer
des op&eacute;rations de recherche dans un texte. Par exemple,
<code>^a[^a-m]X{4,}txt$</code> correspond aux lignes
commen&ccedil;ant par un &laquo;a&raquo;, suivi d'un autre
caract&egrave;re ne se trouvant pas dans l'intervalle a-m, suivi de
de 4 ou plus &laquo;X&raquo; et finissant en &laquo;txt&raquo;. Les
expressions r&eacute;guli&egrave;res sont utilis&eacute;es avec des
&eacute;diteurs avanc&eacute;s, <code>less</code>, et de nombreuses
autres applications. <code>man grep</code> pour avoir une
introduction ;</li>
<li><code>script &lt;fichier_script&gt;</code> envoie le contenu de
l'&eacute;cran dans le fichier <code>fichier_script</code>
jusqu'&agrave; ce que vous lanciez la commande <code>exit</code>.
Utile pour le d&eacute;bogage ;</li>
<li><code>sudo</code> autorise les utilisateurs &agrave; effectuer
certaines t&acirc;ches de root (par ex. : le formatage et le
montage des disques. LPM) ;</li>
<li><code>uname -a</code> vous renvoie de l'info sur votre
syst&egrave;me ;</li>
<li><code>zcat</code> et <code>zless</code> sont utiles pour
parcourir et rediriger des fichiers gzipp&eacute;s sans les
d&eacute;compresser. Par exemple :
<blockquote>
<pre>
<code>$ zless fictexte.gz
$ zcat fictexte.gz | lpr
</code>
</pre></blockquote>
</li>
<li>les commandes suivantes tombent souvent &agrave; pic :
<code>bc, cal, chsh, cmp, cut, fmt, head, hexdump, nl, passwd,
printf, sort, split, strings, tac, tail, tee, touch, uniq, w, wall,
wc, whereis, write, xargs, znew.</code> LPM.</li>
</ul>
<h2><a name="ss11.6">11.6 Entra&icirc;nement &agrave; Unix sous
DOS/Windows</a></h2>
<p>Le croirez-vous ? Il existe de chouettes outils fournissant un
environnement de type UNIX sous DOS/Windows. L'un d'entre eux est
la suite Djgpp ( <a href=
"http://www.delorie.com/djgpp">http://www.delorie.com/djgpp</a>)
pour DOS, alors que Cygnus ( <a href=
"http://www.cygnus.com">http://www.cygnus.com</a>) est un portage
plus complexe pour Win32. Les deux comprennent les m&ecirc;mes
outils de d&eacute;veloppement et utilitaires GNU que sous Linux ;
vous n'aurez cependant ni la m&ecirc;me stabilit&eacute; ni les
m&ecirc;mes performances.</p>
<p>Si vous voulez avoir un avant-go&ucirc;t de Linux, essayez
Djgpp. T&eacute;l&eacute;chargez et installez les fichiers suivants
(au moment de la r&eacute;daction de ce document, la version la
plus r&eacute;cente est la 2.02) : <code>djdev202.zip, bnu281b.zip,
bsh1147b.zip, fil316b.zip, find41b.zip, grep22b.zip, gwk303b.zip,
lss332b.zip, shl112b.zip.</code>. Les instructions pour
l'installation sont fournies, et vous obtiendrez de l'aide sur
<a href=
"news:comp.os.msdos.djgpp">news:comp.os.msdos.djgpp</a>.</p>
<p>En particulier, l'utilisation de <code>bash</code> sous DOSWin
constitue une bouff&eacute;e d'air frais. Pour le configurer
correctement, &eacute;ditez le fichier <code>BOOT.BAT</code> fourni
pour l'adapter &agrave; votre configuration, mettez ensuite ces
fichiers dans votre r&eacute;pertoire d'accueil (dans la partition
Windows) en remplacement de ceux qui sont fournis :</p>
<blockquote>
<pre>
<code># voici le  _bashrc

LS_OPTIONS="-F -s --color=yes"
alias cp='cp -i'
alias d='ls -l'
alias l=less
alias ls="ls $LS_OPTIONS"
alias mv='mv -i'
alias rm='rm -i'
alias u='cd ..'
</code>
</pre></blockquote>
<blockquote>
<pre>
<code># voici le  _bprof
if [ -f  /_bashrc ]; then
  .  /_bashrc
fi
PS1='\w\$ '
PS2='&gt; '
CDPATH="$CDPATH: "
# trucs pour less(1)
LESS="-M-Q"                     # invite longue, silencieuse
LESSEDIT="%E ?lt+%lt. %f"       # edition de la ligne superieure
VISUAL="jed"                    # editeur
LESSCHARSET=latin1              # visualisation des lettre accentuees
export PS1 PS2 CDPATH LS_OPTIONS LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET
</code>
</pre></blockquote>
<h2><a name="ss11.7">11.7 Les extensions courantes et les
programmes correspondants</a></h2>
<p>Vous pouvez rencontrer d'innombrables extensions aux noms de
fichiers. En excluant les plus exotiques (en l'occurrence les
polices etc.), voici une liste de qui est qui :</p>
<ul>
<li><code>1 ... 8</code> : les pages du manuel (<code>man</code>).
Lisez-les avec <code>groff -Tascii -man &lt;file.1&gt;</code>.</li>
<li><code>arj</code> : archive fabriqu&eacute;e avec
<code>arj</code>.</li>
<li><code>dvi</code> : fichier de sortie produit par TeX (cf.
ci-dessous). <code>xdvi</code> permet de le visualiser et
<code>dvips</code> le transforme en fichier Postscript
<code>.ps</code>.</li>
<li><code>gz</code> : archive fabriqu&eacute;e avec
<code>gzip</code>.</li>
<li><code>info</code> : fichier info (esp&egrave;ce d'alternative
aux pages man). R&eacute;cup&eacute;rez <code>info</code>.</li>
<li><code>lsm</code> : fichier Linux Software Map. Il s'agit d'un
fichier ASCII ordinaire contenant la description d'un
paquetage.</li>
<li><code>ps</code> : fichier PostScript. Pour le visualiser,
r&eacute;up&eacute;rez <code>gs</code> et, optionnellement
<code>ghostview</code> ou <code>gv</code>.</li>
<li><code>rpm</code> : paquetage Red Hat. Il est possible de
l'installer sur n'importe quel syst&egrave;me &agrave; l'aide du
gestionnaire de paquetages <code>rpm</code>.</li>
<li><code>taz, tar.Z</code> : archive fabriqu&eacute;e avec
<code>tar</code> et compress&eacute;e avec
<code>compress</code>.</li>
<li><code>tgz, tar.gz</code> : archive fabriqu&eacute;e avec
<code>tar</code> et compress&eacute;e avec <code>gzip</code>.</li>
<li><code>tex</code> : fichier texte &agrave; fournir en
entr&eacute;e &agrave; TeX, un puissant syst&egrave;me de
composition de documents. R&eacute;cup&eacute;rez le paquetage
<code>tex</code> disponible pour de nombreuses distributions.</li>
<li><code>texi</code> : fichier texinfo, peut produire aussi bien
des fichiers TeX et des fichiers info (cf. <code>info</code>).
R&eacute;cup&eacute;rez <code>texinfo</code>.</li>
<li><code>xbm, xpm, xwd</code> : fichiers graphiques.</li>
<li><code>Z</code> : archive fabriqu&eacute;e avec
<code>compress</code>.</li>
</ul>
<h2><a name="ss11.8">11.8 Conversion de fichiers</a></h2>
<p>Si vous devez &eacute;changer des fichiers entre DOS/Windows et
Linux, m&eacute;fiez-vous du probl&egrave;me des &laquo;sauts de
ligne&raquo;. Sous DOS, chaque ligne se termine par CR/LF (plus
pr&eacute;cis&eacute;ment, ASCII 13 + ASCII 10), alors que Linux se
contente de LF. Si vous essayez d'&eacute;diter un fichier DOS sous
Linux, il est probable que chaque ligne se termine par un
&eacute;trange caract&egrave;re &laquo;M&raquo; ; un texte Linux
appara&icirc;tra sous DOS comme une ligne unique extr&ecirc;mement
longue et aucun paragraphe ne sera pr&eacute;sent. Il existe
quelques outils, <code>dos2unix</code> et <code>unix2dos</code>,
pour convertir les fichiers.</p>
<p>Si vos fichiers texte contiennent des caract&egrave;res
accentu&eacute;s, assurez-vous qu'ils ont &eacute;t&eacute; saisis
sous Windows (avec Notepad) et non sous DOS ; sinon tous les
caract&egrave;res accentu&eacute;s seront joyeusement
m&eacute;lang&eacute;s.</p>
<p>Pour convertir des fichiers Word ou WordPerfect vers des
fichiers texte pur, le sujet est un peu plus d&eacute;licat mais
c'est possible. Vous aurez besoin de l'un des outils qui se
trouvent sur les sites CTAN ; l'un d'entre eux &eacute;tant
<a href="ftp://ftp.tex.ac.uk">ftp://ftp.tex.ac.uk</a>.
R&eacute;cup&eacute;rez le paquetage <code>word2x</code> du
r&eacute;pertoire /pub/tex/tools/, ou essayez l'un des paquetages
disponibles dans le r&eacute;pertoire /pub/tex/support/. En
particulier, <code>word2x</code> convertit les fichiers Word 6,
alors que pour Word 7, vous aurez besoin de <code>mswordview</code>
( <a href=
"http://www.csn.ul.ie/%20caolan/docs/MSWordView.html">http://www.csn.ul.ie/
caolan/docs/MSWordView.html</a>) qui les transforme en HTML.</p>
<h2><a name="ss11.9">11.9 Suites bureautiques gratuites</a></h2>
<p>Si la conversion de fichiers ne suffit pas, vous avez le choix
de vous faire les dents sur un paquetage (gratuit !) du type
Microsoft Office.</p>
<p>La suite StarOffice est gratuite pour une utilisation
personnelle. Elle est volumineuse, un peu lente, mais tr&egrave;s
bonne quoi qu'il en soit : elle offre de nombreuses
fonctionnalit&eacute;s absentes de Microsoft Office. Elle est
&eacute;galement capable de lire et d'&eacute;crire des fichiers
Word et Excel, bien que la conversion ne soit pas toujours
parfaite. Page Web : <a href=
"http://www.stardivision.com">http://www.stardivision.com</a>.</p>
<p>Un autre paquetage de bonne qualit&eacute; est Corel
WordPerfect, dont une &eacute;dition gratuite est disponible en
t&eacute;l&eacute;chargement. Dois-je en dire plus ? Allez la
r&eacute;cup&eacute;rer sur : <a href=
"http://www.corel.com">http://www.corel.com</a>.</p>
<h2><a name="The End"></a> <a name="s12">12. La fin, du moins pour
l'instant</a></h2>
<p>F&eacute;licitations ! &Agrave; pr&eacute;sent, vous avez
quelques notions d'UNIX et &ecirc;tes pr&ecirc;t pour commencer
&agrave; travailler. Souvenez-vous que votre connaissance du
syst&egrave;me est encore limit&eacute;e, et qu'il est
pr&eacute;f&eacute;rable d'avoir un peu plus de pratique de Linux
pour l'utiliser confortablement. Mais si tout ce que vous aviez
&agrave; faire &eacute;tait de r&eacute;cup&eacute;rer un paquet
d'applications pour commencer &agrave; travailler, ce que j'ai
inclus dans ce document est suffisant.</p>
<p>Je suis persuad&eacute; qu'il vous plaira d'utiliser Linux et
que vous continuerez votre apprentissage -- comme tout le monde. Je
prends &eacute;galement le pari que vous ne retournerez plus jamais
sous DOSWin ! J'esp&egrave;re avoir &eacute;t&eacute;
compr&eacute;hensible et avoir rendu service &agrave; mes 3 ou 4
lecteurs.</p>
<h2><a name="ss12.1">12.1 Droits d'auteur</a></h2>
<p>Sauf mentionn&eacute; explicitement, les documents Linux HOWTO
sont la propri&eacute;t&eacute; de leurs auteurs respectifs. Les
documents Linux HOWTO peuvent &ecirc;tre reproduits et
distribu&eacute;s en totalit&eacute; ou en partie, sur n'importe
quel support physique ou &eacute;lectronique, &agrave; condition
que cette note concernant les droits d'auteur soit pr&eacute;sente
sur toutes les copies. La redistribution commerciale est
autoris&eacute;e et encourag&eacute;e ; cependant, l'auteur
aimerait &ecirc;tre tenu inform&eacute; de toute distribution de ce
type.</p>
<p>Toute traduction, tous travaux d&eacute;riv&eacute;s ou toute
compilation int&eacute;grant des documents Linux HOWTO doivent
&ecirc;tre couverts par cette note concernant les droits d'auteur.
En l'occurrence, vous n'avez pas le droit de produire un travail
d&eacute;riv&eacute; d'un HOWTO et d'imposer des restrictions
suppl&eacute;mentaires &agrave; sa distribution. Des exceptions
&agrave; ces r&egrave;gles peuvent &ecirc;tre accord&eacute;es sous
certaines conditions ; veuillez contacter le coordinateur des Linux
HOWTO &agrave; l'adresse indiqu&eacute;e ci-dessous.</p>
<p>Bref, nous souhaitons promouvoir la diss&eacute;mination de
cette information &agrave; travers le plus grand nombre possible de
canaux. N&eacute;anmoins, nous voulons conserver les droits
d'auteur des documents HOWTO, et aimerions &ecirc;tre tenus au
courant de tout projet de redistribution des HOWTOs.</p>
<p>Si vous avez des questions, veuillez contacter Tim Bynum, le
coordinateur des Linux HOWTO, par courrier &eacute;lectronique
&agrave; l'adresse <a href=
"linux-howto@sunsite.unc.edu">linux-howto@sunsite.unc.edu</a> via
email.</p>
<h2><a name="ss12.2">12.2 Responsabilit&eacute;s</a></h2>
<p>Le &laquo;From DOS/Windows to Linux HOWTO&raquo; a
&eacute;t&eacute; &eacute;crit par Guido Gonzato, <a href=
"REMOVE_MEguido@ibogfs.cineca.it">REMOVE_MEguido@ibogfs.cineca.it</a>.
Un grand merci &agrave; Matt Welsh, l'auteur de &laquo;Linux
Installation and Getting Started&raquo; &agrave; Ian Jackson,
l'auteur de &laquo;Linux frequently asked questions with
answers&raquo;, &agrave; Guiseppe Zanetti, l'auteur de
&laquo;Linux&raquo; &agrave; toutes les personnes qui m'ont
envoy&eacute; des suggestions par courrier &eacute;lectronique, et
des remerciements particuliers &agrave; Linux Thorvalds et GNU qui
nous ont apport&eacute; Linux.</p>
<p>Ce document est fourni &laquo;en l'&eacute;tat&raquo;. Je me
suis efforc&eacute; de le r&eacute;diger avec toute l'exactitude
possible, mais l'utilisation que vous faites de l'information qu'il
contient est &agrave; vos risques et p&eacute;rils. Je ne pourrai
en aucun cas &ecirc;tre tenu pour responsable de dommages
r&eacute;sultant de l'utilisation de ce travail.</p>
<p>Tout retour est le bienvenu. N'h&eacute;sitez pas &agrave; me
contacter pour toute question, suggestion, critique incendiaire
etc.</p>
<p>Profitez de la vie et de Linux,</p>
<p>Guido <code>=8-)</code></p>
</body>
</html>