Ana Sayfa » *nix » Clonezilla Server – Bölüm 2: Backup ve Restore İşlemleri Nasıl ?

Clonezilla Server – Bölüm 2: Backup ve Restore İşlemleri Nasıl ?


BerbatKötüİdare EderGüzelHarika (Toplam 5 oy. 5 puan üzerinden ortalama 5,00 || Oy vererek siz de katkıda bulunabilirsiniz.)
Loading...

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYzH171i' (Errcode: 28 - No space left on device) in /usr/share/nginx/html/syslogs/wp-includes/class-wpdb.php on line 2349

Clonezilla Server ile ilgili dökümanın ikinci bölümü olan bu sayfada, network üzerindeki herhangi bir bilgisayarın disk image'lerini Clonezilla aracılığı ile backuplama ve restore etme işlemlerinin nasıl yapıldığı anlatılacaktır.

Kurulumun nasıl yapıldığı dökümanın birinci bölümünde anlatılmıştır.İlgili sayfaya buraya tıklayarak ulaşabilir ve Clonezilla Server kurulumunu yapabilirsiniz.

Şimdi elimizde birinci bölümde anlatılan şeklde kurulmuş bir Clonezilla sunucusu var. Öncelikle, networkteki client bilgisayarlardan birinin full disk backup'ını alalım, sonrasında da ilgili makinenin sistem dosyalarını silecek ve işletim sistemini çökerttikten sonra restore işlemi yapıp client'ı yeniden eski haline getireceğiz.

Bir client'ın backupını alabilmek için ilgili client'ın MAC adresi ve DHCP tarafından atanacak IP adresi için bir iki küçük ayarlama yapmamız gerekiyor. Şimdi bu işleri yapalım.

CLONEZILLA'YA MANUEL OLARAK CLIENT EKLEMEK


Client olarak ethernet yapılandırması aşağıdaki gibi olan bir CentOS 5.2 kullanacağım.
eth0      Link encap:Ethernet  HWaddr 00:0C:29:FC:C2:D4
          inet addr:192.168.10.220  Bcast:192.168.10.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fed7:2f4d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9108 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3257 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:754505 (736.8 KiB)  TX bytes:299355 (292.3 KiB)
          Interrupt:51 Base address:0x2000

192.168.10.0/24 networkü LAN'da kullanılıyor. Clonezilla ise servisleri 192.168.100.0/24 ip networkü için sağlıyor. Bu bilgisayara atanacak IP'yi 192.168.100.220 olacak şekilde ayarlayacağım. Bu şekilde LAN'da kullandığı gerçek IP'deki gibi sonu 220 ile biteceği için karışıklığa da sebep olmayacak.

DHCP ayarlarından önce DRBL ile ilgili ayarları yapalım.

/etc/drbl dizini altında bulunan IP_HOST_TABLE dosyasını editleyin.

# vi /etc/drbl/IP_HOST_TABLE

Bu dosya içerisinde aşağıda görüldüğü üzre Hostname ve IP bilgileri tutuluyor.

# Created by DRBL (drblpush), begin
192.168.100.10 Clonezilla0-110
# Created by DRBL (drblpush), end

CentOS client'a ait satırı girelim.

# Created by DRBL (drblpush), begin
192.168.100.10 Clonezilla0-110
192.168.100.220 CentosZilla
# Created by DRBL (drblpush), end

/etc/drbl dizini altında editlenerek satır eklenmesi gereken bir dosya daha var. Gerçi şart değil ama ileride bir daha drblpush -i işlemi yaparsanız bu lazım olacaktır. O nedenle ekleyelim.

# vi /etc/drbl/macadr-eth0\:1.txt

Bu dosyada sadece clientların MAC adresleri tutuluyor. Aşağıdaki gibi Centos'a client'a ait MAC adresini ekleyelim.

00:11:d9:57:e4:e7
00:0C:29:fc:c2:d4

İlgili drbl dizini altındaki tüm dosyalara gerekli kaydı ekledik.
Not: Aynı dizinde bir de HOST_MAC_TABLE isimli bir dosya daha var; ancak bunu editlemiyoruz. Zira DRBL birazdan ayarlarını yapacağımız dhcpd.conf dosyası içerisindeki ilgili satırları parse ederek bu dosyaya kendisi ekleme çıkarma işlemi yapıyor. O nedenle dokunmuyoruz.

Şimdi, DHCP'nin conf dosyasında MAC adresine göre IP atanması için gerekli olan satırları ekleyelim.

subnet 192.168.100.0 netmask 255.255.255.0 {
    option subnet-mask  255.255.255.0;
    option routers 192.168.100.254;
    next-server 192.168.100.254;

    host Clonezilla0-110 {
        hardware ethernet  00:11:d9:57:e4:e7;
        fixed-address 192.168.12.10;
        # option host-name "Clonezilla0-110";
    }
    host CentosZilla {
        hardware ethernet  00:0C:29:fc:c2:d4;
        fixed-address 192.168.100.220;
        # option host-name "CentosZilla";
    }
}

Görüldüğü gibi DHCP sunucusu 192.168.10.0/24 subneti için hizmet vermek üzere ayarlanmış durumda; ve gene kurulum sırasında ethetnetten boot edilen ve bu şekilde DRBL tarafından MAC adresi öğrenilen bilgisayar için kayıt girilmiş durumda.

