E: dpkg was interrupted | dpkg –configure -a’ problemi (ubuntu)

Ubuntu’ya gelen güncellemeyi update-manager ile kurmaya çalışıyordum. Ancak uzun süre geçmesine rağmen update-manager durdu ve kapatılamaz hale geldi. Komut satırından da kill edemedim çalışan processi.

Bilgisayarı yeniden başlattım, ardından komut satırından apt-get update yapmak istedim. Aldığım hata;

"E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem."

Sebebi kurmak istediğim paketlerin dpkg ayarları ile ilgiliymiş. Bu aşamada tekrar update-manager açıp güncellemeyi oradan yapmaya çalışırsanız, üstte anlattığım durum tekrar karşınıza çıkacak ve bilgisayarı yeniden başlatmak zorunda kalacaksınız.

Durumu çözebilmek için ilk önce şu komutu çalıştırıp, kurulması yarım kalan paketleri fixliyoruz.

sudo apt-get install -f

Ardından şu komutu çalıştırarak dpkg konfigurasyonunu düzenleyip, iptal ettiğimiz paketleri kuruyoruz.

sudo dpkg --configure -a

Linuxta belirli bir boyuttan buyuk dosyalari listelemek – find komutu

Linuxta belirli bir boyuttan büyük dosyaları listelemek istiyorsanız, yapacağımız şöyle :

aşağıdaki kod bulunulan klasördeki 10 Megabayt üstü dosyaları listeler

 find . -size +10M -ls

aşağıdaki kod bulunulan klasördeki 10 kilobayt üstü dosyaları listeler

 find . -size +10k -ls

linux ngrep komutu (ağ trafiği işlemleri)

ngrep komutu, bildiğimiz grep komutunun network versiyonudur. Başlıkta da belirttiğim gibi ağ trafiğini inceleme işlemlerinde kullanılır.

Kullanımı sırasında regex işlemlerine izin vermektedir. Yani data paketleri içerisinde arama da yapabiliyoruz. HTTP, SMTP, FTP gibi her türlü ağ trafiğini izlemek ve analiz etmek için kullanılmaktadır. Ayrıca kaynak ve port seçmemize de olanak sağlıyor.

Kurulumu şu şekildedir;

apt-get install ngrep

Kullanımı için bir kaç örnek vermek gerekirse;

ngrep -d any port 80

80. port ile ilgili tüm trafiği ekrana basacaktır. -d parametresi host üzerinde bulunan tüm network interfaceleri üzerindeki trafiği görmek için eklenmiştir, özelleştirmek için -d eth0 diyerek özel bir interface üzerindeki trafiği görebiliriz.

Çıktıları gözümüze biraz karmaşık gelebilir. O yüzden, çıktıları satır satır görmek için, -W Byline parametresini de ekleyebiliriz.

ngrep -d any -W Byline port 80

Detayları için bu sayfayı ziyaret edebilirsiniz : http://ngrep.sourceforge.net/usage.html

linux hardware bilgileri detayları (inxi)

inxi, donanımınız ile ilgili detayları gösteren bir shell scriptdir.

Bir shell script olduğu için, bu scripti kullanıcılara ait programların olduğu dizine (usr/local/bin) koyarak, kurulumunu yapmış oluruz. Kullanabilmek için ek olarak gawk paketini de kurmamız gerekmekte.

Aşağıdaki komutları uyguladığımızda kurulum tamamlanır;

apt-get install gawk
cd /usr/local/bin && wget -Nc smxi.org/inxi && chmod +x inxi

Kullanımı ise şu şekilde; eğer tüm sistem bileşenleri ile ilgili bilgiyi aklmak istiyorsak inxi -F , sadece CPU bilgisini almak istiyorsak inxi -f , network adaptörü ile ilgili bilgiyi almak istiyorsak inxi -n , kullandığımız makinenin bilgilerini almak istiyorsak inxi -M komutları ile görebiliyoruz.

Parametre listesinin tamamı burada mevcut; https://code.google.com/p/inxi/wiki/inxi

