This file is indexed.

/usr/share/doc/HOWTO/de-html/DE-PCMCIA-HOWTO-4.html is in doc-linux-de 2003.10-5.

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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.65">
 <TITLE>Linux PCMCIA HOWTO: Gebrauch und Eigenschaften</TITLE>
 <LINK HREF="DE-PCMCIA-HOWTO-5.html" REL=next>
 <LINK HREF="DE-PCMCIA-HOWTO-3.html" REL=previous>
 <LINK HREF="DE-PCMCIA-HOWTO.html#toc4" REL=contents>
</HEAD>
<BODY>
<A HREF="DE-PCMCIA-HOWTO-5.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-PCMCIA-HOWTO-3.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-PCMCIA-HOWTO.html#toc4"><IMG SRC="toc.png" ALT="Inhalt"></A>
<HR>
<H2><A NAME="s4">4.</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4">Gebrauch und Eigenschaften</A></H2>

<H2><A NAME="ss4.1">4.1</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.1">Werkzeuge zur &Uuml;berwachung der PCMCIA-Ger&auml;te        </A>
<!--PCMCIA!Werkzeuge--></H2>

<P>Der <CODE>cardmgr</CODE>-Daemon piept normalerweise, wenn eine neue
Karte eingef&uuml;hrt wird. Der Piepton zeigt den Status der neuen
Karte an. Zwei hohe T&ouml;ne bedeuten, da&szlig; die Karte
erkannt und konfiguriert wurde. Ein hoher und ein tiefer Ton zeigen
an, da&szlig; die Karte erkannt aber nicht konfiguriert werden
konnte. Lediglich ein tiefer Ton zeigt an, da&szlig; die neue Karte
nicht erkannt wurde.</P>
<P>Wenn die Module korrekt geladen wurden, sollte das Kommando
<CODE>lsmod</CODE>, ohne eingef&uuml;hrte Karten, folgende Ausgabe zeigen:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
Module:        #pages:  Used by:
ds                 2
i82365             3
pcmcia_core        7    [ds i82365]
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Alle PCMCIA-Module und der <CODE>cardmgr</CODE>-Daemon senden
Statusmeldungen an den <CODE>syslog</CODE>-Daemon. Diese Meldungen
werden dann gew&ouml;hnlich in die Datei <CODE>/var/log/messages</CODE>
oder <CODE>/usr/adm/messages</CODE> geschrieben. Diese Dateien sollten bei
der Fehlersuche als erstes untersucht werden. Wenn ein
Fehlerreport geschrieben wird, sollte der Inhalt dieser Datei
mitgeschickt werden. Wenn Probleme bestehen, die Systemmeldungen zu
finden, sollte die Datei <CODE>/etc/syslogd.conf</CODE> daraufhin
untersucht werden, wie die verschiedenen Nachrichtenklassen behandelt
werden.</P>
<P>
<!--
/var/run/stab
-->

<!--
PCMCIA!/var/run/stab
-->

<CODE>cardmgr</CODE> speichert einige Informationen der aktuell genutzten 
Karten in jedem Slot in der Datei <CODE>/var/run/stab</CODE>. Hier ist
ein Beispiel f&uuml;r den Inhalt einer solchen Datei:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
Socket 0: Adaptec APA-1460 SlimSCSI
0       scsi    aha152x_cs      0       sda     8       0
0       scsi    aha152x_cs      1       scd0    11      0
Socket 1: Serial or Modem Card
1       serial  serial_cs       0       ttyS1   5       65
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Im ersten Feld steht der verwendet Slot, das zweite enth&auml;lt die
Ger&auml;teklasse, das dritte den Treibernamen, das vierte wird
verwendet, um die verschiedenen Ger&auml;te, die an den gleichen Treiber
angeschlossen sind, durchzunumerieren. Das f&uuml;nfte Feld ist der
Ger&auml;tename und die letzten beiden Felder enthalten die Major- und
Minor-Ger&auml;tenummern, falls diese angebbar sind.</P>
<P>
<!--
PCMCIA!cardctl!config
-->

<!--
cardctl!config
-->

Das Kommando <CODE>cardctl</CODE> kann verwendet werden, um den Status der
Slots zu ermitteln oder zu sehen, wie sie konfiguriert sind. Hier ist
eine Beispielausgabe des <CODE>cardctl config</CODE> Kommandos:
<BLOCKQUOTE><CODE>
<PRE>
Socket 0:
Socket 1:
  Vcc = 5.0, Vpp1 = 0.0, Vpp2 = 0.0
  Card type is memory and I/O
  IRQ 3 is dynamic shared, level mode, enabled
  Speaker output is enabled
  Function 0:
    Config register base = 0x0800
      Option = 0x63, status = 0x08
    I/O window 1: 0x0280 to 0x02bf, auto sized
    I/O window 2: 0x02f8 to 0x02ff, 8 bit
</PRE>
</CODE></BLOCKQUOTE>

<!--
PCMCIA!cardinfo
-->

<!--
cardinfo
-->

Wenn X l&auml;uft, wird das Programm <CODE>cardinfo</CODE> in einer
grafischen Anzeige den Status aller PCMCIA-Slots anzeigen,
&auml;hnlich wie es <CODE>cardctl config</CODE> tut.</P>

<H2><A NAME="ss4.2">4.2</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.2">&Uuml;berblick der PCMCIA-Konfigurationsskripte       </A>
<!--PCMCIA!Konfigurationsskripte--></H2>

<P>Jedes PCMCIA-Ger&auml;t ist mit einer <EM>Klasse</EM> verkn&uuml;pft,
welche beschreibt, wie es konfiguriert und gehandhabt werden
soll. Klassen sind mit Ger&auml;tetreibern verkn&uuml;pft, die in
<CODE>/etc/pcmcia/config</CODE> beschrieben sind. Aktuell sind dort
f&uuml;nf Ein-/Ausgabe-Ger&auml;teklassen (Netzwerk, SCSI, CD-ROM,
Festplatten und serielle Ger&auml;te) und drei Speicherklassen (FTL,
memory und pcmem) definiert. Zu jeder Klasse existieren zwei Skripte in
<CODE>/etc/pcmcia/config</CODE>: Ein Hauptkonfigurationsskript,
z.B. <CODE>/etc/pcmcia/scsi</CODE> f&uuml;r SCSI-Ger&auml;te, und ein
Optionsskript, z.B. <CODE>/etc/pcmcia/scsi.opts</CODE>. Das Hauptskript
f&uuml;r ein Ger&auml;t wird aufgerufen, um eine Karte zu
konfigurieren, die gerade eingeschoben wird und um das Ger&auml;t
herunterzufahren, wenn die Karte herausgenommen wird. F&uuml;r Karten
mit mehreren Ger&auml;ten wird das Skript f&uuml;r jedes Ger&auml;t
gestartet.</P>
<P>Das Konfigurationsskript entnimmt als erstes einige Informationen aus
<CODE>/var/run/stab</CODE>. Jedes Skript bildet eine
<EM>Ger&auml;teadresse</EM>, welche eindeutig das Ger&auml;t
beschreibt, welches es konfiguriert, und speichert sie in der <CODE>ADDRESS</CODE>
Variablen. Diese wird an das <CODE>*.opts</CODE> Skript
weitergegeben. Dieses Skript soll dann die Informationen f&uuml;r die
Konfiguration des Ger&auml;tes an dieser Adresse liefern. Bei einigen
Ger&auml;ten ist diese Adresse lediglich die Slotnummer, bei anderen
enth&auml;lt sie zus&auml;tzliche Informationen, die hilfreich bei der
Konfiguration sein k&ouml;nnen. Zum Beispiel enthalten die
Ger&auml;teadressen von Netzwerkkarten die Ethernetadressen. Auf diese 
Weise kann das <CODE>network.opts</CODE>-Skript diese Karte von anderen 
Netzwerkkarten unterscheiden und somit zwischen verschiedenen Konfigurationen
w&auml;hlen.</P>
<P>Der erste Teil aller Ger&auml;teadressen ist das aktuelle PCMCIA-Schema. 
Dieser Parameter wird verwendet, um zwischen verschiedene
S&auml;tzen von Konfigurationen zu w&auml;hlen. Eine Anwendung der
Schemata k&ouml;nnte es sein, eine Konfiguration f&uuml;r daheim und eine
f&uuml;r die Arbeit zu haben, welche verschiedene Parameter f&uuml;r
die Netzwerkkonfiguration ben&ouml;tigen. Das aktuelle Schema wird mit dem
Kommando <CODE>cardctl</CODE> ausgew&auml;hlt. Die Voreinstellung, wenn kein
Schema gesetzt wird, ist <CODE>default</CODE>.</P>
<P>Eine generelle Regel f&uuml;r die Konfiguration von Linux auf
Notebooks ist, da&szlig; alle PCMCIA-Ger&auml;te nur &uuml;ber die
PCMCIA-Ger&auml;te-Skripte konfiguriert werden. Man sollte
nicht versuchen, PCMCIA-Ger&auml;te wie permanent angeschlossene
Ger&auml;te zu konfigurieren.</P>

