This file is indexed.

/usr/share/doc/HOWTO/pl-html/SMB-HOWTO.pl.html is in doc-linux-pl-html 2002.06.14-2.

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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<META HTTP-EQUIV="content-type" content="text/html; charset=iso-8859-2">
<TITLE>SMB-Howto</TITLE>


</HEAD>
<BODY>
<H1>SMB-Howto<BR></H1>

<H2>Autor:David Wood, 
<A HREF="mailto:dwood@plugged.net.au">dwood@plugged.net.au</A>
v1.1, 25 Marca 1999<BR>
<B>Wersja polska: Bartosz Maruszewski
<A HREF="mailto:B.Maruszewski@jtz.org.pl">B.Maruszewski@jtz.org.pl</A><BR></B>
v1.2, 18 Sierpnia 1999</H2>
<P><HR>
<EM>Jest to dokument z serii HOWTO (Jak To Zrobiæ). Opisuje on jak u¿ywaæ
Server Message Protocol (SMB), zwanego te¿ Session Message Block,
NetBIOS lub LanManager w Linuksie.
Dokument ten zosta³ napisany w standardzie ISO-8859-2.
Orygina³ mo¿na znale¼æ pod adresem 
<A HREF="ftp://ftp.icm.edu.pl:/pub/Linux/sunsite/docs/HOWTO">ftp.icm.edu.pl</A> w katalogu /pub/Linux/sunsite/docs/HOWTO.</EM>
<HR>
<H2><A NAME="s1">1. Wprowadzenie.</A></H2>

<P>
<P>Jest to dokument z serii HOWTO (Jak To Zrobiæ). Opisuje on jak
u¿ywaæ w Linuksie Server Message Protocol, zwanego te¿ Session
Message Block, NetBIOS lub LanManager. Dokument ten skupia siê na
Linuksie, jednak Samba dzia³a na wiêkszo¶ci systemów uniksowych.
<P>Dokument ten jest prowadzony przez Davida Wooda
<A HREF="mailto:dwood@plugged.net.au">dwood@plugged.net.au</A>. Wszelkie dodatki, modyfikacje lub
poprawki mog± byæ przes³ane do mnie, aby je pó¼niej umie¶ciæ w
nastêpnej wersji.
<P>O wiele wiêcej dokumentacji znajduje siê na stronie WWW Samby pod
adresem 
<A HREF="http://www.samba.org/">www.samba.org</A>.
Mo¿esz tak¿e korzystaæ z grupy dyskusyjnej <I>comp.protocols.smb</I>
lub polskojêzycznej <I>pl.comp.os.linux.sieci</I>.
<P>Protokó³ SMB u¿ywany jest przez Microsoft Windows 3.11, NT i 95/98
aby wspó³dzieliæ zasoby dyskowe i drukarki. Maszyny Unix-owe (w
tym tak¿e Linux) mog± korzystaæ z tych zasobów u¿ywaj±c narzêdzi
stworzonych przez Andrew Tridgella. Przy pomocy narzêdzi <I>smbfs</I>
autorstwa Paal-Kr. Engstad (pke@engstad.ingok.hitos.no), Volker
Lendecke (lendecke@namu01.gwdg.de) maszyny uniksowe mog± montowaæ
zasoby udostêpniane z Windows.
<P>S± cztery rzeczy, które mo¿na zrobiæ Samb±:
<P>
<OL>
<LI>Udostêpniaæ dysk Linux-owy dla komputerów z Windows.</LI>
<LI>Udostêpniaæ dysk Windows-owy dla komputerów z Linux-em.</LI>
<LI>Udostêpniaæ drukarkê pod Linux-em dla Windows.</LI>
<LI>Udostêpniaæ drukarkê pod Windows dla Linux-a.</LI>
</OL>
<P>Wszystko to zosta³o opisane w tym dokumencie.
<P>Zrzeczenie. Procedury i skrypty albo dzia³a³y u autora, albo
zosta³y opisane jako dzia³aj±ce przez tych, którzy je napisali.
Ró¿ne konfiguracje mog± nie dzia³aæ z podanymi tutaj informacjami.
Je¶li odkryjesz tak± sytuacjê mo¿esz napisaæ do autora list z
sugesti± na ulepszenie tego dokumentu, ale autor nic nie
gwarantuje. A czego siê spodziewa³e¶ ? W koñcu autor jest tyklo
konsultantem.
<P>Aby maszyny z systemami Windows 3.x mog³y korzystaæ z SMB musz±
mieæ zainstalowany stos TCP/IP i DLL Win32. Oba te pakiety s±
dostêpne na stronie WWW Microsoftu (
<A HREF="ihttp://www.microsoft.com">www.microsoft.com</A>).
<P>
<H2><A NAME="s2">2. Dalsze informacje.</A></H2>

<P>
<P>Dokument ten jest prób± opisania jak skonfigurowaæ na Linux-ie
podstawowe serwisy SMB zwi±zane z plikami i drukarkami. Samba jest
bardzo z³o¿onym i kompletnym pakietem. Nie ma sensu, ¿eby kopiowaæ
tutaj wszystko to co jest zawarte w dokumentacji dla tego pakietu.
<P>Dalszych informacji mo¿esz szukaæ w:
<UL>
<LI>Dokumentacji do Samby, która jest czê¶ci± dystrybucji.
Dystrybucja jest dostêpna pod adresem: ftp.icm.edu.pl oraz
ftp.samba.org</LI>
<LI>HOWTO dotycz±cym drukowania (Printing HOWTO)</LI>
<LI>oraz w mini-HOWTO Print2Win.</LI>
<LI>Dokumentacja okre¶laj±ca standard protoko³u NetBIOS na
TCP/IP.<BR>
RFC 1001 - Ogólne zarysy.<BR>
RFC 1002 - Szczegó³owe specyfikacje.</LI>
</UL>
<P>
<H2><A NAME="s3">3. Instalacja.</A></H2>

<P>
<P>Po pierwsz, aby u¿ywaæ Samby wszystkie twoje maszyny musz± byc w
jednym segmencie sieci lokalnej i korzystaæ z protoko³u TCP/IP.
Samba nie bêdzie dzia³aæ na innych protoko³ach. Jest to ³atwe do
osi±gniêcia poniewa¿ Linux i Windows 95/98/NT s± dostarczane z tym
protoko³em. Jednak je¶li u¿ywasz Windows 3.x, to bêdziesz musia³
dodaæ obs³ugê tego protoko³u.
<P>Z us³ug SMB nie mo¿na korzystaæ poprzez routery. Je¶li chcesz takie
co¶ zrobiæ, to musisz ustawiæ tunel IP, co jest poza tematyk± tego
HOWTO.
<P>Naj¶wie¿sze ¼ród³a Samby dostêpne s± pod adresem 
<A HREF="ftp.icm.edu.pl:/pub/samba">ftp.icm.edu.pl</A> w katalogu <CODE>/pub/samba</CODE>. Oryginalny
adres to 
<A HREF="ftp://ftp.samba.org/">ftp.samba.org</A>.
<P>Je¶li instalowa³e¶ dystrybucjê Red Hat mog³e¶ wybraæ instalacjê
Samby jako jedn± z opcji. Niektóre inne dystrybycje te¿ oferuj±
binaria Samby.
<P>Nastêpuj±ce demony s± wymagane do pracy z Samb±. Zwykle znajduj±
siê one w katalogu /usr/sbin i s± uruchamiane w momencie startu
systemu albo przez demon <CODE>inetd</CODE>. Przyk³adowe skrypt
znajduj± siê w sekcji 
<A HREF="#sec-daemons">Uruchamianie    demonów.</A><P>
<HR>
<PRE>
      smbd (Demon SMB) i nmbd (¦wiadczy us³ugi nameservera NetBIOS-u)
</PRE>
<HR>
<P>Zauwa¿, ¿e serwis nazw oferowany przez demona nmbd ró¿ni siê od
tego oferowanego przez DNS (serwis nazw domen). Serwis nazw
NetBIOS, to serwis nazw w stylu Windows u¿ywany do SMB. Innymi
s³owy, to ¿e masz DNS nie oznacza, ¿e Samba bêdzie umia³a
odczytywaæ nazwy komputerów.
<P>Zwykle w systemie instalowane s± nastêpuj±ce binaraia w katalogu
/usr/bin:
<P>
<HR>
<PRE>
   smbclient (Klient dla maszyn Unix-owych), smbprint (skrypt do
   drukowania na drukarce przy³±czonej do hosta SMB), smbprint.sysv
   (To samo co wcze¶niej, ale dla systemu UNIX SVR4), smbstatus
   (Wy¶wietla bie¿±ce po³±czenia SMB na lokalnym ho¶cie), smbrun
   (G³ówny skrypt do uruchamiania aplikacji na ho¶cie SMB)
