OS kategorisi arşivi

linux process sonlandırma

Ubuntu’da çalışırken ilk defa bir program kilitlendi, Firefox. Çok fazla sekme açtığım ve aynı anda firefox üzerinden bir kaç şey download ettiğim için olduğunu düşünsem de, kilitlendiği zaman ne yapacağımı bilmiyordum.

Windows kullanırken herhangi bir program yanıt vermediğinde ctrl+alt+delete (ctrl+shift+esc) yaparak görev yöneticisine ulaşıp oradan programı sonlandırmak ilk olarak yaptığımız iştir. Linux’ta ne yapacağız peki?

İlk önce terminali açıyoruz ve ps aux yazarak çalışan processleri buluyoruz.

ps aux

Çıkan listeden sonlandırmak istediğimiz processi buluyoruz.

khantunckale     5609  0.0  3.8 713568 151400 ?       Sl   18:03   0:05 /usr/lib/firefox

Sonlandıracağımız processin olduğu satırın başında, o processin numarası bulunmaktadır. (Burada 5609)

Sonlandırmak için yapmamız gereken işlem ise sudo kill -9 proccessNumarası yazmak. Yani örneğimizde;

sudo kill -9 5609

, , , ,

2 Yorum

linux foreground(fg) komutu (command)

Linuxta bir komut çalıştırdığınızda belki de yanlış bir şey yaptığınızda, CTRL + Z ile o komutu durdurduğunuzu zannediyorsanız, yanılıyorsunuz. Sadece Pause etmiş oluyorsunuz. (Aslında yapmanız gereken CTRL + C kombinasyonudur.)

CTRL + Z ile durdurduğunuzu sandığınız bir komuta devam etmek için ise fg komutunu yazabilirsiniz.
Komut kaldığı yerden çalışmaya devam edecektir.

denemek için sleep 10 yazın ve sonra 4-5 saniye sonra ctrl + z e basın. Sonra da fg yazıp enter’a basın.
göreceksiniz ki 5-6 saniye sonra komutunuz bitmiş olacaktır.

, , , ,

3 Yorum

midnight commander – mc – konsol tabanli klasor-dosya yoneticisi

Midnight commander linux sistemlerde çalışabilen konsol tabanlı bir programdır. dosya ağacını daha görsel bir ortamda gezebilmenize olanak sağlar. Sağ ve Sol 2 ekranda ayrı klasörleri gezip, dosya kopyalama klasör kopyalama vb gibi işlemleri yapmanıza olanak sağlar.

MC nasıl yüklenir?

redhat tabanlı sistemler için YUM paketi ile

yum install mc

diyerek, debian ubuntu tabanlılar için APT paketi ile

apt-get install mc

diyerek sisteminize yükleyebilirsiniz.

Centos ta yüklediğinizde her tarafın garip karakterler ile dolduruğunu görürseniz , muhtemelen putty üzerinden iletişim kuruyorsunuzdur. (şu linkte olduğu gibi)Böyle ise encoding ile ilgili bir problem var demektir. Bunu da putty ayarlarınızdan Traslation kısmında encoding’inizi UTF-8 yaparak düzeltebilirsiniz.

Ayrıca programın search, copy paste,vb gibi konsol tabanlı olmasına rağmen bir çok özelliğinin bulunduğunu da belirteyim. Bunları da kurcalayıp bulabilirsiniz. (programı açtığınızda f1,f2 gibi function tuşlarıyla ulaşabilirsiniz)

Bir de aynı şekilde mcedit programı var. Bunu da ayrı bir yazıda yazmak isterim.

Bu programı uzak bağlantı ve server ortamında bir şeyler ile uğraşan herkese tavsiye ederim.

, ,

2 Yorum

Linuxta bir klasordeki dosya sayisini bulmak

Çok basit bir komut ile linuxta bir klasör içindeki toplam dosya sayısını bulabilirsiniz.

$ ls -1 targetdir | wc -l
454

diğer bir alternatifi de şöyle :

 ls | grep -c ""

,

2 Yorum

Neden Ubuntu?