Biz kendi satırımızı da ekledik; dosyadan kaydederek çıkalım. Sonrasında da eklenen satırların devreye girmesi için DHCP servisini restart edelim.

# service dhcpd restart

Not: dhcpd.conf dosyası içerisinde ekleme işlemi yaparken formatın bozulmaması gerekir. Aksi taktirde dhcp servisi restart sırasında uyarı verecektir.

Son olarak hosts dosyasında da ilgili hostname ve IP kaydını girelim.

# vi /etc/hosts

Satırı ekleyin ve kaydedip çıkın.

192.168.100.254 Clonezilla-eth0:1
192.168.100.10 Clonezilla0-110
192.168.100.220 CentosClient

Client eklemekle ilgili olarak sunucu tarafında yapılması gereken işlemler bu kadar. Şimdi networkteki bir makine için yapılandırma işlemi tamamlanmış oldu. Bu şekilde backup/restore işlemi yapmak istediğiniz bilgisayarlar için kayıt girebilirsiniz. Her bilgisayar için bir kerelik kayıt girmek yeterlidir.

Şimdi bir backup görevi oluşturalım ve client'ı networkten boot ederek backupının alınmasını sağlayalım.

BACKUP İŞLEMİ – NASIL ?


Mantık şu şekilde, DHCP vs. ayarları yapılmış bir client'ı backuplamak (ya da restore etmek) için Clonezilla'nın bir scriptini çalıştırarak açılan grafiksel ekranda bir görev (job) oluşturuyorsunuz. Daha sonra ilgili client'ı network üzerinden ilk boot ettiğiniz zaman bu job devreye giriyor ve işlemi yapıyor. Bir defa job tamamlandıktan sonra, -yeni bir job oluşturmadıkça- client bilgisayarı ikinci kez networkten boot etseniz bile bir daha herhangi bir işlem yapılmıyor.

Şimdi bir backup job'ı oluşturalım.

Aşağıdaki komutu vererek ilgili grafiksel ekranı açın.

# /opt/drbl/sbin/dcs

Gelen ekran şu olacak.

select_client1

Bu ekranda, job oluşturmak istediğiniz client'ı seçiyorsunuz. Tüm clientlar için job oluşturabileceğiniz gibi şimdi bizim yapacağımız gibi belli clientlar için de yapabiliyorsunuz.
Resimde görüldüğü gibi “Part Select part of clients by IP or MAC address” seçeneğine gelin ve sonra OK diyin.

mac-ip

Bu adım, yukarıdaki resimde de görüldüğü üzere, clien'ti MAC ya da IP adresinden seçeceğimiz aşama. Ben üstteki seçenekten yani MAC adresinden seçiyorum. Siz de öyle yapın.

client-sec

Bu ekranda test client'ımız olan CentOS'u seçiyor ve OK diyoruz.

drbl-menu
Şimdi DRBL'nin ana menüsü geldi. Bu menüden clonezilla-start'ı seçeceğiz ve backup job oluşturmaya başlayacağız.

save-disk

Bu menüde backup mı restore mu yapacağımızı belirliyoruz. save-parts ve restore-parts sadece belirli disk partisyonlarını backuplamak ya da restore etmek için. save-disk derseniz tüm disk(ler) backuplanır; ki biz de tüm disk(ler)i backuplayacağız.

select-disk

Bu menü, image alınacak disklerin belirlenmesi ile ilgili. Eğer cliet bilgisayardaki disklerin adını biliyorsanız “Now_in_server” diyebilirsiniz. Ancak bunu bilmek pek mümkün olmayacağından ikinci seçenek olan “Later_in_client” diyelim. Bu şekilde, hangi disklerin image'inin alınacağı networken boot edilen client üzerinden ayrıca seçebileceğiz.

select-prog

Şimdiki adım, disklerin image'inin hangi clone programı ile alınacağı ile ilgili. Clonezilla içerisinde birden fazla clonelama programı bulunuyor. (ntfsclone, partimage,partclone vs) Hangi clone programınun kullanılacağı burada belirleniyor. Biz en üstteki seçeneği kullanacağız. Bu seçenekte, Clonezilla önce ntfsclone ile image alıp alamayacağına bakacak; eğer dosya sistemi NTFS desteklemiyorsa partimage ile almak isteyecek o da desteklenmiyorsa klasik dd komutu ile image alacak.)

select-options

Bu adımda, extra parametreler görünüyor. Biz hiç bir şey seçmeden devam edeceğiz. Ancak siz ihtiyacınıza göre bu extra parametrelerden yararlanabilirsiniz.

select-rebootDisk image işlemi bittikten sonra uygulanacak işlemi buradan seçiyoruz. Biz reboot seçeneği ile devam edeceğiz ve clonezilla image işini bitirince client'ı restart edecek.

select-compress

Backuplanacak image dosyasını sıkıştırmak isteyip istemediğimiz ve eğer istiyorsak hangi algoritma ile sıkıştırılacağını soran bu ekranda en üstteki -z1 seçeneği ile devam edip alınan image dosyasının gzip formatında sıkıştırılmasını belirteceğiz. (Not: Eğer diskiniz büyük ise en son seçeneği kullanıp herhangi bir sıkıştırma işlemi yapmayabilirsiniz; bu süreci hızlandıracaktır ancak image dosyası diğerlerine oranla daha büyük olacaktır.)

select-split