</PRE>
<HR>
<P>Binaria do obs³ugi systemu plików (smbfs) omówione s± w dalszej
czê¶ci dokumentu.
<P>Dodatkowo zawarty jest w tym dokumencie skrypt o nazwie "print",
który jest po¿ytecznym dokoñczeniem skryptu smbprint.
<P>Pakiet Samba jest prosty w instalacji. ¦ci±gnij go z podanego
wcze¶niej miejsca i przeczytaj plik README znajduj±cy siê w
dystrybucji. Jest jeszcze plik docs/INSTALL.txt, który podaje krok
po kroku co nale¿y zrobiæ, aby zainstalowaæ Sambê.
<P>Postêpuj±c wraz z instalacj±, umie¶æ demony w /usr/sbin i binaria
w /usr/bin. Zainstaluj strony do podrêcznika systemowego "man" w
/usr/local/man.
<P>Kiedy bêdziesz instalowa³ pakiet Samba, bêdziesz musia³ podaæ
miejsce, gdzie ma siê znajdowaæ plik konfiguracyjny <CODE>smb.conf</CODE>.
Z regu³y jest to katalog /etc, ale mo¿esz go umie¶ciæ, gdzie ci
siê podoba. Dla dalszych instrukcji za³o¿ymy, ¿e plik
konfiguracyjny umie¶ci³e¶ w /etc, plik loguj±cy to
/var/log/samba-log.%m i katalog blokuj±cy to /var/lock/samba.
<P>Zainstaluj plik konfiguracyjny smb.conf. Przejd¼ do katalogu,
gdzie zosta³a skompilowana Samba. Zajrzyj do katalogu
<CODE>examples/simple</CODE> i przeczytaj plik README. Skopiuj
znaleziony tam plik <CODE>smb.conf</CODE> do /etc. <B>OSTRO¯NIE !!!</B>
Je¶li masz dystrybucjê Linux-a, która mia³a Sambê i zainstalowa³e¶
j± to pewnie masz ju¿ plik <CODE>smb.conf</CODE> w katalogu /etc i lepiej
zacznij od tego pliku.
Je¶li nie chcesz umieszczaæ pliku konfiguracyjnego w /etc, to
umie¶æ go tam, gdzie chcesz i zrób symboliczne do³±czenie:
<P>
<HR>
<PRE>
     ln -s /gdzie/jest/smb.conf /etc/smb.conf
</PRE>
<HR>
<P>
<H2><A NAME="sec-daemons"></A> <A NAME="s4">4. Uruchamianie demonów.</A></H2>

<P>
<P>Dwoma demonami SMB s±: <CODE>/usr/sbin/smbd i /usr/sbin/nmbd</CODE>.
<P>Mo¿esz je uruchomiæ przez demona <CODE>inetd</CODE> lub jako osobne
procesy. Samba bêdzie odpowiadaæ trochê szybciej je¶li jest
uruchomiona jako osobny demon ni¿ z inetd.
<P>W obu przypadkach powiniene¶ sprawdziæ czy w pliku
<CODE>/etc/services</CODE> znajduj± siê takie linie:
<P>
<HR>
<PRE>
       netbios-ns      137/tcp         nbns
       netbios-ns      137/udp         nbns
       netbios-dgm     138/tcp         nbdgm
       netbios-dgm     138/udp         nbdgm
       netbios-ssn     139/tcp         nbssn
</PRE>
<HR>
<P>Upewnij siê, ¿e wszystkie s± odkomentowane. W zale¿no¶ci od
dystrybucji, mo¿liwe, ¿e bêdziesz musia³ je dodaæ. Samba nie bêdzie
w stanie dowi±zaæ siê do odpowiednich portów je¶li w tym pliku nie
znajd± siê powy¿sze linie.
<P>Aby uruchomiæ demony przez <CODE>inetd</CODE> umie¶æ nastêpuj±ce linie w
pliku <CODE>/etc/inetd.conf</CODE>:
<P>
<HR>
<PRE>
 Serwis NetBIOS dla Samby
      # netbios-ssn
      stream tcp nowait root /usr/sbin/smbd smbd netbios-ns dgram udp wait
      root /usr/sbin/nmbd nmbd
</PRE>
<HR>
<P>Nastêpnie wy¶lij sygna³ HUP do procesu nr 1:
<HR>
<PRE>
     kill -HUP 1 `cat /var/run/inetd.pid`
</PRE>
<HR>
<P>Dla u¿ytkowników dystrybucji Red Hat.
Aby uruchomiæ te demony ze skryptów startowych, umie¶æ nastêpuj±cy
skrypt w katalogu <CODE>/etc/rc.d/init.d/smb</CODE> i do³±cz je
symbolicznie do plików podanych w komentarzu:
<P>
<HR>
<PRE>
     #!bin/sh

     #
     # /etc/rc.d/init.d/smb - startuje i zatrzymuje serwis SMB
     #
     # Nastêpuj±ce pliki powinny byæ symbolicznymi do³±czeniami do
     # tego pliku:
     # /etc/rc.d/rc1.d/K35smb (Zatrzymuje serwis SMB podczas
     # zamkniêcia systemu.
     # /etc/rc.d/rc3.d/S91smb (Startuje serwis SMB w trybie
     # wielou¿ytkownikowym
     # /etc/rc.d/rc6.d/K35smb (zatrzymuje serwis SMB podczas resetu)
     #
     
     # Biblioteka funkcji
     etc/rc.d/init.d/functions
           
     # Konfiguracja sieci
     etc/sysconfig/network
   
     # Sprawd¼ czy jeste¶my w sieci
     [ ${NETWORKING} = "no" ] &amp;&amp; exit 0
       
     # Zobacz jak zostali¶my wywo³ani
     case "$1" in
        start) echo -n "Starting SMB services: " 
                daemon smbd -D
                daemon nmbd -D
                echo touch /var/lock/subsys/smb
        ;;
        stop) echo -n "Shutting down SMB services: "
                killproc smbd
                killproc nmbd
                rm -f /var/lock/subsys/smb echo ""
        ;;
        *) echo "Usage: smb {start|stop}" exit 1
     esac
</PRE>
<HR>
<P>Od t³umacza:
Je¶li u¿ywasz dystrybucji Slackware.
Umie¶æ poni¿szy fragment w skrypcie startowym <CODE>/etc/rc.d/rc.local</CODE>:
<P>
<HR>
<PRE>
   
   # czy jeste¶my w sieci
   [ ${NETWORKING} = "no" ] &amp;&amp; exit 0
   
   # Uruchmon demony Samby
   /usr/sbin/smbd -D
   /usr/sbin/nmbd -D
</PRE>
<HR>
<P>Je¶li podczas startu Samby pojawi siê b³±d mówi±cy co¶ o
niemo¿no¶ci dowi±zania siê do portu 139, to prawdpodobnie jest inny
proces Samby jeszcz dzia³±j±cy. Sprawd¼ listê procesów (poleceniem
'ps auxww | grep mbd'), ¿eby zobaczyæ czy to prawda.
<P>
<H2><A NAME="s5">5. Ogólna konfiguracja. (/etc/smb.conf)</A></H2>

<P>
<P>Konfiguracja Samby na Uniksie jest kontrolowana jednym plikiem:
<CODE>/etc/smb.conf</CODE>. W pliku tym umieszczasz zasoby jakie
chcesz udostêpniæ dla ¶wiata i jakie restrykcje chcesz wprowadziæ.
<P>Poniewa¿ ta sekcja opisuje udostêpnianie dysków i drukarek
Linux-owych Windowsom, plik smb.conf bêdzie najprostszym z
mo¿liwych.
<P>Nie martw siê o szczegó³y. Pó¼niejsze sekcje wprowadz± ogólny
koncept.
<P>Ka¿da sekcja pliku zaczyna siê od nazwy jak np.: [global],
[homes], [printers] itp.
<P>Sekcja [global] definiuje kilka ogólnych zmiennych, które bêd±
siê odnosiæ do wszystkich udostêpnianych zasobów.
<P>Sekcja [homes] pozwala u¿ytkownikom na dostêp do ich (i tyklo ich)
katalogów domowych na lokalnej maszynie Linux-owej. Je¶li jaki¶
u¿ytkownik Windows bêdzie chcia³ skorzystaæ z udostêpnianych
zasobów, to zostanie pod³±czony do swojego katalogu domowego.
Zauwa¿, ¿e aby to zrobiæ u¿ytkownik musi mieæ swoje konto na
maszynie Linux-owej.
<P>Poni¿szy przyk³adowy plik smb.conf pozwala u¿ytkownikom na dostêp
do swoich katalogów domowych i na zapis do katalogu tymczasowego.
Aby u¿ytkownik Windows zobaczy³ udostêpniane zasoby, Linux musi byæ
w tej samej sieci lokalnej. U¿ytkownik Windows po prostu do³±cza
dysk sieciowy z Mened¿era Plików lub Eksploratora Windows.
<P>W nastêpnych sekcjach bêd± dodawane kolejne linie do tego pliku,
aby umo¿liwiæ dostêp do wiêkszej ilo¶ci zasobów.
<P>
<HR>
<PRE>
 etc/smb.conf
   ; 
   ; Po wprowadzeniu zmian do tego pliku zrestartuj demony Samby
   ; kill -9 `pidof smbd`; kill -9 `pidof nmbd`
   ; /usr/sbin/smbd; /usr/sbin/nmbd
   [global] Umie¶æ to w pliku je¶li chcesz konto anonimowe guest account = nobody
      log file = /var/log/samba-log.%m lock directory = /var/lock/samba share
      modes = yes

   [homes] comment = Katalogi Domowe browseable = no read only = no create
      mode = 0750

   [tmp] comment = Miejsce na pliki tymczasowe path = /tmp read only = no
      public = yes