<H2><A NAME="ss4.3">4.3</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.3">PCMCIA-Netzwerkkarten        </A>
<!--PCMCIA!Netzwerkkarten-->       <!--Netzwerk!Treiber!PCMCIA-Karten--></H2>

<P>Ethernetkarten unter Linux haben normalerweise Namen wie <CODE>eth0</CODE>, <CODE>eth1</CODE>
und so weiter. Token-Ring-Karten werden &auml;hnlich gehandhabt,
allerdings haben sie Namen wie <CODE>tr0</CODE>, <CODE>tr1</CODE> und so weiter. Das Kommando
<CODE>ifconfig</CODE> wird verwendet, um den Status von Netzwerkkarten zu
erfragen oder zu &auml;ndern. Eine Besonderheit unter Linux ist,
da&szlig; diese Netzwerkkarten keine entsprechenden Ger&auml;tedateien
in dem Verzeichnis <CODE>/dev</CODE> besitzen. Daher sollte man sich nicht
wundern, wenn man dort auch keine findet.</P>
<P>
<!--
/etc/pcmcia/network
-->

<!--
PCMCIA!/etc/pcmcia/network
-->

Wenn eine PCMCIA-Ethernetkarte entdeckt wird, so bekommt sie den ersten
verf&uuml;gbaren Schnittstellennamen; dieser wird wahrscheinlich
<CODE>eth0</CODE> sein. <CODE>cardmgr</CODE> wird das Skript
<CODE>/etc/pcmcia/network</CODE> starten, um die Karte zu konfigurieren.</P>
<P>
<!--
/etc/pcmcia/network.opts
-->

<!--
PCMCIA!/etc/pcmcia/network.opts
-->

Es ist nicht ratsam, die Konfiguration der PCMCIA-Ethernetkarte in die
Startskripte des Linux-Systems einzutragen, da es passieren kann,
da&szlig; die Karte noch nicht vorhanden ist, wenn Linux hochgefahren
wird. Wenn das System eine automatische Prozedur zur Konfiguration des
Netzwerks hat, so sollte hier angegeben werden, da&szlig; keine
Netzwerkkarte vorhanden ist. Stattdessen sollte die Datei
<CODE>/etc/pcmcia/network.opts</CODE> den Bed&uuml;rfnissen des Netzwerks
angepa&szlig;t werden. Die Skripte <CODE>network</CODE> und
<CODE>network.opts</CODE> werden nur ausgef&uuml;hrt, wenn eine
Ethernetkarte anwesend ist.</P>
<P>Die Ger&auml;teadresse, die <CODE>network.opts</CODE> &uuml;bergeben wird,
besteht aus vier durch Kommata getrennte Felder: Schema, Slotnummer,
Ger&auml;teinstanz und die Hardware-Ethernetadresse der Karte. Die
Ger&auml;teinstanz wird verwendet, um die Ger&auml;te von Karten,
die mehrere Netzwerkschnittstellen enthalten, durchzunumerieren. Sie
wird daher meistens 0 sein. Wenn mehrere Netzwerkkarten f&uuml;r
verschiedene Verwendungen benutzt werden sollen, so besteht eine
M&ouml;glichkeit darin, die Karten &uuml;ber ihre verschiedenen
Slotnummern zu konfigurieren wie z.B. hier:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
case "$ADDRESS" in
*,0,*,*)
    # Definition der Netzwerkkarte in Slot 0
    ;;
*,1,*,*)
    # Definition der Netzwerkkarte in Slot 1
    ;;
esac
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Alternativ k&ouml;nnen diese Karten &uuml;ber ihre Hardware-Adressen
konfiguriert werden:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
case "$ADDRESS" in
*,*,*,00:80:C8:76:00:B1)
    # Definition einer D-Link Karte
    ;;
*,*,*,08:00:5A:44:80:01)
    # Definition einer IBM Karte
esac
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>
<!--
NFS!PCMCIA Netzwerkkarten
-->

Um automatisch NFS-Dateisysteme einzubinden oder zu entfernen, ist es sinnvoll,
alle diese Dateisysteme als ersten Schritt in die Datei <CODE>/etc/fstab</CODE>
einzutragen. Allerdings sollte im Optionsfeld der Eintrag
<CODE>noauto</CODE> stehen. In der Datei <CODE>network.opts</CODE> m&uuml;ssen
dann die Verzeichnisse, in die die NFS-Dateisysteme gemountet werden,
in der Variablen <CODE>MOUNTS</CODE> aufgelistet werden. Es ist besonders wichtig,
entweder <CODE>cardctl</CODE> oder <CODE>cardinfo</CODE> zu verwenden, um eine
Netzwerkverbindung zu unterbrechen, wenn NFS-Dateisysteme auf diese
Weise verwendet werden. Es ist nicht m&ouml;glich, ein NFS-Dateisystem
sauber abzubauen, wenn lediglich die Karte ohne Warnung herausgenommen
wird.</P>
<P>Zus&auml;tzlich zur gew&ouml;hnlichen Netzwerkkonfiguration kann das
Skript <CODE>network.opts</CODE> zus&auml;tzliche Funktionen ausf&uuml;hren, wenn die
Netzwerkkarte schon konfiguriert worden ist oder bevor die
Netzwerkverbindung abgebaut werden kann. Wenn <CODE>network.opts</CODE>
eine Shellfunktion <CODE>start_fn</CODE> definiert, so wird diese nach der
Konfiguration der Karte aufgerufen. Dabei wird der Schnittstellenname
als einziges Argument &uuml;bergeben. Analog wird die Funktion
<CODE>stop_fn</CODE>, wenn sie definiert ist, aufgerufen, bevor die
Netzwerkkarte heruntergefahren wird.</P>

<H3>Auswahl des Transceivers        <!--PCMCIA!Netzwerkkarten!Transceiver-->       <!--ifport-->       <!--PCMCIA!ifport--></H3>

<P>Der Transceiver-Typ kann durch Verwendung der Variablen
<CODE>IF_PORT</CODE> bestimmt werden. Dies kann entweder ein numerischer
Wert sein, wie er in fr&uuml;heren PCMCIA-Versionen verwendet wurde,
oder ein Schl&uuml;sselwort, das den Transceiver-Typ bestimmt. Das
voreingestellte Verhalten aller Netzwerktreiber ist es, den Typ
automatisch zu erkennen, wenn dies m&ouml;glich ist, oder 
10baseT zu verwenden. Das Kommando <CODE>ifport</CODE> kann verwendet
werden, um den aktuellen Typ zu kontrollieren oder zu &auml;ndern. Zum
Beispiel:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifport eth0 10base2
# ifport eth0 
eth0    2 (10base2)
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Aktuelle Versionen des 3c589-Treibers versuchen, die Netzwerkverbindung
automatisch zu entdecken. Allerdings scheint es so, als ob dies noch
nicht einwandfrei funktioniert. Damit die automatische Erkennung
l&auml;uft, sollte das Netzwerkkabel an der Karte angeschlossen sein,
wenn diese konfiguriert wird. Alternativ kann man nach Anschlu&szlig;
des Netzes den Treiber zwingen, die Verbindung noch einmal zu
&uuml;berpr&uuml;fen:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig eth0 down up
</PRE>
</CODE></BLOCKQUOTE>
</P>

