Etiket: server

  • Nasıl: Ubuntu sunucuda network ayarları

    Bu yazımda Ubuntu 16.04 LTS Sunucu sürümünde network ayarlarının nasıl yapılacağını aşağıdaki komut örnekleri ile göstereceğim, bu örnekte sunucuda wireless kart olduğunu varsayıyorum, zaten Ethernet bağlantısı pek sorun olmadığından sunucular için en çok wireless kartı üzerinden bağlantı nasıl yapılır sorusunun cevabı aranmakta.

    # sudo -s

    komutu ile root olduktan sonra aşağıdaki komut ile sistemimizdeki wireless kartlarını bulacağız.

    # iwconfig

    lo        no wireless extensions.

    wlan0     IEEE 802.11bg  ESSID:off/any
    Mode:Managed  Access Point: Not-Associated   Tx-Power=off
    Retry short limit:7   RTS thr:off   Fragment thr:off
    Power Management:off

    eth0      no wireless extensions.

    Görüldüğü üzere sistemimizde “wlan0” olarak tanımlanmış bir wireless kartı mevcut.

    Bu kart için “/etc/network” altında tanımlamalarımızı yapacağız, ama önce “wpa” anahtarını oluşturmamız gerek. Bunun için önce “/etc/network/interfaces.d/” klasörüne geçin.

    # cd /etc/network/interfaces.d

    Ardından şu komutu çalıştırın, SSID yerine bağlanmak istediğiniz kablosuz ağın adını yazın:

    # wpa_passphrase SSID >> wlan0.cfg

    Komutu çalıştırdığınızda alt satıra geçip beklemeye başlayacak. Bu durumda wireless parolanızı girip “enter”a basmanız gerekmekte. Bu işlemden sonra wifi key’ini wlan0.cfg dosyası içinde görebilirsiniz.

    # cat wlan0.cfg

    network={
    ssid=”SSID”
    #psk=”wifiparolasi”
    psk=8ada1f8dbea59704af379538b4d9191f6a713905d1b4cd7a72864cea685b1a7f
    }

    Bu işlemden sonra “wlan0.cfg” dosyasını düzenlemek için “nano” ile açıp  bu interface için ağ bağlantı ayarlarını yapmaya başlıyoruz:

    # nano wlan0.cfg

    Yukarıda gördüğümüz içeriğin üstü çizili olan satırlarını silmekle işe başlayacağız:

    network={
    ssid=”SSID”
    #psk=”wifiparolasi”
    psk=8ada1f8dbea59704af379538b4d9191f6a713905d1b4cd7a72864cea685b1a7f
    }

    Yukarıda gördüğümüz içeriğin üstü çizili olan satırlarını silin. Kalan satırın başını değiştirin ve şu hale getirin.

    wpa-psk 8ada1f8dbea59704af379538b4d9191f6a713905d1b4cd7a72864cea685b1a7f

    Daha sonra bu satırın üstüne aşağıdaki satırları ekleyin:

    auto wlan0
    iface wlan0 inet static
    address 192.168.1.2 #kullanılmayan bir IP adresi olmalı.
    netmask 255.255.255.0
    gateway 192.168.1.1
    dns-nameservers 8.8.4.4 8.8.8.8
    wpa-ssid SSID
    wpa-psk 8ada1f8dbea59704af379538b4d9191f6a713905d1b4cd7a72864cea685b1a7f

    Dosyayı bu şekilde kaydettikten sonra aşağıdaki komut el ile çalıştırarak ağ bağlantısını sağlayabilirsiniz.

    # ifup wlan0

    Bu yöntem ile sunucuyu yeniden başlatsanız dahi boot esnasında otomatik olarak ağ bağlantısı sağlanmış olacaktır. Ayrıca eğer kablolu bağlantı kullanacaksanız “wpa” ile başlayan satırları silip “wlan0” olan interface adını ethernet interface adı ile (Örneğin eth0) değiştirmeniz yeterli olacaktır.

  • Ubuntu linux sunucu fan kontrolü

    Ubuntu sunucu sisteminizde kafa şişiren, gereksiz hızlı dönen fanlarınızı kontrol altına mı almak istiyorsunuz? Belki de ortam sıcaklığı arttığı halde pısırık bir fanınızı var ve işini yapmıyor mu? Sisteminiz üzerinde omlet yapmadan ve kafanız daha fazla şişmeden önce bu duruma müdahale etmek ve fan kontrolü için depodan “fancontrol” paketini kuruyoruz

    # apt-get install fancontrol

    Kurulumdan sonra “pwmconfig” komutu ile “/etc/fancontrol” konfigürasyon dosyasını canlı olarak yapılandırmaya başlıyoruz.

    # pwmconfig
    # pwmconfig revision 6166 (2013-05-01)
    This program will search your sensors for pulse width modulation (pwm)
    controls, and test each one to see if it controls a fan on
    your motherboard. Note that many motherboards do not have pwm
    circuitry installed, even if your sensor chip supports pwm.

    We will attempt to briefly stop each fan using the pwm controls.
    The program will attempt to restore each fan to full speed
    after testing. However, it is ** very important ** that you
    physically verify that the fans have been to full speed
    after the program has completed.

    Found the following devices:
    hwmon0/device is coretemp
    hwmon1/device is w83627thf

    Found the following PWM controls:
    hwmon1/device/pwm1 current value: 240
    hwmon1/device/pwm2 current value: 240
    hwmon1/device/pwm3 current value: 240

    Giving the fans some time to reach full speed…
    Found the following fan sensors:
    hwmon1/device/fan1_input current speed: 2343 RPM
    hwmon1/device/fan2_input current speed: 0 … skipping!
    hwmon1/device/fan3_input current speed: 0 … skipping!

    Warning!!! This program will stop your fans, one at a time,
    for approximately 5 seconds each!!!
    This may cause your processor temperature to rise!!!
    If you do not want to do this hit control-C now!!!
    Hit return to continue:

    Fan kontrol programı kısa bir testpitten sonra bulduğu aygıtları, PWM kontrolcülerini ve Fan kontrol sensörlerini listeliyor. Listeden hemen sonra program ayar sırasında her bir fanı 5 saniyeliğine durduracağını söylüyor. Bu durum çok yük binen bazı sistemlerde krize yol açabilir. O yüzden, sisteminizin fanların durdurulması sırasındaki stresi kaldırıp kaldıramayacağından emin değilseniz bundan sonraki adımlara geçmeyiniz. Biz sıradan ev kullanıcıları için çok da dert olmasa gerek 🙂

    Enter tuşuna basıp devam ettiğinizde, hangi fanın hangi voltaj kontrolörü tarafından kontrol edildiği tespiti otomatik olarak yapılıyor ve sonrasında detaylı korelasyon ayarlarını çıkartmak isteyip istemediğinizi soruyor. Bu işlem PWM kontrolcüsüne ne emredilirse Fan kaç RPM’de dönecek bilgisini toplamaya yarıyor.

    Testing pwm control hwmon1/device/pwm1 …
    hwmon1/device/fan1_input … speed was 2343 now 1028
    It appears that fan hwmon1/device/fan1_input
    is controlled by pwm hwmon1/device/pwm1
    Would you like to generate a detailed correlation (y)?

    Evet dediğinizde fanınız değişen (düşürülen) PWM değerleri ile birlikte yavaşlamaya başlıyor:

    PWM 255 FAN 2343
    PWM 240 FAN 2220
    PWM 225 FAN 2343
    PWM 210 FAN 2109
    PWM 195 FAN 2008
    PWM 180 FAN 1757
    PWM 165 FAN 1622
    PWM 150 FAN 1360
    PWM 135 FAN 1081
    PWM 120 FAN 1004
    PWM 105 FAN 1004
    PWM 90 FAN 1004
    PWM 75 FAN 981
    PWM 60 FAN 1004
    PWM 45 FAN 1004
    PWM 30 FAN 1004
    PWM 28 FAN 1004
    PWM 26 FAN 1004
    PWM 24 FAN 1004
    PWM 22 FAN 1004
    PWM 20 FAN 1004
    PWM 18 FAN 1028
    PWM 16 FAN 1004
    PWM 14 FAN 1004
    PWM 12 FAN 1004
    PWM 10 FAN 1004
    PWM 8 FAN 1004
    PWM 6 FAN 1004
    PWM 4 FAN 1028
    PWM 2 FAN 1028
    PWM 0 FAN 1004

    Testing pwm control hwmon1/device/pwm2 …
    hwmon1/device/fan1_input … speed was 2343 now 2343
    no correlation

    No correlations were detected.
    There is either no fan connected to the output of hwmon1/device/pwm2,
    or the connected fan has no rpm-signal connected to one of
    the tested fan sensors. (Note: not all motherboards have
    the pwm outputs connected to the fan connectors,
    check out the hardware database on http://www.almico.com/forumindex.php)

    Did you see/hear a fan stopping during the above test (n)?

    Fan kontrol programı benim sunucuda nedense korelasyon bulamadığını düşünüyor. Muhtemelen donanım uyumsuzluğu söz konusu. Bu yüzden bana yukarıdaki test sırasında Fanın durup durmadığını soruyor. Ben bu soruya kulaklarıma güvenerek evet diyorum.

    Bu adımdan sonra fan kontrol programı testini tamamlandığını ve ayarları kaydetmek isteyip istemediğinizi soracak. Gerekli cevapları verip fan kontrol programının işini bitirmesini sağlıyoruz:

    Testing is complete.
    Please verify that all fans have returned to their normal speed.

    The fancontrol script can automatically respond to temperature changes
    of your system by changing fanspeeds.
    Do you want to set up its configuration file now (y)? y
    What should be the path to your fancontrol config file (/etc/fancontrol)?
    Loading configuration from /etc/fancontrol …

    Select fan output to configure, or other action:
    1) hwmon1/device/pwm1 3) Just quit 5) Show configuration
    2) Change INTERVAL 4) Save and quit
    select (1-n): 4

    Saving configuration to /etc/fancontrol…
    Configuration saved

    Ayarını yaptığımız için artık “fancontrol” servisini başlatabilir ve fanların huşû içinde dönmelerine tanık olabiliriz.

    # service fancontrol start
    * Starting fan speed regulator fancontrol [ OK ]

    Artık fanlarınızın normalde kedi gibi mırıldandığı, ancak sıcak arttıkça canavarlaşacağı bir dünyaya adım atmış bulunuyorsunuz. Sisteminize zeval gelmesin.

     

  • Yarım kalan recovery ve kullanıma girmeyen RAID array bölümü.

    Başıma gelen bir diğer sorun ise recovery’nin bir şekilde yarım kalması ve bu yüzden RAID arraye ait bölümün birisinin kullanıma girmemesiydi ([_U] durumu).

    Tekrar recvery denediğimde bana “Device or Resource Busy” hatası döndürdü durdu.

    # mdadm –manage /dev/md0 –add /dev/sda1
    mdadm: cannot open device /dev/sda1: Device or resource busy

    MD array’indeki bölümü durdurmama bile müsaade etmedi.

    # mdadm –stop /dev/md2 /dev/sda3
    mdadm: fail to stop device /dev/sda1: Device or resource busy

    İnanılmaz birşey ancak bir türlü durmuyordu. Onu durdurabilmek için baya bir uğraştıktan ve araştırdıktan sonra öncelikle failed olarak işaretlemem ve ardından remove etmem gerektiğini öğrendim.

    # mdadm –fail /dev/md2 /dev/sda3
    mdadm: set /dev/sda3 faulty in /dev/md2

    # mdadm –remove /dev/md2 /dev/sda3
    mdadm: hot removed /dev/sda3

    Sonunda onu durdurmayı başardım ve doğrudan recovery işlemini başattım. recovery işlemini başlattığımda otomatik olara sda3 bölümün md2 arrayine ekleyip resync işlemine başladı. Bu yazıyı yazarken recovery henüz bitmemişti, bitmesine de daha en az 3 saat vardı. O yüzden bölümün kullanıma girip girmediğini yazmıyorum.

  • RAID1 array’i yeniden yapılandırma.

    Önceki yazımızda RAID arrayde bulunan bozuk diskin nasıl tespit edileceğini görmüştük. Bu yazımızda bozuk diskin yerine takılan yeni diskin array’e nasıl ekleneceğini göreceğiz. Normalde ubuntu sunucular bu işi yeni disk takılıp sistem açıldıktan sonra otomatik olarak yapmaya başlayabiliyor, ancak zaman zaman sorunlar ile karşılaşmak mümkün oluyor. Örneğin benim vereceğim örnekte md1 array’i nedense inactive durumda. Bu sorunla yüzleştiğimizde neler yapılabilir beraber bakalım:

    (Not: bu işlemleri yaparken, herhangi bir veri kaybı yaşamanızdan sorumlu olmadığımı tekrar belirtmek isterim. Önceki yazıda bulunan kurallar aynen bu yazı için de geçerli.)

    Öncelikle yeni diskte eş bölümleri oluşturmamız gerekmekte. Bunun için elimizde bulunan ikinci diskin bölümlerini ve Boot kaydını aynen yeni diske geçirmemiz gerekiyor. Bu işlemler için sırası ile şunları yapacağız:

    Öncelikle ikinci diskin bölümleme tablosunun bir kopyasını yeni diske çıkartalım.

    Hatırlayacağınız üzere bozulan diskimiz “sda” sağlam olan diskimiz de “sdb” idi. Ancak yanlış işlem yapmamanız için öncelikle dolu ve boş diskin hangisi olduğuna sisteminizden bakın:

    # fdisk -l

    Disk /dev/sda: 750.2 GB, 750156374016 bytes
    255 heads, 63 sectors/track, 91201 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x55555555

    Disk /dev/sda doesn’t contain a valid partition table

    Disk /dev/sdb: 750.2 GB, 750156374016 bytes
    255 heads, 63 sectors/track, 91201 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00088969

    Device Boot Start End Blocks Id System
    /dev/sdb1 1 262 2102562 fd Linux raid autodetect
    /dev/sdb2 263 295 265072+ fd Linux raid autodetect
    /dev/sdb3 296 91201 730202445 fd Linux raid autodetect

    Disk /dev/md0: 2152 MB, 2152923136 bytes
    2 heads, 4 sectors/track, 525616 cylinders
    Units = cylinders of 8 * 512 = 4096 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000

    Disk /dev/md0 doesn’t contain a valid partition table

    Disk /dev/md2: 747.7 GB, 747727224832 bytes
    2 heads, 4 sectors/track, 182550592 cylinders
    Units = cylinders of 8 * 512 = 4096 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000

    Disk /dev/md2 doesn’t contain a valid partition table

    Benim sistemimde dolu olan disk “/dev/sdb” boş olan yeni disk ise “/dev/sda” olarak görünmekte. Buna göre sdb’deki bölümleme tablosunu aşağıdaki komut ile “sda”ya kopyalayacağız:

    # sfdisk -d /dev/sdb | sfdisk /dev/sda

    Checking that no-one is using this disk right now …
    OK

    Disk /dev/sda: 91201 cylinders, 255 heads, 63 sectors/track

    sfdisk: ERROR: sector 0 does not have an msdos signature
    /dev/sda: unrecognized partition table type
    Old situation:
    No partitions found
    New situation:
    Units = sectors of 512 bytes, counting from 0

    Device Boot Start End #sectors Id System
    /dev/sda1 3906 4209029 4205124 fd Linux raid autodetect
    /dev/sda2 4209030 4739174 530145 fd Linux raid autodetect
    /dev/sda3 4739175 1465144064 1460404890 fd Linux raid autodetect
    /dev/sda4 0 – 0 0 Empty
    Warning: no primary partition is marked bootable (active)
    This does not matter for LILO, but the DOS MBR will not boot this disk.
    Successfully wrote the new partition table

    Re-reading the partition table …

    If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
    to zero the first 512 bytes: dd if=/dev/zero of=/dev/foo7 bs=512 count=1
    (See fdisk(8).)

    İşlemin başarılı olup olmadığını tekrar “fdisk -l” komutu vererek çıktıdan görebilirsiniz. Eğer şöyle bir çıktı ile karşıltıysanız işlem başarılı demektir:

    # fdisk -l

    Disk /dev/sda: 750.2 GB, 750156374016 bytes
    255 heads, 63 sectors/track, 91201 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x55555555

    Device Boot Start End Blocks Id System
    /dev/sda1 1 262 2102562 fd Linux raid autodetect
    /dev/sda2 263 295 265072+ fd Linux raid autodetect
    /dev/sda3 296 91201 730202445 fd Linux raid autodetect

    Disk /dev/sdb: 750.2 GB, 750156374016 bytes
    255 heads, 63 sectors/track, 91201 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00088969

    Device Boot Start End Blocks Id System
    /dev/sdb1 1 262 2102562 fd Linux raid autodetect
    /dev/sdb2 263 295 265072+ fd Linux raid autodetect
    /dev/sdb3 296 91201 730202445 fd Linux raid autodetect

    Disk /dev/md0: 2152 MB, 2152923136 bytes
    2 heads, 4 sectors/track, 525616 cylinders
    Units = cylinders of 8 * 512 = 4096 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000

    Disk /dev/md0 doesn’t contain a valid partition table

    Disk /dev/md2: 747.7 GB, 747727224832 bytes
    2 heads, 4 sectors/track, 182550592 cylinders
    Units = cylinders of 8 * 512 = 4096 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000

    Disk /dev/md2 doesn’t contain a valid partition table

     Bu işlemden sonra Boot record’u kopyalayacağız, önce boot recordun kopyasını dosyaya yazıyoruz:

    # dd if=/dev/sdb of=sdb.part bs=1024k count=1
    1+0 records in
    1+0 records out
    1048576 bytes (1.0 MB) copied, 0.0249217 s, 42.1 MB/s

    # dd if=sdb.part of=/dev/sda bs=1024k count=1
    1+0 records in
    1+0 records out
    1048576 bytes (1.0 MB) copied, 0.00123787 s, 847 MB/s

    Bölümleme işlemleri bittikten sonra sda arrayleri sdb’den geri alma işlemine başlayabiliriz:

    # mdadm –manage /dev/md0 –add /dev/sda1
    mdadm: added /dev/sda1

    # mdadm –manage /dev/md1 –add /dev/sda2
    mdadm: added /dev/sda2

    # mdadm –manage /dev/md2 –add /dev/sda3
    mdadm: added /dev/sda3

     Bu mirrorlama işlemleri arka planda devam etmektedir. Durumu görmek için “cat /proc/mdstat” komutunu verebilirsiniz. An be an takip etmek isterseniz şu komut ile konsolun birisinde monitörleme yapabilirsiniz:

    # watch -n .5 cat /proc/mdstat

    .5 rakamı güncellenme sıklığını saniye cinsinden belirtir 0.5 saniye anlamındadır değer 1 yaparak saniyede bir güncellenmesini sağlayabilirsiniz. Mirrorlama işlemi süresi diskin boyutu ve makinenin gücüne ayrıca başka işlem yapılıp yapılmadığına göre değişiklik göstermektedir.

    Every 0.5s: cat /proc/mdstat Tue Jul 23 13:42:47 2013

    Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] [linear] [multipath]
    md1 : active raid1 sda2[0] sdb2[1]
    264960 blocks [2/2] [_U]
    resync=DELAYED

    md2 : active raid1 sda3[2] sdb3[1]
    730202368 blocks [2/1] [_U]
    [=====>……………] recovery = 2.2% (16135936/730202368) finish=151.9min speed=78334K/sec

    md0 : active raid1 sda1[0] sdb1[1]
    2102464 blocks [2/2] [UU]

    unused devices: <none>

    Yukarıdaki görüntüde arrayler görünmekte ve bunların bazılarında ufak tefek farklar bulunmakta, bunları açıklamak gerekirse;

    • [2/2] [2/1] gibi ibareler md arrayine bağlı bölümlerin kaç tanesinin çalışır durumda olduğunu göstermektedir. md0 arrayinde 2 bölümde çalışır durumda.
    • [UU] [_U] gibi ibarelerde ise “U” harfi kullanımda olan bölümlemeleri göstermektedir. “_” ise kullanımda olmayan bölümlemeyi işaret eder.
    • md0 cihazı aktif ve sda1 bölümünün kopyası oluşturulmuş. Şu an sorunsuz bir şekilde çalışmakta.
    • md1 cihazı resync için “DELAYED” durumunda sıra beklemekte. ikinci bölümleme arraye eklenmiş ancak kullanıma açılmamış
    • md2 cihazında şu an resync yapılmakta bu yüzden henüz o da kullanıma açılmamış durumda.

    Sonraki yazımız karşılaşılan sorunlar ile nasıl başa çıkılacağına dair olacak.

  • Ubuntu sunucuda RAID1 array içindeki bozuk diski bulmak.

    RAID1 sistemdeki diskin bir tanesi bozulduğu zaman izlenecek yöntemler:

    Öncelikli işlem sistem henüz açık iken yedek almaktır. Her zaman yedeğinizi alın! Bu işlem sonucunda sisteminizde oluşabilecek sorunlardan tamamen siz sorumlusunuz. Ben yaptım oldu ancak sizin sistemde de aynı sonucu vermeme olasılığı her zaman vardır ve veri kaybı yaşamanız bu olasılık dahilindedir. Bu yüzden bu adımları uygularken yaşayacağını hiçbir kayıptan ben sorumlu değilim. 🙂

    Canlı sistemin yedeğini aldıktan sonra bozuk diskin hangisi olduğunu bilmiyorsanız öncelikle bunu tespit etmemiz gerekir.

    Sistemde root kullanıcı haklarına nail olup (# sudo -s) /var/log/ altındaki messages log dosyasının içine bakarak bozuk diskin hangisi olduğunu anlayabiliriz. Örnek olarak benim messages dosyasının içeriğini aşağıya ekledim:

    kernel: [ 540.541685] ata3.00: configured for UDMA/133
    kernel: [ 540.541698] sd 2:0:0:0: [sda] Unhandled sense code
    kernel: [ 540.541701] sd 2:0:0:0: [sda] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
    kernel: [ 540.541704] sd 2:0:0:0: [sda] Sense Key : Medium Error [current] [descriptor]
    kernel: [ 540.541709] Descriptor sense data with sense descriptors (in hex):
    kernel: [ 540.541711] 72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00
    kernel: [ 540.541721] 00 40 3b 8b
    kernel: [ 540.541725] sd 2:0:0:0: [sda] Add. Sense: Unrecovered read error – auto reallocate failed
    kernel: [ 540.541730] sd 2:0:0:0: [sda] CDB: Read(10): 28 00 00 40 3b 8b 00 00 03 00
    kernel: [ 540.541981] ata3: EH complete

    Yukarıda görüldüğü üzere “sd 2:0:0:0: [sda] Sense Key : Medium Error [current] [descriptor]” ve “sd 2:0:0:0: [sda] Add. Sense: Unrecovered read error – auto reallocate failed” satırları “sda” olarak bağlanmış olan diskte “medya hatası” ve “kurtarılamayan okuma hatası” hatası olduğunu söylemekte.

    Eğer sda diskin kasanın içindeki hangi disk olduğu konusunda bir fikriniz yoksa sistemi kapatıp disk sökmeye başlamadan önce hangi diski sökmeniz gerektiğini diskin seri numarasına bakarak şu şekilde bulabilirsiniz:

    # hdparm -i /dev/sda | grep SerialNo
    Model=SAMSUNG HD753LJ, FwRev=1AA01118, SerialNo=S13UJ90SXXXXXX

    İkinci olarak şu yöntem ile de seri numarasını bulabilirsiniz:

    # /sbin/udevadm info –query=property –name=sda | grep ID_SERIAL
    ID_SERIAL=SAMSUNG_HD753LJ_S13UJ90SXXXXXX
    ID_SERIAL_SHORT=S13UJ90SXXXXXX

    Eğer S.M.A.R.T. verilerini okumayı biliyorsanız mevcut RAID1 yapısındaki iki diskin S.M.A.R.T. verilerine bakarak hangi diskin bozuk olduğunu ve seri numarasını bulabilirsiniz.

    # smartctl -x /dev/sda

    Bu komut çıktısı çok uzun olduğu ve ekstra açıklamalar gerektiği için yazıyı daha uzatmamak adına buraya eklemiyorum. S.M.A.R.T. verisi nasıl okunur bunu başka bir konuda işleyeceğiz.

    Hangi diski sökmemiz gerektiğini öğrendiğimize göre artık sistemi kapatıp doğru diski değiştirebiliriz. Diski değiştirdikten sonra sistemi tekrar yükleyip RAID array’i yapılandırma işine girişeceğiz.

  • Webfaction Surprise/Sürprizi…

    Today I’ve got an e-mail form Webfaction. “Today we’re happy to announce that our shared hosting plan has been upgraded from 80MB of app memory to 256MB! This applies not only to new customers but to all existing accounts as well.” they said. It’s been very nice surprise.

    —————————————

    Bu gün Webfaciton’dan bir e-posta aldım. Diyorlar ki “Bu gün mutlulukla duyuruyoruz ki, paylaşımlı barındırma planımızda bulunan 80 MB uygulama belleği 256MB’a yükseltilmiştir! Bu sadece yeni müşteriler için değil, tüm mevcut müşteriler için geçerlidir.” . Çok güzel bir sürpriz oldu.

  • Installing 64Bit Python, iPython environment to Windows Server 2008

    Download latest python installer in to windows server 2008 and install it.
    Download http://peak.telecommunity.com/dist/ez_setup.py from setuptools (http://pypi.python.org/pypi/setuptools) and run with python

    python ez_setup.py

    And after all download ipython source for windows environment (http://archive.ipython.org/release/0.11/ipython-0.11.zip) Extract it and install by the command below:

    python setup.py install

    Thats all….