</PRE>
<HR>
<P>Po stworzeniu nowego pliku <CODE>smb.conf</CODE> dobrze jest zweryfikowaæ
czy jest poprawny. Mo¿na to zrobiæ przy pomocy programu
<I>testparm</I> (informacje o nim znajdziesz na stronie podrêcznika
systemowego). Je¶li program ten nie zg³osi ¿adnych b³êdów, to smbd
poprawnie za³aduje ten plik.
<P>Oto pewien trick: Je¶li twój serwer Samba ma wiêcej ni¿ jeden
interfejs ethernetowy, smbd mo¿e do³±czyæ siê do z³ego. Je¶li tak
siê stanie, to mo¿esz zmusiæ smbd do dowi±zania siê do dobrego
przez dodanie do sekcji [global] poni¿szej linii:
<P>
<HR>
<PRE>
interfaces = 192.168.1.1/24
</PRE>
<HR>
<P>Uwaga: Liczba po znaku '/' odnosi siê do maski podsieci.
&quot;24&quot; to warto¶æ jak± nale¿y u¿yæ dla niepodzielonej
klasy C.  Wiêcej informacji okalkulacjach dotycz±cych podsieci
znajdziesz pod adresem 
<A HREF="http://www.ziplink.net/~ralphb/IPSubnet/index.html">www.ziplink.net/~ralphb/IPSubnet/index.html</A>.
<P>Dostêpne jest graficzne narzêdzie konfiguracyjne do Samby:
<I>GtkSamba</I>. Zerknij pod adres 
<A HREF="http://www.open-systems.com/gtksamba.html">www.open-systems.com/gtksamba.html</A>.
<P>
<H2><A NAME="s6">6. Udostêpnianie dysku Linuksowego komputerom z Windows.</A></H2>

<P>
<P>Jak widaæ na powy¿szym przyk³adzie udostêpnianie dysków
Linux-owych u¿ytkownikom Windows jest proste. Dostêp do zasobów
udostêpnianych poprzez Sambê mo¿na w bardzo du¿ym stopniu
kontrolowaæ.
<P>Aby udostêpniæ wszystkim jakie¶ zasoby, dodaj poni¿sze linie do
smb.conf:
<P>
<HR>
<PRE>
   [public]     
   comment = Public Stuff path = /home/public public = yes writable = yes
      printable = no
</PRE>
<HR>
<P>Aby umo¿liwiæ zapis do tego katalogu tylko dla cz³onków grupy
staff, zmodyfikuj te linie w nastêpuj±cy sposób:
<P>
<HR>
<PRE>
   [public]
   comment = Public Stuff path = /home/public public = yes writable = yes
      printable = no write list = @staff
</PRE>
<HR>
<P>Kiedy¶ by³o to bardzo proste: po prostu startowa³e¶ Sambê i zasoby
mo¿na by³o przegl±daæ z Windows na PC. Jednak Microsoft ostatnio
trochê utrudni³ ¿ycie korzystaj±cym z Samby. Systemy Windows 98,
Windows NT (z service pack 3 i nowszym) i ostatnie Windows 95
u¿ywaj± teraz standardowo kodowanych hase³. Samba natomiast
korzysta domy¶lnie z niekodowanych hase³. Nie mo¿na przegl±daæ
zasobów je¶li albo klient albo serwer u¿ywa kodowanych hase³
poniewa¿ nie mo¿na po³±czyæ siê anonimowo.
<P>Je¶li taki w³a¶nie konflikt wystêpuje u ciebie, to podczas próby
po³±czenia siê z zasobem powiniene¶ zobaczyæ okienko z komunikatem:
&quot;You are not authorized to access that account from this
machine&quot;.
<P>Mo¿esz skonfigurowaæ albo Sambê do u¿ywania zakodowanych hase³,
albo Windows do u¿ywani niekodowanych hase³.
<P>Konfigurowanie Windows do u¿ywania kodowanych hase³ Samby:
<P><B>Windows 95/98</B>
<P>U¿ywaj±c edytora rejestrów (regedit) stwórz takie ustawienie:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP
dodaj now± warto¶æ DWORD: Value name: EnablePlainTextPassword Data:
0x01.
<P><B>Windows NT</B>
<P>U¿ywaj±c edytora rejestrów (regedit) stwórz takie ustawienie: 
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rdr\Parameters,
dodaj now± warto¶æ DWORD: Value Name:  EnablePlainTextPassword
Data: 0x01.
<P>Kiedy te zmiany zostan± zrobione, zresetuj komputer z Windows i
spróbuj pod³±czyæ siê do jakiego¶ zasobu z Samby. Powinno to
dzia³aæ o ile serwere Samby u¿ywa niekodowanych hase³
<P>Konfigurowanie Samby do u¿ywania hase³ kodowanych:
<P>W sekcji [global] w pliku <CODE>/etc/smb.conf</CODE> dodaj
nastêpuj±ce linie:
<P>
<HR>
<PRE>
       encrypt passwords = yes
       smb passwd file = /etc/smbpasswd
</PRE>
<HR>
<P>Zanim to zrobisz zachêcam mocno do przeczytania plików
<CODE>ENCRYPTION.txt</CODE>, <CODE>Win95.txt</CODE> i <CODE>WinNT.txt</CODE> w dokumentacji
do Samby.
<P>Je¶li twoi klienci i serwer u¿ywaj± kodowanych hase³ nie bêdziesz
móg³ przegl±daæ zasobów serwera zanim nie zostanie zainicjowane
pierwsze po³±czenie z poprawn± autentykacj±. Aby to uczyniæ wpisz
rêcznie nazwê zasobu w Mened¿erze Plików lub Eksplorerze w postaci
<CODE>\\&lt;nazwa serwera>\&lt;nazwa zasobu></CODE>. Zaloguj siê z
poprawnym loginem i has³em na tym serwerze.
<P>Je¶li podejrzewasz, ¿e serwis nazwa NetBIOS jest ¼le skonfigurowany
(mo¿e dlatego, ¿e pojawiaj± siê b³êdy &quot;host not found&quot;
podczas po³±czenia), to spróbuj u¿yæ tylko adresu IP serwera
<CODE>\\&lt;IP serwera>\&lt;nazwa zasobu></CODE>.
<P>¯eby nazwy plików pojawia³y siê poprawnie mo¿liwe, ¿e musisz dodaæ
kilka ustawieñ do odpowiedniej sekcji zasobu. Poni¿sze dzia³a
poprawnie dla Windows 95/98/NT, ale mo¿liwe, ¿e trzeba te
ustawienia zmodyfikowaæ w przypadku Windows 3.x:
<P>
<HR>
<PRE>
      ; Mangle case = yes zdaje siê podawaæ poprawne nazwy
      ; dla Win 95/98
      mangle case = yes

      ; Czy rozró¿niaæ du¿e i ma³e litery
      case sensitive = no

      ; Domy¶lna wielko¶æ liter przy tworzeniu plików
      default case = lower

      ; Zachowaj ustawienia dot. liter dla wszystkich plików
      preserve case = yes

      ; Zachowaj ustawienia dor. liter dla nazwa dos-owych (8.3)
      short preserve case = no
</PRE>
<HR>
<P>Wiêcej informacji na temat ró¿nych sposobów udostêpniania zasobów
znajdziesz w dokumentacji do Samby. Mo¿liwo¶ci konfiguracji Samby
s± o wiele wiêksze ni¿ pokazane tutaj. Na pocz±tek jednak
wystarczy. Je¶li chcesz zrobiæ co¶ bardziej zaawansowanego, to
zajrzyj na wspomnian± wcze¶niej stronê WWW Samby.
<P>
<H2><A NAME="s7">7. Udostêpnianie dysku spod Windows maszynom z Linux-em.</A></H2>

<P>Wraz z dystrybucj± Samby otrzymujemy klienta dla Unix-ów. Jego
interfejs poleceñ jest podobny do ftp. Mo¿esz go u¿ywaæ, aby
przenosiæ pliki miêdzy Windowsowym "serwerem" a klientem
Linux-owym.
<P>Aby zobaczyæ jakie zasoby sa udostêpnione na danym ho¶cie napisz:
<HR>
<PRE>
     /usr/sbin/smbclient -L host