<H3>Anmerkungen zu speziellen Karten        <!--PCMCIA!Netzwerkkarten!Anmerkungen--></H3>

<P>
<UL>
<LI>Bei IBM CCAE und Socket EA Karten mu&szlig; der Transceiver-Typ
(10base2, 10baseT oder AUI) nach Konfiguration der Netzwerkkarte
festgelegt werden. In der Systemlog-Datei sollte danach der richtige
Transceiver-Typ erscheinen. Dies sollte man &uuml;berpr&uuml;fen.
</LI>
<LI>Die Treiber f&uuml;r SMC-, Megahertz-, Ositech- und 3Com-Karten
sollten den angeschlossen Netzwerktyp (10base2 oder 10baseT)
automatisch erkennen. Das Setzen des Transceiver-Typs, wenn der Treiber
geladen wird, hilft der Karte, den richtigen Typ zu erraten.
</LI>
<LI>Die Farallon EtherWave-Karte basiert auf einer 3Com 3c589 mit
einem speziellen Transceiver. Obwohl die EtherWave die
10baseT-Verbindungen verwendet, verlangt der Transceiver, da&szlig;
der 3c589-Treiber den 10base2-Modus verwendet.
</LI>
<LI>Wenn Probleme mit den Karten IBM CCAE, NE4100, Thomas Conrad
oder Kingston bestehen, sollte man die Speicherzugriffszeit
erh&ouml;hen, indem man die Option <CODE>mem_speed=\#</CODE> beim Modul
<CODE>pcnet_cs</CODE> verwendet. Ein Beispiel, wie dies zu machen ist, findet 
man in der Standarddatei <CODE>config.opts</CODE>. Man sollte Zeiten bis zu 1000
Nanosekunden verwenden.
</LI>
<LI>F&uuml;r die New Media Ethernetkarte kann es bei einigen Systemen
notwendig sein, die Zugriffszeit auf die I/O-Ports zu
erh&ouml;hen. Dies geschieht mit der Option <CODE>io_speed=\#</CODE>, wenn
das Modul <CODE>pcmcia_core</CODE> geladen wird. Um diese Option zu setzen,
mu&szlig; die Variable <CODE>CORE_OPTS</CODE> im Startskript editiert
werden.
</LI>
<LI>Die Multicastunterst&uuml;tzung des New Media Ethernettreibers ist 
unvollst&auml;ndig. Der neueste Treiber wird mit den
Multicast-Kerneln funktionieren, aber s&auml;mtliche
Multicast-Pakete ignorieren. Der Promiscuous Modus
sollte normal funktionieren.
</LI>
<LI>Der Treiber f&uuml;r IBM und 3Com Token-Ring-Karten scheint sich
sehr schlecht zu verhalten, wenn die Karten bei der Initialisierung
nicht mit einem Ring verbunden sind. Diese Karten sollten
immer mit dem Netz verbunden werden, bevor sie eingeschoben werden.
</LI>
<LI>Neuere Linksys- und D-Link-Karten haben einen einzigartigen Weg,
um den Transceiver-Typ auszuw&auml;hlen. Bis David einige
Informationen von Linksys erh&auml;lt, ist der einzig gangbare Umweg
der, da&szlig; zuerst DOS gestartet wird und die herstellertypischen
Konfigurationsprogramme verwendet werden, um den Transceiver-Typ
auszuw&auml;hlen. Danach sollte ein Warmstart zu Linux erfolgen.</LI>
</UL>
</P>

<H3>Untersuchung von Problemen mit Netzwerkkarten        <!--PCMCIA!Netzwerkkarten!Probleme-->       <!--PCMCIA!Probleme!Netzwerkkarte--></H3>

<P>
<UL>
<LI>Wird die Karte als Ethernetkarte erkannt? &Uuml;berpr&uuml;fen Sie
die Systemlog-Dateien, stellen Sie sicher, da&szlig; <CODE>cardmgr</CODE>
die Karte korrekt erkennt und die richtigen Netzwerktreiber startet.
Wenn dies nicht geschieht, kann es sein, da&szlig; die Karte trotzdem
verwendbar ist, wenn sie mit einer unterst&uuml;tzten Karte baugleich
ist. Dieses ist am einfachsten, wenn die Karte, was h&auml;ufig der Fall
ist, kompatibel zur NE2000 ist.
</LI>
<LI>Ist die Karte korrekt konfiguriert? Wenn eine unterst&uuml;tzte
Karte verwendet wird und diese von <CODE>cardmgr</CODE> erkannt wird, aber
dennoch nicht funktioniert, so kann ein Interrupt- oder Port-Konflikt
mit einem anderen Ger&auml;t vorliegen. Dazu sollte man die Ressourcen,
die die Karte verwendet, mit Hilfe der Systemlog-Datei herausfinden und
versuchen, diese in der Datei <CODE>/etc/pcmcia/config.opts</CODE>
auszuschlie&szlig;en, um die Karte zu zwingen, andere zu verwenden.
</LI>
<LI>Wenn Meldungen wie »network unreachable« bei Zugriff auf
das Netzwerk erscheinen, dann wurde wahrscheinlich die Datei
<CODE>/etc/pcmcia/network.opts</CODE> falsch editiert. Auf der anderen
Seite verursachen falsch konfigurierte Karten keine Meldungen.
</LI>
<LI>Bei der Analyse der Probleme in der Datei
<CODE>/etc/pcmcia/network.opts</CODE> sollte man als erstes mit dem
Kommando <CODE>ping</CODE> ausprobieren, ob andere Rechner im gleichen Subnetz
unter Verwendung ihrer IP-Adresse erreichbar sind. Danach sollte man 
versuchen, das Gateway und zum Schlu&szlig; Rechner innerhalb anderer 
Subnetze mittels <CODE>ping</CODE> zu erreichen. Die Verwendung 
von <CODE>ping</CODE> mit Computernamen sollte erst nach diesem 
simpleren Test erfolgen.
</LI>
<LI>Man sollte sicherstellen, da&szlig; das Problem wirklich ein
PCMCIA-Problem ist. Es kann hilfreich sein, zu kontrollieren, ob die
Karte unter DOS mit den Treibern des Herstellers einwandfrei l&auml;uft. 
Man sollte die &Auml;nderungen in dem Skript <CODE>/etc/pcmcia/network.opts</CODE>
doppelt kontrollieren. Der Anschlu&szlig; des Kabels, das
T-St&uuml;ck, die Abschlu&szlig;widerst&auml;nde etc. sollten ebenfalls gr&uuml;ndlich
&uuml;berpr&uuml;ft werden.</LI>
</UL>
</P>

<H2><A NAME="ss4.4">4.4</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.4">Serielle Schnittstellen und Modems        </A>
<!--PCMCIA!serielle Schnittstelle-->       <!--PCMCIA!Modem-->       <!--serielle Schnittstelle!PCMCIA Karte-->       <!--Modem!PCMCIA Karte--></H2>

