Linux

Ubuntu Server İşletim sistemi Update ve Upgrade İşlemleri

0

Merhabalar, Öncelikle burada anlatacağım upgrade Ubuntu server 13.04 den 13.10’a ve ardından 14.04’e upgarde yapılmaktadır.

Upgrade ve Update işlemlerinde dikkat edilmesi gereken hususlar;

1. Öncelikle “#lsb_release -a” komutla server işletim sisteminizin sürümünü öğreniniz. Ardından “#aptitude update” komutu ile var olan sürümün updatelerini yapınız. Sonra “#aptitude upgrade” komutu ile ilgili sürüm için var olan update paketlerini bilgisayarınıza yükleyiniz.

2. Server işletim sisteminizin sürümünü upgrade etmek için “#do-release-upgrade” komutunu kullanınız. Bu komutu çalıştırdıktan sonra size yeni paketlerle eski paketler arasında nasıl bir işlem yapmanız gerektiğini soruyor. Aşağıda örenk bir çıktı veriyorum.

Configuration file `/etc/default/rcS’
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer’s version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** rcS (Y/I/N/O/D/Z) [default=N] ?

Burada genelde “D” ile çok hayati bir servis kaldırılacak mı? yada değişecek mi? buna bakarak not edebilir daha sonradan o paketlerin içeriklerini elle değiştirirsiniz. Aşağıda “d” basılarak ekrana gelen çıktı paylaşılmaktadır. Bu ekrandan çıkmak için “q” basınız.

*** limits.conf (Y/I/N/O/D/Z) [default=N] ? d
— /etc/security/limits.conf   2013-09-13 14:02:26.185506945 +0300
+++ /etc/security/limits.conf.dpkg-new  2014-02-01 00:21:09.000000000 +0200
@@ -6,7 +6,7 @@
 #
 #Where:
 #<domain> can be:
-#        – an user name
+#        – a user name
 #        – a group name, with @group syntax
 #        – the wildcard *, for default entry
 #        – the wildcard %, can be also used with %group syntax,
@@ -54,6 +54,3 @@
 #@student        –       maxlogins       4
 
 # End of file

-*      soft    nofile  16384
-*      hard    nofile  16384

Y” girerek enter tuşu ile yeni paketleri yüklemesini isteye bilirsiniz(Ben böyle yapıyorum sizler farklı atraksyonlar deneybilirsiniz).

Bu kurulum tamamlandıktan sonra server kendini kapatıp yeniden başlatacaktır. Bu işlemlerden sonra ubuntu server işletim sisteminiz 13.10’a yükselmiş olacaktır.

Tecrübe: Upgrade esnasında yanlışlıkla terminali kapatırsanız ilgili ekrana ulaşmak için “screen” komutu kullanılabilir. Fakat ben screen komutunun argümanlarını kullanarak ilgili ekrana ulaşamadım. “cd /var/run/screen/S-root/” klasörü içerisine girdim. “ls” komutu ile dosya içerisini görüntüledim. Burada görüntülenenler açık olan screenların dosyası bunları silerseniz açık sanal terminal penceresi kalmaz. Bunun için “rm -rf dosyalardan birinin adını yazınız” tek tek bu klasör içini temizledikten sonra konsolda “screen -ls” komutunu verince ekranda “hiç sanal pencere olmadığı” mesajını alacaksınız.

Upgrade işlemine devam etmek için terminale “aptitude update”  yazınca upgrade yada update yapmadı. Bunun için terminal ekranına “dpkg –configure -a” dedikten sonra sırayla “aptitude update” ve “aptitude upgrade” yazınca update ve upgrade işlemleri kaldığı yerden devam edecektir.

 

screen ile ilgili birkaçtane link:

Link1…

Link2…

screen ile ilgili Murat ÖZALP hocanın kısa anlatımı.(Benim için açık ve anlaşılır olduğu için yazmak istedim)

Basitçe şöyle:

  • SSH oturumu açınca, screen yazıp enter’a basın. gelen pencerede bilgi verecek. enter ile kapatın.
  • derleme işlemini başlatın.isterseniz arka planda (sonuna & koyarak), isterseniz ön planda başlatın.


Ayrılmak için:

  • 1. ihtimal: ssh penceresini doğrudan kapatabilirsiniz.
  • 2. ihtimal: ctrl+A bastıktan sonra d tuşlayarak detach edebilirsiniz.


Yeniden SSH bağlantısı kurduğunuzda, yeniden eski oturumu devam ettirmek için:

  • screen -ls komutu ile arka planda çalışan screen oturumlarını görebilirsiniz.
  • herhangi bir oturumu mevcut ekrana getirmek için, screen -r oturum_adi komutunu verebilirsiniz.

 

Son NOT: “aptitude upgrade” ve “aptitude update” komutları server işletim sisteminizin mevcut sürümdeki update paketlerini bilgiayarınıza indirir ve yükler, serverın işletim sisteminizi yükseltmek için “do-release-upgrade” komutu kullanılır.

 

Kubuntu’ da Dil Problemi Çözümü

0

Kubuntuyu ingilizce olarak kullanıyorum. 13.10’dan 14.04’e yükseltme yaptığımda bütün dil ayarlarım bozuldu (Artık yükseltme yaparken bana sorduğu soru falan varsa dikkaet etmediğimden olsa). Sistem ile ilgili pencereler ingilizce, firefox, libreoffice vb. uygulamalar ise Türkçe oldu. Epeyce uğraştım hepsini ingilizceye çevirmeye ama beceremedim. Murat hocada zamanında uğraşmış ama sorunu çözmüş bende ondan öğrendim. Kubuntuda “Language Support” yok. Bu pencereyi sadece konsoldan çağırabiliyorsun;

#gnome-language-selector

Bu komutu terminalde çalıştırınca ekrana “Language Support” penceresi geliyor ve bazı diller yüklenemedi diye bir mesaj veriyor. Orada “tümünü yükle” dedikten sonra aşağıdaki gibi bir pencere gelecek. Bu pencerede işletim sisteminin hangi dil olmasını istiyorsan o dili mouse ile taşıyarak en üste süreklemeniz yeterli olacaktır.

Language Support Penceresi

LanguageSupport

Bazı Ubuntu Komutları

0

Ubuntu üzerinde çok sık kullanmadığım komutları bazen unutabiliyorum. Bazıları için bunlar basit gelebilir ama ubuntu’yu yeni kullanmaya başlayanlar için faydalı olabilir.

1. Kullanıcı parolasını değiştirme;

#passw

2. Bir dosyanın için açarak silmek yerine aşağıdaki kodla dosyayı açmadan içini boşaltabilirsiniz.

#cat/dev/null>/etc/su/su.txt

3. Bir dosyayı kopyalamak; Burada “dev”in altında bulunan  “deneme” adlı dosyayı “etc” altına “yedek” ismiyle kopyalamak.

#cp /dev/deneme /dev/yedek

4.Dosya sıkıştırma;

#zip -r deneme.zip /root/yedek (“yedek” dosyası deneme.zip olarak “zip” formatında sıkıştırılır)

#tar cvzf deneme.tar.gz /root/yedek  (“yedek” dosyası deneme.tar.gz olarak “tar.gz” formatında sıkıştırılır)

#tar cvzf deneme.tar.bzz /root/yedek  (“yedek” dosyası deneme.tar.bzz olarak “tar.bzz” formatında sıkıştırılır)

#tar cvzf deneme.tar.z /root/yedek (“yedek” dosyası deneme.tar.z olarak “tar.z” formatında sıkıştırılır)

4. Sıkıştırılmış dosyayı açma; (cvzf deki c’yi x yaparsan dosyayı açarsın)

#tar xvzf deneme.tar.gz

5. Kullanıcıya “root” yetkisi verme; (“su” kullanıcısını “admin” grubuna dahil ederek “root” yetkisi veriliyor.)

#vsermod -a -G admin su

6. Uzaktaki Linux bilgisayardan kendi bilgisayarına dosya çekme. Bunun için “scp” komutu kullanılır. genel kullanım şekli “#scp

kaynak bilgisayarın kullanıcı adı @ kaynak bilgisayarın IP adresi ://kopyalanacak olan dosyanın bulunduğu yer / dosyanın kendi bilgisayarında kopyalayacağın hedef”

#scp root@192.168.2.122://root/etcYedek/etc.20130924.tar.gz /home/su

7. Çok hızlı veri kopyalama;

#dcfldd if=/dev/su/deneme of=/dev/su/test

8. Ubuntu terminalindeyken sanal ekranlar açma ve “screen” komutu ile ilgili bilgiler;

#screen -ls (Açık konumda olan sanal konsolları gösterir)

cd /var/run/screen/S-root/” Klasörü içerisine girerek  ” #rm -rf hostname ” komutunu vererek açık olan bütün sanal pencereleri kapatabilirsiniz.

İnternette yazılı olan başka komutlar var ama denedim olmadı yada ben beceremedim. Açık olan sanal pencerelerin hepsini ben bu şekilde sonlandırdım.

9. Ubuntu server üzerinde bulunan bütün donanım bilgilerini detaaylı bir şekilde terminalde görüntülemek için;

#lspci -v

10. .txt dosyası içerisindeki 1. sutunu alma ve başka bir .txt dosyasına yazdırma;

# cat yazılımlistesi.txt | awk ‘{print $2;}’
#cat yazılımlistesi.txt | awk ‘{print $2;}’ > yazılımlistesi-sade.txt 

Linux Ethernet Arayüz Birleştirme (BONDING)

0

Linux Ethernet Arayüz Birleştirme (BONDING)

Linux makinelerde ethernet arayüzlerini birleştirme işlemi yapılabilmektedir. Buna genelde “bonding, trunk, etherchannel” gibi isimler verilmektedir. Arayüzleri birleştirme işlemi sistemin ağ performansını arttırmak için yapılabileceği gibi yedeklilik, sürdürülebilirlik için de yapılabilir.i

Burada çift ethernete yüklerin paylaşımını sağlayan mode=2 kullanılacaktır. Mode larla ilgili daha ayrıntılı bilgi almak için;

—-> modinfo bonding

Bonding yapma aşamaları aşağıda anlatılmıştır;

  1. Öncelikle bonding işlemini yapacak olan “ifenslave-2.6” programı bilgisayara kurulur, bunun için;

    —-> aptitude install ifenslave-2.6

  2. “/etc/modules” dosyası içerisine “bonding” satırı eklenmeli bunun için;

—-> pico /etc/modules

2

  1. Network servisi durdurulur.

—-> stop networking

  1. Bondingi ayarlayabilmek için komut satırında aşağıdaki komut çalıştırılır.

—-> modprobe bonding

  1. “/etc/network/interfaces” dosyası içerisine aşağıdaki resimde görülen ayarlar yazılır.

—-> pico /etc/network/interfaces

  1. Network servisi yeniden çalıştırılır.

—-> start networking

  1. Şimdi bonding’ in çalışıp çalışmadığını denemek için komut satırına;

—-> cat /proc/net/bonding/bond0

Aşağıdaki resimlerde görülen sonuçları alıyorsanız bonding başarılıdır.

3

4

Birleştirme Çeşitleri:i

mode olarak geçen birleştirme çeşitleri şöyledir:

  • mode=0

Round-robin, yani çalışan arayüzlere sırası ile göndermektedir. Yük paylaşımı ve hata toleransı sağlar.

  • mode=1

Aktif-yedek mantığı ile çalışır. Sadece bir arayüz aktiftir. Diğerleri sadece ve sadece asıl olan çalışmaz ise devreye girer. Hata toleransı sağlar.

  • mode=2

[(Kaynak MAC adresi XOR hedef MAC adresi) % arayüz sayısı] algoritmasına göre paketleri gönderir. Böylece her hedef için aynı arayüzü seçmiş olur. Yük paylaşımı ve hata toleransı sağlar.

  • mode=3

Broadcast çeşididir. Tüm paketleri tüm arayüzlerden gönderir. Hata toleransı sağlar.

  • mode=4

IEEE 802.3ad Dynamic link aggregation. Belirtilen standarda göre çalışır. Çalışması için sürücülerinin ethtool desteğinin olması gerekir. Ayrıca anahtarlama cihazı üzerinde de 802.3ad ayarlarının yapılması gerekir.

  • mode=5

Bu modda ise toplam yük her arayüzün kendi yüküne göre paylaşılır. Her arayüzün yükü hızına oranla ölçülür. Gelen trafik aktif ilk arayüz tarafından alınır. Eğer bu arayüz çalışmaz ise herhangi diğer bir arayüz aynı MAC adresi ile işlemi devralır. Çalışması için sürücülerinin ethtool desteğinin olması gerekir.

  • mode=6

Bu modda ise hem gidiş hemde geliş trafiği yük paylaşımı yapılır ve özel bir anahtarlama cihazı desteği gerektirmez. IPv4 üzerinden bu işlemi gerçekleştirir.

Iptables ve Ubuntu ile ilgili birkaç örnek komut

1

Ubuntu ile yeni çalışmaya başlayan biri olarak bazı komutların kafamda yerleşmesi için yazmam gerekiyor(Yoksa sürekli elimin altında bu tip komutları yazdığım ajandamda aramak çok zor oluyor.). Aşağıda sık kullandığım ubunutu komutları bulunmkatadır. Ayrıca Iptables yapılandırmasını da ilkdefa yaptığım için onunla ilgili kullandığım komutlarda bulunmaktadır.

Ubuntu’ yu yeni kullanan biri olarak tavsiyem ubuntu diğer işletim sistemlerine göre daha zevlikli, komut satırında kodlar yazarak işlem yaptığımızdan olsa gerek sanki daha kararlı gibi geldi bana. Beni ençok heyecanlandıran tarafı yeni birşey yapmak istediğinizde acaba şöyle bir komut yazsam nasıl olur diye denediğinzde ve onun çıktısını aldığınızda istediğiniz işi yerine getiriyorsa o anki mutluluk ve hazzı tatmanızı isterim.

Ubuntu ve İptables Komutları

Ubuntu Komutları

pico: bir dosya içeriğini düzenlemek için kullanılır.
—-> pico /etc/dhcp/dhcpd.conf

Ubuntu da bir dosyayı sıkıştırmak için;
—-> tar -cvzf linux-atc.tgz /etc /etc

# “linux-etc” dosyasını sıkıştırarak yine etc klasörü içerisine kaydediyor. -cvzf eklentilerinin anlamı; -c: Create (-t: Test), -z: Sıkıştır -v: Verbose, -f: Filename
Not: Sıkıştırılmış dosyayı açmak için sadece -cvzf parametresi “-xvzf” olmaktadır. -x: Extarct

—->tar -xzvf linux-etc.tgz

Sıkıştırılmış bir dosyayı ağ üzerinde başka bir bilgisayara göndermek için;(Bura “scp(Secure Copy)” komutu kullanıldı. Bu komutu dosya boyutunun çok büyük olduğu ve dosya içerisinde çok fazla dosya üzerinde değişiklik yapıldığı durumlarda kullanılır.
—-> scp linux-etc.tgz cak@192.168.9.3://home/cak/Desktop

#”linux-etc.tgz” dosyasını 192.168.9.3 Ip adresinde “cak” kullanıcısı içerisindeki “/home/cak/Desktop” a kopyalar.

Bilgisayarda yedek amacıyla, yüklü olan tüm paketlerin yedeğini almak için;
—-> dpkg-query -l | awk ‘{print $2};’ > Yuklu_Paketler.lst

#Yüklü olan tüm paketleri gösterir(dpkg-query -l | awk ‘{print $2};’) sona eklenen komutla beraber “Yuklu_Paketler.lst” dosyasına bu paketleri kopyalar. Bizler daha sonra bu dosyayı sıkıştırarak kendi bilgisayarımıza kopyalaya biliriz.

Aşağıdaki komut bilgisayarda haftada en az bir kez çalıştırılmalıdır. Dosya indexlerini güncelleme. (Arama yaptığımızda ve sync konumutunu kullandığımız zaman hız artışı sağlar.)
—-> updatedb

Arama komutları;(“find” arama komutu çok yönlü bir komuttur, bu araştırılarak detayları ilerleyen zamanlarda yazılacaktır)
#”/etc” klasörü içerisindeki “rc.local” adındaki dosyaları bul.
—-> find /etc –name rc.local

—-> komut satırındayken “Ctrl+R” kombinasyonunu kullanarak aradığınız kelimeyi yazarak bulabilirsiniz.

ÖNEMLİ NOT: Ubuntuda tarihleri amerikan formatta (YIL-AY-GÜN) yazmaya özen gösterilmelidir. Aramalarda bu önemli olmaktadır.

Ubuntu üzerinde hangi portların dinlendiğini öğrenmek için;
—-> netstat -antulp

Dosya kopyalama:

# dhcpd.conf dosyasının aynı klasör içinde bir kopyasını oluşturduk.

—-> cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.yedek

Bit stream kopyalama:

—-> dd if=/dev/sda of=/deb/sdb
# if(input file) ile belirtilen alanda kopyalamak istediğimiz volume, dosya vb yazılır. of(ouputfile) kısmında da yazma işleminin nereye yapılacağı belirtilir. Direk fiziksel veya mantıksal bir sürücü üzerine yazım yapılabileceği gibi dosya formatında da çıktı yapılabilir. (of=/etc/yedek/windows.img)

İptables Komutları

İptables ile ilgili arama ip uçları: iptables hardening, iptables scripts, iptable example, iptables scripts.

Squid3 uygulamasını kurmak için;(Bilgisayarınızda aptitude kurulu değilse “apt-get aptitude install” derseniz kurarsınız.)
—-> aptitude install squid3

Sarg raporlama aracını kurmak için;

—-> aptitude install sarq

Squid Sarg’ı otomatik olarak çalıştırmak için crontab kullanılır:

# Periyodik yapılan işlemler için kullanılan crobtab’ı görüntülemek için kullanılır.

—-> crontab -l

Açılan ayar dosyasının sonunna Sarg ile ilgili satır eklenir:

# crontab içine yazılacak “*/5 * * * * /usr/bin/sarg >/dev/null 2>&1”
# 5 dakikada bir squid raporlama aracı sarg’i çalıştırır, hataları raporlamaz. Crontab’ ın içini düzenlemek için de;

—-> crontab -e

İptables üzerine yazılmış olan kuralları görüntülemek için;
—-> iptables-save

Go to Top