Uzun süre windows kullandıktan sonra ubuntuya acil geçiş yapan birisi olarak hem ‘neden ubuntu?’ olduğunu hem de ubuntu geçmişim çok eski bir tarihe dayanıyor olmasa da geçiş sürecinden kendim üzerinden bir kaç örnek verebilirim.

Çoğumuz windows kullandığımız için virüs programlarının bilgisayarı ne kadar kastığını biliriz. Linux tabanlı işletim sistemlerinde böyle bi sorun yok. Çünkü sistem dosyaları üzerinde işlem yapmaya çalıştığımızda bize yönetici şifresi sormakta. Windowsta herhangi bi program kurduğumuzda, o program bütün dosyalara erişebilir, değiştirebilir ve silebilir. Bilgisayarı restart yaptığımızda ise hiç hoş olmayan şeylerle karşılaşabiliriz. Ubuntuda ise virüsler kafalarına göre dosyalara erişemezler, çünkü yetkileri yoktur.

Açılış kapanış sürelerine de özellikle değinmek istiyorum. Windows XP, Windows Vista kullanmış ve Windows 7 kullanmaya devam eden biri olarak, şimdiye kadar 30 saniyede açılan bir windowsum olmadı. Ki bence öyle bir windows yok. Üşenmedim ve saniye tuttum, tek sefer de değil bir kaç kere denedim bunu, Ubuntu en kötü ihtimalle 35 saniye içinde kullanıma hazır hale geldi. Windowsun hazır hale gelmesi ise en az 1:30 ya da 2 dakikayı buluyor.

Windowsunuz eğer onarılamaz hale gelirse, format atmaktan başka çareniz kalmaz. Hepimiz illa ki formatlamışızdır kullandığımız windowsu çünkü bir süre sonra virüs, trojan, spy vs. bir sürü şey bulaştığında windows yavaşlar. Ubuntuda ise böyle bir sorun yok yukarıda bahsettiğim sebeplerden ötürü. Yani Ubuntu kurduğunuzda format gibi bir derdiniz olmaz.

Hiç windows ile Hata Raporu gönderdiniz mi? Microsoftun sınırlı sayıda çalışanı olduğu için dünyada milyonlarca insanın taleplerine geri dönüşleri doğal olarak çok geç olabiliyor. Ama Ubuntuda bir problem olduğunda, açık kaynaklı olduğu için tüm geliştiriciler aynı anda müdahale edebilirler. Tek bir satır kodun bile on binlerce belki de yüz binlerce kişi tarafından incelendiğini, onarıldığını düşündüğümüzde Ubuntunun ne kadar güvenli olduğunu da anlamış oluruz.

Bir de Driverlar var. Sürücüler. Yeni bir windows kurduğunuz zaman(önceki sürümler için), ekran kartı, anakart, ses kartı vs. bir sürü sürücüyü kurmamız gerekmekte. Kurulumu gerçekleştirdikten sonra da tabi ki Windowsu restart etmemiz gerekmekte. Microsoft artık buna yavaş yavaş çözüm bulmaya başlamış olsa da, araştırdıktan sonra öğrendim ki Ubuntuda bu yıllardır böyleymiş. Hala daha Windows için driver gereken şeyler olabiliyor, (VINN denilen tak-çalıştır cihazlar gibi).

Ayrıca bilgisayarınıza bir şey yüklemek istediğiniz zaman internette aramanıza gerek yok. Ubuntu Software Center ile istediğiniz şeye rahatça ulaşıp anında bilgisayarınıza kurabiliyorsunuz. Windowstaki gibi internette saatlerce arayıp crackleme derdi yok.

Windowstaki Windows Update, sadece işletim sisteminin güncellemeleriyle ilgilenir. Kullandığınız herhangi bi programın updatei geldiği zaman da(microsofta ait olmayan), özel olarak o programı update etmeniz gerekmektedir. Ubuntuda ise Update Manager, gerekli tüm güncellemeleri tek tık ile yapmakta. Hatta, Ubuntunun son sürümüne de tek bir tık ile geçtim dakikalar önce.