<P>Unter Linux wird auf serielle Schnittstellen &uuml;ber die speziellen Dateien
<CODE>/dev/cua*</CODE> und <CODE>/dev/ttyS*</CODE> zugegriffen. Die
<CODE>ttyS*</CODE> Dateien werden f&uuml;r eingehende Verbindungen
(z.B. angeschlossenes Terminal) und die Dateien <CODE>cua*</CODE> f&uuml;r
ausgehende Verbindungen (z.B. Modem) verwendet. Jeder physische
Anschlu&szlig; hat sowohl eine <CODE>ttyS*</CODE> als auch eine <CODE>cua*</CODE>
Ger&auml;tedatei: Es h&auml;ngt von einem selber ab, welche man
verwendet. Jedoch ist ein Trend bei Linux zu erkennen, die
<CODE>cua*</CODE> Devices nicht mehr zu benutzen. Debian GNU/Linux wird
bereits ganz ohne die <CODE>cua*</CODE> Devices ausgeliefert. Die Konfiguration 
einer seriellen Schnittstelle kann mit dem
Kommando <CODE>setserial</CODE> untersucht und ver&auml;ndert werden.</P>
<P>
<!--
/etc/pcmcia/serial.opts
-->

<!--
PCMCIA!/etc/pcmcia/serial.opts
-->

Wird eine serielle oder Modem-PCMCIA-Karte entdeckt, so erh&auml;lt
sie die erste freie Ger&auml;teadresse. Dies wird gew&ouml;hnlich,
abh&auml;ngig von der Zahl der im Computer bereits eingebauten seriellen 
Schnittstellen, <CODE>/dev/ttyS1</CODE> (<CODE>cua1</CODE>) oder <CODE>/dev/ttyS2</CODE> 
(<CODE>cua2</CODE>) sein. Die <CODE>ttyS*</CODE> Ger&auml;te sind diejenigen, die in
<CODE>/var/run/stab</CODE> angegeben sind. Das Standardskript f&uuml;r
serielle Ger&auml;te, <CODE>/etc/pcmcia/serial.opts</CODE>, wird das
entsprechende <CODE>cua*</CODE> Ger&auml;t auf die Datei
<CODE>/dev/modem</CODE> linken.</P>
<P>Man sollte nicht versuchen, das Systemstartskript f&uuml;r serielle
Ger&auml;te zur Konfiguration von PCMCIA-Modems zu verwenden. Dieses
Skript sollte nur zur Konfiguration nicht-entfernbarer Ger&auml;te
benutzt werden. F&uuml;r die spezielle Konfiguration eines Modems
dient die Datei <CODE>/etc/pcmcia/serial.opts</CODE>. Auch sollte
nicht das Kommando <CODE>setserial</CODE> verwendet werden, um die
I/O-Adresse oder den Interrupt eines seriellen PCMCIA-Ger&auml;tes
zu ver&auml;ndern. Dies w&uuml;rde den seriellen Treiber anweisen, das
Ger&auml;t an einer anderen Stelle zu suchen. Dies w&uuml;rde aber nichts
an der aktuellen Einstellung der PCMCIA-Karte &auml;ndern. Das
serielle Konfigurationsskript erlaubt einem, sowohl
<CODE>setserial</CODE>-Optionen anzugeben, als auch festzulegen, ob eine 
Zeile f&uuml;r diese Schnittstelle in die Datei <CODE>/etc/inittab</CODE> 
eingef&uuml;gt werden soll.</P>
<P>Die Ger&auml;teadresse, die dem Skript <CODE>serial.opts</CODE>
&uuml;bergeben wird, besteht aus drei durch Kommata getrennte Felder:
Das erste enth&auml;lt das Schema, das zweite die Slotnummer und das
dritte die Ger&auml;teinstanz. Letztere kann f&uuml;r Karten, die
mehrere serielle Anschl&uuml;sse unterst&uuml;tzen, verschiedene Werte
annehmen. F&uuml;r Karten, die nur einen Anschlu&szlig; haben, ist
dieser Wert immer 0. Wenn gew&ouml;hnlich mehrere PCMCIA-Modemkarten
verwendet werden, k&ouml;nnen diese durch die Slotnummer
unterschiedlich konfiguriert werden, wie z.B.:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
case "$ADDRESS" in
*,0,*)
    # Optionen Modem in Slot 0
    LINK=/dev/modem0
    ;;
*,1,*)
    # Optionen Modem in Slot 1
    LINK=/dev/modem1
    ;;
esac
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Wenn ein PCMCIA-Modem bereits konfiguriert ist, wenn Linux gestartet
wird, kann es passieren, da&szlig; das Modem f&auml;lschlicherweise
als eine gew&ouml;hnliche fest eingebaute serielle Schnittstelle identifiziert 
wird.  Dies ist harmlos. Wenn der
PCMCIA-Treiber Kontrolle &uuml;ber das Modem &uuml;bernimmt, wird diesem eine
andere Ger&auml;tedatei zugewiesen. Es ist daher gut, entweder die
Datei <CODE>/var/run/stab</CODE> zu durchforsten oder <CODE>/dev/modem</CODE>
zu verwenden, anstatt zu erwarten, da&szlig; ein PCMCIA-Modem stets der
gleichen Ger&auml;tedatei zugeordnet wird.</P>
<P>Wenn der Kernel konfiguriert wurde, die Grundtreiber f&uuml;r die
seriellen Ger&auml;te als ein Modul zu laden, so mu&szlig; die Datei
<CODE>/etc/pcmcia/config</CODE> editiert werden, damit diese Module
geladen werden. &Auml;ndern Sie in diesem Fall den seriellen
Ger&auml;teeintrag auf diese Weise:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
device "serial_cs"
  class "serial" module "char/serial", "serial_cs"
</PRE>
</CODE></BLOCKQUOTE>
</P>

<H3>Analyse von Problemen mit seriellen Ger&auml;ten        <!--PCMCIA!Probleme!serielle Schnittstelle-->       <!--PCMCIA!Probleme!Modem--></H3>


<P>
<UL>
<LI>Ist die Karte als ein Modem erkannt worden? Kontrollieren Sie die
Systemlog-Dateien und stellen Sie sicher, da&szlig; <CODE>cardmgr</CODE> die
Karte korrekt erkennt und den <CODE>serial_cs</CODE> Treiber startet. Wenn
dies nicht funktioniert, mu&szlig; eventuell ein neuer Eintrag in der
Datei <CODE>/etc/pcmcia/config</CODE> gemacht werden, so da&szlig; die Karte richtig
erkannt wird. Siehe Abschnitt 
<A HREF="#DE-PCMCIA-HOWTO-unerkannt">PCMCIA Speicherkarten</A> f&uuml;r mehr Details.
</LI>
<LI>Wurde das Modem erfolgreich durch <CODE>serial_cs</CODE>
konfiguriert? Erneut sollte die Systemlog-Datei untersucht
werden. Sind Meldungen vom <CODE>serial_cs</CODE> Treiber vorhanden? Wenn
Eintr&auml;ge wie <CODE>register_serial() failed</CODE> erfolgt sind, kann
es sein, da&szlig; Konflikte in der I/O-Adresse mit anderen
Ger&auml;ten vorliegen. Ein anderer Hinweis auf ein Problem ist die
Meldung, da&szlig; die Karte eine <CODE>8250</CODE> sei. Die meisten
modernen Modemkarten sollten als ein <CODE>16550A UART</CODE> erkannt
werden. Bei dem Verdacht auf einen Adressenkonflikt sollte die Datei
<CODE>/etc/pcmcia/config.opts</CODE> editiert werden und der
Adressenbereich, den das Modem belegt, ausgeschlossen werden.
</LI>
<LI>Besteht ein Interruptkonflikt? Wenn die Systemlog-Datei gut
aussieht, aber das Modem trotzdem nicht zu funktionieren scheint, sollte
man versuchen, &uuml;ber das <CODE>setserial</CODE> Programm den Interrupt
auf Null zu setzen und zu kontrollieren, ob das Modem so
l&auml;uft. Dies veranla&szlig;t das Modem, den langsameren
Polling-Modus anstelle des Interrupt-Modus zu verwenden. Wenn
dies das Problem zu l&ouml;sen scheint, ist es wahrscheinlich,
da&szlig; ein anderes Ger&auml;t den gleichen Interrupt wie das PCMCIA-Ger&auml;t verwendet.
In diesem Fall sollte
eine Zeile in <CODE>/etc/pcmcia/config.opts</CODE> eingef&uuml;gt werden,
die diesen Interrupt ausschlie&szlig;t.
</LI>
<LI>Wenn es scheint, da&szlig; das Modem wirklich sehr langsam
l&auml;uft, ist dies meist ein sicheres Kennzeichen f&uuml;r einen
Interruptkonflikt.
</LI>
<LI>Man sollte sicherstellen, da&szlig; es sich wirklich um ein 
PCMCIA-Problem handelt. Es kann hilfreich sein, sich zu vergewissern, ob die
Karte unter DOS mit den Herstellertreibern funktioniert. Ebenso sollte
die Karte nicht gleich mit derart komplexen Dingen wie SLIP getestet
werden, bis man sicher ist, da&szlig; man einfache Verbindungen
herstellen kann. Wenn einfache Verbindungen gelingen und SLIP
fehlschl&auml;gt, so liegt das Problem wahrscheinlich bei SLIP und
nicht bei PCMCIA.</LI>
</UL>
</P>

