Provided by: manpages-tr_1.0.5.1-2_all bug

ISIM

       bzip2 - blok siralamali dosya sikistirici v1.0.2
       bunzip2 - sikistirilmis dosyalari acar
       bzcat - dosyalari standart ciktida acar
       bzip2recover - zarar gormus bzip2 dosyalarindaki verileri kurtarir

KULLANIM

       bzip2   [ -cdfkqstvzVL123456789 ] [ dosyalar ... ]
       bunzip2 [ -fkvsVL ] [ dosyalar ... ]
       bzcat   [ -s ] [ dosyalar ... ]
       bzip2recover dosyaismi

A,CIKLAMA

       bzip2,  Burrows-Wheeler  blok siralamali metin sikistirma algoritmasini
       ve Huffman  kodlamasini  kullanarak  dosyalari  sikistirir.  Sikistirma
       orani  geleneksel  LZ77/LZ78  tabanli  sikistirma araclarindan cok daha
       iyidir. PPM ailesi istatistiksel sikistiricilarin performansina oldukca
       yakindir.

       Komut  satiri  secenekleri  kasitli  olarak  GNU  gzip'e oldukca benzer
       sekilde yapilmistir, fakat birebir ayni degillerdir.

       bzip2, komut  satiri  seceneklerine  eslik  edecek  dosya   isimlerinin
       listesini  ister.  Her  bir dosya sikistirilmis surumu ile degistirilir
       ve   ismi   "orjinal_dosya.bz2"   sekline   donusturulur.    Her    bir
       sikistirilmis  dosya,  orjinal dosya ile ayni izinlere, ayni duzenlenme
       tarihlerine ve  mumkun  ise  ayni  iyeliklere   sahiptir.   Bu   sayede
       sikistirilmis   dosya  acildigi  zaman orjinal dosya elde edilmis olur.
       Dosya isimlerini yonetmek  isi,  orjinal  dosya  ismini  koruyamayacak,
       izinler  ve  iyelikleri  veya  tarihleri  kendi  dosya  sistemi  icinde
       bulunduramayacak dosya sistemlerinin (mesela MS-DOS)  oldugu  dusuncesi
       ile  yurutulmektedir.   Muhtemel dosya ismi uzunlugu kisitlamalarini da
       unutmamak gerekir.

       bzip2 ve bunzip2 ontanimli olarak, varolan dosyanin uzerine  yazmazlar.
       Sayet bunu yapmak isterseniz -f secenegini kullanmaniz gerekir.

       Sayet  dosya  ismi  belirtilmezse,  bzip2  standart  girdiden  standart
       ciktiya  sikistirma  islemi  yapar.  Bu  durumda,  bzip2  sikistirilmis
       ciktiyi bir terminale yazmayi reddedecektir, bu nedenle boyle  bir  sey
       yapmak tamamen anlamsiz ve amacsiz olacaktir.

       bunzip2 (veya  bzip2   -d)   belirtilen  butun  dosyalari  acar.  bzip2
       tarafindan  sikistirilmamis  dosyalar  tespit  edilir  ve  yok sayilir,
       ardindan bir  uyari   mesaji  verilir.  bzip2,  sikistirilmis  dosyadan
       acilacak  dosyaya  aktarilacak  dosya  ismini  su sekilde tespit etmeye
       calisir:

       dosyaismi.bz2   =>    dosyaismi
       dosyaismi.bz    =>    dosyaismi
       dosyaismi.tbz2  =>    dosyaismi.tar
       dosyaismi.tbz   =>    dosyaismi.tar
       baskabirisim    =>    baskabirisim.out

       Sayet dosya yukarida belirtilen  soneklerden  birisine  sahip  degilse,
       bzip2  mizmizlanir  ve  orijinal  dosya  ismini  sonuna  .out ekleyerek
       kullanir.

       Sikistirma  isleminde  oldugu gibi, dosya ismi belirtmeden yapilan acma
       isleminde standart girdiden standart ciktiya acma islemi yapilir.

       bunzip2, iki ya da daha fazla sikistirilmis  dosyadan  olusan  birlesik
       bir  dosyayi  dogru  bir  sekilde  acacaktir.  Sonucta acilmis dosyalar
       birlesik olarak elde edilir. Birlesik sikistirilmis dosyalarin butunluk
       sinamasi yapilmasi (-t) ozelligi de desteklenmektedir.

       Ayrica  -c   secenegini   belirterek   standart   ciktida     dosyalari
       sikistirabilir   veya   acabilirsiniz.   Coklu   dosyalar   bu  sekilde
       sikistirilabilir veya  acilabilir.  Sonuc  ciktilari  standart  ciktiya
       pespese    gonderilir.    Bu   sekilde  coklu  dosya  sikistirma  coklu
       sikistirilmis dosya  temsilcilerinin bulundugu bir akim uretir. Bu  tur
       bir  akim  sadece  bzip  0.9.0 veya daha sonraki bir surumle duzgun bir
       sekilde acilabilir. Daha eski  surumler   ilk  dosyayi  actiktan  sonra
       dururlar.

       bzcat  (veya  bzip2  -dc)  belirtilen  butun dosyalari standart ciktiya
       acar.

       bzip2, argumanlari sirayla BZIP2 ve BZIP ortam degiskenlerinden okurlar
       ve bu argumanlari komut satiri argumanlarini okumadan once  uygularlar.
       Bu, ontanimli argumanlarin uygulanmasi icin elverisli bir yol saglar.

       Sikistirma  islemi,  sikistirilmis dosya orijinalinden biraz buyuk olsa
       bile, mutlaka yapilir. Yuz bayttan  daha  kucuk  dosyalar  sismanlamaya
       meyillidir.  Cunku  sikistirma  algoritmasi  ilk 50 bayta yazilacak bir
       sabite sahiptir. Rasgele veri (pek cok dosya  sikistiricisinin  ciktisi
       dahil) bayt basina 8.05 bitlik bir oran ile kodlanir. Bu da %0.5lik bir
       genislemeye sebep verir.

       Bir  ozdenetim  mekanizmasi  olarak,  bzip2  32 bitlik CRC  kullanir ve
       acilan  dosya ile orijinal sikistirilmis dosyanin ayni olup  olmadigini
       kontrol  eder.  Bu  tedbir  sikistirilmis  dosyada  meydana gelebilecek
       bozulmalar  ve  bzip2'de  olmasi  muhtemel  yazilim  hatalarina   karsi
       guvenlik saglar. Elden gecirilen her bir dosya icin tespit edilemeyecek
       hata orani 4 milyarda bir degisiklik oraninin  altindadir.  Bu  orandan
       daha  kucuk  degisiklikler  mikroskobiktir  ve  tespit  edilemeyebilir.
       Bununla birlikte uyanik  olmakta  fayda  vardir,  kontrol  acma  islemi
       esnasinda  yapilir ve sadece bir takim seylerin yanlis oldugunu soyler.
       Orijinal acilmis verileri  kurtarmaniza  yardimci  olmaz.  Bu  durumda,
       verileri kurtarmak icin bzip2recover kullanmalisiniz.

   Geri d"onen degerler
       Normal cikti icin 0, cevresel  sorunlar  icin  1  (dosya  bulunamamasi,
       gecersiz  secenekler,  G/C  hatalari,  vs..),   sikistirilmis   dosyada
       bozukluk  icin  2,  bzip2'nin  paniklemesine  sebep  olan   dahili  bir
       tutarlilik hatasi icin 3 (yazilim hatasi).

