File: apt-howto.tr.sgml

package info (click to toggle)
apt-howto 1.8.10.3-1
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 1,040 kB
  • ctags: 36
  • sloc: sh: 939; makefile: 304; perl: 133; sed: 4
file content (1590 lines) | stat: -rw-r--r-- 61,391 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
<!doctype debiandoc system>
<debiandoc>

<book>

<title>APT NASIL</title>

<author>
<name>Gustavo Noronha Silva</name> <email>kov@debian.org</email>
</author>
<author>
<name>eviri: Murat Demirten</name> <email>murat@debian.org</email>
</author>

<version>1.8.3 - Aralk 2002</version>

<abstract>
Bu dokman Debian paket ynetim uygulamas APT hakknda genel kullanm bilgileri
vermeyi amalamaktadr. APT'nin amac Debian kullanclarnn hayatn kolaylatrmak
ve sistemin ynetiminin daha iyi, anlalr ekilde yaplabilmesini salamaktr.
APT Debian datm olarak kullanclar daha ok desteklemek amacyla,
Debian projesi iin gelitirilmitir.
</abstract>

<copyright>
<copyrightsummary>
Copyright &copy; 2001, 2002 Gustavo Noronha Silva
</copyrightsummary>
<p>
Bu dokman GNU FDL (Free Documentation License) lisans ile datlmaktadr.
Herkese yardm olmas midiyle yazlmtr fakat hi bir garanti vadetmemektedir.
</copyright>

<toc>

<chapt>Balarken
<p>
nce .tar.gz vard. Kullanclar GNU/Linux sistemlerinde kullandklar her program
derlemek zorundaydlar. Debian gelitirimi srasnda, kurulu paketlerin
ynetimini salayacak bir sistemin zorunluluu hemen grld. Bu amala gelitirilen
sisteme
<prgn>dpkg</prgn> ad verildi. Sonuta GNU/Linux dnyas, RedHat'in kendi paket
ynetim sistemini gelitirmesinden biraz nce, dpkg ile tant.
<p>
Hemen ardndan GNU/Linux sisteminin gelitiricilerinin kafasnda yeni bir ikilem olutu.
Paketlerin hzl, pratik ve verimli bir yntemle kurulabilmesini, paket bamllklar
ynetimi ve paket gncellemeleri srasnda konfigrasyon dosyalarnn gncellenmesini
salayacak bir araca ihtiya vard. Gene Debian projesi kapsamnda ilk rn ortaya kt:
APT (Advanced Packaging Tool). Apt daha sonra Connectiva tarafndan rpm paketler ile
kullanlmak zere port edildi ve baz datmlar tarafndan da kullanlmaya baland.

<p>
Bu dokmanda Connectiva APT portu olan apt-rpm'den bahsedilmemekle birlikte, dokmana
eklenti amacyla bu konuda da bir eyler gnderebilirsiniz.
<p>
Bu dkman bir sonraki Debian srm olacak <tt>Sarge</tt> temel alnarak yazlmtr.
</chapt>
<chapt id="basico">Temel Konfigrasyon
<sect id="sources.list">/etc/apt/sources.list dosyas
<p>
APT paketlerin bulunduu kaynaklara nasl eriebileceinin bilgisini 
<tt>/etc/apt/sources.list</tt> dosyasnda saklar.
<p>
Dosya iindeki girdilerin biimi aadaki gibidir:

<p>
<example>
deb http://host/debian srm blm1 blm2 blm3
deb-src http://host/debian distribution section1 section2 section3
</example>

<p>
Elbette yukarda verdiimiz rnek kullanlabilir deildir. Her satrn ilk kelimesi
mutlaka <tt>deb</tt> veya <tt>deb-src</tt> olmak zorundadr. Bu ifadeler arivin 
tipini belirler: derlenmi ve kullanma hazr duruma getirilmi, binary paketler (<tt>deb</tt>) 
veya programn asl kaynak kodu + Debian paketi iin yaplan eklentilerden oluan halini
ieren paketler (<tt>deb-src</tt>). 
<p>
ntanml Debian sources.list dosyasnn biimi genellikle aadaki gibi olacaktr:
<p>
<example>
# See sources.list(5) for more information, especialy
# Remember that you can only use http, ftp or file URIs
# CDROMs are managed through the apt-cdrom tool.
deb http://http.us.debian.org/debian stable main contrib non-free
deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
deb http://security.debian.org stable/updates main contrib non-free

# Uncomment if you want the apt-get source function to work
#deb-src http://http.us.debian.org/debian stable main contrib non-free
#deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
</example>