<H2><A NAME="ss4.5">4.5</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.5">PCMCIA SCSI-Controller        </A>
<!--PCMCIA!SCSI Karten-->       <!--SCSI!Host-Adapter!PCMCIA Karte--></H2>

<P>Alle derzeit unterst&uuml;tzten PCMCIA-Karten funktionieren genauso wie
folgende ISA-Bus-Karten: Qlogic, Adaptec 152x oder Future
Domain TMC-16x0. Die PCMCIA-Treiber werden durch Einbindung von
einigem PCMCIA-spezifischen Programmcode (in <CODE>qlogic_cs.c</CODE>,
<CODE>toaster_cs.c</CODE> oder <CODE>fdomain_cs.c</CODE>) aus den normalen
Linux SCSI-Treibern gebildet.</P>
<P>Wenn ein SCSI-Controller entdeckt wird, wird von dem SCSI-Treiber nach
neuen SCSI-Ger&auml;ten gesucht. Die Systemlog-Dateien sollten Auskunft
dar&uuml;ber geben, ob ein Ger&auml;t ordentlich erkannt wird. Den neuen
SCSI-Ger&auml;ten werden die ersten verf&uuml;gbaren SCSI-Devices zugewiesen. 
Die erste SCSI-Festplatte wird
<CODE>/dev/sda</CODE>, das erste Bandlaufwerk <CODE>/dev/st0</CODE> und das
erste CD-ROM-Laufwerk wird <CODE>/dev/scd0</CODE> sein.</P>
<P>
<!--
PCMCIA!/etc/pcmcia/scsi
-->

<!--
/etc/pcmcia/scsi
-->

Mit Kernel 1.3.x und sp&auml;teren Versionen sind die PCMCIA-Kerntreiber
f&auml;hig, vom Kernel aus herauszufinden, welche SCSI-Ger&auml;te an
der Karte angeschlossen sind. Diese werden in der Datei
<CODE>/var/run/stab</CODE> aufgelistet und das SCSI-Konfigurationsskript,
<CODE>/etc/pcmcia/scsi</CODE>, wird f&uuml;r jedes angeschlossene
Ger&auml;t aufgerufen und zwar entweder um das Ger&auml;t zu
konfigurieren oder um es herunterzufahren. Das Standardskript
unternimmt nichts, um SCSI-Ger&auml;te zu konfigurieren, aber gemountete
Dateisysteme werden ordentlich aus dem Verzeichnisbaum entfernt,
wenn die PCMCIA-Karte aus dem Rechner genommen wird.</P>
<P>Mit Kernel 1.2.x k&ouml;nnen die PCMCIA-Treiber nicht automatisch erkennen,
welches Ger&auml;t an welchem SCSI-Controller angeschlossen ist. Wenn man
eine normale SCSI-Ger&auml;tekonfiguration hat, so kann
man diese Ger&auml;te in der Datei <CODE>/etc/pcmcia/scsi.opts</CODE> auflisten. Zum
Beispiel, wenn man normalerweise nur eine Festplatte und ein 
CD-ROM-Laufwerk verwendet, w&uuml;rde man folgendes verwenden:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
# Kernel 1.2.x: Liste der angeschlossenen Komponenten
SCSI_DEVICE="sda scd0"
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Die Ger&auml;teadressen, die dem Skript <CODE>scsi.opts</CODE>
&uuml;bergeben werden, sind kompliziert, da eine gro&szlig;e Zahl
verschiedenartiger Ger&auml;te an einen SCSI-Controller angeschlossen
werden kann. Die Adressen bestehen entweder aus sechs oder
sieben durch Kommata getrennte Felder: Das aktuelle Schema, der
Ger&auml;tetyp, die Slotnummer, der SCSI-Kanal, die ID, die logische
Einheitennummer (LUN) und eventuell die Partitionsnummer. Der Ger&auml;tetyp
wird <CODE>sd</CODE> f&uuml;r Festplatten, <CODE>st</CODE> f&uuml;r 
Bandlaufwerke, <CODE>sr</CODE> f&uuml;r CD-ROM-Laufwerke und <CODE>sg</CODE>
f&uuml;r generische SCSI-Ger&auml;te sein. Bei den meisten
Einstellungen wird der SCSI-Kanal und die Einheitennummer 0
sein. F&uuml;r Festplatten mit verschiedenen Partitionen wird
<CODE>scsi.opts</CODE> erst f&uuml;r das gesamte Ger&auml;t mit einer
f&uuml;nf Felder enthaltenden Adresse aufgerufen. Das Skript sollte
dann die Variable <CODE>PARTS</CODE> als eine Liste anlegen, die die
Partitionen enth&auml;lt. Danach wird <CODE>scsi.opts</CODE> mit einer
sieben Felder enthaltenden Adresse f&uuml;r jede Partition
aufgerufen. Hier ist zum Beispiel ein Skript zur Konfiguration einer
Festplatte an SCSI ID 3 mit zwei Partitionen und einem 
CD-ROM-Laufwerk an SCSI ID 6:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
case "$ADDRESS" in
*,sd,*,0,3,0)
    # diese Festplatte hat zwei Partitionen
    PARTS="1 2"
    ;;
*,sd,*,0,3,0,1)
    # Optionen Partition 1:
    # aktualisiere /etc/fstab und mounte ein ext2 fs
    # auf /usr1
    DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="ext2"
    OPTS=""
    MOUNTPT="/usr1"
    ;;
*,sd,*,0,3,0,2)
    # Optionen Partition 2:
    # aktualisiere /etc/fstab und mounte ein MS-DOS fs
    # auf /usr2
    DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="msdos"
    OPTS=""
    MOUNTPT="/usr2"
    ;;
*,sr,*,0,6,0)
    # Optionen CD-ROM an SCSI ID 6
    PARTS=""
    DO_FSTAB="y" ; DO_FSCK="n" ; DO_MOUNT="y"
    FSTYPE="iso9660"
    OPTS="ro"
    MOUNTPT="/cdrom"
    ;;