SE,CENEKLER

       -a, --ascii
              Ascii   metin  kipi:  satir  sonlarini   yerel   ayarlara   gore
              donusturur.   Bu  secenek,  sadece  Unix  disi  birkac  sistemde
              desteklenir.  Ornegin  MSDOS'da  sikistirma  esnasinda  CRLF'ler
              LF'ye cevrilir ve acma isleminde LF'ler CRLF'ye donusturulur.

       -c, --stdout
              Standart ciktida sikistirilir veya acar.

       -d, --decompress
              Mutlaka  acma  islemi  yapilir.  bzip2, bunzip2 ve bzcat aslinda
              ayni yazilimdir ve yapilmasi gereken islem,  kullanilan  yazilim
              ismine  gore kararlastirilir. Bu secenek, bu yontemi yoksayar ve
              bzip2'yi acma islemine zorlar.

       -z, --compress
              -d nin ziddi:  hangi  isim  ile  cagrilirsa  cagrilsin   mutlaka
              sikistirma   yapilir  (ornegin,  bunzip2  komutuna  bu  secenegi
              vererek sikistirma yapmasini saglayabilirsiniz).

       -t, --test
              Belirtilen dosya  veya  dosyalarin  butunlugunu   kontrol  eder,
              gercekte  acma  islemi yapmaz. Bu secenek ile bir deneme acilimi
              yapilmis olur ve sonuclar belirtilir.

       -f, --force
              Cikti dosyasinin uzerine yazmaya zorlar.  Normal  olarak,  bzip2
              varolan  bir  dosyanin  uzerine yazmayacaktir. Ayrica bu secenek
              bzip2'yi dosyalara olan sabit baglari kirmaya zorlar, boylece bu
              baglarda uzerine yazma yapilmaz.

              bzip2  normalde  dogru  sihirli  baslik baytlarina sahip olmayan
              dosyalari acmayi  rededecektir.  Sayet  -f  kullanilir  ise,  bu
              dosyalari   degistirilmeden  gececektir.  GNU gzip de bu sekilde
              davranir.

       -k, --keep
              Sikistirma veya acma islemi esnasinda orjinal dosyalari  silmez,
              saklar.

       -s, --small
              Sikistirma,  acma  ve  sinama  islemleri  icin bellek ihtiyacini
              azaltir.  Dosyalar  bayt  blogu  basina  2.5   bayt   gerektiren
              degisiklik   yapilmis bir algoritma ile acilir ve sinanir. Bunun
              anlami, herhangi bir dosyanin 2300k lik bir bellek alani  icinde
              acilabilecegidir  ancak   basarim,   normal hizin yarisina kadar
              duser.

              Sikistirma esnasinda, -s secenegi  ile  200k  lik  blok   boyutu
              secilir,  bu  bellegi  de  ayni  sekilde  sinirlar ve sikistirma
              oranini artirir. Uzun lafin kisasi, makinenizin bellegi  8MB'dan
              daha  az  ise -s secenegini her seyde kullanin. Asagidaki BELLEK
              Y"ONETIMI bolumune bakiniz.

       -q, --quiet
              Gerekli olmayan uyarilar verilmez.  G/C  ve  diger  onemli  hata
              iletileri gizlenmez.

       -v, --verbose
              Ayrinti  kipi:  islenen her bir dosya icin sikistirma oranlarini
              gosterir. Daha fazla -v  ayrinti  oranini  artiracaktir.  Teshis
              amacli  kullanima  uygun olarak pek cok bilgi yazilim tarafindan
              bildirilecektir.

       -L, --license, -V, --version
              Yazilimin surum, lisans, kosul ve kurallarini goruntuler.

       -1 (veya --fast) den -9 (veya --best) a kadar
              Sikistirma yaparken  blok  boyutlarini  100k,  200k,  ..,   900k
              seklinde  ayarlar.  Cozme isleminde bir etkisi yoktur. Asagidaki
              BELLEK Y"ONETIMI  bolumune  bakiniz.  --fast  ve  --best  secenek
              isimleri   GNU  gzip  uyumlulugunu  saglamak  icindir. Acikcasi,
              --fast gozle gorulur bir hiz artisi saglamaz  ve  --best  sadece
              ontanimli degerlerin secilmesini saglar.

       --     Ardindan  belirtilen  butun  argumanlari  dosya  isimleri olarak
              kabul eder. Bu argumanlarin tek cizgi ile baslamis olmalari bile
              onemli degildir. Boylece tek cizgi ile baslayan dosya isimlerini
              kullanabilirsiniz. Ornegin: bzip2 -- -benim_dosyam.

       --repetitive-fast, --repetitive-best
              Bu secenekler surum 0.9.5 ve uzerinde  gereksizdir.  Daha   eski
              surumlerde, bazi kaba kontrollerin yapilmasini saglamaya yonelik
              seceneklerdir. Bazen faydali  olabilmekte  idi.  0.9.5  ve  ustu
              surumler  bu  ayarlarin  yapilmasina  gerek  birakmayan daha iyi
              algoritmalar kullanmaktadirlar.

