wget ile download

wget (GNU wget) uzun zamandır kullandığım ve internetten birşeyler indirmeyi oldukça kolaylaştıran bir araç. Temel olarak

wget [URL]

komutu ile verdiğiniz URL adresindeki bir dosyayı indirebiliyorsunuz. Ancak, her araçta olduğu gibi wget’in de hayatı pratikleştiren püf noktaları var. Bu “hayat kurtaran” özelliklerin bazılarını listeleyeyim:

  • Çoklu indirme: Elinizde onlarca farklı link var ve her bir link için ayrı ayrı komut vermek bilgisayarın başından ayrılamamak anlamına geliyor. Bu durumda, her satıra bir link gelecek şekilde bir .txt dosyasına bu linkleri yazarak işleri otomatikleştirebilirsiniz. Aşağıdaki komutu verdiğinizde wget verilen girdi dosyayı satır satır okuyacak ve her bir satırdaki bağlantı için sırayla işlem başlatacaktır. Elimizdeki bağlantıları liste.txt adlı bir dosyaya yazdığımızı düşünürsek, komut şöyle olacaktır:
wget -i liste.txt
  • HTML kodundan ayıklama: Diyelim ki bir internet sayfasında bulunan onlarca dosyayı indirmek istiyorsunuz. Elbette sayfanın kodunu açarak, düzenli ifadelerle bağlantıları ayıklamak mümkün. Ancak, bazı web sayfalarında bağlantılar, sitenin bulunduğu sunucuya göre konumlandırılmış olabilir. Örneğin sayfa içindeki bağlantı ../Upper_Folder/x.html olarak verilebilir. Bu durumda http://foo/Upper_Folder/a.html olarak bir base tanımlarsanız, html içindeki diğer adresler http://foo/Upper_Folder/x.html olarak çözümlenecektir.
wget -B http://foo/Upper_Folder/x.html -i [input_file]
  • Devam Etme: En sevdiğim özelliklerden biri. Özellikle, bir ISO kalıbı gibi büyük dosyaları indirirken bağlantının kesilmesi veya ofiste başlattığınız bir indirme işine evde devam etmek istediğinizde hayat kurtaran bir parametre var: -c Eğer komutu aşağıdaki şekilde oluşturursanız, wget yarıda kalan bir indirme işlemine, daha önce indirdiği kısmı indirdiğini bilerek kaldığı yerden devam edecektir.
wget -c http://cdimage.debian.org/debian-cd/8.6.0/amd64/iso-cd/debian-8.6.0-amd64-CD-1.iso
  • Örümcek: wget, tam anlamıyla olmasa da, içinde bir “spider” barındırıyor. –spider parametresiyle kullanılan bu fonksiyon yararlı işler de yapabiliyor. wget manual sayfasında verilen örnek üstünden gidersek, internet tarayıcınızdaki favorilerinizin hala orada olup olmadığını spider ile kontrol edebilirsiniz. Bunun için internet tarayıcınızla favorilenizi dışa aktarıp, örneğin bookmarks.html adlı bir dosyaya yazdırdığınız varsayılım. Aşağıdaki komutu çalıştırdığınızda favorilerinizin hala yerinde olup olmadığını wget kontrol edecektir.
wget --spider --force-html -i bookmarks.html

Ancak bunun bir adım ötesine gitmek de mümkün. Bildiğiniz gibi web sayfalarında verilen bağlantılar sadece size sunulan bağlantılardır. Oysa kullanıcıların görmesi istenmeyen sayfalar da bulunabilir. İşte bu noktada spider parametresiyle, bir domain altında bulunan tüm sayfaları, css dosyalarını ve diğer unsurları kontrol edebilir ve bilgisayarınıza indirebilirsiniz. Bunun için şu komut yeterli olacaktır:

 

wget -r –spider –timeout=20 -D foo.com http://foo.com

Burada –timeout=20 parameresiyle, bir bağlantı, eğer cevap vermezse, kaç saniye sonra yoksayılacağı belirtilmiş.

Bir siteyi indirmek istediğinizde işinize yarayacak bir diğer parametreyse -w. -w ile saniye cinsinden, bir bağlantıdan sonra wget’in bekleyeceği süreyi ayarlayabilirsiniz. Böylelikle, karşıdaki sunucu sizi engellemeden çalışmaya devam edebilirsiniz.

  • Karakter Kodlaması Sorunları: Özellikle Türkçe için karakter kodlaması hala sorun olmaya devam edebiliyor. Eğer indirmek istediğiniz bağlantı Türkçe karakter, boşluk vb. bir karakter içeriyorsa, wget ile dosyayı indirdiğinizde karşılaşacağınız, dosya adına eklenmiş (invalid encoding) ibaresi oldukça can sıkıcı olabilir. Bu durumda, linkteki veya dosya adındaki geçersiz karakterleri wget ile berteraf etmek mümkün.