esac
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Wenn der Kernel keine Grundtreiber f&uuml;r besondere SCSI-Ger&auml;te 
wie Festplatten, Bandlaufwerke, etc. enth&auml;lt, dann wird das
Ger&auml;t nicht vom PCMCIA-Treiber konfiguriert. Als ein Nebeneffekt
wird der Ger&auml;tename in <CODE>var/run/stab</CODE> etwas wie
<CODE>sd\#nnnn</CODE> sein, wobei <CODE>nnnn</CODE> eine vierstellige
Hexadezimalzahl ist. Dies passiert, wenn <CODE>cardmgr</CODE> nicht in der
Lage ist, die SCSI-ID-Nummer in einen entsprechenden 
Linux-Ger&auml;tenamen zu &uuml;bersetzen.</P>
<P>Es ist m&ouml;glich, die SCSI-Grundtreiber f&uuml;r den Kernel zu
modularisieren, so da&szlig; diese nur geladen werden, wenn ein 
PCMCIA-SCSI-Controller entdeckt wird. Um dies zu erreichen, mu&szlig; die
Datei <CODE>/etc/pcmcia/config</CODE> editiert werden, damit
<CODE>cardmgr</CODE> wei&szlig;, welche zus&auml;tzlichen Module geladen
werden m&uuml;ssen, um den Controller zu konfigurieren. Zum Beispiel</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
device "aha152x_cs"
  class "scsi" module "scsi/scsi_mod", "scsi/sd_mod", 
    "aha152x_cs"
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>w&uuml;rde das SCSI-Kernmodul und die Grundmodule f&uuml;r SCSI-Festplatten vor
dem regul&auml;ren PCMCIA-Treiber laden. Das PCMCIA-Konfigurationsskript 
wird nicht automatisch modularisierte SCSI-Module
entdecken, so da&szlig; die SCSI-Unterst&uuml;tzung manuell in die
Konfigurationsskripte eingetragen werden mu&szlig;.</P>
<P>SCSI-Ger&auml;te sollten immer als erstes, vor dem Notebook oder dem
Einf&uuml;hren der Karte, eingeschaltet werden, so da&szlig; der
SCSI-Bus ordentlich terminiert ist, wenn der Controller konfiguriert
wird. Man sollte auch &auml;u&szlig;erst vorsichtig sein, bevor man eine
SCSI-Controllerkarte entfernt. In diesem Fall sollte man sicher sein,
da&szlig; alle angeschlossenen SCSI-Ger&auml;te
ordnungsgem&auml;&szlig; heruntergefahren wurden. Der sicherste Weg
dies zu erreichen ist es, entweder <CODE>cardctl</CODE> oder
<CODE>cardinfo</CODE> zu verwenden und eine Kartenentfernung anzufordern,
bevor man die Karte physisch entfernt. Bis jetzt m&uuml;ssen alle 
SCSI-Ger&auml;te eingeschaltet sein, bevor der SCSI-Controller
eingef&uuml;hrt wird und sollten solange angeschlossen bleiben, bis
der Controller wieder entfernt wird oder das Notebook ausgeschaltet
wird. </P>
<P>
<!--
SCSI!Termination Power
-->

<!--
SCSI!Terminator
-->

Es besteht die M&ouml;glichkeit von Komplikationen bei Karten, die bei
normalen ISA-Bus-Controllern nicht bestehen. Der SCSI-Bus enth&auml;lt
eine »Termination Power« Leitung, welche f&uuml;r den
ordentlichen Betrieb von passiven SCSI Terminatoren notwendig ist.
PCMCIA-SCSI-Controller speisen diese Leitung nicht. Falls die Leitung
ben&ouml;tigt wird, mu&szlig; sie von einem anderen SCSI-Ger&auml;te gespeist werden.
Einige externe SCSI-Ger&auml;te k&ouml;nnen so konfiguriert
werden, da&szlig; sie diese Leitung speisen. Andere, wie z.B. das 
ZIP-Laufwerk oder das Syquest EZ-Laufwerk verwenden aktive Terminierungen
und ben&ouml;tigen diese Leitung daher nicht. In einigen F&auml;llen kann es
notwendig sein, einen speziellen externen Termininator wie den <EM>APS SCSI
Sentry 2</EM> zu verwenden, der &uuml;ber ein eigenes Netzteil verf&uuml;gt.</P>
<P>
<!--
SCSI!Host-Adapter!Adaptec
-->

<!--
Adaptec!APA-460 SlimSCSI
-->

<!--
Trantor!SlimSCSI
-->

Der <EM>Adaptec APA-460 SlimSCSI</EM>-Controller wird nicht
unterst&uuml;tzt. Diese Karte wurde urspr&uuml;nglich unter dem Namen
<EM>Trantor</EM> verkauft. Nach der &Uuml;bernahme von
Trantec durch Adaptec wurde dieser Controller als Teil der 
Adaptec-Produktserie verkauft. Der <EM>APA-460</EM> ist
mit keinem existierenden Linuxtreiber kompatibel. David ist sich nicht
sicher, wie schwer es sein wird, einen Treiber f&uuml;r diesen
Controller zu schreiben. Er vermutet, da&szlig; niemand die dazu
notwendigen technischen Informationen von Adaptec erhalten
wird.</P>
<P>Der nicht unterst&uuml;tzte <EM>Trantor SlimSCSI</EM>-Controller kann auf
folgende Weise erkannt werden:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
Trantor / Adaptec APA-460 SlimSCSI
FCC ID: IE8T460
Shipped with SCSIworks! driver software
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Der nicht unterst&uuml;tzte <EM>Adaptec SlimSCSI</EM>-Controller kann auf
folgende Weise erkannt werden:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
Adaptec APA-1460 SlimSCSI
FCC ID: FGT1460
P/N: 900100
Shipped with EZ-SCSI driver software
</PRE>
</CODE></BLOCKQUOTE>
</P>

<H3>Untersuchung von Problemen mit SCSI-Controllern        <!--PCMCIA!Probleme!SCSI-Controller--></H3>

<P>
<UL>
<LI>Bei dem <CODE>aha152x_cs</CODE> Treiber, dieser wird von Adaptec, New
Media und ein paar anderen verwendet, scheint die Unterst&uuml;tzung
von Disconnect/Reconnect eine h&auml;ufige Fehlerquelle bei
Bandlaufwerken zu sein. Um diese Eigenschaft abzuschalten, mu&szlig;
folgendes in der Datei <CODE>/etc/pcmcia/config.opts</CODE>
hinzugef&uuml;gt werden:
<BLOCKQUOTE><CODE>
<PRE>
module "aha152x_cs" opts "reconnect=0"
</PRE>
</CODE></BLOCKQUOTE>
</LI>
</UL>
</P>

<H2><A NAME="DE-PCMCIA-HOWTO-unerkannt"></A> <A NAME="ss4.6">4.6</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.6">PCMCIA Speicherkarten </A>
       <!--PCMCIA!Speicherkarte--></H2>

<P>Das Standardstartskript f&uuml;r Speicherkarten erzeugt <EM>Block-</EM> und
<EM>zeichenorientierte</EM> Ger&auml;te f&uuml;r den Zugriff auf alle
Bereiche der Speicherkarte. Es gibt zwei Treiber f&uuml;r
Speicherkarten. Einen &auml;lteren Treiber <CODE>pcmem_cs</CODE>, der gut mit
einfachen statischen RAM-Karten zusammenarbeitet, und einen neueren
Treiber <CODE>memory_cs</CODE>, der meistens f&uuml;r den direkten Zugriff
auf Flashkarten verwendet wird. F&uuml;r eine genauere
Beschreibung der Ger&auml;tenamen sollte man die Manual Pages befragen.
Beide, sowohl Block- als auch zeichenorientierte Ger&auml;tedateien,
werden erzeugt. Die Blockger&auml;te werden f&uuml;r einen
Festplatten&auml;hnlichen Zugriff verwendet (Erzeugung und Mounten
von Dateisystemen etc.). Die zeichorientierten Ger&auml;tedateien
werden f&uuml;r <EM>rohe</EM> (raw), nichtgepufferte Lese- und
Schreiboperationen an beliebigen Stellen verwendet.</P>
<P>
<!--
/etc/pcmcia/ftl.opts
-->

<!--
/etc/pcmcia/memory.opts
-->

<!--
PCMCIA!/etc/pcmcia/ftl.opts
-->

<!--
PCMCIA!/etc/pcmcia/memory.opts
-->