Linux terminalde temel network komutları

Dosya indirirken, kullandığımız network üzerindeki işlemleri incelerken, istatistiklerine bakarken, network problemlerine göz atarken kullandığımız arayüzü gelişmiş programlar veya internet siteleri var. Tabi bunların her biri için kullanabildiğimiz birer linux komutları da var, genel olarak onlardan bahsetmek istedim.

curl & wget

curl veya wget, internet üzerinden dosya indirmemize yarar. curl kullanıyorsanız -O parametresi ile, wget kullanıyorsanız parametresiz bir şekilde bulunduğunuz dizine dosyayı indirebilirsiniz.

curl -O website.com/file
wget website.com/file

ping

ping komutu ECHO_REQUEST paketleri göndererek, bilgisayarınızın yazdığınız ip adresi veya domain ile iletişime geçip geçemediğini size bildirir. Ancak bunu kullanırken bazı sistemlerin ping komutuna yanıt verebilecek şekilde yapılandırılmadığını da göz önünde bulundurmalısınız.

Windowstaki ping komutu belirli sayıda paket göndererek size yanıtları gösterir, ancak Linux üzerinde siz sonlandırana kadar paket göndermeye ve size sonuç göstermeye devam eder. Bu yüzden Linuxta ping komutuna parametre olarak -c ve paket adedini yazarak kaç paket ile ping atılacağını yönetebilirsiniz.

ping -c 5 dubluve.net

tracepath & traceroute

tracepath komutu ile traceroute komutu birbirine benzer işlemler yapmaktadırlar. (tracepath Ubuntu’da kurulu olarak gelmektedir.) Eğer internet ağınızda bir yavaşlama veya bir problem varsa, bu komut size nerede hata olduğunu göstermektedir.

tracepath dubluve.net

mtr

Mtr komutu, gitmek istediğimiz ip adresine / domaine ulaşıncaya kadar geçtiğimiz ağları tanılamaya yarayan komuttur. Detayları için buradaki yazıyı inceleyebilirsiniz. Windowstaki kullanımı için de (tracert) buradaki yazıyı inceleyebilirsiniz.

mtr dubluve.net

(Çıkış yapmak için q veya ctrl-c kullanabilirsiniz.)

host

Domain kullanarak ip adresi öğrenebilen komuttur.

host dubluve.net

whois

whois komutunu kullanarak websitesinin kimin adına kayıtlı olduğunu, name serverlarını vs. birçok bilgiyi öğrenebiliriz.

whois dubluve.net

Ubuntu’da whois kurulu olarak gelmemektedir, sudo apt-get install whois diyerek install edebilirsiniz.

ifplugstatus

ifplugstatus Ubuntu’da kurulu olarak gelmemektedir, sudo apt-get install ifplugd komutu ile install ediniz.

ifplugstatus komutu size network interface üzerindeki statusları gösterir.

ifplugstatus

Çıktısı şu şekilde olur;

eth0: unplugged
lo: link beat detected
wlan0: link beat detected

link beat detected demek, bağlı olduğunu gösterir, unplugged ise olmadığını gösterir.

ifconfig

ifconfig ağ üzerindeki bir çok bilginizi görmeye yarar. IP adresiniz, bağlantı türünüz, kullandığınız network arayüzü, aktif arayüzler vs.

ifconfig

dhclient

dhclient komutu bilgisayarınızın ip adresinden yeni bir DHCP server yaratır. DCHP serverın ne olduğu hakkında bilgi edinmek için buradaki yazıyı okuyunuz.

dhclient Ubuntu’da root olmanızı istemektedir, eğer ip adersinizin aynı kalmasını istiyorsanız -r parametresi ile kullanınız.

sudo dhclient -r
sudo dhclient

netstat

netstat komutu network arayüzünüzle ilgili bir çok bilgiyi sunmaktadır.

netstat

-p parametresi ile programların ilişkili olduğu socketleri görüntülersiniz.

netstat -p

-s parametresi ile portların detaylı istatistiklerini görüntülersiniz.

netstat -s