Son adım olan bu ekranda da bir başka ekstra parametre bulunuyor. Backuplanacak bölüm için birden fazla image dosyası oluşturulup tek bir volume altında toplanabilir. Her bir dosyanın size'ını burada belirtiyoruz. 0 dememiz durumunda split işlemi yapılmıyor. Biz 0 diyip devam edeceğiz.

Bu son adım da geçildiği zaman dcs isimli script gerekli job'ı oluşturacak ve aşağıdakine benzer bir çıktı verecek.

Now the clonezilla mode is: save-disk
Setting client as clonezilla-save-disk mode...Setting the TERM as xterm
*****************************************************.
*****************************************************.
start_ocs_service -t savedisk -o ask_user ask_user
clonezilla.lock dir: /var/lock/clonezilla
Starting the OCS service for node IP add. = 192.168.12.13
Starting the OCS service for node IP add. = 192.168.12.15
Setting the PXE clients to DRBL mode with label "Clonezilla: save disk
(choose later) as image (choose later)"...
Turn off all MENU DEFAULT in /tftpboot/nbi_img/pxelinux.cfg/default_skeleton...
Make "clonezilla" as default label in
/tftpboot/nbi_img/pxelinux.cfg/default_skeleton.
The MENU LABEL is "Clonezilla: save disk (choose later) as image (choose later)"
Generate the PXE config file for host 192.168.12.15 ... done!
Generate the PXE config file for host 192.168.12.13 ... done!
Client jobs are logged in '/var/log/clonezilla-jobs.log',
*****************************************************.
You are in clonezilla box mode!
*****************************************************.
*****************************************************.
Now set the client machines to boot from PXE or Etherboot (refer to
http://drbl.sourceforge.net for more details).
Then boot the client to make the template image!
Note: If the partition you want to save is NTFS filesystem,
it is recommended to defrag that partition first.
NOTE!
(1) If Etherboot is used in client machine, version 5.4.0 or newer is required!
(2) If the cloned OS is MS windows, and it fails to boot with error message like
"Missing Operating System" or "Invalid System Disk", then you can try to
(1) change the IDE harddrive setting in BIOS to use LBA mode instead of AUTO mode.
(2) Or you can try to use parameter -t1 when restoring.
Create specific config for PXE client.
Generate the PXE config file for host 00:0c:29:fc:c2:d8 ... done!
PS. Next time you can run this command directly:
/opt/drbl/sbin/drbl-ocs -b -q -p reboot -z1 -i 0 -h " 192.168.12.15 192.168.12.13"
-l en_US.UTF-8 startdisk save
done!

Yukarıda örneğini gördüğümüz çıktıda bahsedildiği üzere, Clonezilla client job'ı oluşturuldu ve ilgili bilgiler ekrana basıldı. Bunun yanı sıra bir iki de öneride bulunuluyor.

Mesela, eğer windows bir makinenin backup'ı alınacaksa öncesinden disk defragment işlemi yapılmasını öneriyor. Zira, yazının birinci bölümünde de bahsettiğim gibi clonezilla diskin sadece kullanılan bölümülerine ait disk blocklarını kopyalıyor. Bu nedenle öncesinde defrag edilerek disk blockları hizaya getirilmiş bir windows'a ait disk daha hızlı bir şekilde clonelanabilir.

Eğer client bilgisayarsa Etherboot kullanacaksanız -ki kullanmayacağız- Etherboot'un 5.40 ve üstü bir versiyon olması gerekiyor.

Eğer Windos OS'li bir client bilgisayarında “Missing Operating System” ya da “Invalid System Disk” gibi hata mesajları alınarak boot işlemi fail ederse
1 – BIOS'dan IDE harddiver ayarlını AUTO mode yerine LBA moduna çekin.
2 – Restore sırasında extra parameter kısmında da görülen -t1 parametresi ile restore işlemi yapın.

Son olarak, client tarafında bulunan ethernet kartı, DRBL tarafından deploy edilecek GBU/ tarafından default olarak tanınmıyorsa, clientın networkten boot edilmesi sırasında, ilgili driver'ın yüklenememesi nedeni ile “The driver of network card is NOT found! ” şeklinde bir hata alınması muhtemeldir .
Bu durumda izlenecek yollar şunlardır.

1 – DRBL sunucusunda herzaman en güncel kernel'i kullanın. (Biz şu an versiyon numarası 2.6.18-92.1.22.el5 olan en güncel kerneli kullanıyoruz.)
2 – Eğer güncel bir kernel kullanıyor ve halen sorun devam ediyorsa, demin de dediğim gibi kernel'in ilgili ethernet kartını default olarak tanımaması söz konusudur. Bu durumda, ilgili driver'e ait kernel modülünü sisteme yüklemek gerekmektedir. Ben bu soruna üzerinde Atheros(R) AR8121/AR8113 PCI-E Ethernet Adapter ve Marvell Yukon Ethernet Controller bulunan client makinelerde karşılaştım. Bu problemi nasıl çözebileceğiniz yazının en sonunda ki “Sorun Giderme” kısmında anlatılmaktadır.
3 – Eğer kerneliniz etherner driverini barındırmıyor ve sizde bu driveri manuel olarak yüklemek istemiyorsanız yapabileceğiniz son şey ethernet kartını değiştirmektir.

Neyse, son olarak aynı client bilgisayar bir daha backup job'i oluşturmak isterseniz, grafik arayüzünden aynı adımları geçmek yerine sisteme aşağıdaki komutu verebilirsiniz.

# /opt/drbl/sbin/drbl-ocs -b -q -p reboot -z1 -i 0 -h " 192.168.12.15 192.168.12.13"
 -l en_US.UTF-8 startdisk save

Not: komut tek satırdan oluşuyor.

Şimdi, job oluşturuldu. Artık ilgili client bilgisayarımızın BIOS'una gireceğiz ve “boot sequence” bölümünde ilk olarak boot birimini Network Kartı olarak ayarlayacağız. Bu şekilde bligisayarı açıp network üzerinden boot olmasını sağlayacağız.

Phoneix bir BIOS için ekran görüntüsü şöyle:

boot-menu

İlk olarak network kartı üzerinden boot edilmesi istendi.

save-exit

Save ederek BIOS'dan çıkıyoruz ve bilgisayar restart oluyor.

getdhcp

Görüldüğü gibi client DHCP sunucusundan 192.168.100.220 numaralı IP'yi aldı ve DRBL sunucusu ile iletişime geçti. Bundan sonra oluşturduğumuz backup job'ın görüntüleneceği bir DRBL menüsü gelecek.

drbl-menu

Görüldüğü gibi menü geldi ve ilk sıradaı save disk görevi 7 saniye saydıktan sonra (resimde 5) başlatılacak.

bootup

Şimdi client'in bir GNU/ dağıtımı ile boot edilme süreci başladı. Ekran görüntüsüne dikkat ederseniz, Clonezilla Box modu kullandığımızı ve /etc ile /var için DRBL sunucusu üzerindeki geçici dizinlerin kullanılacağını görebilirsiniz.

Ayrıca, DRBL sunucusu CentOS üzerinde çalıştığından dolayı clien'e deploey edilen GNU/ dağıtımı da CentOS oluyor.

Gerekli mount işlemleri ve ilgili servisler çalıştırılıyor. Şimdiki aşama imaj dosyasının adının belirlenmesi ile ilgili.

select-nameBackup disk image'i için öntanımlı olarak günün tarihi veriliyor. Ben CentosZilla-081227-img gibi daha anlaşılır isimler veriyorum.

Şimdi de hangi diskin backuplanacağını belirteceğiz.

select-client-disk

Hatırlayacağınız gibi, yukarıda DCS menüsünden job oluşturulurken hangi disklerin image'inin alınacağı konusunu client tarafında seçmek üzere ayarlamıştır. Şimdi o bölüme geldik. Benim örneğimde sadece bir disk var o nedenle direk bu diski seçerek ilerliyorum.

Hatırlatma: Eğer sadece bir disk üzerindeki belli bir partisyonu almak için DRC menüsünden job oluştururken save disk yerine save parts'ı seçmeniz gerekir.

Bu son adımda, OK dediğiniz zaman diskin image alınması işlemine başlanacak.

start-backup

Görüldüğü üzere, diskin imajı alınmaya başlandı. Diskin toplan ebatı 4GB ve bunun 1.3GB'ı kullanımda, Clonezilla dakikada 178MB hızla işlemi gerçekleştiriyor ve yaklaşık olarak 8 dakika içerisinde işlemi sonlandıracak.

İşlemin neden bu kadar yavaş olduğu dikkatinizi çekmiştir. Bu noktada bir iki açıklama yapaım.

1 – Backup/Restore işlemi için kullanılan CentOS client, bir WMware sunucusu üzerinde bulunan guest işletim sistemi. Bu nedenle kaynakları oldukça sınırlı. Özellikle, test için kullandığım VMware server oldukça mütevazi (hatta epey mütevazi) bir donanıma sahip ve üzerinde bir çok guest OS daha kurulu. Bu nedenle disk I/O konusunda epey performans yoksunu. Durum böyle olunca da Clonezilla kullanılan disk bloklarını hızlı bir şekilde okuyamıyor ve bu da işlemin yavaşlamasına neden oluyor.

2 – Yavaşlamaya sebep olan bir diğer önemli unsur ise DCS menüsünden job oluştururken, alınan image dosyalarının gzip algoritması ile sıkıştırılmasını belirtmiştik; bunun da ciddi anlamda bir maliyeti bulunmakta.

Örneğin, aynı diski gzip ile sıkıştırarak aldığım da toplam olarak 6.433 dakikada işlem tamamlandı. Fakat sıkıştırma yapmadan aldığımda ise 5.038 dakikada tamamlandı. Dolayısı ile sıkıştısma işlemi bana %25 civarı bir performans kaybına mal oldu. Ancak aceleniz yok ve diskiniz de genişse sıkıştırma işlemi yapmanızın bir zararı olmaz.

Yeri gelmişlen aynı diskin image dosyasının sıkıştırılmış hali ile sıkıştırılmamış halinin ebatları şu şekilde:

Sıkıştırılmamış image: 1.3GB
Gzip ile Sıkıştırılmış image: 379MB

3 – Bir diğer konu ise networksel olarak bandwidth ile alakalı. Hem drbl sunucusunda hem de client olarak kullanılan diskler sıradan IDE diskler olduğunu düşünelim ve client ile DRBL sunucusu arasındaki data transferinin sıralı (sequential) okuma ve yazma olduğunu hesaba katalım. Hemen hemen IDE diskler için sıralı yazma ve okuma kapasitesi saniyede ortalama 50 MB civarındadır. Her iki noktayı da tam kapasite çalışıyor düşünürsek, saniyede 50MB yazma/okuma için gerekli olan bandwidth 400 Mbps'dir. Bu hıza çıkabilmek için de stabil bir networkünüz olmalı ve tabii switchleriniz ile bilgisayarlarınızın ethernerleri 1Gbps değerinde olmalıdır. 100Mbps'lik bir network için ulaşabileceğiniz maximum değer ise 12.5 MBps'dir. Dolayısı ile Clonezilla'nın hızıyla alakalı olan bir diğer konu budur.

Backup işlemine ve performans ile ilgili konulada değindikten sonra client olarak kullandığımız client bilgisayarı çökertelim ve açılamaz hale geldikten sonra clonezilla server'dan disk image'ini restore eski haline getirelim.

RESTORE İŞLEMİ – NASIL ?


Şimdi üzerinde CentOS kurulu client bilgisayarın/etc dizinini siliyorum ve reboot ediyorum. (Bunu evde denemeyin :) )