Bei den <EM>FTL</EM> und dem <EM>neuen</EM> Speichertreibern besteht
die Ger&auml;teadresse, die an die Skripte <CODE>ftl.opts</CODE> und
<CODE>memory.opts</CODE> weitergegeben wird, aus zwei Feldern,
der Slotnummer und der Partitionsnummer. Gew&ouml;hnliche
Speicherpartitionen werden vor Attributspeicherpartitionen numeriert.
Allgemein ist die interessanteste Partition die mit der Nummer 0. Dieses
ist die Hauptpartition, auf der die Daten gespeichert werden. Hier ist ein
Beispiel eines Skriptes, das automatisch, abh&auml;ngig vom
verwendeten Slot, eine Flashspeicherkarte in das System integriert:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
case "$ADDRESS" in
*,0,0)
    # Integriere Dateisystem, aber aktualisiere nicht 
    # /etc/fstab
    DO_FSTAB="n" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="ext2" ; OPTS=""
    MOUNTPT="/ftl0"
    ;;
*,1,0)
    # Integriere Dateisystem, aber aktualisiere nicht 
    # /etc/fstab
    DO_FSTAB="n" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="ext2" ; OPTS=""
    MOUNTPT="/ftl1"
    ;;
esac
</PRE>
</CODE></BLOCKQUOTE>
</P>

<H3>Einfache Speicherkarten        <!--PCMCIA!Card Information Structure--></H3>

<P>Einige &auml;ltere Speicherkarten und die meisten einfachen statischen
RAM-Karten besitzen keine <EM>Card Information Structure</EM> (CIS),
welche das Schema ist, das PCMCIA-Karten verwenden, um sich selbst zu
identifizieren. Normalerweise wird <CODE>cardmgr</CODE> annehmen,
da&szlig; Karten, die keine CIS aufweisen, einfache Speicherkarten
sind und wird den <CODE>pcmem_cs</CODE> Treiber laden. Auf diese Weise
erh&auml;lt man den Nebeneffekt, da&szlig; andere
unerkannte Karten f&auml;lschlicherweise als Speicherkarten erkannt werden.</P>
<P>Der <CODE>pcmem_cs</CODE> Treiber erzeugt drei logische Ger&auml;tedateien
f&uuml;r eine Karte: <CODE>pcmem?a</CODE> ist eine Zeichenger&auml;tedatei zum
Zugriff auf Attributspeicher, <CODE>pcmem?b</CODE> ist eine
Blockger&auml;tedatei und <CODE>pcmem?c</CODE> ist eine
Zeichenger&auml;tedatei. Da alle PCMCIA-Karten eine
Speicherschnittstelle neben allen anderen Funktionen ben&ouml;tigen,
kann der <CODE>pcmem_cs</CODE> Treiber mit allen Karten verwendet werden,
um direkten Zugriff auf den Attribut- und allgemeinen Speicherraum zu
erhalten.</P>
<P>Der <CODE>pcmem_cs</CODE> Treiber verwendet ein Verfahren, um die
Kapazit&auml;t einer Karte zu raten. Dieses Verfahren schl&auml;gt bei
schreibgesch&uuml;tzten Karten fehl und kann in einigen anderen
F&auml;llen zu Fehlern f&uuml;hren. Wenn eine Karte falsch erkannt
wurde, sollte ihre Gr&ouml;&szlig;e explizit angegeben werden, wenn man
Kommandos wie <CODE>dd</CODE> oder <CODE>mkfs</CODE> verwendet.</P>

<H3>Verwendung von Flashspeicherkarten        <!--PCMCIA!Flashspeicherkarten-->       <!--Flashspeicher-->       <!--ftl_format-->       <!--PCMCIA!ftl_format--></H3>

<P>Um eine Flashspeicherkarte wie ein gew&ouml;hnliches
festplatten&auml;hnliches Blockger&auml;t zu verwenden, mu&szlig; als
erstes eine <EM>Flash Translation Layer</EM> Partition auf diesem
Ger&auml;t mit dem Kommando <CODE>ftl_format</CODE> erstellt werden:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
ftl_format -i /dev/mem0c0c
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Man beachte, da&szlig; dieses Kommando auf die Karte &uuml;ber die <EM>rohe</EM>
Speicherkartenschnittstelle zugreift. Einmal formatiert, kann die Karte
wie ein normales Blockger&auml;t &uuml;ber den <CODE>ftl_cs</CODE> Treiber
verwendet werden:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
mke2fs /dev/ftl0
mount -t ext2 /dev/ftl0 /mnt
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Es gibt zwei wesentliche Formate f&uuml;r Blitzspeicherkarten: Das
<EM>Flash Translation Layer</EM> und das <EM>Microsoft Flash File
System</EM>. Das FTL-Format is generell flexibler, weil es erlaubt,
irgendein gew&ouml;hnliches, anspruchsvolles Dateisystem wie ext2 oder
MS-DOS FAT auf dieser Karte zu verwenden, genauso als ob es eine
normale Festplatte w&auml;re. Das FFS ist ein komplett neuer Typ von
Dateisystem. Linux kann zur Zeit keine Karten handhaben, die mit
diesem Dateityp formatiert sind.</P>

<H2><A NAME="ss4.7">4.7</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.7">PCMCIA ATA-/IDE-Karten        </A>
<!--PCMCIA!IDE-Karte-->       <!--IDE!PCMCIA-Karte-->       <!--EIDE!PCMCIA-Karte--></H2>

<P>Die Unterst&uuml;tzung von ATA-/IDE-Treibern verlangt einen Kernel der
Verison 1.3.72 oder h&ouml;her. Der PCMCIA spezifische Teil des
Treibers ist <CODE>fixed_cs</CODE>. Man sollte sicherstellen, da&szlig;
<CODE>cardctl</CODE> oder <CODE>cardinfo</CODE> verwendet werden, um 
ATA-/IDE-Karten herunterzufahren, bevor sie entnommen werden.</P>
<P>
<!--
/etc/pcmcia/fixed.opts
-->

<!--
PCMCIA!/etc/pcmcia/fixed.opts
-->

Die Ger&auml;teadressen, die an <CODE>fixed.opts</CODE> weitergeleitet
werden, bestehen aus drei oder vier Feldern: Das aktuelle Schema, die
Slotnummer, die Seriennummer des Laufwerks und ebentuell die
Partitionsnummer. So wie bei SCSI-Ger&auml;ten wird
<CODE>fixed.opts</CODE> zuerst f&uuml;r das gesamte Ger&auml;t aufgerufen.
Wenn <CODE>fixed.opts</CODE> eine Liste von Partitionen in
der Variablen <CODE>PARTS</CODE> enth&auml;lt, wird das Skript noch einmal
f&uuml;r jede Partition aufgerufen.</P>
<P>Hier ist eine Beispieldatei <CODE>fixed.opts</CODE>, die die erste
Partition einer ATA-/IDE-Karte auf <CODE>/mnt</CODE> abbildet:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
case "$ADDRESS" in
*,*,*)
    PARTS="1"
    ;;
*,*,*,1)
    DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="msdos"
    OPTS=""
    MOUNTPT="/mnt"
    ;;
esac
</PRE>
</CODE></BLOCKQUOTE>

<!--
IDE!ide_info
-->

<!--
EIDE!ide_info
-->

<!--
PCMCIA!ide_info
-->

Beachten Sie, da&szlig; die vorgegebene Datei <CODE>fixed.opts</CODE> diese
Zeilen in auskommentierter Form enth&auml;lt. Wenn es gew&uuml;nscht
wird, k&ouml;nnen verschiedene Konfigurationen, basierend auf
den Seriennummern der Karten, verwendet werden. Um die Seriennummer
einer Karte herauszufinden, kann das Kommando <CODE>ide_info</CODE>
verwendet werden. Danach kann ein Teil von <CODE>fixed.info</CODE> wie
folgt aussehen:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
case "$ADDRESS" in
*,*,Z4J60542)
    # Dies ist eine DOS Platte
    PARTS="1"
    ;;