wget -r -np -nc --restrict-file-names=nocontrol  http://foo.cm/Bu%20Hatal%C4%B1%20Bir%20D%C3%B6k%C3%BCman%20Ad%C4%B1d%C4%B1r.txt

 

 

 

Debian 7 Wheezy

Uzun süredir beklediğim Debian 7 Wheezy nihayet biz kullanıcılara ulaştı. Dağıtımın sunulduğu 4 Mayıs tarihinde evimden uzakta olduğum için ne yazık ki 2 günlük bir gecikmeyle bilgisayarıma kurabildim. Uzun süredir kullandığım ve yine  Debian tabanlı olan bir başka dağıtım Linux Mint (14 Nadia) ise diğer diskimde yedeklerimi ve aktif çalışmalarımı tutmaya devam ediyor. (İki fiziksel diske sahip laptop kullanmanın ayrıcalığı olsa gerek 🙂 )tsCorups-Workstation

Sistemi kurar kurmaz da çalışmaya başladım. Resimden sanırım sistemin en büyük özelliği olan “stability” becerisini bu sürümde de devam ettireceği açıkça anlaşılmakta. Kurulum aşamasından başlayarak göze çarpan değişiklikler dağıtımla ilgili duyurulurda bahsedilen şekilde. Kurulum sırasında hiçbir zorluk yaşamıyorsunuz. Ayrıca yeni sürüme yükseltilen kernel ile donanım uyumluluğu da artırılmış. Debian 6 ile kullandığım MSI GT780DXR dizüstü bilgisayarın bazı donanım bileşenlerini sisteme tanıtmam gerekiyordu. Debian 7 ile wireless bağlantı dışında hiçbir sorun yaşamadan tüm donanımımı sistem kurulumundan itibaren kullanabilmeye başladım. Kablosuz ağ kartı için de Debian deposunda gelen firmware-iwlwifi paketini kurmak yeterli oldu.

$sudo apt-get install firmware-iwlwifi

Eğer benzer bir sorun yaşarsanız

$apt-cache search wireless

komutu ile birçok wireless sürücüsü ile ilgili paketleri listeleyebilir, donanımınıza uygun olanı seçip kurabilirsiniz.

Hızlı bir şekilde kendi isteklerime göre tanımladığım .bashrc dosyasını Nadia’dan alıp home dizinime kopyaladıktan sonra sistem kullanıma hazırdı. Alışkanlık gereği önce güncelleme olup olmadığını kontrol edip hemen ardından

$ sudo nano /etc/apt/sources.list

altına

deb http://ftp.debian.org/debian testing main contrib non-free

reposunu ekledim. Ve güncellemeleri tekrar kotrol edip sistemi kullanmaya başladım.

$sudo apt-get update && sudo apt-get upgrade

Sistemin kurulumundan itibaren tüm bu işlemleri yapmak ve çalışaya başlamak sadece 50 dakika kadar sürdü.

Debian 7 Wheezy öntanımlı olarak Gnome Shell 3.4.2 kullanarak geliyor.  Ubuntu’nun pek de hoşlanmadığım Unity masaüstü ortamı yerine zaten kullanmaya alışkın olduğum Gnome Shell şıklığı ve bana göre kullanım kolaylığı ile oldukça verimli bir masaüstü ortamı sağlamakta. Elbette diğer masaüstü ortamları da kullanıma hazır şekilde paket yöneticisinden erişilebilir durumda.

Sisteme genel olarak bakacak olursakDebian 7 Info System Settings>Details altından resimdeki gibi sistem bilgisine ulaşmak mümkün.

İlk izlenim olarak, hem kullandığım dizüstü bilgisayara (MSI GT780DXR) hem de evimde barındırdığım sunucuma (HP Pavillion 6000d) Debian 7’yi sorunsuz şekilde kurabilmek, önceki sürümlerde yaşadığım donanım sorunlarını yaşamamak ve tabi ki kullandığım tüm paketlerin paket yöneticisinde yerini almış olması kesinlikle keyif verici.