crush

Elbette komut satırından reboot edilemez hale geliyor :) Restart tuşundan reboot edelim.

crush1
Tabii ki açılmıyor.

Elimizde çökmüş bir client olduğuna göre bu makine için şimdi Clonezilla Server'dan bir restore job'ı oluşturacağım. Bu konuyu uzun uzadıya anlatmayacağım çünkü backup işlemi için yapılanlarla benzerlik taşıyor.

Sadece /opt/drbl/sbin/dcs komutu ile DRC menüyü açacağım, client'ı seçeceğim clonezilla-start diyeceğim ve gelen menuden extra options bölümleri pass geçtikten sonra gelecek olan ekrandan restore-disk seçeneğini seçeceğim. Daha sonra da dönmek istediğim image dosyasını belirteceğim. Son olarak restore mode'unun ne olacağını soran ekran gelecek, burada sadece tek bir makineye restore işlemi yapacağım için unicast seçeneğinden gideceğim.
Hepsi bu.

İşte aynı işlem için daha sonra kullanılmak üzere gereken komut:

# /opt/drbl/sbin/drbl-ocs -b -g auto -x -p reboot -h " 192.168.100.220"
-l en_US.UTF-8 startdisk restore centoszilla-081227-img sda

Not: Komut tek bir satırdan ibarettir.