</PRE>
<HR>
<P>gdzie host jest nazw± maszyny, której zasoby chcesz zobaczyæ.
Polecenie to zwróci listê nazw serwisów - to znaczy nazw
dysków lub drukarek, które mo¿e udostêpniæ. Serwer Samby bêdzie
ciê pyta³ o has³o, o ile nie ma skonfigurowanego bezpiecznego
dostêpu.
<P>Np.
<P>
<HR>
<PRE>
     smbclient -L zimmermann
</PRE>
<HR>
<P>Polecenie to powinno wy¶wietliæ co¶ na kszta³t:
<P>
<HR>
<PRE>
 Server time is Sat Aug 10 15:58:27 1996 Timezone is UTC+10.0
Password: Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager 3.51]

   Server=[ZIMMERMAN] User=[] Workgroup=[WORKGROUP] Domain=[]

           Sharename      Type      Comment
           ---------      ----      -------
           ADMIN$         Disk      Remote Admin public Disk Public C$ Disk
           Default share IPC$ IPC Remote IPC OReilly Printer OReilly print$
           Disk Printer Drivers


   This machine has a browse list:

           Server               Comment
           ---------            -------
           HOPPER               Samba 1.9.15p8 KERNIGAN Samba 1.9.15p8 LOVELACE
           Samba 1.9.15p8 RITCHIE Samba 1.9.15p8 ZIMMERMAN
</PRE>
<HR>
<P>Browse list pokazuje inne serwery SMB udostêpniaj±ce zasoby w
sieci.
<P>Aby u¿yæ klienta napisz:
<HR>
<PRE>
     /usr/sbin/smbclient serwis &lt;has³o>
</PRE>
<HR>
<P>gdzie serwis jest nazw± maszyny i zasobu. Na przyk³ad je¶li
próbujesz dostaæ siê do katalogu, który jest udostêpniany jako
public na maszynie o nazwie zimmermann, serwisem by³oby:
\\zimmerman\public. Chocia¿ z powodu pow³oki w
Linux-ie bêdziesz musia³ oznaczyæ znaki \ specjalnie i
polecenie ostatecznie wygl±da tak:
<HR>
<PRE>
     usr/sbin/smbclient \\\\zimmerman\\public has³o
</PRE>
<HR>
<P>gdzie has³o jest ³añcuchem znaków bêd±cym twoim has³em.
<P>Pojawi siê wtedy znak zachêty klienta Samby:
<P>
<HR>
<PRE>
    Server time is Sat Aug 10 15:58:44 1996 Timezone is UTC+10.0
    Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager
    3.51] smb: \>
</PRE>
<HR>
<P>Napisz 'h', aby uzyskaæ pomoc:
<P>
<HR>
<PRE>
     smb: \> h ls dir lcd cd pwd get mget put mput rename more mask del rm
     mkdir md rmdir rd prompt recurse translate lowercase print printmode
     queue cancel stat quit q exit newer archive tar blocksize tarmode
     setmode help ?  !  smb: \>
</PRE>
<HR>
<P>Je¶li umiesz u¿ywaæ ftp, to nie powiniene¶ potrzebowaæ czytaæ
podrêcznika systemowego na temat smbclient.
<P>smbclient mo¿e byæ dobry do testowania jednak szybko mo¿e siê
znudziæ w codziennej pracy. Bêdziesz pewnie chcia³ u¿ywaæ
pakietu <I>smbfs</I>. Zawarte s± tam dwa proste narzêdzia:
<I>smbmount</I> i <I>smbumount</I>. Dzia³aj± dok³adnie tak samo jak
linuksowe polecenia mount i umount z tym, ¿e operuj± na zasobach
SMB.
<P>Pakiet <I>smbfs</I> jest zawarty w wiêkszo¶ci dystrybucji Linuksa.
Jedna wa¿na uwaga: Musisz mieæ wkompilowan± w j±dro obs³ugê systemu
plików SMB (smbfs), aby móc u¿ywaæ tych narzêdzi!
<P>
<H2><A NAME="s8">8. Udostêpnianie drukarki Linux-owej komputerom z Windows.</A></H2>

<P>
<P>Aby udostepniæ drukarkê Linux-ow± Windowsom musisz siê upewniæ, ¿e
drukarka dzia³a dobrze pod Linux-em. Je¶li mo¿esz drukowaæ spod
Linux-a to ustawienie serwera SMB dla drukarki jest bardzo proste.
<P>Przeczytaj Priniting-HOWTO na temat ustawienia drukarki pod
Linux-em.
<P>Poniewa¿ autor u¿ywa drukarki po³±czonej z Windows NT (bardzo dawno
temu - zanim nasza sieæ zosta³a ca³kiem przeniesiona na Linuksa),
sekcja ta
nie powinna byæ brana za definicjê, ale bardziej jako sugestia.
Je¶li ktokolwiek ma ochotê siê podzieliæ szczegó³ami na temat
innych konfiguracji proszê o kontakt, aby ta sekcja mog³a zostaæ
skoñczona: 
<A HREF="mailto:dwood@plugged.net.au">dwood@plugged.net.au</A>.
<P>Dodaj konfiguracjê na temat drukowania do smb.conf:
<P>
<HR>
<PRE>
     [global]
     printing = bsd printcap name = /etc/printcap load printers = yes
     log file = /var/log/samba-log.%m lock directory = /var/lock/samba

     [printers] comment = Wszystkie drukarki security = server path = /var/spool/lpd/lp
     browseable = no printable = yes public = yes writable = no
     create mode = 0700

     [ljet] security = server path = /var/spool/lpd/lp printer name = lp
     writable = yes public = yes printable = yes
     print command = lpr -r -h -P %p %s
</PRE>
<HR>
<P>Upewnij siê, ¿e ¶cie¿ka do drukarki (w tym wypadku w sekcji ]ljet[)
jest taka sama jak katalog zadañ w <CODE>etc/printcap</CODE>.
<P>Linie:
<P>
<HR>
<PRE>
     printcap name = /etc/printcap
     load printers = yes
</PRE>
<HR>
<P>decyduj± czy wszystkie drukarki zdefiniowane w
<CODE>/etc/printcap</CODE> powinny byæ za³adowane. Je¶li to zrobisz, to
nie ma sensu konfigurowaæ drukarek indywidualnie. Sekcja
[printers] okre¶la ustawienia dla drukarek, które chcesz
wyra¼nie zdefiniowaæ. Je¶li twój system drukowania nie dzia³a w ten
sposób (BSD), to musisz skonfigurowaæ fa³szywy plik konfiguracyjny
dla drukarek (albo u¿yæ techniki z poleceniem 'print'; zobacz
dalej). Wiêcej informacji na temat drukowania znajdziesz w 
<A HREF="ihttp://www.jtrz.org.pl/Html/Printing-HOWTO.pl.html">Printing-HOWTO</A>.
<P>Po¿yteczn± technik± testowania po³±czenia sieciowego jest zmiana
polecenia print na:
<P>
<HR>
<PRE>
     print command = cp %S /tmp/print.%P.%S
</PRE>
<HR>
<P>Mo¿na potem przeanalizowaæ plik wynikowy.
<P>UWAGA: S± pewne problemy przy udostêpnianiu drukarki Unixowej
przez Sambê komputerom z Windows NT. Jeden problem to taki, ¿eby
NT widzia³o poprawnie drukarkê. Aby go zlikwidowaæ przeczytaj plik
<CODE>docs/WinNT.txt</CODE>, który jest dostarczany wraz z
dystrybucj±. Drugi problem to has³a. Przeczytaj ten sam plik, aby
rozwi±zaæ ten problem.
<P>Oleg L. Machulskiy (machulsk@shade.msu.ru) proponuje, ¿e lepszym
poleceniem by³oby:
<P>
<HR>
<PRE>
       print command = smb2ps %s | lpr -r -h -P %p