<p>
En temel Debian kurulumu iin ihtiya duyulan satrlar bunlardr. Birinci <tt>deb</tt>
satr resmi Debian arivini gsterirken, ikincisi non-US arivini ve ncs ise
Debian gvenlik gncellemelerini ieren arivi gstermektedir.
<p>
Sondaki iki satr yorum haline getirilmi olup (satr bandaki `#' karakteri ile)
apt-get tarafndan yoksaylmaktadr. Buradaki <tt>deb-src</tt> satrlar Debian kaynak
paketlerini gstermektedirler. Eer sklkla program kaynak kodlarn test veya yeniden derleme
amal olarak indiriyorsanz satrlar aktif hale getirmelisiniz.
<p>
<tt>/etc/apt/sources.list</tt> dosyas eitli tiplerde satrlar ierebilir.
APT uygulamas <tt>http</tt>, <tt>ftp</tt>, <tt>file</tt> (yerel dosyalar, rnein bal
durumdaki bir ISO9660 dosya sistemi) ve <tt>ssh</tt> ariv tiplerini tanyabilmektedir.
<p>
<tt>/etc/apt/sources.list</tt> dosyasnda deiiklik yaptktan sonra <tt>apt-get update</tt>
komutunu altrmay unutmaynz. Bu komutla APT'nin dosyada belirtmi olduunuz arivlerdeki
gncel paket listesini edinmesini salam olursunuz.
</sect>

<sect id="dpkg-scanpackages">APT'nin yerel olarak kullanm
<p>
Bazen APT tarafndan kurulmasn istediiniz onlarca paketiniz olabilir. Bunlarn hepsini birden
sisteminizdeki kopyasndan kurulumunu isterseniz aadaki admlar izlemelisiniz.
<p>
ncelikle bir dizin yaratp ierisinde sizdeki .deb paketlerini atnz.
rnek olarak:
<p>
<example>
# mkdir /root/debs
</example>
<p>
Paketlerin control dosyalarnda belirtilen tanmlamalarnn zerine kendi tanmlamalarnz
<tt>override</tt> dosyas kullanarak yapabilirsiniz. Bu dosya ierisinde paketle birlikte gelen
baz seenekleri aadaki gibi tanmlayabilirsiniz:
<p>
<example>
paket ncelik blm
</example>
<p>
paket, paketin ismini belirtir; ncelik deeri srasyla dk, orta ve yksek anlamnda
low, medium ve high olabilir; blm ise paketin ait olduu blm gsterir.
Dosya adnn mutlaka byle olmas gerekmez, baka bir dosya kullanp 
<prgn>dpkg-scanpackages</prgn>'a parametre olarak verebilirsiniz.
Eer bir <tt>override</tt> dosyas yazmak istemiyorsanz <prgn>dpkg-scanpackages</prgn> programn
arrken <file>/dev/null</file>'u kullanabilirsiniz.
<p>
Halen /root dizini ierisindeyken aadaki komutu altrn:
<p>
<example>
# dpkg-scanpackages debs <var>dosya</var> | gzip &gt; debs/Packages.gz
</example>
<p>
Yukardaki satrda <var>dosya</var> olarak girilen dosya, <tt>override</tt> dosyasdr.
Bu komut APT tarafndan kullanlmak zere, paketler hakknda eitli bilgiler ieren
<file>Packages.gz</file> dosyasn retir. Paketleri kullanmak iin son olarak aadaki satr
<file>sources.list</file> dosyanza ekleyin:

<p>
<example>
deb file:/root debs/
</example>
<p>
Bu eklentiden sonra artk APT uygulamasn yeni arivinizle birlikte kullanabilirsiniz.
Ayrca isterseniz kaynak paketler iin de yerel bir ariv oluturabilirsiniz. Bunun iin
izlemeniz gereken yol yukardaki ile hemen hemen ayndr. Dikkat etmeniz gereken nokta,
<tt>.orig.tar.gz</tt>, <tt>.dsc</tt> ve <tt>.diff.gz</tt> dosyalarn da dizin ierisine 
kopyalamanz ve <tt>Packages.gz</tt> dosyas yerine <tt>Sources.gz</tt> dosyasn
oluturmanz gerektiidir. Kullanacanz program ise <prgn>dpkg-scansources</prgn> olacaktr.
rnek:
<p>
<example>
# dpkg-scansources debs | gzip &gt; debs/Sources.gz
</example>
<p>
Dikkat ettiyseniz <prgn>dpkg-scansources</prgn> uygulamas parametre olarak bir
<tt>override</tt> dosyasna ihtiya duymamaktadr. <file>sources.list</file> dosyanza
eklemeniz gereken satr ise aadadr:
<p>
<example>
deb-src file:/root debs/
</example>
</sect>

<sect id="netselect">sources.list dosyas iin en iyi yansya karar verme: netselect, netselect-apt
<p>
Yeni Debian kullanclarnn kararsz olduklar noktalardan biri <tt>sources.list</tt>
dosyasna hangi Debian yanssn eklemeleri gerektiidir. En iyi yansya karar vermek iin
pek ok yntem mevcuttur. Deneyimli kullanclar bir betik program yazarak yanslar ile aradaki
iletiim hzn lebilirler. Bu ii sizin iin byk lde yapacak bir program mevcuttur:
<strong>netselect</strong>.
<p>
netselect programn bildiimiz yntemle kuralm:
<p>
<example>
# apt-get install netselect
</example>
<p>
Parametre vermeden program altrdmzda bir yardm sayfas gzkecektir.
Program birbirinden boluk karakteri ile ayrlm yans adresleriyle altrrsanz
geriye bir skor ve yans adresi dndrecektir. Buradaki deer yaklak olarak ping zamann, ve
ilgili yansya ka admda ulalabilindii bilgisiyle hesaplanmtr. 
Eer parametre olarak verdiiniz tm yanslara ait skorlar grmek isterseniz program -vv seenei
ile altrabilirsiniz. rnek:
<p>
<example>
# netselect ftp.debian.org http.us.debian.org ftp.at.debian.org download.unesp.br ftp.debian.org.br
  365 ftp.debian.org.br
#
</example>
<p>
Bu ktnn anlam, netselect programna parametre olarak verdiimiz yanslar arasndan en uygununun
<tt>ftp.debian.org.br</tt> olduu ve bu yans iin elde edilen skor deerinin 365 olduudur.
(Bu deer herkes iin farkl olacaktr!).
<p>
imdi netselect tarafndan en hzl olarak belirtilen yansy
<tt>/etc/apt/sources.list</tt> dosyanza (bkz. <ref id="sources.list">) ekleyebilir ve ardndan
<ref id="apt-get"> ksmndaki ynergeleri takip edebilirsiniz.
<p> <strong>Not:</strong> Debian tam yans listesine 
<url id="http://www.debian.org/mirror/mirrors_full" name="http://www.debian.org/mirror/mirrors_full">
adresinden eriebilirsiniz.
<p>
0.3 versiyonundan itibaren netselect paketi 
<strong>netselect-apt</strong> betiini de iermektedir. Bu betik yukardaki ilemleri
otomatik olarak yapmaktadr. Datm olarak ne kullanmak istediinizi belirtmeniz durumunda 
(ntanml olarak stable - kararl) yanslar arasndan sizin iin en iyileri seilecek ve bu karar
dorultusunda <tt>sources.list</tt> dosyanz oluturulacaktr. Aadaki rnek kullanm ile
kararl datm iin bir sources.list dosyas retilmektedir:
<p>
<example>
# ls sources.list
ls: sources.list: Byle bir dosya ya da dizin yok
# netselect-apt stable
(...) Bir miktar bekliyoruz
# ls -l sources.list
sources.list
#
</example>
<p>
<strong>Unutmayn:</strong> <tt>sources.list</tt> dosyas bulunduunuz dizin altnda oluturulacaktr.
Bu dosyay kullanmak istiyorsanz <tt>/etc/apt</tt> dizini altna tamalsnz.
<p>
Ardndan <ref id="apt-get"> ksmndaki ynergeleri izleyebilirsiniz.
</sect>

<sect id="cdrom">sources.list dosyasna CD-ROM ekleme
<p>
Eer paketlerin kurulumu veya gncellemesi iin halihazrda elinizde bulunan bir CD-ROM'u kullanmak
istiyorsanz bunu <tt>sources.list</tt> dosyanza eklemelisiniz. Bunun iin CD-ROM'u takp
<prgn>apt-cdrom</prgn> programn rnekteki gibi altrn:
<p>
<example>
# apt-cdrom add
</example>

<p>
CD-ROM balanacak ve eer geerli bir Debian CD'si ise zerindeki paketlere ait bilgiler
okunacaktr. Eer CD-ROM ayarlamalarnz biraz standart d ise aadaki seenekleri de
kullanabilirsiniz:
<p>
<example>
-h           - program yardm
-d dizin     - CD-ROM balama noktas
-r           - Tannm bir CD-ROM'u yeniden adlandr
-m           - Balama ilemini gerekletirme
-f           - Hzl mod, paket dosyalarn kontrol etme
</example>

<p>
rnein:
<p>
<example>
# apt-cdrom -d /home/kov/mycdrom add
</example>

<p>
Ayrca sources.list dosyanza eklemeden CD-ROM'u tanma ilemini yapabilirsiniz:
<p>
<example>
# apt-cdrom ident
</example>

<p>
Not: Bu program CD-ROM aygtnza ait ayarlarn <tt>/etc/fstab</tt> dosyasnda dzgn olarak 
yaplm olduu durumda alacaktr.
</sect>

</chapt>

<chapt id="apt-get">Paketlerin ynetimi
<sect id="update">Paket listesini gncelleme
<p>
Paket ynetim sistemi kurulu paketler, kurulu olmayan paketler, kurulabilir paketler vb. hakknda
bilgileri kendi zel veritabannda tutmaktadr. <prgn>apt-get</prgn> program bu veritabann
kullanarak istenilen paketin nasl kurulacan, baka hangi paketlerin daha kurulmas gerektiini
renir. 
<p>
Bu listeyi gncellemek iin <prgn>apt-get update</prgn> komutunu kullanmalsnz.
Bu komut <tt>/etc/apt/sources.list</tt> dosyanza bakar ve belirtilen arivlerden gncel paket
listesini indirir; ayrntl bilgi iin bkz. <ref id="sources.list">.
<p>
Paket gncellemeri ve gvenlikle ilgili gncellemelerden sizin ve sisteminizin haberdar olabilmesi
iin bu komutu dzenli aralklarla altrmakta fayda vardr.
</sect>

<sect id="install">Paket kurma
<p>
Sonunda sabrszlkla beklediiniz blme geldik! Artk sources.list dosyanz hazr ve paket listeniz
gncel durumda. Tek yapmanz gereken kuracanz paketi belirtmek. rnein:
<p>
<example>
# apt-get install xchat
</example>

<p>
APT hemen kendi veritabann tarayarak bu paketin en son versiyonunu bulacak ve <tt>sources.list</tt>
dosyanzda belirtilen arivden indirmeye balayacaktr. Bu paketin baka paketlere de baml olmas
durumunda - ki rneimizde de yle - ayn admlar bamllk yaratan paketler iin de yapacaktr.
Aadaki rnee baknz:

<p>
<example>
# apt-get install nautilus
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  bonobo libmedusa0 libnautilus0 
The following NEW packages will be installed:
  bonobo libmedusa0 libnautilus0 nautilus 
0 packages upgraded, 4 newly installed, 0 to remove and 1  not upgraded.
Need to get 8329kB of archives. After unpacking 17.2MB will be used.
Do you want to continue? [Y/n] 
</example>

<p>
<package>nautilus</package> paketi baz ktphane paketlerine baml durumdadr. Eer bamllk 
yaratan paketleri de komutumuza eklemi olsaydk APT devam etmek istiyor musunuz? sorusunu sormayacak
ve hemen paketleri indirmeye balayacakt.
<p>
Bunun anlam APT'nin sadece komut satrnda belirtilmeyen ancak gereken paketleri de kurmak istedii
zaman onay isteyeceidir.
<p>
Aadaki apt-get seenekleri iinize yarayabilir:
<p>
<example>
-h  Yardm ekran.
-d  Sadece indir , kurulumu yapma
-f  Btnlk kontrol baarsz olsa da devam etmeye al
-s  Hibir eylem yapma, sadece olay simle et
-y  Tm sorulara Evet cevab verdiimi farzet
-u  lem sonucunda gncellenecek olan paketleri listele
</example>

<p>
Birden fazla paket kurulmak zere tek satrda seim yaplabilir. Gerekli paketler 
indirilir ve <tt>/var/cache/apt/archives</tt> dizini altna ilerideki kurulumlarda
da kullanlmak zere kaydedilir.
<p>
Ayn komut satrnda kaldrlmasn istediiniz paketleri de belirtebilirsiniz.
Bunun iin kaldrmak istediiniz paketin ismini sonuna bir '-' karakteri ekleyerek yazmanz
yeterli:
<p>
<example>
# apt-get install nautilus gnome-panel-       
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  bonobo libmedusa0 libnautilus0 
The following packages will be REMOVED:
  gnome-applets gnome-panel gnome-panel-data gnome-session 
The following NEW packages will be installed:
  bonobo libmedusa0 libnautilus0 nautilus 
0 packages upgraded, 4 newly installed, 4 to remove and 1  not upgraded.
Need to get 8329kB of archives. After unpacking 2594kB will be used.
Do you want to continue? [Y/n] 
</example>

<p>
Paket kaldrmayla ilgili bilgiler iin <ref id="remove"> ksmna baknz.
<p>
Eer herhangi bir ekilde kurulu bir paketin dosyalarna zarar verdiyseniz veya sadece
kurulu bir paketin yeniden indirilip tekrar kurulmasn istiyorsanz 
<tt>--reinstall</tt> seeneini rnekteki gibi kullanmalsnz.

<p>
<example>
# apt-get --reinstall install gdm
Reading Package Lists... Done
Building Dependency Tree... Done
0 packages upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 1  not upgraded.
Need to get 0B/182kB of archives. After unpacking 0B will be used.
Do you want to continue? [Y/n]
</example>

<p>
Bu yardm belgesinin yazmnda APT versiyonu 0.5.3 idi. Eer sisteminizde bu veya
daha st versiyon APT varsa ek baz fonksiyonlara sahipsiniz: paketleri belirli bir
datm arivinden <tt>apt-get install paket/datm</tt> komutu ile kurabilir veya
<tt>apt-get install paket=versiyon</tt> komutu ile spesifik bir versiyonunu kurabilirsiniz.
rnein:
<p>
<example>
# apt-get install nautilus/unstable
</example>

<p>
komutu siz `stable' datmla alyor olsanz bile nautilus paketini `unstable' datmndan 
kuracaktr. Datm alan iin kabul edilen deerler <tt>stable</tt>, <tt>testing</tt>, ve 
<tt>unstable</tt>'dr.
<p>
Hedef datm seerken <tt>-t</tt> anahtarn da kullanabilirsiniz, bu durumda <prgn>apt-get</prgn>
bamllklar bu datma gre dzenleyecektir.
<p>
<em>NEML</em>: `unstable' datm yeni Debian paketlerinin upload edildii yerdir.
ok sk gncellen bu ariv yeni balayanlar veya sisteminde kararllk arayanlar tarafndan
<em>kullanlmamaldr</em>.
<p>
`testing' datm `unstable' datmdan kararllk anlamnda ok daha iyidir, ancak kritik sistemlerde
mutlaka kararl datm kullanlmaldr.
</sect>

<sect id="remove">Paket kaldrma
<p>
Bir paketi artk kullanmak istemiyorsanz APT ile sisteminizden paketi kaldrabilirsiniz.
Bunun iin <tt>apt-get remove package</tt> komutunu vermeniz yeterli olacaktr. rnein:

<p>
<example>
# apt-get remove gnome-panel
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages will be REMOVED:
  gnome-applets gnome-panel gnome-panel-data gnome-session 
0 packages upgraded, 0 newly installed, 4 to remove and 1  not upgraded.
Need to get 0B of archives. After unpacking 14.6MB will be freed.
Do you want to continue? [Y/n] 
</example>

<p>
Yukarda da grld zere APT kaldrlan pakete baml olan paketler zerinde de ilem
yapmaktadr. Yukardaki soruyu onayladnzda listelenen tm paketler kaldrlacaktr. APT 
kullanarak bir paketi, o pakete baml olan dier paketleri kaldrmadan kaldrmann :) bir yolu yoktur.
<p>
<prgn>apt-get</prgn>'in yukardaki gibi altrlmas sonrasnda listelenen paketler sistemden 
kaldrlacak ancak paketlere ait konfigrasyon dosyalar -eer varsa- sistemde kalacaktr. 
Konfigrasyon dosyalar ile birlikte paketleri tamamen kaldrmak iin aadaki komutu altrn:

<p>
<example>
# apt-get --purge remove gnome-panel
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages will be REMOVED:
  gnome-applets* gnome-panel* gnome-panel-data* gnome-session* 
0 packages upgraded, 0 newly installed, 4 to remove and 1  not upgraded.
Need to get 0B of archives. After unpacking 14.6MB will be freed.
Do you want to continue? [Y/n] 
</example>

<p>
Burada isminden sonra '*' karakteri olan paketlere ait konfigrasyon dosyalarnn da kaldrlacan 
anlyoruz.
<p>
Kurulum <tt>install</tt> ynteminde olduu gibi kaldrma <tt>remove</tt> ileminde de
ayn satrda kurmak istediiniz paketleri belirtebilirsiniz. Bunun iin kurulmasn istediiniz paketin
sonuna <tt>'+'</tt> karakteri eklemeniz gereklidir.

<p>
<example>
# apt-get --purge remove gnome-panel nautilus+
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  bonobo libmedusa0 libnautilus0 nautilus 
The following packages will be REMOVED:
  gnome-applets* gnome-panel* gnome-panel-data* gnome-session* 
The following NEW packages will be installed:
  bonobo libmedusa0 libnautilus0 nautilus 
0 packages upgraded, 4 newly installed, 4 to remove and 1  not upgraded.
Need to get 8329kB of archives. After unpacking 2594kB will be used.
Do you want to continue? [Y/n] 
</example>

<p>
<prgn>apt-get</prgn> burada kaldrma ileminin yan sra kurulmasn istediimiz paketi ve 
gerektirdii dier paketlerle birlikte listeler.
</sect>

<sect id="upgrade">Paket gncelleme
<p>
Paket gncellemeleri APT'nin ok baarl olduu bir ilemdir.
Tek bir <tt>apt-get upgrade</tt> komutu ile tm paketlerin gncellenmesi salanabilmektedir.
Bu komutu, sisteminizdeki paketleri kullandnz datmdaki programlarn gncel srmlerine
ykseltmek veya tmyle yeni bir Debian srmne ykseltme yapmak amacyla kullanabilirsiniz.
Datm ykseltmeleri iin nerilen yol <tt>apt-get dist-upgrade</tt> kullanlmasdr;; ayrntlar iin
<ref id="dist-upgrade"> ksmna baknz.

<p>
Komutun <tt>-u</tt> seenei ile altrlmas olduka yararldr.
Bu seenein kullanmyla APT gncellenecek paketleri listeler.
APT paketlerin en son versiyonlarn indirecek ve gereken srada kurulumu gerekletirecektir.
Bylesi bir gncelleme yapmadan nce <tt>apt-get update</tt> komutu ile paket listenizi de
gncellemeniz nemlidir. Aadaki rnee bakalm:
<p>
<example>
# apt-get -u upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages have been kept back
  cpp gcc lilo 
The following packages will be upgraded
  adduser ae apt autoconf debhelper dpkg-dev esound esound-common ftp indent
  ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0 libesd0-dev
  libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev liborbit0
  libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit procps psmisc 
29 packages upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Need to get 5055B/5055kB of archives. After unpacking 1161kB will be used.
Do you want to continue? [Y/n] 
</example>

<p>
lem olduka basittir. lk bir ka satrda <tt>apt-get</tt> baz programlarn sistemde
tutulmaya devam edileceini <tt>kept back</tt> sylemektedir. Bunun anlam, listelenen programlarn
yeni versiyonlar olmasna ramen herhangi bir nedenden tr sisteminize kurulamayacak olmasdr.
Byk olaslkla ilgili paketler, paket listenizde yer almayan paketlerin veya paket versiyonlarnn
kurulmasn gerektirmekte, bu ilem yaplamayaca iin de paketler gncellenmemektedir. kinci olas
neden, paketin yeni versiyonunun sisteminizde daha nce olmayan yeni bir pakete baml olmadr.
<p>
Birinci senaryo iin kesin bir zm yoktur. kinci durumda problem yaratan paketi <tt>apt-get install</tt>
komutu ile kurarak sorunu zebilirsiniz. Daha temiz bir yntem ise <tt>dist-upgrade</tt> kullanmaktr,
bu sayede sistemde daha nce olmayan yeni paketler de kurulacaktr, bkz. <ref id="dist-upgrade">.
</sect>

<sect id="dist-upgrade">Yeni bir srme gncelleme
<p>
APT'nin bu zellii sayesinde bir defada tm sisteminizi yeni bir Debian srmne ister
internet zerinden isterse varolan bir CD zerinden ykseltebilirsiniz.
<p>
Ayrca bu yntem kurulu paketler arasndaki paket bamllklarnda deimeler olduunda da kullanlr.
<tt>apt-get upgrade</tt> ile yaplan gncellemelerde bu tr paketlere dokunulmaz.
<p>
rnek olarak, Debian 0 srmn kullandnz dnn, ve 3. srm ieren
bir CD edinmi olun. APT'yi kullanarak sisteminizi bu CD zerinden yeni srme gncelleyebilirsiniz.
Bunu yapmak iin ncelikle <prgn>apt-cdrom</prgn> ile (bkz. <ref id="cdrom">) ile CD'yi 
<tt>/etc/apt/sources.list</tt> dosyanza ekleyin ve ardndan <tt>apt-get dist-upgrade</tt>
komutunu altrn.
<p>
Unutmayn, APT her zaman paketin gncel versiyonunu arar. Eer <tt>/etc/apt/sources.list</tt> dosyanzda
belirtilen arivlerde bir paketin CD zerindekinden daha yeni bir versiyonu var ise gncelleme 
srasnda bu versiyon kullanlacaktr.
<p>
<ref id="upgrade"> ksmndaki rneimizde baz paketlerin gncelleme srasnda korunduunu
<tt>kept back</tt> grmtk. Bu problemi imdi <tt>dist-upgrade</tt> ile zebiliriz:

<p>
<example>
# apt-get -u dist-upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Done
The following NEW packages will be installed:
  cpp-2.95 cron exim gcc-2.95 libident libopenldap-runtime libopenldap1
  libpcre2 logrotate mailx 
The following packages have been kept back
  lilo 