Job oluşturulduktan sonra, çöken client'i yeniden network üzerinden boot ediyorum ve clonezilla tarafından restore işlemi başlatılıyor.

İşte şöyle:

restore

Restore işlemi bittikten sonra client restart ediliyor ve normal bir şekilde açılıyor ve uçan etc dizinini yerinde buluyoruz:

restore2

Hepsi bu kadar.
Böylece Clonezilla Server kullanarak network üzerinden disk image backup/restore işlemlerini yapmış olduk.

SORUN GİDERME


Clonezilla Server ile ilgili olarak karşılaştığım yegane sorun, clientler üzerinde bulunan bazı ethernet kartılarının driverlerının bulunanaması nedeni ile network boot işleminin yapılamamasından ibaret. Bu dölümde, Atheros(R) AR8121/AR8113 PCI-E Ethernet ve Marverll Yukon Ethernet Controller'lar için manuel driver yükleme işinin nasıl yapılabileceğinden bahsedeceğim.

Üzerinde Asus P5Q-SE anakart bulunan bir desktop ve Toshiba Satellite U-400 laptopta, bu driver problemleri yüzünden network boot sorunu yaşadım. Desktop üzerinde onboard Atheros(R) AR8121/AR8113 PCI-E Ethernet kartı ve Laptop üzerinde ise Marverll Yukon Ethernet Controller bulunuyor. Ancak Clonezilla'dan bir job oluşturup ilgili clientlerı networkten açmak isteyince boot işlemi sırasında aşağıdaki hatayı alıyordum.

The driver of network card is NOT found!
Is this kernel 2.6.18-92.1.22.el5 too old so it does not support this network card ?
Without network card driver, we can NOT go on!

Bu sorunun nedeni, DRBL'nin kurulu olduğu CentOS 5.2'nin 2.6.18-92.1.22.el5 versiyon numaralı kernelinin, ilgili ethetnet kartılarının driverlerini default olarak içermemesinden kaynaklanmakta. Bu durumda yapılması gereken şey kartlara ait driverların kernel modüllerini sisteme manuel olarak yüklemek ve drblsrv -i ve drblpush -i adımlarını yeniden yapmak icap ediyor. Şimdi bu her iki ethernet kartına ait driver kernel modüllerini (kmod) sisteme nasıl yükleyebileceğimize bakalım.

Atheros(R) AR8121/AR8113 PCI-E Ethernet Kernel Driver Modülü

Öncelikle, kernel modülü yükleyebilmek için sistemde, gcc, kernel-header ve kernel-devel paketlerinin yüklü olması gerekiyor. Aşağıdaki komut ile yükleyin.

# yum install -y gcc kernel-headers kernel-devel

Daha sonra, http://support.asus.com/download/ adresinden socet 775 serisi ve P5Q-SE model anakart için Others bölümü altından Linux driverlarını indirin. Ya da http://www.cagriersen.net/l1e-l2e-linux-v1.0.0.4.tar.bz2 linkinden 02 – 01 – 2009 itibari ile indirilmiş en güncel drvier dosyasına erişebilirsiniz.
İndirdiğiniz driver'i örneğin /usr/src dizinine alarak aşağıdaki komutları vererek açın.