Ram kullanımı da bir çok kullanıcı için önemlidir. Kullandığım Windows 7 (64 bit), bilgisayar açıldığında sistem hazır halde beklerken yaklaşık 1.1 GB ram kullanmakta. Ubuntu ise yine yaklaşık olarak 300-400 MB arasında ram kullanmakta.

Yine genel olarak bilgisayarlarımız windowsun herhangi bir sürümü kurulu olarak gelir. Biz aslında farkında olmadan işletim sistemine para vermiş oluruz. Ubuntu ve linux kaynaklı işletim sistemleri ücretsizdir. Hatta daha yeni çıkan Ubuntu 12.04 LTS burada. Windowstan vazgeçemem diyenler için Wubi.exe şiddetle tavsiye edilir :)

Hiç mi dezavantajı yok Ubuntu’nun?

Var elbette. Ama size bağlı. Eğer oyunlarınızdan vazgeçemiyorsanız, ya da sadece windows üzerinde çalışan uygulamaları kullanmaya mecbursanız (adobe photoshop, autocad benzeri), windows ile kalabilirsiniz, ama bu sizin bilgisayarınıza ayrıca Ubuntu kurmanıza engel değil. Ayrıca yıllar ilerledikçe sadece windows üzerinde çalışan her uygulamanın Ubuntu için alternatifleri çıkmakta. Bir kaç örnek için buraya bakabilirsiniz.

Yaklaşık 5 aydır bilgisayarımda iki işletim sistemi var, Windows 7 ve Ubuntu. Mecbur kalmadıkça windowsa geçmiyorum, aslında pek mecbur da kalmıyorum. Tabi ki kullanımla alakalı büyük ölçüde. %70 Ubuntu, %30 Windows diyebilirim kullanım oranlarım için şu anda.

Windows daha çok son kullanıcıya yönelik olduğu için insanları cezbediyor. Live Messenger ve Gtalk yerine Empathy kullandığım zamanlar, ilk başta tuhaf gelmeye başlamıştı ama artık diğerleri garip gelmeye başladı. Gwibber gibi bir uygulama da mevcut. Şöyle ki, facebook ve twitter benzeri sosyal ağlarınızı bağlayıp tek bir akış yaratabiliyorsunuz. Bildirimleri de isteğinize bağlı olarak masaüstünüzde görebiliyorsunuz. Korkmayın Ubuntu’dan :)

, , , , , ,

3 Yorum

winsat.exe yi kapatmak

Winsat exe, windows 7 de performans ölçen bir programdır. Bilgisayarım’a sağ tıklayıp özellikler kısmından manual olarak çalıştırabilceğiniz bu program, varsayılan olarak bir görev zamanlayıcıya bğalı olarak da çalışmaktadır.

Donanımınızda bir değişiklik vb yaptıysanız da, bu otomatik çalıştırıcı devreye girer (pazar günler gece saat 1.00 a programlanmıştır) çalışır, birden bir virüs gibi tüm bilgisayarınızın kaynaklarını kullanarak sizi tedirgin edebilir.

Bunun otomatik açılmasını kapatmak için de aşağıdaki işlemleri yapabilirsiniz.

1-) Denetim masasına girip , “Görüntüleme Ölçütü” ‘ne basıp “Büyük Simgeler” ‘i seçip ” Yönetimsel Araçlar” ‘a tıklayın.

2-) Gelen menüde , “Görev Zamanlayıcı” ‘ya çift tıklayın.

3-) Açılan pencerede sol taraftaki “Görev Zamanlayıcı Kitaplığı” ‘na çift tıklayıp “Microsoft => Windows => Maintenance” seçeneğine tıklayın. Üstte , “WinSAT” ‘ı göreceksiniz. Sağ tıklayıp , devre dışı bırakın.

kaynak donanimhaber.

, ,

Yorum yok

Windows 7′de Önbelleğe Alınmış Belleği Boşaltmak – “virtualBox host memoryLow” Hatası

Windows 7 görev yöneticisine girip baktığımızda, performans tabı altında, Ram kullanımlarını görüyoruz. burada kullanılan, önbelleğe alınan (cached), boş, ve kullanılan ram miktarları görülüyor.