The following packages will be upgraded
  adduser ae apt autoconf cpp debhelper dpkg-dev esound esound-common ftp gcc
  indent ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0
  libesd0-dev libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev
  liborbit0 libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit
  procps psmisc 
31 packages upgraded, 10 newly installed, 0 to remove and 1 not upgraded.
Need to get 0B/7098kB of archives. After unpacking 3118kB will be used.
Do you want to continue? [Y/n]
</example>

<p>
Grld gibi paketler hem gncellenecek hem de yeni bamllklar iin yeni paketler de kurulacaktr.
Ancak lilo paketi halen sistemde korunmaya devam etmektedir <tt>kept back</tt>. Muhtemelen
bamllk dnda daha ciddi bir problemi vardr. Problemin ne olduunu aadaki komutla
grebiliriz:
<p>
<example>
# apt-get -u install lilo
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  cron debconf exim libident libopenldap-runtime libopenldap1 libpcre2
  logrotate mailx 
The following packages will be REMOVED:
  debconf-tiny 
The following NEW packages will be installed:
  cron debconf exim libident libopenldap-runtime libopenldap1 libpcre2
  logrotate mailx 
The following packages will be upgraded
  lilo 
1 packages upgraded, 9 newly installed, 1 to remove and 31 not upgraded.
Need to get 225kB/1179kB of archives. After unpacking 2659kB will be used.
Do you want to continue? [Y/n]
</example>

<p>
Yukardaki belirtildii zere, lilo paketi <package>debconf-tiny</package>
paketi ile akmaktadr. Bunun anlam, debconf-tiny paketi kaldrlmadan lilo paketinin
yklenemeyecei ve gncellenemeyeceidir.
<p>
Korunan veya kaldrlan paketlerle ilgili daha detayl bilgi almak iin komutu aadaki gibi
kullanabilirsiniz:

<p>
<example>
# apt-get -o Debug::pkgProblemResolver=yes dist-upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Starting
Starting 2
Investigating python1.5
Package python1.5 has broken dep on python1.5-base
  Considering python1.5-base 0 as a solution to python1.5 0
  Holding Back python1.5 rather than change python1.5-base
Investigating python1.5-dev
Package python1.5-dev has broken dep on python1.5
  Considering python1.5 0 as a solution to python1.5-dev 0
  Holding Back python1.5-dev rather than change python1.5
 Try to Re-Instate python1.5-dev
Done
Done
The following packages have been kept back
  gs python1.5-dev 
0 packages upgraded, 0 newly installed, 0 to remove and 2  not upgraded.
</example>

<p>
Burada aka grld gibi python1.5-dev paketi kurulamayacaktr nk python1.5 paketine
bamldr. python1.5 kurulamad iin python1.5-dev paketi de kurulamamaktadr.
</sect>

<sect id="clean">Kullanlmayan paket dosyalarn temizleme: apt-get clean ve autoclean
<p>
Bir paket kuracanz zaman APT gerekli dosyalar /etc/apt/sources.list dosyanzda belirtilen
host'lardan alr ve yerel bir dizin (<file>/var/cache/apt/archives/</file>) altnda saklar.
Ardndan kurulumu buradaki dosyalar zerinden gerekletirir, bkz. <ref id="install">.
<p>
Zamanla dosyalarn tutulduu yerel dizinin boyutlar artmaya ve gereksiz yer kaplamaya
balar. APT bu dizini temizlemek iin bir takm fonksiyonlara sahiptir:
<prgn>apt-get</prgn>'in <tt>clean</tt> ve <tt>autoclean</tt> seenekleri.
<p>
<prgn>apt-get clean</prgn> lock dosyalar haricinde <file>/var/cache/apt/archives/</file> ve
<file>/var/cache/apt/archives/partial/</file> dizinlerindeki tm dosylar siler.
Sonu olarak, eer bir paketi yeniden kurmak isterseniz (--reinstall) APT gerekli dosyalara
artk sahip olmadndan, yeninden indirecektir.
<p>
<prgn>apt-get autoclean</prgn> ise sadece artk indirilmesi mmkn olmayan dosyalar siler.
<p>
Aadaki rnek apt-get autoclean zelliinin nasl altn gsteriyor:

<p>
<example>
# ls /var/cache/apt/archives/logrotate* /var/cache/apt/archives/gpm*
logrotate_3.5.9-7_i386.deb
logrotate_3.5.9-8_i386.deb
gpm_1.19.6-11_i386.deb
</example>

<p>
/var/cache/apt/archives altnda <package>logrotate</package> paketi iin 2 dosya ve
<package>gpm</package> paketi iin de bir 1 dosya bulunmaktadr.

<p>
<example>
# apt-show-versions -p logrotate
logrotate/stable uptodate 3.5.9-8
# apt-show-versions -p gpm
gpm/stable upgradeable from 1.19.6-11 to 1.19.6-12
</example>

<p>
<prgn>apt-show-versions</prgn> ktsna baktmzda 
<file>logrotate_3.5.9-8_i386.deb</file> dosyasnn <package>logrotate</package> paketi iin
gncel versiyon olduunu gryoruz. Bu durumda <file>logrotate_3.5.9-7_i386.deb</file>
dosyas hi bir ie yaramamaktadr. Ayrca <file>gpm_1.19.6-11_i386.deb</file> dosyas da, 
indirilebilecek daha gncel bir versiyonu olduu iin ie yaramamaktadr.

<p>
<example>
# apt-get autoclean
Reading Package Lists... Done
Building Dependency Tree... Done
Del gpm 1.19.6-11 [145kB]
Del logrotate 3.5.9-7 [26.5kB]
</example>

<p>Sonuta, <tt>apt-get autoclean</tt> ile sadece eski ve ie yaramayacak dosyalarn kaldrlmasn
salam olduk, bkz. <ref id="apt-show-versions">.
</sect>

<sect id="dselect-upgrade">APT ile dselect kullanm
<p>
<prgn>dselect</prgn>, kurulum iin Debian paketleri seebileceiniz bir programdr.
Kullanm olduka kark ve zor olduundan yeni kullanclar bazen program ierisinde
ynlerini kaybedebilirler.
<p>
dselect'in zelliklerinden biri, Debian paketlerinin "iddetle nerilen" ve "tavsiye edilen" paketlere
ait bilgilerini ileyebilmesidir ("recommending" ve "suggesting").
Program altrmak iin root iken  <tt>dselect</tt> komutunu verin.
Eriim yntemleri mensnden 'apt' seimini yapn. Mutlaka gerekli olmamakla birlikte, eer bir
CDROM kullanmyor ve paket indirmek istiyorsanz eriim yntemi olarak 'apt' kullanmalsnz.
<p>
dselect kullanm hakknda ayrntl bilgi almak isterseniz dselect dokmantasyonunun
bulunduu <url id="http://www.debian.org/doc/ddp" name="http://www.debian.org/doc/ddp"> adresini
ziyaret edebilirsiniz.
<p>
dselect ile seimlerinizi yaptktan sonra, aadaki komutu altrn:
<p>
<example>
# apt-get -u dselect-upgrade
</example>

<p>
rnek:
<p>
<example>
# apt-get -u dselect-upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages will be REMOVED:
  lbxproxy 
The following NEW packages will be installed:
  bonobo console-tools-libs cpp-3.0 enscript expat fingerd gcc-3.0
  gcc-3.0-base icepref klogd libdigest-md5-perl libfnlib0 libft-perl
  libgc5-dev libgcc300 libhtml-clean-perl libltdl0-dev libsasl-modules
  libstdc++3.0 metamail nethack proftpd-doc psfontmgr python-newt talk tidy
  util-linux-locales vacation xbill xplanet-images 
The following packages will be upgraded
  debian-policy 
1 packages upgraded, 30 newly installed, 1 to remove and 0  not upgraded.
Need to get 7140kB of archives. After unpacking 16.3MB will be used.
Do you want to continue? [Y/n]
</example>

<p>
imdi bu ekran ktsn ayn sistemdeki apt-get dist-upgrade kts ile karlatralm:
<p>
<example>
# apt-get -u dist-upgrade   
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Done
The following packages will be upgraded
  debian-policy 
1 packages upgraded, 0 newly installed, 0 to remove and 0  not upgraded.
Need to get 421kB of archives. After unpacking 25.6kB will be freed.
Do you want to continue? [Y/n]
</example>

<p>
Grld gibi dselect ile yaplan gncellemede yukardaki listede olmayan paketler de 
yklenmek zere seilmitir. nk gncellenecek olan paketlerin "iddetle nerilen" ve 
"tavsiye edilen" paketler alanlar da incelenmi, bu paketler listeye dahil edilmitir.
Dselect APT ile birlikte kullanldnda olduka gl bir aratr.
</sect>

<sect id="default-version">Kark bir sistem nasl kurulur?
<p>
Kullanclar sklkla testing datmn da kullanrlar, nk testing datm, kararsz datmdan
ok daha kararl bir yapya sahiptir ve kullanlabilir durumdadr. Baz kullanclar ise
sistemlerindeki baz paketlerin son versiyonlarn kullanmak isterler. Bu durumda testing/unstable 
karm bir sistem oluabilir. Gene ayn ekilde baka nedenlerden tr stable/testing karm
bir datm da oluturulabilir.
<p>
Bunu yapabilmek iin aadaki satr <file>/etc/apt/apt.conf</file> dosyanza ekleyin:

<p>
<example>
APT::Default-Release "testing";
</example>
<p>
Ardndan, unstable datmdan bir paket yklemek istediinizde 
<tt>-t</tt> seeneini kullann:

<p>
<example>
# apt-get -t unstable install <var>paket_ad</var>
</example>

<p>
Kullanacanz her bir datm iin <file>/etc/apt/sources.list</file> dosyasna gerekli
kaytlar girmelisiniz. Bu rnekte dosyada <tt>unstable</tt> ve <tt>testing</tt> datm
iin gerekli kaytlar olmaldr. Bu kaytlar olmadan APT, ilgili datmdaki bir pakete
ait bilgiye sahip olamaz.

</sect>

<sect id="apt-show-versions">Sadece belirli bir Debian versiyonuna sahip paketleri gncelleme

<p>
<prgn>apt-show-versions</prgn> program, kark bir sistem kullanan kullanclarn sistemlerini
gncellemelerinde daha gvenli bir ortam sunar. rnein aadaki gibi sadece sisteminizdeki 
unstable paketleri gncelleyebilirsiniz:
<p>
<example>
# apt-get install `apt-show-versions -u -b | grep unstable`
</example>
</sect>

<sect id="pin">Belirli bir versiyona sahip paketlerin kurulu olarak kalmasn salama (ileri dzey)
<p>
Bazen eitli nedenlerden tr bir paketin mutlaka belirli bir versiyonu ile almanz gerekebilir.
Gncelleme yaptnzda ise paket yeni versiyonu ile deitirileceinden sorun kacaktr.
rnein sisteminizi Debian 3.0 srmne gncellemi fakat belirli bir paketin Debian 2.2 
srmndeki halini kullanmaya devam etmek istiyor olabilirsiniz. Bu problemi zmek iin 
paketlerinizi "pin"leyebilirsiniz.
<p>
Bu zellii kullanmak olduka kolaydr, tek yapmanz gereken
<tt>/etc/apt/preferences</tt> dosyasn dzenlemekten ibaret.
<p>
Dosyann format u ekildedir:
<p>
<example>
Package: &lt;paket_ad&gt;
Pin: &lt;pin tanmlamas&gt;
Pin-Priority: &lt;pin ncelii&gt;
</example>
<p>
rnek olarak, <package>sylpheed</package> paketinin 0.4.99 versiyonunu korumak isterseniz aadaki
kayt buraya ekleyebilirsiniz:
<p>
<example>
Package: sylpheed
Pin: version 0.4.99*
</example>
<p>
Buradaki <tt>*</tt> kullanmna dikkat! Bu karakter ile girdiimiz pin deerinin tm 0.4.99
ile balayan versiyonlar iin geerli olduunu belirtebiliyoruz.
Bu sayede program versiyonunun yan sra paketin Debian paket versiyonunun deimesi durumunda da koyduunuz
kurallar geerli olur, rnein 0.4.99-1 versiyonu ile 0.4.99-10 versiyonu.
<p>
<tt>Pin-Priority</tt> alan seime baldr, girilmedii takdirde ntanml deeri 989'dur.
<p>
imdi de pin nceliklerinin nasl altna bakalm. 0 deerinden daha kk bir nceliin
anlam paketin hi bir zaman kurulamayacadr. 0 ile 100 arasndaki ncelikler paketin kurulmadn
ve eriilebilir yeni versiyonu olmadn belirtir. 100 ncelik deeri kurulu olan pakete tanmlanr,
paketin kurulu versiyonu yeni bir versiyon ile deitirilebilir, fakat yeni versiyonun 100'den daha
byk bir ncelie sahip olmas gereklidir.
<p>
ncelik deeri 100'den bykse paket kurulmaldr. Tipik olarak paketin kurulu versiyonu sadece
daha yeni bir versiyona gncelleme ile deiir. Byle bir ncelie sahip paket, daha dk
versiyonu ile deitirilemez (downgrade). rnein, eer sylpheed 0.5.3 versiyonu kurulu ve 
sylpheed 0.4.99 versiyonu iin ncelii 999 olan bir pin tanml ise, 0.4.99 paketi bu pin
dolaysyla <em>kurulamayacaktr</em>. Bir paketin eski versiyonlar ile deitirilebilir olmasn
pin deerleri de gznne alnarak salamak iin ("downgradable") ncelik deeri 1000'den byk
hale getirilmelidir.
<p>
Bir pin deeri paketin <tt>versiyonu</tt>, <tt>srm</tt> ve <tt>adna</tt> gre verilebilir.
<p>
Yukarda grdmz gibi <tt>versiyona</tt> pin deeri vermede versiyon numaralar ve zel karakterler
kullanlr.
<!-- what's available?  standard shell globs?  ?*[]   or more? -->
<p>
<tt>Srme</tt> pin deeri verme ilemi APT'nin kulland arivlerdeki veya CD'deki Release
dosyas ile ilikilidir. Eer kullandnz arivler Release dosyasn salamyorsa bu
zellik kullanlamaz. Release dosyanzn ieriini <tt>/var/lib/apt/lists/</tt> dizini altndan
grebilirsiniz. Srm iin kullanlabilecek parametreler 
<tt>a</tt> (ariv), <tt>c</tt> (components, blm), <tt>v</tt> (versiyon),
<tt>o</tt> (origin, kaynak) ve <tt>l</tt> (label, etiket) tir.
<p>
rnek:
<p>
<example>
Package: *
Pin: release v=2.2*,a=stable,c=main,o=Debian,l=Debian
Pin-Priority: 1001
</example>
<p>
Bu rnekte Debian 2.2* versiyonlarn (2.2r2, 2.2r3 vb.), <tt>kararl, stable</tt> arivi
<tt>main</tt> blm (<tt>contrib</tt> veya <tt>non-free</tt> de olabilirdi), kaynak ve etiket olarak
Debian' setik. Kaynak (o=) Release dosyasn kimin rettiini belirtir, etiket (l=) ise
datmn ismidir (Debian datm iin etiket Debian iken Progeny iin Progeny'dir). rnek
bir Release dosyasnn ierii aadadr:
<p>
<example>
$ cat /var/lib/apt/lists/ftp.debian.org.br_debian_dists_potato_main_binary-i386_Release
Archive: stable
Version: 2.2r3
Component: main
Origin: Debian
Label: Debian
Architecture: i386
</example>
</sect>
</chapt>

<chapt id="helpers">Yardmc aralar
<sect id="equivs">Kendi derlediim paketleri nasl kuracam: equivs
<p>
Bazen bir programn belirli bir versiyonunu kullanmak zorunda kalabiliriz. Bu versiyona ait
bir Debian paketi mevcut deil ise, program kaynak koddan derleyerek kendimiz kurarz. 
Fakat paket ynetim sistemi bu durumda arabilir.
Mesela kullandnz mail sunucu yazlmnn yeni bir versiyonunu derlediinizi dnn.
Burada problem yok, ancak pek ok Debian paketi sistemde bir MTA (Mail Transport Agent) yazlm
olmasn gerektirir. Mail sunucunuzu kendiniz derleyerek kurduunuz iin paket ynetim sistemi
bundan haberdar deildir ve bamllk hatalar oluur.
<p>
Burada <package>equivs</package> program devreye girmektedir. Program kurmak iin ayn isimli
paketi sisteminize kurmalsnz. Bu program ile bo bir paket yaratp, bamllk problemlerini
zebilir ve paket ynetim sisteminin iini rahatlatabilirsiniz.
<p>
Balamadan nce hatrlatmak isteriz ki, Debian iin zaten paketi hazrlanm bir program farkl
derleme seenekleriyle derlemenin daha gvenli ve uygun yollar vardr. Eer ne yaptnz
tam olarak bilmiyorsanz equivs kullanmaynz. Ayrntl bilgi iin bkz. <ref id="sourcehandling">.

<p>
MTA rneimize kaldmz yerden devam edelim. Yeni derlemi olduunuz <prgn>postfix</prgn> programn
sisteminize kurdunuz ve ardndan <package>mutt</package> paketini kurmak istediniz. Fakat 
<package>mutt</package> paketinin baka bir MTA kurulmasn gerektirdiini grdnz ama zaten
sisteminizde bir MTA var !
<p>
Herhangi bir dizine geip (rnein <file>/tmp</file>) aadaki komutu altrn:

<p>
<example>
# equivs-control <var>isim</var>
</example>

<p>
<var>isim</var> deerini oluturmak istediiniz control dosyasnn ad ile deitiriniz.
Ardndan dosya aadaki ekilde oluturulacaktr:

<p>
<example>
Section: misc
Priority: optional
Standards-Version: 3.0.1

Package: &lt;enter package name; defaults to equivs-dummy&gt;
Version: &lt;enter version here; defaults to 1.0&gt;
Maintainer: &lt;your name and email address; defaults to username&gt;
Pre-Depends: &lt;packages&gt;
Depends: &lt;packages&gt;
Recommends: &lt;packages&gt;
Suggests: &lt;package&gt;
Provides: &lt;(virtual)package&gt;
Architecture: all
Copyright: &lt;copyright file; defaults to GPL2&gt;
Changelog: &lt;changelog file; defaults to a generic changelog&gt;
Readme: &lt;README.Debian file; defaults to a generic one&gt;
Extra-Files: &lt;additional files for the doc directory, commaseperated&gt;
Description: &lt;short description; defaults to some wise words&gt;
 long description and info
 .
 second paragraph
</example>

<p>
Bu dosyay kendi isteimize gre deitirebiliriz. Tm alanlar aklamaya imdilik burada gerek 
yok, hemen amacmz gerekletirelim:

<p>
<example>
Section: misc
Priority: optional
Standards-Version: 3.0.1

Package: mta-local
Provides: mail-transport-agent
</example>

<p>
Evet, hepsi bundan ibaret. <package>mutt</package> paketi sistemde <package>mail-transport-agent</package>
paketi olmasn gerektirir. Bu sanal bir pakettir ve tm MTA'lar tarafndan salanr.
Ayn davran iin paket ismi olarak dorudan <package>mail-transport-agent</package> seebilirdik,
ancak sanal paket kavramn ve Provides alann kullanarak bunu gerekletirdik.
<p>
imdi yapmanz gereken paketi oluturmaktr:
<p>
<example>
# equivs-build <var>isim</var>
dh_testdir
touch build-stamp
dh_testdir
dh_testroot
dh_clean -k
# Add here commands to install the package into debian/tmp.
touch install-stamp
dh_testdir
dh_testroot
dh_installdocs
dh_installchangelogs
dh_compress
dh_fixperms
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
dpkg-deb: building package `<var>isim</var>' in `../<var>isim</var>_1.0_all.deb'.

The package has been created.
Attention, the package has been created in the current directory,
</example>

<p>
Ve sonra retilen <tt>.deb</tt> paketini sisteminize kurmalsnz.
<p>
Grdnz gibi <prgn>equivs</prgn> programnn kullanlabilecei pek ok durum vardr.
rnein <tt>favorilerim</tt> adl bir paket oluturabilir ve bu paketin sklkla kullandnz
paketlere baml olmasn salayabilirsiniz (Depends alan ile). Ardndan bu paketi sisteminize
kurup, bamllk verdiiniz dier tm paketlerin de kurulmasn salam olursunuz.
<p>
rnek control dosyalar iin
<file>/usr/share/doc/equivs/examples</file> dizini altna bakabilirsiniz.
</sect>

<sect id="localepurge">Kullanlmayan yerelletirme dosyalarn kaldrma: localepurge
<p>
ou Debian kullancs sadece bir tip yerel dosyas kullanr. rnein bir Trk genellikle
<tt>tr_TR</tt> yerelini kullanr ve hemen hi bir zaman <tt>es</tt> kullanma ihtiyac hissetmez.
<p>
<package>localepurge</package> paketi bu kullanclar iin olduka faydaldr.
Kullanmadnz yerellerin sisteminizden kaldrlmasn ve yenilerinin de kurulmamasn salayarak
disk zerinde size yer kazandrr. Yapmanz gerekeni biliyorsunuz: 
<tt>apt-get install localepurge</tt>
<p>
Paketin ayarlamalar olduka kolaydr, debconf tarafndan ilgili sorular size yneltilecektir.
Ancak ilk soruya cevap verirken dikkatli olun, yanl bir seim sonucu kullandnz yerel
dosyalarnn silinmesine neden olabilirsiniz. Bu durumda tek zm, ilgili yerel dosyalarn
ieren paketleri sisteminize yeniden kurmak olacaktr.
</sect>

<sect id="helper-show-versions">Gncellenebilir paketleri nasl renebilirim?
<p>
<prgn>apt-show-versions</prgn> program sisteminizde gncellenmeye msait olan paketler hakknda
faydal bilgiler sunar. <tt>-u</tt> seenei ile gncellenebilir paketlerin listesini
alabilirsiniz:

<p>
<example>
$ apt-show-versions -u    
libeel0/unstable upgradeable from 1.0.2-5 to 1.0.2-7
libeel-data/unstable upgradeable from 1.0.2-5 to 1.0.2-7
</example>
</sect>

</chapt>

<chapt id="search">Paketler hakknda bilgi toplama
<p>
Paketler hakknda bilgi toplamak iin APT sisteminin zerinde alan programlar bulunmaktadr.
<p>
Fakat burada amacmz APT ile ayn bilgilere nasl eriebileceinizi sizlere anlatmaktr.
Mesela, kurmak istediiniz programn paket adn nasl renebiliriz?
<p>
Bu ama iin birka yardmc araca sahibiz. nce <tt>apt-cache</tt> ile balayalm.
Bu program APT sistemi tarafndan kendi zel veritabann ynetmede kullanlr.
imdi pratik kullanmda uygulanmasna geelim.

<sect id="cache">Paket isimlerini kefetme
<p>
rnein, eski iyi gnleri hatrladnz, Atari 2600 gnlerinizi... Ve bir Atari emlator program
kurmak iin APT'yi kullanmak istiyorsunuz ancak kurmanz gereken paketin ismini bilmiyorsunuz.
Yapmanz gereken:

<p>
<example>
# apt-cache search atari
atari-fdisk-cross - Partition editor for Atari (running on non-Atari)
circuslinux - The clowns are trying to pop balloons to score points!
madbomber - A Kaboom! clone
tcs - Character set translator.
atari800 - Atari emulator for svgalib/X/curses
stella - Atari 2600 Emulator for X windows
xmess-x - X binaries for Multi-Emulator Super System
</example>

<p>
Grdnz gibi arama sonucumuzda birka paket ksa aklamalaryla birlikte listelendi. Herhangi biri
hakknda daha ayrntl bilgi almak istersek kullanacamz komut:

<p>
<example>
# apt-cache show stella  
Package: stella
Priority: extra
Section: non-free/otherosfs
Installed-Size: 830
Maintainer: Tom Lear &lt;tom@trap.mtview.ca.us&gt;
Architecture: i386
Version: 1.1-2
Depends: libc6 (&gt;= 2.1), libstdc++2.10, xlib6g (&gt;= 3.3.5-1)
Filename: dists/potato/non-free/binary-i386/otherosfs/stella_1.1-2.deb
Size: 483430
MD5sum: 11b3e86a41a60fa1c4b334dd96c1d4b5
Description: Atari 2600 Emulator for X windows
 Stella is a portable emulator of the old Atari 2600 video-game console
 written in C++.  You can play most Atari 2600 games with it.  The latest
 news, code and binaries for Stella can be found at:
 http://www4.ncsu.edu/~bwmott/2600
</example>

<p>
Bu defaki ekran ktsnda paket hakknda daha ayrntl bilgi var ve bu bilgiler dorultusunda
paketi kurmak isteyip istemediimize karar verebiliriz. Eer paket sisteminizde kurulu fakat
yeni bir versiyonu mevcut ise, her iki versiyon hakkndaki bilgiler listelenecektir. rnek:

<p>
<example>
# apt-cache show lilo
Package: lilo
Priority: important
Section: base
Installed-Size: 271
Maintainer: Russell Coker &lt;russell@coker.com.au&gt;
Architecture: i386
Version: 1:21.7-3
Depends: libc6 (&gt;= 2.2.1-2), debconf (&gt;=0.2.26), logrotate
Suggests: lilo-doc
Conflicts: manpages (&lt;&lt;1.29-3)
Filename: pool/main/l/lilo/lilo_21.7-3_i386.deb
Size: 143052
MD5sum: 63fe29b5317fe34ed8ec3ae955f8270e
Description: LInux LOader - The Classic OS loader can load Linux and others
 This Package contains lilo (the installer) and boot-record-images to
 install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
 .
 You can use Lilo to manage your Master Boot Record (with a simple text screen)
 or call Lilo from other Boot-Loaders to jump-start the Linux kernel.

Package: lilo
Status: install ok installed
Priority: important
Section: base
Installed-Size: 190
Maintainer: Vincent Renardias &lt;vincent@debian.org&gt;
Version: 1:21.4.3-2
Depends: libc6 (&gt;= 2.1.2)
Recommends: mbr
Suggests: lilo-doc
Description: LInux LOader - The Classic OS loader can load Linux and others
 This Package contains lilo (the installer) and boot-record-images to
 install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
 .
 You can use Lilo to manage your Master Boot Record (with a simple text screen)
 or call Lilo from other Boot-Loaders to jump-start the Linux kernel.
</example>

<p>
Burada ilk srada yeni versiyona ait bilgiler, ikinci srada ise zaten sisteminizde kurulu olan
versiyona ait bilgiler listelenir. Bir paket hakknda daha genel bilgi edinmek iin aadaki
komutu kullanabilirsiniz:

<p>
<example>
# apt-cache showpkg penguin-command
Package: penguin-command
Versions: 
1.4.5-1(/var/lib/apt/lists/download.sourceforge.net_debian_dists_unstable_main_binary-i386_Packages)(/var/lib/dpkg/status)

Reverse Depends: 
Dependencies: 
1.4.5-1 - libc6 (2 2.2.1-2) libpng2 (0 (null)) libsdl-mixer1.1 (2 1.1.0) libsdl1.1 (0 (null)) zlib1g (2 1:1.1.3) 
Provides: 
1.4.5-1 - 
Reverse Provides: 
</example>

<p>
Bir paketin baml olduu paketlerin listesini almak iin:

<p>
<example>
# apt-cache depends penguin-command
penguin-command
  Depends: libc6
  Depends: libpng2
  Depends: libsdl-mixer1.1
  Depends: libsdl1.1
  Depends: zlib1g
</example>

<p>
zetle, aradmz paket adn bulmak iin bir ka silaha sahibiz.
</sect>

<sect id="dpkg-search">Paket adlarn bulmak iin dpkg kullanma
<p>
Paket adn bulmada dier bir yntem de o paket tarafndan kullanldn bildiiniz bir dosyadan
hareket etmektir. rnein belirli bir <tt>".h"</tt> dosyasn ierdiini bildiiniz paketin ismini
aadaki gibi bulabilirsiniz:

<p>
<example>
# dpkg -S stdio.h
libc6-dev: /usr/include/stdio.h
libc6-dev: /usr/include/bits/stdio.h
perl: /usr/lib/perl/5.6.0/CORE/nostdio.h
</example>

<p>
veya:
<p>
<example>
# dpkg -S /usr/include/stdio.h
libc6-dev: /usr/include/stdio.h
</example>

<p>
Eer sisteminize kurulu bir paketin tam ismini renmek isterseniz aadaki komut
iinizi grecektir:
<p>
<example>
# dpkg -l | grep mozilla
ii  mozilla-browse 0.9.6-7        Mozilla Web Browser
</example>
<p>
Bu komut paket isimlerini belirli bir uzunluktan sonra kesmektedir. Yukardaki rnekte
paketin tam ismi <tt>mozilla-browser</tt>'dr. Bu problemi gidermek iin <tt>COLUMNS</tt>
evresel deikenini aadaki gibi ayarlamalsnz:

<p>
<example>
[kov]@[couve] $ COLUMNS=132 dpkg -l | grep mozilla
ii  mozilla-browser             0.9.6-7                     Mozilla Web Browser - core and browser
</example>

<p>
veya aklamasndan yola karak paket adn elde edebilirsiniz:
<p>
<example>
# apt-cache search "Mozilla Web Browser"
mozilla-browser - Mozilla Web Browser
</example>
</sect>

<sect id="auto-apt">Programlar annda kurma
<p>
Bir program derliyorsunuz ve aniden bir hata olutu! nk program sisteminizde olmayan
bir <tt>.h</tt> dosyasna ihtiya duyuyor. <prgn>auto-apt</prgn> program sizi bu senaryolardan
kurtaracaktr. Gerektiinde ilgili paketi kurmak isteyip istemediinizi soracak, derleme ilemini
durduracak ve program ekip kurduktan sonra derleme ileminin devam etmesini salayacaktr.
<p>
Peki nasl yapacaksnz:

<p>
<example>
# auto-apt run komut
</example>

<p>
Burada komut yerine derleme iin kullanacanz komutu yazmalsnz.
<p>
<example>
# auto-apt run ./configure
</example>

<p>
Ardndan gerekli paketleri kurmak isteyip istemediinizi soracak, apt-get'i ararak kurulumlar
otomatik olarak gerekletirecektir.
<p>
Auto-apt program efektif olarak alabilmek iin kendi zel veritabann tutar. Bu veritabannn
gncel tutulmas programn beklenilen davran gsterebilmesi asndan nemlidir. Veritabann
gncellemek iin <tt>auto-apt update</tt>, <tt>auto-apt updatedb</tt> ve
<tt>auto-apt update-local</tt> komutlarn altrmalsnz.

</sect>

<sect id="apt-file">Bir dosyann hangi pakete ait olduunu bulma
<p>
Bir paketi kurdunuz ancak <prgn>apt-cache</prgn> ile nasl aracanz bilmiyorsunuz.
Fakat programn dosya adn biliyorsunuz, veya paketten kan baka herhangi bir dosyann adn
bilmektesiniz. Bu durumda <prgn>apt-file</prgn> program ile paket adn bulabilirsiniz:
<p>
<example>
$ apt-file search <var>dosya_ad</var>
</example>

<p>
Bu komut ayn <tt>dpkg -S</tt> gibi alr ancak ayrca verdiiniz dosyay iermesine ramen
sisteminizden sonradan kaldrlm olan paketleri de listeler.
<p>
Bir paketin ieriini aadaki komutla listeleyebilirsiniz:

<p>
<example>
$ apt-file list <var>paket_ad</var>
</example>

<p>
<prgn>apt-file</prgn> tm paketler hakknda ierdikleri dosyalara ilikin kaytlar tutar.
Ayn auto-apt'de olduu gibi bu veritabannn da zamanla gncellenmesi gereklidir:
<p>
<example>
# apt-file update
</example>

<p>
ntanml olarak <prgn>apt-file</prgn> <prgn>auto-apt</prgn> ile ayn kayna kullanr, bkz.
<ref id="auto-apt">.

</sect>

<sect id="apt-listchanges">Paketlerdeki deiikliklerden haberdar olma
<p>
Sisteminize kurulan her paket kendi dokmantasyon dizini altna 
(<tt>/usr/share/doc/paket_ad</tt>)
<tt>changelog.Debian.gz</tt> adl bir dosya atar. Bu dosyada ilk versiyondan son versiyona 
kadar paket zerinde yaplan deiiklikler belirtilir. Bu dosyay <tt>zless</tt> ile 
okuyabilirsiniz
ancak tm paketleri bu ekilde takip etmek epey g bir uratr.
<p>
Bu ii otomatik hale getirmek iin yardmc bir ara mevcuttur:
<prgn>apt-listchanges</prgn>. Program kullanmak iin nce <package>apt-listchanges</package>
paketini sisteminize kurmalsnz. Kurulum esnasnda Debconf tarafndan sorulan sorular 
istediiniz
gibi yantlayabilirsiniz.
<p>
"Should apt-listchanges be automatically run by apt?" seenei olduka yararldr, bu 
seenek
ile paket kurulum ve gncellemelerinde, paketteki deiiklikleri grebilirsiniz.
"Should apt-listchanges prompt for confirmation after 
displaying changes?" seenei ile deiiklikleri okuduktan sonra programn kurulumu ilemine onay
istenmesini salayabilirsiniz. Eer devam etmek istemediinizi sylerseniz apt-listchanges 
bir hata
kodu dndrr ve apt-get ilemi sonlandrr.
</sect>
</chapt>

<chapt id="sourcehandling">Kaynak paketlerle alma
<sect id="source">Kaynak paketleri indirme
<p>
zgr yazlm dnyasnda kaynak kodlar zerinde alma, hata bulma ve dzeltme olduka 
yaygndr.
Bunu yapabilmek iin programn kaynak kodlarn indirmeniz gereklidir.
APT sistemi, datm ierisinde yer alan paketlerin kaynak kodlarn, .deb paketi
oluturulabilmesi iin yaplan deiiklikleri de ierecek ekilde indirmenizi salayacak
fonksiyonlara sahiptir.

<p>
Debian kaynak paketlerinin kullanlmasnn gerektii dier bir durum ise, belirli bir 
paketin
unstable datmdaki versiyonunu stable datm iin yeniden hazrlamak istediiniz durumdur.
Bir paketi stable datm iin oluturduunuzda bamllklar da stable datma gre
dzenlenir. 
<p>
Bunun iin <tt>/etc/apt/sources.list</tt> dosyanzda ilgili <tt>deb-src</tt> satrlarnn
bulunmas gereklidir. Ayrnt iin bkz. <ref id="sources.list">.
<p>
Bir kaynak paketi indirmek iin aadaki komutu kullannz:

<p>
<example>
$ apt-get source paket_ad
</example>
<p>
Bu komut  dosyann indirilmesini salayacaktr: bir <tt>.orig.tar.gz</tt>, bir 
<tt>.dsc</tt> ve
bir de <tt>.diff.gz</tt>. Eer paket Debian'a zg ise, son iki dosya indirilmez ve dosya 
ad
byk olaslkla orig n-ekini iermez.
<p>
<tt>.dsc</tt> dosyas dpkg-source tarafndan kaynak paketi <var>paket_ad-versiyon</var>
dizini altna amak iin kullanlr. ndirilen her bir debian kaynak paketi aldktan 
sonra,
<tt>debian</tt> adnda bir dizin ierir. Bu dizinde .deb paketini oluturmak iin yaplan 
tm
deiiklikler bulunmaktadr.
<p>
Kaynak paket indirildikten hemen sonra .deb paketinin oluturulmasn istiyorsanz 
auto-build
seenei iinize yarayacaktr. Bunun iin komutu <tt>-b</tt> anahtar ile
aadaki gibi kullanmalsnz:
<p>
<example>
$ apt-get -b source paket_ad
</example>

<p>
Eer indirdikten hemen sonra yerine daha ileriki zamanlarda .deb paketini oluturmak 
isterseniz
aadaki komutla bunu yapabilirsiniz:

<p>
<example>
$ dpkg-buildpackage -rfakeroot -uc -b
</example>

<p>
Bu komutu kaynak paketin ald dizin ierisindeyken altrmalsnz. lem sonunda
retilen paketi aadaki gibi sisteminize kurabilirsiniz:
<p>
<example>
# dpkg -i <var>paket.deb</var>
</example>

<p>
<prgn>apt-get</prgn>'in <tt>source</tt> fonksiyonu ile dierleri arasnda birtakm farklar 
bulunmaktadr. Burada paketin indirilebilmesi iin root kullancs olunmasna gerek yoktur, 
indirilen paketler o an bulunulan dizin ierisine alrlar.
</sect>

<sect id="build-dep">Kaynak paketleri derlemek iin gerekli paketler
<p>
Doal olarak derleyeceiniz programn ihtiya duyduu ktphanelerin sisteminizde bulunmas
zorunludur. Tm kaynak paketler debian/control dosyalarnda 'Build-Depends:' adl bir alana 
sahiptir, bu alanda paketin kaynak koddan derlenebilmesi iin ihtiya duyduu paketler belirtilir.
<p>
APT bu paketleri kolayca indirmek ve kurmak iin gerekli fonksiyona sahiptir.
<tt>apt-get build-dep paket_ad</tt> komutu ile derlemek istediiniz paketin
Build-Depends alannda belirtilen paketlerin sisteminize kurulmas salanr.

<p>
<example>
# apt-get build-dep gmc
Reading Package Lists... Done
Building Dependency Tree... Done
The following NEW packages will be installed:
  comerr-dev e2fslibs-dev gdk-imlib-dev imlib-progs libgnome-dev libgnorba-dev
  libgpmg1-dev 
0 packages upgraded, 7 newly installed, 0 to remove and 1  not upgraded.
Need to get 1069kB of archives. After unpacking 3514kB will be used.
Do you want to continue? [Y/n]
</example>

<p>
Burada <package>gmc</package> paketinin kaynak halinden derlenebilmesi iin gerekli paketler
sisteme kurulmaktadr. Bu komutun kaynak paketi indirmediini unutmayn, kaynak paketi 
<tt>apt-get source</tt> ile ayrca indirmelisiniz.
<p>
Eer amacnz belirli bir kaynak paketi derleyebilmek iin gereken paketlerin listesini 
almak
ise bunun iin <tt>apt-cache show</tt> trevi bir komut kullanlr, bkz. <ref id="search">.
<p>
<example>
# apt-cache showsrc <var>paket_ad</var>
</example>

</sect>
</chapt>

<chapt id="erros">Hatalarla baa kma
<sect id="erros-comuns">Genel hatalar
<p>
Hatal durumlar her zaman olabilir, hatalarn ou basit bir ekilde dzeltilebilecek 
trdendir.
Aada sklkla karlalan hatalar ve zm yntemlerinin bir listesi verilmitir:
<p>
Eer <tt>apt-get install paket_ad</tt> komutunun ardndan aadaki gibi bir kt 
aldysanz...

<p>
<example>
Reading Package Lists... Done
Building Dependency Tree... Done
W: Couldn't stat source package list 'http://people.debian.org unstable/ Packages' (/var/state/apt/lists/people.debian.org_%7ekov_debian_unstable_Packages) - stat (2 No such file or directory)
W: You may want to run apt-get update to correct these missing files
E: Couldn't find package penguineyes
</example>

<p>
<tt>/etc/apt/sources.list</tt> dosyasnda yaptnz son deiiklikten sonra
<tt>apt-get update</tt> komutunu altrmay unutmusunuz demektir.
<p>
Eer hata aadakine benzer ise:
<p>
<example>
E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
</example>

<p>
<prgn>apt-get</prgn>'in <tt>source</tt> dnda bir fonksiyonu normal kullanc
haklaryla kullanmaya alyorsunuzdur.
<p>
Benzer bir hatay, ayn anda birden fazla <prgn>apt-get</prgn> programn altrmanz 
durumunda
ya da <prgn>dpkg</prgn> program ilem yaparken APT kullanmaya almanz durumunda 
alabilirsiniz.
Ayn anda kullanlabilecek tek fonksiyon <tt>source</tt>'tr.
<p>
Eer kurulum ileminiz herhangi bir nedenle yarda kesilmi ve ardndan hi bir paketi 
kurma ve kaldrma ilemi yapamaz duruma gelmiseniz, aadaki komutlarla APT'nin gerekli 
dzeltmeleri yapmasn salayabilirsiniz:

<p>
<example>
# apt-get -f install
# dpkg --configure -a
</example>

<p>
Ve bazen yukardaki komutlar birden fazla defa tekrarlamanz gerekebilir. `unstable' 
datm kullanmaya balayacak olan kullanclarn renmesi gereken ilk ders budur.

</sect>

<sect id="help">Nereden yardm bulabilirim?
<p>
Debian paket ynetim sistemi hakkndaki ayrntl belgeleri inceleyebilirsiniz.
Programlarn <tt>--help</tt> ve klavuz (man) sayfalar da olduka yararl bilgiler 
ierir. Ayrca <tt>/usr/share/doc</tt> dizini altndaki her programa ait dokmantasyonu 
inceleyebilirsiniz, apt iin bu dizin <tt>/usr/share/doc/apt</tt>'dir.
<p>
Eer aradnz sorunun cevabn bu dokmanlarda da bulamazsanz cevab Debian mail 
listelerinde aramalsnz. Debian listeleri hakknda ayrntl bilgilere
<url id="http://www.debian.org" name="http://www.debian.org"> adresinden ulaabilirsiniz.
<p>
Belirttiimiz listeler Debian kullanclar iindir, dier datmlar kullananlar, 
datmlarnn
mail listelerinde kendilerine uygun cevaplar bulabilirler.
</sect>
</chapt>

<chapt id="distros">Hangi Linux datmlar APT destekliyor?
<p>
Aada APT'yi destekleyen datmlarn bir listesi yer almaktadr:
<p>
Debian GNU/Linux (<url id="http://www.debian.org" name="http://www.debian.org">) 
- APT'nin gelitiriminin yapld ve devam ettii datmdr.
<p>
Conectiva (<url id="http://www.conectiva.com.br" name="http://www.conectiva.com.br">) 
- APT sisteminin rpm ile kullanlabilmesi iin alan ilk datmdr.
<p>
Mandrake (<url id="http://www.mandrake.com" name="http://www.mandrake.com">)
<p>
PLD (<url id="http://www.pld.org.pl" name="http://www.pld.org.pl">)
<p>
Vine (<url id="http://www.vinelinux.org" name="http://www.vinelinux.org">)
<p>
APT4RPM (<url id="http://apt4rpm.sf.net" name="http://apt4rpm.sf.net">)
<p>
Alt Linux (<url id="http://www.altlinux.ru/" name="http://www.altlinux.ru/">)
<p>
Red Hat (<url id="http://www.redhat.com/" name="http://www.redhat.com/">)
<p>
Sun Solaris (<url id="http://www.sun.com/" name="http://www.sun.com/">)
<p>
SuSE (<url id="http://www.suse.de/" name="http://www.suse.de/">)
<p>
Yellow Dog Linux (<url id="http://www.yellowdoglinux.com/"
name="http://www.yellowdoglinux.com/">)
</chapt>

<chapt id="agradecimentos">Teekkrler
<p>
Debian-BR ve Debian projesindeki arkadalarma, desteklerini esirgemedikleri iin 
teekkrlerimi sunuyorum.
<p>
Ayrca projemize ve benzer zgr projelere destek veren CIPSGA'ya teekkr ediyorum.
<p>

Ve zel teekkrler:
<p>
Yooseong Yang &lt;yooseong@debian.org&gt;
<p>
Michael Bramer &lt;grisu@debian.org&gt;
<p>
Bryan Stillwell &lt;bryan@bokeoa.com&gt;
<p>
Pawel Tecza  &lt;pawel.tecza@poczta.fm&gt;
<p>
Hugo Mora &lt;h.mora@melix.com.mx&gt;
<p>
Luca Monducci &lt;luca.mo@tiscali.it&gt;
<p>
Tomohiro KUBOTA &lt;kubota@debian.org&gt;
<p>
Pablo Lorenzzoni &lt;spectra@debian.org&gt;
<p>
Steve Langasek &lt;vorlon@netexpress.net&gt;
<p>
Arnaldo Carvalho de Melo &lt;acme@conectiva.com.br&gt;
<p>
Erik Rossen &lt;rossen@freesurf.ch&gt;
<p>
Ross Boylan &lt;RossBoylan@stanfordalumni.org&gt;
<p>
Matt Kraai &lt;kraai@debian.org&gt;
<p>
Aaron M. Ucko &lt;ucko@debian.org&gt;
<p>
Jon slund &lt;d98-jas@nada.kth.se&gt;
</chapt>

<chapt id="novas">Bu dokmann yeni versiyonlar

<p>
Bu dokman <url id="http://www.debian-br.org" name="Debian-BR"> 
projesi kapsamnda retilmi olup, tm Debian kullanclarna yardmc olmas amalanmtr.
<p>
Dokmann yeni versiyonlarn her zaman Debian Dokmantasyon Projesi sayfalarndan 
eriebilirsiniz:
<url id="http://www.debian.org/doc/ddp" name="http://www.debian.org/doc/ddp">. 
<p>
Her trl yorum ve grlerinizi <email>kov@debian.org</email> adresinden bana 
gnderebilirsiniz.
</chapt>

</book>

</debiandoc>