# bunzip2 l1e-l2e-linux-v1.0.0.4.tar.bz2
# tar xvf l1e-l2e-linux-v1.0.0.4.tar

Şimdi de, atl1e dizini altındaki src dizinine geçip aşağıdaki gibi kernel modülünü compile edin.

# cd atl1e/src/
# make install

Compile işlemi bitince, kernel modülünü /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/atl1e/ dizini altına atl1e.ko ismi ile bulabilirsiniz. Şimdi ki adım çok lazım değil ama ben olası bir sorunda bir daha deneme yapmamak için bu .ko dosyasını /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/ dizininin altına da kopyaladım ve çalıştırılabilir olması için permission'unu 744 verdim. Siz de bu şekilde yapın.

# cd /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/atl1e/
# cp atl1e.ko /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/
# chmod 744 /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/atl1e/atl1e.ko
# chmod 744 /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/atl1e.ko

Bundan sonraki adım, kernel modülünü devreye almak. Aşağıdaki komutları vererek bu işlemi yapabilirsiniz.

# depmod -a
# modprobe atl1e

Bu işlemden sonra, /var/log/message dosyasında aşağıdaki gibi bir çıktı görmeniz gerekir.

# more /var/log/messages |grep Atheros
Jan  2 19:31:07 clonezilla kernel: Atheros(R) AR8121/AR8113 PCI-E
Ethernet Network Driver  version 1.0.0.4
Jan  2 19:31:07 clonezilla kernel: Copyright (c) 2007 Atheros Corporation.

Ayrıca, lsmod çıktısında da modül görüntülenir.

# lsmod |grep atl1e
atl1e		40724	0

Şimdi, bu yazının birinci bölümü olan Clonezilla Server Kurulum'u sayfasında anlatılan şekliyle /opt/drbl/sbin/drblsrv -i ve /opt/drbl/sbin/drblpush -i işlemlerini yeniden yapmanız gerekir. Zira bu işlemler, clientlere deploy edilecek GNU/Linux işletim sistemini, serverın kendi üzerinde kurulu olduğu işletim sisteminden kopyalayarak gerekli düzenlemeleri yapmaktadır. Kopyalama ve düzenleme sırasında, yeni kernel modülü de dahil edileceği için driver ile ilgili problem de çözülmüş olacaktır.

Ancak bu işlemi yapmadan önce Marvell Yukon Ethernet kartları için de gerekli modülü sisteme kurmanızı öneririm. Çünkü şimdi olmasa bile, ileride bu karta sahip bir clientınız olabilir. Bu nedenle modülü şimdiden kurup hazır etmek iyi bir fikir olabilir.

Marvell Yukon Ethernet Controller Kernel Driver Modülü

http://www.marvell.com/drivers/search.do adresinden, Linux 2.6 (Fedora) için olan driver paketini indirin.

Direk link için :
http://www.marvell.com/drivers/driverDisplay.do?driverId=153
ya da
http://www.cagriersen.net/install_v10.70.2.3.tar.bz2 adresini kullanabilirsiniz.

İndirdiğini dosyayı gene, /usr/src dizini altına alın ve sıkıştırılmış paketi aşağodaki komutlar ile açın.

# bunzip2 install_v10.70.2.3.tar.bz2
# tar xvf install_v10.70.2.3.tar

Ve scriptini çalıştırın.

# sh install.sh

install.sh isimli dosyayı çalıştırdığınız zaman seçenekler sunan aşağıdaki gibi bir ekran gelecek. Bu ekranda seçebileceğiniz iki mod bulunuyor. Birincisi Mode isimli, kernel modülünü derleyen mod -ki biz bunıu seçeceğiz.- İkincisi ise kerneli yeniden derlerken kullanmak üzere kernel yaması oluşturan Patch Generation Mode.

 script for sk98lin driver.
Version 10.70.2.3 (Nov-03-2008)
(C)Copyright 2003-2008 Marvell(R).
====================================================
Add to your trouble-report the logfile install.log
which is located in the  DriverInstall directory.
====================================================

1) installation
2) generate patch
3) exit
Choose your favorite installation method:

1'i seçip devam ettiğinizde, aşağıdaki gibi bir uyarı verecek.

Please read this carfully!

This script will automatically compile and load the sk98lin
driver on your host system. Before performing both compilation
and loading, it is necessary to shutdown any device using the
sk98lin kernel module and to unload the old sk98lin kernel
module. This script will do this automatically per default.

Please plug a card into your machine. Without a card we aren't
able to check the full driver functionality.

Do you want proceed? (y/N)

Bizim sistemimizde, zaten bu kart yok. Sadece clientlerin kullanabilmesi için gerekli modülü yüklüyoruz. Y tuşu ile devam edin.

Şimdiki aşamada ise, aşağıdaki gibi bir uyarı daha alacaksınız burada dikkat edilmesi gereken bir nokta var: CentOS 5.2 üzerinde Marvell Yukon Ethernet kartları için kullanılmak üzere sky2 isimli bir driver modülü default olarak gelmekte, ancak bu driver Marvell tarafından resmi olarak desteklenmiyor. Bu aşamada kurulum scripti bu driveri tespit edip, deaktif etmek ya da komple kaldırmak üzere tekrar seçenek sunacak.