BELLEK Y"ONETIMI

       bzip2 buyuk dosyalari bloklar halinde sikistirir. Blok  boyutlari,  hem
       sikistirma   oranini,   hem  de  sikistirma/acma  icin  gereken  bellek
       miktarini etkiler. -1 den -9 a  kadarki  secenekler  ile  istenen  blok
       boyutlarini  100.000  bayttan  900.000  bayta  (varsayilan deger budur)
       kadar  tanimlamasini  saglar.  Acma  islemi  sirasinda,   sikistirilmis
       dosyanin  bas  kismindan  sikistirma  esnasinda  kullanilan blok boyutu
       okunur ve daha sonra bunzip2 kendisi icin gerekli olan  bellek  alanini
       ayirir  ve  oraya  yerlesir.  Sikistirma  blok boyutlari  sikistirilmis
       dosya icinde saklandigi icin, -1 den -9 a kadar  olan  secenekler  acma
       islemi  esnasinda  gecersizdir.  Sayet  bu  secenekleri  belirtirseniz,
       program bunlari gozardi edecektir.

       Sikistirma ve acma gereksinimleri, bayt cinsinden, yaklasik olarak:

       Sikistirma:   400k + ( 8 x blok boyu )

             Acma:   100k + ( 4 x blok boyu ) veya
                     100k + ( 2.5 x blok boyu )

       Daha buyuk  blok  boyutlari  hizli  bir  sekilde  azalan  sinira  yakin
       donusler  verir. Sikistirmanin pek cogu, blok boyutunun ilk iki veya uc
       yuz k lik kismindan elde edilir. Bu  kurali,  kucuk  makinelerde  bzip2
       kullanirken    aklinizdan   cikarmayin.  Ayrica aklinizdan cikarmamaniz
       gereken diger bir noktada, acma sirasindaki bellek gereksinimlerinizin,
       sikistirma  sirasinda  kullandiginiz blok boyutlari ile birebir alakali
       oldugudur.

       900k lik ontanimli blok boyutu ile sikistirilan dosyalar icin,  bunzip2
       acma  islemi sirasinda 3700 kB lik bellege ihtiyac duyacaktir. 4 MB lik
       bellege sahip bir makinede herhangi bir dosyayi acmak  icin,   bunzip2,
       ihtiyac  duyulan  bellek  miktarinin  yarisi ile (takriben 2300KB) acma
       islemini  gerceklestirecek  bir  argumana    sahiptir.   Bu   argumanin
       kullanilmasi  acma  hizini  da  yari  yariya dusurecektir.  Cok gerekli
       olmadikca bu secenegi (-s)  kullanmayin.  (*C.N:  gunumuzde  kullanilan
       makineler  icin  bu  secenek  oldukca nostaljik gorunebilir ama test ve
       egitim  amacli oldukca  dusuk  ozeliklere  sahip  ikinci   veya  ucuncu
       makineleri olanlar bu secenegin degerini anlayacaktir. P233 makinede 16
       MB edoram ile harikalar :-) yaratiyor.)

       Genel kural olarak, bellek sinirlariniz elverdigi surece,  mumkun  olan
       en  buyuk   bloklari  kullanin.  Boylece  azami sikistirma elde edilir.
       Sikistirma ya da acma  hizinin  aslinda  blok  boyutu  ile  bir  ilgisi
       yoktur.

       Diger  bir  onemli  nokta  da dosyalara tek bir bloga sigacak dosyalara
       yapilan islemdir.  Aslinda  karsilasilan  pek  cok  dosya  bir  bloktan
       kucuktur.  Dosya  bir   bloktan  kucuk  oldugundan, gercekte kullanilan
       bellek miktari normalde gerekenden kucuk olur. Ornegin: 20.000  baytlik
       bir  dosyayi  -9 secenegi ile sikistirmak, sikistiricinin 7600k bellege
       ihtiyac   duymasina      sebep   olacaktir    ama    gercekte    sadece
       400k+20000*8=560kB  bellek kullanilacaktir. Ayni sekilde acma islemi de
       3700k lik bir bellek ayiracak ama  sadece  100k+20000*4=180kB  lik  bir
       alani kullanacaktir.

       Asagida degisik blok boyutlarinin bellek kullanimini gosteren bir tablo
       bulacaksiniz. Ayrica Calgary Text Compression Corpus'da (Calgary  Metin
       Sikistirma  Kulliyati)  14  dosyalik  sikistirilmis toplam boyut olarak
       3.141.622   bayt  kayitlidir.  Asagidaki  sutunlar,  blok  boyutu   ile
       sikistirma  arasindaki  ilgi   hakkinda  bir  fikir  verecektir.  Buyuk
       dosyalar icin buyuk blok boyutlarini kullanmak daha avantajlidir. Cunku
       Kulliyat daha kucuk dosyalar uzerine kuruludur.

                Sikistirma  Acma        -s ile acma   Kulliyat
       Secenek  kullanimi   kullanimi   kullanimi     boyutu

         -1      1200k       500k         350k        914704
         -2      2000k       900k         600k        877703
         -3      2800k      1300k         850k        860338
         -4      3600k      1700k        1100k        846899
         -5      4400k      2100k        1350k        845160
         -6      5200k      2500k        1600k        838626
         -7      6100k      2900k        1850k        834096
         -8      6800k      3300k        2100k        828642
         -9      7600k      3700k        2350k        828642