bende buradaki boş memor 40 MB a kadar indi. Tabi buna bir de VirtualBoxın windows 7 ile tam uyumlu olmaması ekleneince, önbellekteki rami’i de kullanamayıp, başlıkta adı geçen host memory low hatassı verip, virtual makineyi aniden durduruyordu.

yaklaşık 3 saat aradım ve http://technet.microsoft.com/en-us/sysinternals/ff700229 bu linkteli microsoft lanet programını buldum. ve oradan Beklemede olan rami temizle seçeneği ile önbelleğe alınmış ramlerimi hayatıma geri kazandırdım.

Trajikomik bir mutluluk içerisindeyim, benim gibi 3 saat uğraşan varsa, buyursun buradan indirsin kullansın. ara ara çalıştırın. amin.

, , , , , ,

2 Yorum

Linuxta Bash ile Döngü Örnekleri

Linux / Unix işletim sisteminde shell seviyesinde döngüleri nasıl yaparım?

2,3 Parametreli bir döngü algoritmasını nasıl yazarım?

Döngü demek , aynı işlemlerin veya birbirine çok yakın işlemlerin tekrar tekrar yapılması demektir. Peki Shell seviyesinde bu işlemleri nasıl yaparız?

Ön Not : bu kodları herhangi bir dosyaya yazıp daha sonra bu dosyayı sh komutu ile çalıştırırsanız da olacaktır. Ben bu şekilde deniyorum.

For döngüsü :

yazımda numaralı çalışma şekli aşağıdaki gibidir. Döngü 5 kere dönecektir. Ayrıca döngü içinde değişkeni de kullanabilirsiniz. Normal Bash yani.

#!/bin/bash
for i in 1 2 3 4 5 .. N
do
	echo "$i inci defa calisiyor"
done

Ayrıca aşağıdaki şekilde döngüdeki değişkeni örneğin 2şer 2şer artmasını sağlayabiliyorsunuz.

#!/bin/bash
echo "Bash versiyonu ${BASH_VERSION}..."
for i in {0..10..2}
  do
     echo "$i inci defa calisiyor"
 done

C stili for döngüsü :

#!/bin/bash
for (( c=1; c< =5; c++ ))
do
	echo "$c inci defa calisiyor"
done

Sonsuz Döngü :

Önemli olarak demeliyim ki ; Sonsuz döngü kullanınca sistem kaynaklarını çok basit bir komutla tüketebilirsiniz. Bu yüzden burada sleep komutu koyup işleminizi en azından saniyede 1 yapmanızda yarar var.

#!/bin/bash
for (( ; ; ))
do
   sleep 1
   echo "sonsuz dongu [ cikmak icin CTRL+C yapınız. ]"
done

Duruma bağlı döngüler, (break komutuyla birlikte )

Aşağıdaki kod, /etc/ dizinindeki tüm dosyaları okuyup bunları bir dongu halinde gezer. dogru dosyayı bulunca , istdigi islemi yapar (dosyanin icinde kaç tane nameserver varsa bunları listeler) ve donguden cıkar.