</PRE>
<HR>
<P>gdzie <I>smb2ps</I> to skrypt zamieniaj±cy plik otrzymany z Windows
na bardziej u¿yteczny PostScript. Musi on odci±æ pierwsze 3 linie i
ostatnie dwie poniewa¿ te linie zawieraj± pewne kody PJL lub PCL.
<P>Takie podej¶cie jest potrzbne tylko wtedy je¶li Windows u ciebie
drukuje PCL a nie prawdziwy PostScript. Dowiedzia³em siê, ¿e
Windows 95/98/NT nie posiadaj± same z siebie sterownika do
PostScriptu, ale sterownik &quot;Digital turbo Printserver
20&quot; jest dobrym zamiennikiem takiego w wiêkszo¶ci przypadków.
S³ysza³em tak¿e, ¿e sterownik &quot;Apple LaserWriter II
NTX&quot; dzia³a dobrze.
<P>Jeff Stern (jstern@eclectic.ss.uci.edu) zg³osi³ co¶ takiego, co
mo¿e niektórym z was pomóc:
<P>--------------------------%&lt;----------------------------------
<P>Mój problem polega³ na tym, ¿e mog³em drukowaæ na drukarce z samego
Linuksa, ale nie mog³em drukowaæ na niej z Windows 95. Kiedy
próbowa³em polecenia <I>smbclient \\eclectic\belen -P</I> i potem
próbowa³em wydrukowaæ plik pojawia³y siê komunikaty o braku
dostêpu (access denied). Tak wiêc ustawi³em dla katalogu
<CODE>/var/spool/lpd/lp1</CODE> atrybuty 777. Przykro mi, ale musia³em
to zrobiæ. Mog³em te¿ wszystkich u¿ytkowików zapisaæ do grupy 'lp'
i ustawiæ takie prawa dla tej grupy, albo zmieniæ w³a¶ciciela
grupowego katalogu na 'users' ... . Ale jak na razie to dzia³a z
prawami root:lp 777.
<P>Inn± rzecz± jak± administratorzy musz± wiedzieæ, to fakt, ¿e nazwa
konta,z którego u¿ytkownik próbuje drukowaæ z Windows, musi istnieæ
tak¿e na Linuksie. I tak: je¶li na Windows jest u¿ytkownik 'joe',
ti na Linuksie musi byæ te¿ u¿ytkownik 'joe'. Has³o logowania
u¿ytkownika 'joe' bêdzie has³em dostêpu do drukarki na Linuksie.
U¿ytkownik bêdzie zapytano o to has³o podczas dodawania drukarki
sieciowej do swojego komputera.
<P>My¶la³em, ¿e to nie bêdzie problemem u mnie, bo ustawi³em swoj±
drukarkê jako 'public' (ogólnie dostêpn±) w <CODE>/etc/smb.conf</CODE>.
Ale jednak wci±¿ jest pytanie o has³o. Windows nie daje niestety
mo¿liwo¶ci podania innego loginu dla drukarki zdalnej. U¿ywa po
prostu tego, którym zalogowa³e¶ siê do Windows.
<P>--------------------------%&lt;----------------------------------
<P>Dr. Michael Langner (langner@fiz-chemie.de) wskazuje, ¿e problemu z
prawami dostêpu dla katalogu <CODE>/var/spool/lpd/</CODE> mo¿na unikn±æ
przez u¿ycie takich ustawieñ:
<P>
<HR>
<PRE>
path = /tmp
print command = lpr -r -P%p %s
</PRE>
<HR>
<P>Czasami pojawi siê b³±d podczas przetwarzania PostScriptu z
Windows, który powoduje wydrukowanie dodatkowej strony na koñcu
ka¿dego zadania. Na pocz±tku ka¿dej takiej strony znajduje siê
''&quot;%%[ Lastpage ]%%&quot;. Zdarza siê to tylko w
Windows 95/98 i spowodowane jest b³êdami w PostScripcie.
<P>Jednym ze sposobów, aby sobie z tym poradziæ jest u¿ycie skryptu
usuwaj±cego ten kawa³ek z³ego PostScriptu z zadania wydruku. Innym
sposobem jest znalezienie lepszego sterownika do PostScriptu do
Windows. Najlepszym sposobem jest prawdopodobnie u¿ycie LPRng
zamiast PostScriptu do drukowania na serwerze Samby.
<P>Erik Ratcliffe (erik@caldera.com) z Caldery powiedzia³ mi, ¿e
u¿ywanie LPRng oznacza, ¿e na maszynach z Windows mo¿e byc u¿yty
ka¿dy sterownik. Na serwerze Samby, u¿ywali oni takiego pliku
<CODE>/etc/printcap</CODE>:
<P>
<HR>
<PRE>
       raw:\
               :rw:sh:
               :lp=/dev/lp1
               :sd=/var/spool/lpd/raw
               :fx=flp
</PRE>
<HR>
<P>LPRng nie wyamaga znaków ':\' na koñcu ka¿dej linii. Wci±¿
potrzebna jest pozycja dotycz±ca drukarek w pliku
<CODE>/etc/smb.conf</CODE>. Polecenie 'print' musi u¿ywaæ drukarki
zdefiniowanej jako &quot;raw&quot; w <CODE>/etc/printcap</CODE> i
dane musz± byæ wysy³ane do tej drukarki binarnie. Spróbuj u¿yc
poni¿szej linii:
<P>
<HR>
<PRE>
       print command = lpr -b -Praw %s
</PRE>
<HR>
<P>Mo¿liwe te¿, ¿e bêdziesz musia³ skonfigurowaæ kolejkowanie na
Windows 95, tak ¿eby wysy³aæ wydruki bezpo¶rednio do drukarki
zamiast je kolejkowaæ.
<P>
<H2><A NAME="s9">9. Udostêpnianie drukarki spod Windows komputerom z Linux-em.</A></H2>

<P>
<P>Aby udostêpniæ drukarkê spod Windows-ów musisz zrobiæ nastêpuj±ce
rzeczy:<BR>
<P>
<OL>
<LI>Musisz mieæ poprawne pola w <CODE>/etc/printcap</CODE> i musz± one
odpowiadaæ lokalnej strukturze katalogów (katalog dla drukarki itp.)
   </LI>
<LI>Musisz mieæ skrypt <CODE>/usr/bin/smbprint</CODE>. Skrypt ten
znajduje siê w ¼ród³ach Samby, ale nie w ka¿dym pakiecie binarnym.
Poni¿ej znajduje siê trochê zmodyfikowana wersja tego skryptu.
   </LI>
<LI>Je¶li chcesz zamieniaæ pliki ASCII na PostScript, musisz mieæ
nenscript albo jego ekwiwalent. nenscript jest konwerterem
PostScript-owym i jest z regu³y instalowany w <CODE>/usr/bin</CODE>.
   </LI>
<LI>Mo¿esz u³atwiæ drukowanie poprzez Sambê pisz±c skrypt. Poni¿ej
podany jest prosty skrypt w Perl-u obs³uguj±cy pliki ASCII,
PostScript i stworzony PostScript.
</LI>
<LI>Móg³bys te¿ u¿yæ <I>MagicFilter</I> do powy¿szych zadañ.
Szczegó³y na temat konfiguracji tego filtru s± podane za skryptem w
perlu. Zalet± tego filtru jest znajomo¶æ wielu formatów plików i
umiejêtno¶æ ich konwersji.</LI>
</OL>
<P>Poni¿sze pola w <CODE>/etc/printcap</CODE> s± dla drukarki HP 5MP
do³±czonej do komputera z Windows NT.
<P>
<HR>
<PRE>
     cm - komentarz; lp - urz±dzenie, na które ma byæ wys³any wydruk;
     sd - katalog zadañ dla drukarki (na lokalnym komputerze); af -
   katalog accounting; mx - maksymalny rozmiar pliku (0 - bez
   ograniczenia); if - nazwa filtru wej¶ciowego (skryptu).
</PRE>
<HR>
<P>Wiêcej informacji znajdziesz w Printing-HOWTO lub w podrêczniku
systemowym dla "printcap".
<P>
<HR>
<PRE>
 etc/printcap
   #
   # //zimmerman/oreilly przez smbprint
   #
   lp:\ cm=HP 5MP Postscript OReilly na zimmerman:\ lp=/dev/lp1:\
           :sd=/var/spool/lpd/lp:\ af=/var/spool/lpd/lp/acct:\ mx#0:\
           :if=/usr/bin/smbprint:
</PRE>
<HR>
<P>Upewnij siê, ¿e katalogi zadañ i zliczania (accounting) istniej±
i s± zapisywalne
oraz ¿e if ma poprawn± ¶cie¿kê do scryptu <CODE>smbprint</CODE> (patrz
poni¿ej) i ¿e lp wskazuje poprawne urz±dzenie (plik specjalny w
katalogu <CODE>/dev</CODE>)
<P>Nastêpnym krokiem jest skrypt <CODE>smbprint</CODE>. Zwykle znajduje siê
on w <CODE>/usr/bin</CODE> i jest przypisywany Andrew Tridgellowi -
osobie, która stworzy³a Sambê o ile wiem. Przychodzi on wraz z
dystrybucj± ¼róde³ Samby, ale nie ma go w dystrybucji binariów,
wiêc go tutaj stworzy³em.
<P>Mo¿esz przejrzeæ go dok³adniej. Przerobi³em go trochê, poniewa¿
przeróbki wydawa³y mi siê u¿yteczne.
<P>
<HR>
<PRE>
   #!/bin/sh
   # Skrypt ten jest filtrem wej¶ciowym do drukowania na drukarce
   # do³±czonej do Unix-a. U¿ywa programu smbclient do drukowania
   # pliku. Na przyk³ad twój printcap móg³by wygl±daæ nastepuj±co:
   #
   #
   # smb:lp=/dev/null:sd=/usr/spool/smb:sh:if=/usr/local/samba/smbprint
   #
   #
   # Stworzy³by on drukarkê o nazwie smb, która drukowa³aby poprzez
   # ten skrypt. Musia³by¶ stworzyæ katalog zadañ /usr/spool/smb z
   # odpowiednimi dla twojego systemu prawami dostêpu i w³a¶cicielem.
   # 
   # Ustaw nastêpuj±ce rzeczy na serwer i serwis przez, który chcesz
   # drukowaæ. W tym przyk³adzie mam PC-ta z WfWg o nazwie "lapland",
   # który ma drukarkê o nazwie printer bez has³a.
   #
   #
   # W dalszej czê¶ci skrypt zosta³ przerobiony przez hamilton@ecnz.co.nz
   # (Michael Hamilton, tak aby serwer, serwis i has³o mog³y byæ
   # przeczytane z pliku /usr/var/spool/lpd/PRINTNAME/.config
   #
   # Aby to dzia³a³o /etc/printcap musi mieæ pole af:
   #
   #   cdcolour:\ cm=CD IBM Colorjet on 6th:\ sd=/var/spool/lpd/cdcolour:\
   #       :af=/var/spool/lpd/cdcolour/acct:\ if=/usr/local/etc/smbprint:\
   #       :mx=0:\ lp=/dev/null:
   #
   # Plik /usr/var/spool/lpd/PRINTNAME/.config powinien zawieraæ:
   #   server=PC_SERVER service=PR_SHARENAME password="password"
   #
   # Np. server=PAULS_PC service=CJET_371 password=""

   #
   # Plik, do którego maj± byc zapisywane wiadomo¶ci ze ¶ledzenia;
   # mo¿esz zmieniæ na /dev/null je¶li chcesz:
   #
   logfile=/tmp/smb-print.log logfile=/dev/null


   #
   # Ostatnim parametrem do filtra jest nazwa pliku accounting.
   #
   spool_dir=/var/spool/lpd/lp config_file=$spool_dir/.config

   # Powinien czytaæ te zmienne z pliku konfiguracyjnego: serwer
   # serwis has³o u¿ytkownik
   eval `cat $config_file`

   # Trcohê pomocy, zmieñ >> na > je¶li chcesz zachowaæ trochê
   # miejsca na dysku.
   #
   echo "server $server, service $service" >> $logfile

   (UWAGA Mo¿esz dodaæ liniê `echo translate' jesli chcesz
   # automatycznego t³umaczenia CR/LF podczas drukowania.   
        echo translate echo "print -" cat
   ) | /usr/bin/smbclient "\\\\$server\\$service" $password -U $user
   -N -P >>
   $logfile
</PRE>
<HR>
<P>Wiêkszo¶æ dystrybucji Linux-owych posiada nenscript do zamiany
dokumentów ASCII na PostScript. Nastêpuj±cy skrypt w Perl-u
u³atwia ¿ycie stwarzaj±c prosty interfejs dla drukowania w
Linux-ie przez smbprint.
<P>
<HR>
<PRE>
     Stosowanie: print [-a|c|p] &lt;nazwa_pliku>
     -a drukuje &lt;nazwa_pliku> jako ASCII; c drukuje &lt;nazwa_pliku>
     sformatowane jako ¼ród³o; -code p drukuje &lt;nazwa_pliku> jako
     PostScript.
     Je¶li nie ma ¿adnej opcji, print próbuje odgadn±æ typ pliku i
    odpowiednio go wydrukowaæ.
</PRE>
<HR>
<P>U¿ycie smbprint do drukowania plików ASCII powoduje obcinanie
d³ugich linii. Ten skrypt dzieli d³ugie linie w miejscu spacji
(zamiast w ¶rodku s³owa) je¶li jest to mo¿liwe.
<P>Formatowanie ¼ród³a odbywa sie przy pomocy programu nenscript.
Bierze on plik ASCII i formatuje go w dwie kolumny z dodatkowym
nag³ówkiem (data, nazwa pliku, itp.) Zlicza tak¿e ilo¶æ linii.
Wzoruj±c siê na tym przyk³adzie mo¿esz zrobiæ inne typy
formatowania.
<P>Dokumenty PostScript-owe s± ju¿ sformatowane wiêc przechodz±
bezpo¶rednio do drukarki.
<P>
<HR>
<PRE>
 usr/bin/perl

# Skrypt:   print Autorzy: Brad Marshall, David Wood
#           Plugged In Communications Date: 960808
#
# Skrypt do drukowania na drukarce oreilly, która jest do³±czona do
# komputera zimmerman. Opis dzia³ania: Jako argumenty przyjmuje pliki
# ró¿nych typów i wysy³a je odpowiednio do skryptu drukujacego Samby
#
# Obecnie obs³ugiwane typy plików:
#
# ASCII         - Upewnij siê, ¿e linie d³u¿sze ni¿ $line_length zosta³y
#               podzielone w miejscu spacji.
# PostScript    - Nie robi nic.
# Code          - Formatuje na PostScript u¿ywaj±c "nenscript", aby wszystko
#               by³o odpowiednio wy¶wietlone (u³o¿enie, czcionki, itd.)
#
#
# Ustaw maksymaln± ilo¶æ znaków w linii dla plików ASCII. line_length
$= 76;

# Ustaw ¶cie¿kê i nazwê skryptu drukuj±cego Samby print_prog = 
$"/usr/bin/smbprint";

# Ustaw ¶cie¿kê i nazwê "nenscript-u" (zamiana ASCII-->PostScript)
$nenscript = "/usr/bin/nenscript";

unless ( -f $print_prog ) { die "Can't find $print_prog!";
}
unless ( -f $nenscript ) { die "Can't find $nenscript!";
}

&amp;ParseCmdLine(@ARGV);

# DBG print "filetype is $filetype\n";

if ($filetype eq "ASCII") { ero;wrap($line_length); elsif ($filetype eq
        &amp;"code") {
} ero;codeformat; elsif ($filetype eq "ps") {
        &amp;createarray; else {
} print "Sorry..no known
        &amp;file type.\n"; exit
} 0;
}
# Wy¶lij tablcê do smbprint open(PRINTER, "|$print_prog") || die "Can't
open $print_prog: $!\n"; foreach
$line (@newlines) {
        print PRINTER $line;
}
# Wy¶lij dodatkowy znak LF je¶li plik ma niekompletn± ostatni± liniê. print
PRINTER "\n"; close(PRINTER); print "Completed\n"; exit 0;

# --------------------------------------------------- #
#        Wszystko poni¿ej jest procedur±              #
# --------------------------------------------------- #

sub ParseCmdLine { Interpretuje wiersz poleceñ, szukaj±c jakiego typu jest
        # plik

        # Gets $arg and $file to be the arguments (if they exists) and the
        # filename
        if ($#_ &lt; 0) { ero;usage;
        }
        # DBG foreach $element (@_) { print "*$element* \n";
#       }

        $arg = shift(@_); if ($arg =~ /\-./) { cmd = $arg; DBG print "\$cmd
        found.\n";

                $file = shift(@_); else { file = $arg;
        }
        
        # Definiowanie typu pliku dopóki ($cmd) { Nie mamy argumentów

                if ($file =~ /\.ps$/) { filetype = "ps"; elsif ($file =~
                        $/\.java$|\.c$|\.h$|\.pl$|\.sh$|\.csh$|\.m4$|\.inc$|\.html$|\.htm$/)
                        ${ filetype = "code"; else { filetype = "ASCII";
                }

                # Przerób $file odpowiednio do jego typu i zwróæ $filetype
        } else { Mamy typ pliku w $arg if ($cmd =~ /^-p$/) {
                filetype = "ps"; elsif ($cmd =~
                        $/^-c$/) { filetype
                } = "code"; elsif ($cmd =~
                        $/^-a$/) {
                } filetype = "ASCII"
                }
        }
}

sub usage { print " Stosowanie: print [-a|c|p] &lt;plik>
       -a drukuje &lt;plik> jako ASCII c drukuje &lt;plik> sformatowany jako
         ¼ród³o
       -code p drukuje &lt;plik> jako PostScript
        Je¶li nie ma ¿adnej opcji, print próbuje odgadn±æ typ pliku i
        odpowiednio go wydrukowaæ.\n
";
        exit(0);
}

sub wrap { Stwórz tablicê linii w pliku, gdzie ka¿da linia jest krótsza od
        # podanej ilo¶ci znaków i jest podzielona tylko w miejscach spacji

        # Pobierz ilo¶æ znaków jaka mo¿e byæ w linii.  limit =
        $pop(@_);

        # DBG print "Entering subroutine wrap\n"; print "The line length
        #limit is $limit\n";

        # Wczytaj plik, sformatuj i umie¶æ w tablicy.  open(FILE,
        "&lt;$file") || die "Can't open $file: $!\n"; while(&lt;FILE>) {
                $line = $_;
                
                # DBG print "The line is:\n$line\n";

                # Podziel liniê je¶li jest d³u¿sza ni¿ podana ilo¶æ znaków.  while (
                length($line) > $limit ) {
                        
                        # DBG print "Wrapping...";

                        # Pobierz pierwsze $limit+1 znaków.  part =
                        $substr($line,0,$limit +1);

                        # DBG print "The partial line is:\n$part\n";

                        # Sprawd¼ czy ostatni znak jest spacj±. 
                        $last_char = substr($part,-1, 1);
                        if ( " " eq $last_char ) { Je¶li tak, wydrukuj resztê.

                            # DBG print "The last character was a space\n";

                            substr($line,0,$limit + 1) = "";
                            substr($part,-1,1) = "";
                            push(@newlines,"$part\n");
                        } else { Je¶li nie, znajd¼ ostatni± spacjê w
                                # pod-linii i drukuj do niej

                            # DBG print "The last character was not a
                            #space\n";

                             # Usuñ znaki dalsze ni¿ $limit
                             substr($part,-1,1) = ""; Odwróæ liniê
                             # aby u³atwiæ odnajdywanie ostatniej spacji
                             $revpart = reverse($part);
                             $index = index($revpart," ");
                             if ( $index > 0 ) {
                               substr($line,0,$limit-$index) = "";
                               push(@newlines,substr($part,0,$limit-$index)
                                   . "\n"); else { Nie by³o spacji w linii
                             } wiêc
                               # wydrukuj do $limit.
                               substr($line,0,$limit) = "";
                               push(@newlines,substr($part,0,$limit)
                                   . "\n");
                             }
                        }
                }
                push(@newlines,$line);
        }
        close(FILE);
}

sub codeformat { Wywo³aj procedurê wrap i przefiltruj przez nenscript
        &amp;wrap($line_length);
        
        # Przepu¶æ wynik przez nenscript, aby utworzyæ plik PostScript,
        # który pasuje do jakiego¶ przyzwoitego formatu ¼róde³ do drukowania
        # (u³o¿enie, czcionki Courier, ilo¶æ linii). Najpierw wydrukuj to do
        # pliku tymczasowego.
        $tmpfile = "/tmp/nenscript$$";
        open(FILE, "|$nenscript -2G -i$file -N -p$tmpfile -r") || die "Can't
                open nenscript: $!\n"; foreach $line (@newlines)
        {
                print FILE $line;
        }
        close(FILE);
        
        # Wczytaj plik tymczasowy spowrotem do tablicy, tak aby móg³ byæ
        # wys³any do skryptu print Samby.
        @newlines = ("");
        open(FILE, "&lt;$tmpfile") || die "Can't open $file: $!\n";
        while(&lt;FILE>) {
                push(@newlines,$_);
        }
        close(FILE); system("rm $tmpfile");
}

sub createarray { Stwórz tablicê dla PostScript-u open(FILE, "&lt;$file") ||
        # die "Can't
        open $file: $!\n"; while(&lt;FILE>) {
                push(@newlines,$_);
        }
        close(FILE);
}
</PRE>
<HR>
<P>Teraz sposób z <I>MagicFilter</I>. Dziêkujê za tê informacjê Alberto
Menegazzi (
<A HREF="mailto:flas    h.egon@iol.it">flash.egon@iol.it</A>).
<P>Alberto pisze:
<P>--------------------------%&lt;----------------------------------
<P>1) Zainstaluj <I>MagicFilter</I> dla odpowiednich drukarek w
<CODE>/usr/bin/local/</CODE>, ale nie umieszczaj w
<CODE>/etc/printcap</CODE> tego co sugeruje dokumentacja do tego
filtru.
<P>2) Utwórz plik <CODE>/etc/printcap</CODE> na podobieñstwo tego poni¿ej
(to jest konfiguracja dla mojej drukarki LaserJet 4L):
<P>
<HR>
<PRE>
lp|ljet4l:\
        :cm=HP LaserJet 4L:\
        :lp=/dev/null:\                         # or /dev/lp1
        :sd=/var/spool/lpd/ljet4l:\
        :af=/var/spool/lpd/ljet4l/acct:\
        :sh:mx#0:\
        :if=/usr/local/bin/main-filter:
</PRE>
<HR>
<P>Powiniene¶ wiedzieæ, ¿e lp=/dev/... otwierane jest z lokowaniem,
tak wiêc powinny byæ u¿ywane virtualne urz±dzenia; jedno dla ka¿dej
odleg³ej drukarki.
<P>Np. stworzone przez 'touch /dev/ljet4l'.
<P>3) Stwórz filtr <CODE>/usr/local/bin/main-filter</CODE> jak poni¿ej:
<P>
<HR>
<PRE>
#! /bin/sh
logfile=/var/log/smb-print.log
spool_dir=/var/spool/lpd/ljet4l
(
  echo "print -"
    /usr/local/bin/ljet4l-filter
) | /usr/bin/smbclient "\\\\SHIR\\HPLJ4" -N -P >> $logfile
</PRE>
<HR>
<P>P.S. Oto cytat z mini-HOWTO Print2Win na temat lokowania i po co
tworzyæ wirtaulne drukarki.
<P>---Pocz±tek cytatu
<P>Wskazówka od Ricka Bresslera:
<P>Dobra rada. Ja u¿ywam czego¶ bardzo podobnego. Jedna pomocna
wskazówka, to poni¿ej nie jest dobrym pomys³em:
<P>
<HR>
<PRE>
        :lp=/dev/null:\
</PRE>
<HR>
<P>lpr otwiera plik podany w ustawieniu <I>lp=</I> na wy³±czno¶æ. Robi
tak, ¿eby zapobiec zapisywaniu przez wiele procesów do tej samej
drukarki w tym samym czasie.
<P>Ubocznym efektem tego jest, ¿e w twoim przypadku 'eng' i 'colour'
nie mog± drukowaæ w tym samym czasie (zwykle mniej lub bardziej
przezroczyste, poniewa¿ bêd± raczej drukowa³y szybko no i jest te¿
kolejka. Tak ¿e nie powiniene¶ niczego zauwa¿yæ). Ale ka¿dy inny
proces, który spróbuje zapisaæ do /dev/null przerwie dzia³anie.
<P>W systemie jednou¿ytkownikowym nie jest to problem. Ja mam system z
50. drukarkami - i tam by³by to problem.
<P>Rozwi±zaniem jest stworzenie fa³szywej drukarki dla ka¿dej. Np.
'touch /dev/eng'.
<P>Zmodyfikowa³em pola w pliku <CODE>/etc/printcap</CODE> powy¿ej i
wzi±³em pod uwagê sugestie Ricka. Wykona³em te dwa polecenia:
<P>
<HR>
<PRE>
#touch /dev/eng
#touch /dev/colour
</PRE>
<HR>
<P>---Koniec cytatu
<P>--------------------------%&lt;----------------------------------
<P>
<H2><A NAME="s10">10. Tworzenie kopii zapasowej komputerów z Windows na Linuksie.</A></H2>

<P>
<P>Adam Neat (
<A HREF="mailto:adamneat@ipax.com.au">adamneat@ipax.com.au</A>) uprzejmie poda³ nastêpuj±cy skrypt,
s³u¿±cy do robienia kopii zapasowych Windowsów na Linuksie przy
pomocy narzêdzia <I>smbclient</I>. Adam twierdzi, ¿e u¿ywa go do
robienia kopii zapasowych Windows 3.x i NT na Linuksie na napêdzie
DAT SCSI.
<P>Adam nie jest dumny ze stylu kodowania, ale to dzia³a. Jak ja to
lubiê mówiæ: &quot;Je¶li dzia³a i jest g³upie, to nie jest
g³upie&quot;.
<P>W skrypcie tym <I>agnea1</I> jest nazw± u¿ytkownika na Linuksie,
który robi kopie.
<P>
<HR>
<PRE>
#!/bin/bash

clear
echo Initialising ...
checkdate=`date | awk '{print $1}'`

if [ -f "~agnea1/backup-dir/backup-data" ]; then

        echo "ERROR: No config file for today!"
        echo "FATAL!"
        exit 1
fi

if [ -d "~agnea1/backup-dir/temp" ]; then

        echo "ERROR: No tempoary directory found!"
        echo
        echo "Attempting to create"
        cd ~agnea1
        cd backup-dir
        mkdir temp
        echo "Directory Made - temp"
fi

if [ "$1" = "" ]; then

        echo "ERROR: enter in a machine name (ie: cdwriter)"
        exit 1
fi

if [ "$2" = "" ]; then

        echo "ERROR: enter in a SMB (Lan Manager) Resource (ie: work)"
        exit 1
fi

if [ "$3" = "" ]; then

        echo "ERROR: enter in an IP address for $1 (ie:
        130.xxx.xxx.52)" exit 1
fi

#############################################################################
# Main Section
#
#############################################################################

cd ~agnea1/backup-dir/temp
rm -r ~agnea1/backup-dir/temp/*
cd ~agnea1/backup-dir/

case "$checkdate"
in
        Mon)
                echo "Backuping for Monday"
                cat backup-data | /usr/local/samba/bin/smbclient
                \\\\$1\\$2 -I$3 -N echo "Complete"

                        if [ -d "~agnea1/backup-dir/Monday" ]; then
                                echo "Directory Monday Not found ...
                                making" mkdir
                                ~agnea1/backup-dir/Monday
                        fi

                echo "Archiving ..."
                cd ~agnea1/backup-dir/temp
                tar -cf monday.tar *                echo "done ..."
                rm ~agnea1/backup-dir/Monday/monday.tar
                mv monday.tar ~agnea1/backup-dir/Monday
                ;;


        Tue)
                echo "Backuping for Tuesday"
                cat backup-data | /usr/local/samba/bin/smbclient
                \\\\$1\\$2 -I$3 -N echo "Complete"

                        if [ -d "~agnea1/backup-dir/Tuesday" ]; then
                                echo "Directory Tuesday Not found ...
                                making" mkdir
                                ~agnea1/backup-dir/Tuesday
                        fi
                echo "Archiving ..."
                cd ~agnea1/backup-dir/temp
                tar -cf tuesday.tar *
                echo "done ..."
                rm ~agnea1/backup-dir/Tuesday/tuesday.tar
                mv tuesday.tar ~agnea1/backup-dir/Tuesday
                ;;

        Wed)
                echo "Backuping for Wednesday"
                cat backup-data | /usr/local/samba/bin/smbclient
                \\\\$1\\$2 -I$3 -N echo "Complete"

                        if [ -d "~agnea1/backup-dir/Wednesday" ]; then
                                echo "Directory Wednesday Not found
                                ... making" mkdir
                                ~agnea1/backup-dir/Wednesday
                        fi
                echo "Archiving ..."
                cd ~agnea1/backup-dir/temp
                tar -cf wednesday.tar *
                echo "done ..."
             rm ~agnea1/backup-dir/Wednesday/wednesday.tar
                mv wednesday.tar ~agnea1/backup-dir/Wednesday
                ;;

        Thu)
                echo "Backuping for Thrusday"
                cat backup-data | /usr/local/samba/bin/smbclient
                \\\\$1\\$2 -I$3 -N echo "Complete"

                        if [ -d "~agnea1/backup-dir/Thursday" ]; then
                                echo "Directory Thrusday Not found ...
                                making" mkdir
                                ~agnea1/backup-dir/Thursday
                        fi
                echo "Archiving ..."
                cd ~agnea1/backup-dir/temp
                tar -cf thursday.tar *
                echo "done ..."
                rm ~agnea1/backup-dir/Thursday/thursday.tar
                mv thursday.tar ~agnea1/backup-dir/Thursday
                ;;


        Fri)
                echo "Backuping for Friday"
                cat backup-data | /usr/local/samba/bin/smbclient
                \\\\$1\\$2 -I$3 -N echo "Complete"

                        if [ -d "~agnea1/backup-dir/Friday" ]; then
                                echo "Directory Friday Not found ...
                                making" mkdir
                                ~agnea1/backup-dir/Friday
                        fi
                echo "Archiving ..."
                cd ~agnea1/backup-dir/temp
                tar -cf friday.tar *
                echo "done ..."
                rm ~agnea1/backup-dir/Friday/friday.tar
                mv friday.tar ~agnea1/backup-dir/Friday
                ;;

        *)
                echo "FATAL ERROR: Unknown variable passed for day"
                exit 1;;

esac
###########
</PRE>
<HR>
<P>
<H2><A NAME="s11">11. Prawa autorskie.</A></H2>

<P>
<P>Prawa autorskie tego HOWTO nale¿± do Davida Wooda &copy; 1996-1999,
Mo¿na je reprodukowaæ w ka¿dej postaci oraz dystrybuowaæ bez
ograniczeñ tak d³ugo jak d³ugo nie bêdzie zmieniana jego zawarto¶æ
w³±cznie z tym stwierdzeniem.
<P>
<H2><A NAME="s12">12. Podziêkowania.</A></H2>

<P>
<P>Brad Marshall (
<A HREF="mailto:bmarshall@plugged.net.au">bmarshall@plugged.net.au</A>) and Jason Parker (
<A HREF="mailto:jparker@plugged.net.au">jparker@plugged.net.au</A>)
dostarczyli czasu, cierpliwo¶ci, trochê skryptów i badañ.
<P>Adam Neat (
<A HREF="mailto:adamneat@ipax.com.au">adamneat@ipax.com.au</A>) dostarczy³ skrypt w bashu do robienia
kopii zapasowych Windows na Linuksie.
<P>Matthew Flint (
<A HREF="mailto:matthew@philtrum.demon.co.uk">matthew@philtrum.demon.co.uk</A>) powiedzia³ mi o ustawienia
<I>interfaces</I> w <CODE>smb.conf</CODE>.
<P>Oleg L. Machulskiy (
<A HREF="mailto:machulsk@shade.msu.ru">machulsk@shade.msu.ru</A>), Jeff Stern (
<A HREF="mailto:jstern@eclectic.ss.uci.edu">jstern@eclectic.ss.uci.edu</A>), Dr. Michael Langner (
<A HREF="mailto:langner@fiz-chemie.de">langner@fiz-chemie.de</A>
i Erik Ratcliffe (
<A HREF="mailto:erik@caldera.com">erik@caldera.com</A>) zasugerowali modyfikacje w rozdziale na
temat udostêpniania drukarki na Linuksie maszynom z Windows.
<P>Alberto Menegazzi (
<A HREF="mailto:flash.egon@iol.it">flash.egon@iol.it</A>) dostarczy³ konfiguracjê
<I>MagicFilter</I>.
<P>Andrea Girotto (
<A HREF="mailto:icarus@inca.dei.unipd.it">icarus@inca.dei.unipd.it</A>) dostarczy³ wielu warto¶ciowych
sugestii na temat ca³ego dokumentu.
<P>Dziêki tak¿e wszystki miêdzynarodowym t³umaczom, którzy umo¿liwili
czytanie tego HOWTO ludziom nie znaj±cym angielskiego: Takeo Nakano
(
<A HREF="mailto:nakano@apm.seikei.ac.jp">nakano@apm.seikei.ac.jp</A>), Klaus-Dieter Schumacher (
<A HREF="mailto:Klaus-Dieter.Schumacher@fernuni-hagen.de">Klaus-Dieter.Schumacher@fernuni-hagen.de</A>), Andrea Girotto
(
<A HREF="mailto:icarus@inca.dei.unipd.it">icarus@inca.dei.unipd.it</A>) i wielu innym, z którymi nie mam
kontaktu.
<P>
<H2>12.1 Od t³umacza.</H2>

<P>
<P>T³umaczenie to jest chronione prawami autorskimi &copy; Bartosza
Maruszewskiego.
Dozwolone jest rozprowadzanie i dystrybucja na prawach takich
samych jak dokument oryginalny.
<P>Je¶li znalaz³e¶ jakie¶ ra¿±ce b³êdy ortograficzne, gramatyczne,
sk³adniowe, techniczne to pisz do mnie:
<P>
<A HREF="mailto:B.Maruszewski@jtz.org.pl">B.Maruszewski@jtz.org.pl</A><P>Oficjaln± stron± t³umaczeñ HOWTO jest
<A HREF="http://www.jtz.org.pl/">http://www.jtz.org.pl/</A><P>Aktualne wersje przet³umaczonych dokumentów znajduj± siê na
tej¿e stronie. Dostêpne s± tak¿e poprzez anonimowe ftp pod adresem
<A HREF="ftp://ftp.jtz.org.pl/HOWTO/">ftp.jtz.org.pl</A> w katalogu <CODE>/HOWTO/</CODE>.
<P>Przet³umaczone przeze mnie dokumenty znajduj± siê tak¿e na
<A HREF="http://www.jtz.org.pl/bartek/tlumaczenie.html">mojej stronie WWW.</A> S± tam te¿ odwo³ania do Polskiej Strony
T³umaczeniowej.
<P>Kontakt z nasz± grup±, grup± t³umaczy mo¿esz uzyskaæ poprzez listê
dyskusyjn± jtz@ippt.gov.pl. Je¶li chcesz sie na ni± zapisaæ, to
wy¶lij list o tre¶ci <CODE>subscribe jtz Imiê Nazwisko</CODE> na adres
<CODE>majordomo@ippt.gov.pl</CODE>
<P>
</BODY>
</HTML>