HASARLI DOSYADAN VERI KURTARMA

       bzip2 dosyalari genellikle 900k lik bloklar halinde sikistirir. Her bir
       blok birbirinden bagimsiz olarak ele alinir. Bir aygit  ya  da  aktarim
       hatasi  pek  cok  .bz2  blogunun  hasar  gormesine  sebep olursa, zarar
       gormemis bloklardaki verileri kurtarmak mumkun olabilir.

       Sikistirilmis her bir blok 48 bitlik  bir  sablon  ile  temsil  edilir.
       Boylece  blok  sinirlarini  kesin olarak bulmak mumkun olabilir. Ayrica
       her bir blok kendi 32 bitlik CRC'sini bulundurur, boylece bozuk bloklar
       saglam olanlardan ayirt edilebilir.

       bzip2recover,  basitce,  .bz2  dosyalarin icindeki bloklari tarayan bir
       yazilimdir. Buradaki her  bir  taranmis  blogu  kendi  .bz2   dosyasina
       aktarir.  Sonuclarin  butunlugunu  kontrol etmek icin bzip2 -t komutunu
       kullanabilirsiniz. Ardindan bozulmamis verileri acabilirsiniz.

       bzip2recover  sadece  hasarli  dosya  ismini  arguman  olarak  alir  ve
       kurtardigi  bloklari  "rec00001file.bz2",  "rec00002file.bz2"  seklinde
       yazar.  Bu  isim  numaralandirmasi  sonradan   yapilacak   islemlerdeki
       simgelemlerin  kullanimi  icindir.  Ornegin,  bzip2  -dc rec*file.bz2 >
       kurtarilan_veri komutu dosyalari dogru siralama ile uretir.

       bzip2recover daha cok buyuk .bz2 dosyalari icin faydalidir cunku bunlar
       daha  cok  blok icerirler. Tek bloktan olusmus hasarli bir dosya ile bu
       yazilimi  kullanmanin  hicbir   anlami   yoktur,   cunku   bozuk   blok
       kurtarilamaz.  Sayet  herhangi  bir  hasar durumunda zararinizi en azda
       tutmak istiyorsaniz, daha kucuk  blok  boyutlari  kullanmaniz  akillica
       olacaktir.