#!/bin/bash
for file in /etc/*
do
	if [ "${file}" == "/etc/resolv.conf" ]
	then
		countNameservers=$(grep -c nameserver /etc/resolv.conf)
		echo "${file} dosyasında toplam  ${countNameservers} nameserver tanimlanmis"
		break
	fi
done

break, gibi yine continue özelliğini de kullanabilirsiniz.

Ayrıca döngüde if içinde döngü yapılan klasör içindeki dosyaadı.bak dosyayı varsa bir işlem yapmak istiyorsanız veya istemiyorsanız, (örnğein yedeği varsa yedeğini alma işlemini continue edebilirsiniz) döngüde aşağıdaki if komutunu kullanabilirsiniz.

#!/bin/bash
FILES="$@"
for f in $FILES
do
        # dosyaadı .bak yedek dsoyası varsa, diğer dosyaya geç
	if [ -f ${f}.bak ]
	then
		echo "$f dosyasini atliyoruz..."
		continue  # sonraki dosyayı okuması icin cp komutunu geçiyoruz.read next file and skip cp command
	fi
        # bu noktada yedek dosyanin olmadigi durum algilandigindandosyayı kopyalamak icin cp komutu kullaniyoruz
	/bin/cp $f $f.bak
done

Ekstra olarak da farkettiğiniz gibi, bir bash dosyası içinde yorum eklemek istiyorsanız başına # koymanız da yeterli. Umarım işinize yarar.

, , , , , , ,

5 Yorum

windows sembolik link olusturma (symbolic link)

Daha önceki bir yazımda sembolik link kavramını ve linuxta sembolik link oluşturmayı anlatmıştım. (İlgili yazı için tıklayınız.)

Şimdi de windows üzerinde bu işlemi nasıl yapacağınızı göstermek istiyorum.

Başlat->çalıştır->cmd yazıp enter’a basınız. (veya windows + R ye basınız ve cmd yazıp enter’a basınız.)
Siyah komut ekranınızın açılmış olması gerekiyor ve ekranda C:\Windows\System32> yazması gerekiyor.

Eğer yazmıyorsa C:\Windows\System32 klasörüne gitmeniz gerekiyor. (sırasıyla c: yazıp enter’a, cd Windows yazıp enter’a sonra da cd System32 yazıp enter’a basınız.)

daha sonra yapacağımız işlem ise yine Linux’takine çok benzer ama argümanları tam tersi : ilk parametre linkin bulunacağı adresi, 2. parametre ise ana dosyayı veya klasörü işaret ediyor.

C:\Windows\system32>mklink D:\linkin\bulunacagi\klasor\deneme.txt D:\ana\dosyanin\klasoru\deneme.txt

Burada linuxtan farklı olarak bir durum daha var. Klasör linklemek istiyorsak bir parametre daha (/D parametresi) eklememiz lazım. Bu işlem de şöyle oluyor :

C:\Windows\system32>mklink /D D:\deneme\link D:\ana\klasor

Umarım işinize yarayacaktır.

Not : Windows 8 de denemedim, deneyen varsa bizimle paylaşırsa sevinirim.

, , , , ,

4 Yorum

linux sembolik link nedir linux sembolik link olusturma (symbolic link)

Sembolik bağ (symbolic link) Nedir?

İşletim sistemlerinde her dosya bir dizinin (klasörün) içindedir. Bizim dosyamız bir klasörün içinde bulunuyor ve aynı zamanda farklı bir klasörde daha olmasını istiyorsak, ama bunu yaparken dosyanın kopyalarını oluşturmak istemiyorsak, (sadece oradan da erişilebilmesini istiyorsak) dosyayı diğer klasöre kopyalamak yerine sembolik bağ (symbolic link) oluşturabiliriz. Böylece tek dosya olmuş olacak (değişiklik yapıldığında her yere tek tek kopyalamak zorunda kalmayacaksınız) hem de diğer link oluşturulan yerlerden de erişim verebilmiş olacaksınız. Disk maliyeti de daha düşük olacaktır.

Sembolik link ile klasörleri de linkleyebilirsiniz. Bu sayede bir sürü link oluşturmanız gereken durumları da sürklase etmiş olursunuz.

Linux için sembolik link oluşturma şöyle yapılır :

ln -s /dosyanin/bulundugu/dizin/dosya.txt /linkin/olusturulacagi/dizin/dosya.txt

Aynı şekilde linklemenin bir klasör için de yapabileceğinizi belirtmiştim yukarıda. Dosya adı yerine klasörü kullandığınızda da klasör için linkleme yapmış olursunuz.

Özellikle sunucularda, paket program mantığında çokça kullanabileceğiniz bu işlem ile, 200 Account olan bir serverda kaynak dosyalardan dolayı oluşan disk maliyeti 1/200 oranına azalmış olacaktır. yani %99,5 avantajlı olacaksınız. Dosya okuma hızı konusunda da avantajlı olacaksınız. Çünkü işletim sistemi (günümüz işletim sistemlerinin hemen hepsinde var bu) sürekli kullanılan dosyaları önbelleğine alacaktır. Ama siz dosya okuma konusunda daha da hız istiyorsanız, bu konuya farklı bir yazıda değineceğim. (Bu konuda bir kaç şey daha yapılabilir.)

, , , , ,

8 Yorum