Ben direk olarak kaldırdım. Siz de aşağıdaki ekranı herhangi bir tuşa basarak geçtikten sonra gelen seçenek ekranında 3 tuşu ile devam edip kaldırın.

"IMPORTANT INFORMATION!"
We found an alternative driver for your Marvell product on this system."
The alternative driver is _NOT_ directly supported by Marvell and does not"
include all features provided by your device. If you want to use the"
sk98lin driver developed by Marvell, you may choose either to deactivate"
or remove the alternative driver."

[PRESS ANY KEY FOR FURTHER INSTRUCTIONS]

Bundan sonraki adımda, gerekli modül compile edilecek. İşlem bittikten sonra
aşağıdaki komut ile modülü devreye alabilirsiniz.

# modprobe sk98lin

Modül yüklendiğine göre artık gerekli kopyalama ve chmod işlemlerini yaparak kurulumu sonlandırabilirsiniz.

# cd /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/
# cp /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/sk98lin/sk98lin.ko .
# chmod 744 sk98lin.ko
#chmod 744 /lib/modules/2.6.18-92.1.22.el5/kernel/drivers/net/sk98lin/sk98lin.ko

Artık, biraz önce de bahsettiğim ve ilk bölümde anlatılan drblsrv -i ve drblpush -i adımlarını uygulayabilirsiniz.
Adımlar yeniden uygulandıktan sonra, herhangi bir sorun ile yaşamadıysanız ilgili ethernet kartlarına ait boot problemi ile bir daha karşılaşmamanız gerekir.

Sorun giderme ile ilgili anlatabileceklerim bu kadardı. Artık dökümanın sonuna gelmiş bulunuyoruz.Clonezilla Server benim epey işime yaradı. Umarım sizin de işinize yarar. Özellikle yüksek meblağlar ödeyerek alacağınız muadili bir yazılım yerine alternatif olarak düşünebilirsiniz.

Kaynaklar:
http://drbl.sourceforge.net/
http://www.clonezilla.org/
http://drbl.sourceforge.net/one4all/

Visited 2.831 times, 1 visit(s) today
Kategoriler: *nix |

Bu yazılar da ilginizi çekebilir:


- CloneZilla Server – Bölüm 1: Kurulum ve Yapılandırma
- FreeBSD 6.2 Kurulumu – Part I: Başlangıç
- FreeBSD 6.2 Kurulumu – Part II: Disk Partitions
- VMWare Üzerine Backtrack 4 Kurulumu
- FreeBSD Upgrade Prosedürü (7.x’ten 7.2’ye)