BA,SARIM HAKKINDA

       Sikistirmanin  siniflandirma  asamasi,  birbirine  benzer dizgeleri bir
       araya  getirmektir.  Bu  nedenle   tekrarlanan   sembollerden   olusmus
       dosyalarin  sikistirmasi  (aabaabaabaab  ... gibi) daha uzun tutabilir.
       Surum 0.9.5 ve uzerindekilerde basarim daha iyidir. En kotu  durum  ile
       ortalama  durum  sikistirma zamani arasindaki oran 10:1 civaridir. Daha
       onceki surumlerde bu durum  100:1  gibiydi.  Isterseniz  surecin  butun
       ayrintilarini gorebilmek icin -vvv secenegini kullanabilirsiniz.

       Acma hizi bu durumdan bagimsizdir.

       bzip2 genellikle islem yapmak icin, cok MB li bellek alanlari ayirir ve
       daha sonra tarafsiz ve rasgele bir sekilde saldirir. Bunun anlami, acma
       ve  sikistirma  performanslarinin makinenizin onbellegine erisim suresi
       ile alakali oldugudur. Onbellege erisim kayiplarini dusurecek kucuk kod
       degisiklikleri   buyuk  performans  artislari  getirebilir.  Cok  buyuk
       onbelleklere sahip makinelerde bzip2 cok yuksek basarim gostermektedir.