*,*,Z4J60542,1)
    DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="msdos"
    OPTS=""
    MOUNTPT="/mnt"
    ;;
esac
</PRE>
</CODE></BLOCKQUOTE>
</P>

<H2><A NAME="ss4.8">4.8</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.8">Multifunktionskarten        </A>
<!--PCMCIA!Multifunktionskarten--></H2>

<P>Beginnend mit dem Linux-Kernel 1.3.73 kann ein einzelner Interrupt mit
mehreren verschiedenen Treibern, wie z.B. dem seriellen Treiber und
einem Ethernettreiber, geteilt werden. Wenn eine Multifunktionskarte
unter einem neueren Kernel verwendet wird, k&ouml;nnen alle
Funktionen ohne ein Ein- und Ausladen von Treibern verwendet werden.</P>
<P>Simultaner Gebrauch von zwei Kartenfunktionen ist trickreich, und
verschiedene Hardwarehersteller haben das Teilen von Interrupts auf
ihre eigene, nicht kompatible Weise verwirklicht. Die Treiber f&uuml;r
einige Karten (<EM>Ositech Jack of Diamonds </EM>, <EM>3Com
3c562</EM>, <EM>Linksys</EM>) unterst&uuml;tzen den gleichzeitigen
Zugriff ordentlich, w&auml;hrend andere (besonders <EM>Megahertz</EM>)
dies nicht tun.</P>
<P>Fr&uuml;here Kernelversionen unterst&uuml;tzen das Teilen von
Interrupts nicht, so da&szlig; es f&uuml;r PCMCIA-Treiber nicht
m&ouml;glich ist, gleichzeitig auf eine Ethernetkarte und ein Modem
zuzugreifen. Die Treiber f&uuml;r das Ethernet und die serielle
Schnittstelle werden automatisch geladen. Wie dem auch sei, der
Treiber f&uuml;r das Ethernet besitzt per Voreinstellung den Interrupt
der Karte. Um das Modem zu verwenden, mu&szlig; der Ethernettreiber
ausgeladen werden und der serielle neu konfiguriert werden
wie z.B. hier:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
ifconfig eth0 down
rmmod 3c589_cs
setserial /dev/modem autoconfig auto_irq
setserial /dev/modem
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Das zweite <CODE>setserial</CODE> Aufruf soll &uuml;berpr&uuml;fen, ob
der Treiber f&uuml;r das Modem jetzt den Interrupt verwendet, der
vorher von dem Ethernettreiber verwendet worden ist.</P>

<H2><A NAME="ss4.9">4.9</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.9">Wann ist es sicher, eine PCMCIA-Karte einzuf&uuml;hren oder zu entfernen?</A>
</H2>

<P>Theoretisch kann eine PCMCIA-Karte jederzeit eingef&uuml;hrt oder
entfernt werden. Es ist jedoch eine gute Idee, eine Karte, die gerade
von einem Programm in Gebrauch ist, nicht zu entfernen. Kernel die
&auml;lter sind als Version 1.1.77 bleiben oft h&auml;ngen, wenn eine
serielle Schnittstellenkarte bzw. Modemkarte entfernt wird. Doch dies 
sollte mittlerweile behoben sein.</P>

<H2><A NAME="ss4.10">4.10</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.10">Card Services und Advanced Power Management        </A>
<!--PCMCIA!APM-->       <!--PCMCIA!Power Management-->       <!--APM--></H2>

<P><EM>Card Services</EM> kann mit Unterst&uuml;tzung von APM kompiliert
werden, wenn das Paket auf dem System installiert wurde. APM ist
Bestandteil von Kernel 1.3.46 und neuer. Es wird derzeit von Rick
Faith (<CODE>
<A HREF="mailto:faith@cs.unc.edu">faith@cs.unc.edu</A></CODE>) betreut. APM-Werkzeuge k&ouml;nnen via FTP von 
<BLOCKQUOTE><CODE>
<A HREF="ftp://ftp.cs.unc.edu/pub/users/faith/linux">ftp.cs.unc.edu:/pub/users/faith/linux</A></CODE></BLOCKQUOTE>

bezogen werden. Die PCMCIA-Module werden automatisch f&uuml;r APM
konfiguriert, falls eine kompatible Version auf dem System erkannt wird.</P>
<P>
<!--
cardctl!suspend
-->

<!--
PCMCIA!cardctl!suspend
-->

Ohne auf APM zur&uuml;ckzugreifen, kann der Befehl <CODE>cardctl
suspend</CODE> vor dem Anhalten des Notebooks und der Befehl <CODE>cardctl
resume</CODE> nach dem erneuten Anfahren des Notebooks verwendet werden, um
die PCMCIA-Karten herunter- und wieder hochzufahren. Dies funktioniert
nicht mit einem PCMCIA-Modem zusammen, das in Betrieb ist, da
der serielle Treiber nicht in der Lage ist, die Arbeitsparameter des
Modems zu sichern und wiederherzustellen.</P>
<P>APM scheint auf einigen System instabil zu sein. Wenn solche
Beobachtungen im Zusammenhang mit APM und PCMCIA gemacht werden,
sollte versucht werden, den Fehler auf eines dieser beiden Pakete
einzuschr&auml;nken, bevor ein Fehlerreport erstellt wird.</P>
<P>
<!--
cardctl!eject
-->

<!--
PCMCIA!cardctl!eject
-->

Einige Treiber, ganz besonders PCMCIA-SCSI-Treiber, k&ouml;nnen aus
einem Anhalte- und Wiederanfahrzyklus nicht zur&uuml;ckkehren. Wenn
eine PCMCIA-SCSI-Karte verwendet wird, sollte daher das Kommando
<CODE>cardctl eject</CODE> vor einem Anhalten des Systems ausgef&uuml;hrt
werden.</P>

<H2><A NAME="ss4.11">4.11</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.11">Wie wird eine PCMCIA-Karte abgeschaltet, ohne sie zu entnehmen?</A>
</H2>

<P>Dazu kann entweder das Kommando <CODE>cardctl</CODE> oder
<CODE>cardinfo</CODE> verwendet werden. <CODE>cardctl suspend \#</CODE> wird
einen Slot anhalten und herunterfahren. Das entsprechende
<CODE>resume</CODE> Kommando wird die Karte wieder in den
urspr&uuml;nglichen Zustand zur&uuml;ckversetzen.</P>

<H2><A NAME="ss4.12">4.12</A> <A HREF="DE-PCMCIA-HOWTO.html#toc4.12">Wie wird ein PCMCIA-Treiber entfernt?</A>
</H2>

<P>Um das vollst&auml;ndige PCMCIA-Paket zu entfernen, mu&szlig; das Skript
<CODE>rc.pcmcia</CODE> folgenderma&szlig;en aufgerufen werden:</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
/etc/pcmcia/rc.pcmcia stop
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Dieses Skript ben&ouml;tigt mehrere Sekunden, um zu laufen, da jedem
Treiber Zeit gelassen wird, sanft herunterzufahren. Wenn ein 
PCMCIA-Ger&auml;t gerade in Benutzung ist, wird das Herunterfahren
unvollst&auml;ndig sein und einige Module k&ouml;nnen im Kernel
verbleiben. Um dieses zu vermeiden, sollten mit 
<BLOCKQUOTE><CODE>
cardctl eject
</CODE></BLOCKQUOTE>

alle Slots heruntergefahren werden, bevor <CODE>rc.pcmcia</CODE> aufgerufen
wird. Der Endestatus des <CODE>cardctl</CODE> Kommandos zeigt an, ob
irgendein Slot nicht heruntergefahren werden konnte.</P>

<HR>
<A HREF="DE-PCMCIA-HOWTO-5.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-PCMCIA-HOWTO-3.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-PCMCIA-HOWTO.html#toc4"><IMG SRC="toc.png" ALT="Inhalt"></A>
</BODY>
</HTML>