Yorumlar


  1. expert | (Nisan 7th, 2010 9:34 am)

    Yazınız için teşekkürler,türkçe açık kaynak dünyasını ciddi bir aktkıda bulunmuşsunuz.

    2 tane sorum olacak

    1.ilgili ağda başka bir dhcp sunucu varsa reboot olan client ip adresini hangi dhcp sunucudan alacağına nasıl karar vericek?dhcp sunucu clonezilla sunucusunda olmak zorundamı?

    2.ilgili networkte aktif tftp sunucu varsa herhangi sorun çıkarmı?

    [Cevapla]

    Cagri Ersen tarafından yanıtlandı.

    Merhaba,

    Ağınızda çalışan bir dhcp server olması sorun değil. Çünkü DRBL’in üzerindeki dhcp servisi sadece ethernet üzerinden boot edilen bilgisayarlara ip ataması üzere yapilandiriliyor.
    Yazinin birinci bolumunde bu konuya deginmistim

    http://www.syslogs.org/clonezilla-server-kurulumu-part-1/ adresinden alıntı:

    Not: Netwörkünüzde hali hazırda bir DHCP sunucusu olabilir ve siz de netwörkte
    iki DHCP sunucusunun sorun teşkil edebileceğinden kaygılanıyor olabilirsiniz.
    Ancak, DRBL sunucusunun DHCP’si sadece ethetnet üzerinden boot edilecek clientlara
    IP ataması yapacağından, normal olarak boot edilen bilgisayarlarınıza IP atama
    teşebbüsünde bulunmayacaktır. Ayrıca, yapılandırma bittikten sonra DRBL’nin DHCP
    servisini, clientlar’a MAC adresinden atama yapacak şekilde yapılandıracağız.
    Dolayısı ile DHCP belirlediğimiz client bilgisayarlar için sadece ethernet
    üzerinden boot edildikleri zaman IP ataması yapacak.

    İkinci sorunuza gelince, sorun olmamasi gerekir. Gene de icinizin rahat etmesi acisindan drbl forumlarinda konuyu arastirabilirsiniz.

    Ilginiz icin de ayrica tesekkur ederim.

    [Cevapla]

    expert tarafından yanıtlandı.

    Hızlı ve detayli cevabınız için teşekkurler,ilk bölümü biraz hızlı geçmişim:)

    aslında ben 2 soruyu tam açmamışım.

    tftp sunucusu pxe destekli ağ kartları olan disksiz PC lere linux imajı gönderiyor .Ethernetten boot eden bir yapı var şuan ağımda.(Thine client projesi).Mesela disksiz PC boot ettiğinde hangi dhcp sunucudan ip çekecek?
    Belki clonezilla tarafında mac sınırlaması ile sorun çözülebilir.

    Yine de ilginize teşekkürler.

    [Cevapla]

    Cagri Ersen tarafından yanıtlandı.

    Halihazirda bir drbl ortaminiz varsa, cozum dediginiz gibi MAC filtremele oluyor. DHCP’yi imajı alınacak pc’lerin mac id’lerine atama yapacak sekilde set ediyoruz ve sorun kalmiyor..

    [Cevapla]

  2. Cem | (Mayıs 10th, 2010 8:37 pm)

    Merhaba,
    Günlerdir aradığım açıklama yardım metnini burda buldum.Ancak ben live cd oluşturup yedekleme ve yükleme işlemini nasıl yapacağım.Bu konu hakkında ayrıntılı metniniz varmı.

    [Cevapla]

    Cagri Ersen tarafından yanıtlandı.

    Merhabalar,

    Live cd ile ilglili benim hazirladigim bir dokuman malesef yok ancak asagidaki adreste bulunan metin isinizi gorecektir saniyorum.

    http://www.howtoforge.com/back-up-restore-hard-drives-and-partitions-with-clonezilla-live

    Kolay gelsin.

    [Cevapla]

  3. Hasan | (Mayıs 11th, 2012 10:57 pm)

    Merhaba Çağrı hocam;
    online imaj almak için bir fikriniz var mı ? ( rsync vb araçlar dışında ) bildiğim kadarıyla clonzilla’nın böyle bir özelliği yok. Yönettiğiniz server bir terminal server,load balance yapan bir sunucu yada bir web server olabilir hizmet kesintisi yaratmadan sizce nasıl bir tam yedek alma stratejisi ( konfigurasyon dosyalarının yedeği değilde tam bir backup ) uygulanabilir. ( San/iscsi snapshot çözümü hariç ).

    iyi çalışmalar

    [Cevapla]

    Cagri Ersen tarafından yanıtlandı.

    Selamlar,

    Böyle bir gereksinim için clonezilla benzeri online image da alabilen yazilimlar var. Sanirim bir tanesi accronis idi.

    Ote yandan sunucularınızı sanallaştırarak da aynı yedekleme politikasını edinebilirsiniz. xen, kvm ya da vmware kullanarak sanallaştırdığınız sistemlerin online image backuplarını alabiliyorsunuz.

    [Cevapla]

    hasan tarafından yanıtlandı.

    Hepsi sanalda çağrı hocam. Citrix xenserver üzerinde lakin LVM yapısından dolayı disklerini içine girip basitçe rsync ile başka bir yere kopyalayamıyorum. LVM yapısı hakkında sistemin ekran görüntülerini aşağıdaki linklere koydum.
    http://s15.postimage.org/gcs6zgrx7/fdisk.jpg
    http://s14.postimage.org/87yzqzxdt/lvdisplay.jpg
    http://s16.postimage.org/cr9uqe0gl/pvdisplay.jpg
    http://s8.postimage.org/c4exwspyd/vgdisplay.jpg

    Bu arada KVM windows sistemlerde çok kötü I/O’ya sahip bizde hem ucuz hemde xencenter gibi bir aracı olan citrix xenserver’ı tercih ettik.Aslında Alike Backup isimli güzel bir araç var fakat ne yaptıysam iscsi ile görüştüremedim. Erişim yasak hatası dönüyor. Bu arad tüm sanallar iscsi üstünde.

    iyi çalışmalar hocam.

    [Cevapla]

    Cagri Ersen tarafından yanıtlandı.

    LVM yapisinda herhangi bir sorununuz yoksa sanal sunucularin root dizinlerine erisebilmeniz ve dosya kopyalama yapabilmeniz lazim. Ancak sanirim bu islemi offline olarak yapabilirsiniz; citrix’in xen’ine pek asina degilim.

    [Cevapla]

    hasan tarafından yanıtlandı.

    Bacula ve Amanda’yı denicem. yorumlarınız için teşekkür ederim hocam.

    [Cevapla]

  4. mahir | (Ağustos 13th, 2013 11:20 am)

    Yazınız için teşekkürler,

    Kurulumu tamamladım, ancak client tarafında boot esnasında “Unable to locate configuration file” şeklinde bir hata alıyorum. Bunun nedeni ne olabilir?

    [Cevapla]

    mahir tarafından yanıtlandı.

    Sorunun nedeni SELINUX ‘un devrede olmasındanmış. Bu aşamayı geçtim. Ancak şimdide Savedisk modundayken “Failed to Mount Root Filesystem Hatası Alıyorum”

    [Cevapla]

    Cagri Ersen tarafından yanıtlandı.

    Selamlar,

    Loglarda herhangi bir hata alıyor musunuz ? Bir de bu konunun ethernet driveri ile ilgili olabileceğini hatırlıyorum; buna da yoğunlaşabilirsiniz.

    [Cevapla]

  5. Tarık ÇELİK | (Ekim 3rd, 2016 9:40 am)

    Hocam herhaba,

    Size birşey sormak istiyoum. Clonezilla ile network üzerinden image atarken image attığım bilgsayarlarda şöyle bir hata alıyorum. sda disk bulunamadı tarzında bir hata. Sizce neden olabilir ?
    Bilgisayarlar HDD leri görmekte ve daha önce böyle bir sıkıntım yoktu benim.

    [Cevapla]

Trackbacks

Yorumda bulunun.