YETERSIZLIKLER

       G/C  hata  iletileri olmalari gerektigi kadar faydali degildiler. bzip2
       G/C hatalarini tespit etmek ve temiz bir sekilde  cikmak  icin  oldukca
       ter doker ama bazen sorunun ayrintilari gozden kacabilmektedir.

       Bu kilavuz sayfasi bzip2'nin  1.0.2  surumune   aittir.  Bu  surum  ile
       sikistirilmis  veriler  gecmis  surumler  ile  tamamen uyumludur (surum
       0.1pl2, 0.9.0, 0.9.5, 1.0.0 ve 1.0.1 ile), tek istisna 0.9.0  ve  uzeri
       surumler  coklu  dosya sikistirmalari duzgunce acabilirler, 0.1p12 bunu
       yapamaz,  ilk  dosyayi  actiktan  sonra  duracak  ve  akimin   gerisini
       getirmeyecektir.

       bzip2recover    surumleri   1.0.2   den   onceki   surumlere   goredir.
       Sikistirilmis dosya icindeki bit konumlarini belirtmek icin  32  bitlik
       tamsayilar kullanirlar ve bu yuzden 512 MB'den daha buyuk sikistirilmis
       dosyalar elde edilemezler. Surum 1.0.2 ve uzeri 64 bitlik  tam  sayilar
       kullanirlar  ve GNU ile Windows platformlarini desteklerler. Bu tip bir
       sinir ile kurulup kurulmadigini anlamak icin bzip2recover'i  argumansiz
       calistirin.  Her  halukarda,  bu  siniri  ortadan  kaldirmak mumkundur.
       Sayet yazilimi MaybeUInt64 ile yeniden derleyebilirseniz, isaretsiz  64
       bitlik  tamsayi  ayarlanmis   olacagindan   bu   sinir  ortadan kalkmis
       olur.

YAZAN

       Julian Seward, <jseward (at) acm.org> tarafindan yazilmistir.

       http://sources.redhat.com/bzip2

       bzip2'deki   fikirlerin  sahipleri  sunlardir  (en  azindan):   Michael
       Burrows  ve David Wheeler (blok siralamali donusum icin), David Wheeler
       (tekrar,  Huffman  kodlayicisi),  Peter  Fenwick  (orijinal   bzip'teki
       yapisal  kodlama  modeli  ve  pek cok tasfiye icin) ve Alistair Moffat,
       Radford  Neal  ve  Ian  Witten    (orijinal     bzip'teki     aritmetik
       kodlayici    icin).   Onlara  yardimlari,  destek  ve  tavsiyeleri icin
       sukran  borcluyum.  Belgeler   icin  kaynak   kod   paketine   bakiniz.
       Christian  von  Roques,  daha  hizli  siralama  algoritmasi  icin  beni
       cesaretlendirdi   ve   boylece   daha   hizli   bir   sikistirma   elde
       edebildik.  Bela Lubkin, en kotu durum sikistirmasi icin cesaret verdi.
       bz* betikleri GNU  gzip'inkilerden  turetildi.   Bir   cok  kimse   de,
       yamalar    gonderdi,   tasinabilirlik   sorunlarinda   yardimci   oldu,
       tavsiyelerde bulundu; bunlar cogunlukla faydali oldu.

,CEVIREN

       Yalcin Kolukisa <yalcink01 (at) yahoo.com>, Ocak 2004

                                                                      bzip2(1)