Category Archives: Linux

Raspberry Pi Disk Bölümlerini Windows’ta Silmek

Raspberry Pi için kullandığım SD karta Windows’ta yeni bir imaj yazmak istedim. Computer Management’ın Disk Management ekranından girdiğimde diskimde 2 bölüm olduğunu gördüm ama bunları silmeme izin vermedi. Ben de `diskpart` komutunu kullandım.

Dikkat: diskpart’ı kullanırken, doğru diski ve bölümü seçtiğinizi bir kez daha kontrol edin. Yanlışlıkla sisteminizin yüklü olduğu bölümü silebilirsiniz, sonra çok uğraştırır 🙂

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\WINDOWS\system32>diskpart

Microsoft DiskPart version 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
On computer: MD1EQ0RC

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online          232 GB  1024 KB
  Disk 1    Online          465 GB      0 B
  Disk 2    Online         7580 MB      0 B

DISKPART> select disk 2

Disk 2 is now the selected disk.

DISKPART> list part

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
  Partition 1    Primary           1468 MB  4096 KB

DISKPART> select part 1

Partition 1 is now the selected partition.

DISKPART> delete part

DiskPart successfully deleted the selected partition.

DISKPART> create part pri

DiskPart succeeded in creating the specified partition.

DISKPART> list partition

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
* Partition 1    Primary           7579 MB  1024 KB

DISKPART> exit

Leaving DiskPart...

C:\WINDOWS\system32>

 

Bash Bug – Linux’ta Önemli Güvenlik Açığı

bash’te çok önemli bir güvenlik açığı bulundu, acilen güncellenmesi gerekiyor. Ama eski dağıtımlarda desteklenmeyebilir. Muhtemelen önümüzdeki günlerde adını çok duyacağız.

Güncellemeden önce şöyle görüyordum:

$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
 vulnerable
 this is a test

Güncellemeden sonra şöyle oldu:

 $ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
 bash: warning: x: ignoring function definition attempt
 bash: error importing function definition for `x'
 this is a test

bkz.

http://www.theverge.com/2014/9/24/6840697/worse-than-heartbleed-todays-bash-bug-could-be-breaking-security-for

http://www.theregister.co.uk/2014/09/24/bash_shell_vuln/

Bilgisayarı tekrar başlatmadan /etc/fstab’ı yüklemek

/etc/fstab dosyası bilgisayar ayağa kalkarken disklerin nasıl bağlanacağını belirleyen ayar dosyasıdır. Bu dosyayı değiştirdikten sonra bilgisayarı tekrar başlatmak gerekir. Ancak bu dosya hatalıysa dosya sistemleri doğru bağlanamaz ve bilgisayarınız düzgün bir şekilde ayağa kalkmayabilir.

Bilgisayarı tekrar başlatmadan dosya sistemlerini bu ayar dosyasına göre bağlamak için

mount -a

komutu kullanılabilir.

Sunucudaki RAID1’li disklerin bölümlemelerini değiştirmek

Web sunuculara sıklıkla yapılan saldırılardan birisi: bir cgi script’ini siteye farklı bir uzantıyla yüklemek, bir .htaccess dosyasıyla bu (zararsız görünen .jpg gibi) uzantılı dosyaların cgi script olarak çalıştırılmasını sağlamak ve bu script ile sunucuya ilişkin bilgi toplamak ve hatta değişiklikler yapmak. bu saldırıyı sunucuya dosya yükleme yetkisi olan kullanıcılarınızdan birisinin yapması, diğer kullanıcıların ve sistem dosyalarına erişmesi daha da kolay.

aklıma gelen önlemlerden ilki kullanıcı dosyalarının bulunduğu bölümü (genellikle /home) kod çalıştırılmayacak şekilde bağlamak. bunun için /etc/fstab dosyasında noexec parametresini kullanmak gerekiyor.

eğer halihazırda çalışan bir sunucuda bu işlemi yapacaksanız, ve diskler RAID ile kullanılıyorsa işiniz biraz daha karmaşık.

ben şuradaki adımları izledim, hiçbir sorun yaşamadım:

SSH Tüneli ve SSH Ters Tüneli

Sefa Grid’in blogunda oldukça güzel anlatmış. Her ofis çalışanı için gerekli bilgiler…

http://blog.grid.org.tr/?p=69

http://blog.grid.org.tr/?p=82

Ubuntu Linux’ta OpenCV

Kurulum

Önce Ubuntu’muzun güncel olduğundan emin olalım:

sudo apt-get update
sudo apt-get upgrade

Gerekli paketleri kuralım:

sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev

OpenCV’nin resmi sitesinden veya Github’dan kaynak kodlarını indirelim.

OpenCV’yi derlemek ve yüklemek için:

mkdir build
cd build
cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
make

sudo make install

OpenCV için birkaç ayar yapmak gerekiyor. /etc/ld.so.conf.d/opencv.conf adında bir dosya oluşturup içine şu satırı yazalım:

/usr/local/lib

Ve şu komutu çalıştıralım:

sudo ldconfig

/etc/bash.bashrc dosyasının sonuna da şunları ekleyelim:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

Tamamdır, şimdi bilgisayarı kapatıp açabiliriz.

Örnek Uygulama

Şimdi de basit bir örnek deneyelim…

 

 

 

kaynaklar:

  • http://miloq.blogspot.com/2012/12/install-opencv-ubuntu-linux.html
  • http://stackoverflow.com/questions/15320267/package-opencv-was-not-found-in-the-pkg-config-search-path
  • http://www.youtube.com/watch?v=_eo-kjC05Io
  • http://mechomaniac.com/OpenCVBallTracking
  • http://docs.opencv.org/doc/tutorials/introduction/linux_gcc_cmake/linux_gcc_cmake.html

Mac’den Linux’a Wifi Interneti Ethernet İle Paylaştırmak

Beagleboard’umun bir Wifi adaptörü olmadığı ve arka odadan salondaki ADSL modeme kadar ethernet kablosu da çekmek istemediğim için ihtiyaç oldukça Macbook’umun Wifi ile bağlandığı internetini Beagle’a ethernet kablosu ile paylaştırıyorum. Bunun için şu adımları takip etmek gerekiyor:

1- Mac’de System Preferences / Sharing’den Internet Sharing’i aktif hale getirin.

Share your connection from: Wi-Fi
To computers using: Ethernet

Internet Sharing

2- Mac’de Wifi ağa bağlı olduğunuzdan ve internete girebildiğinizden emin olun.
System Preferences / Network’den Ethernet bağlantısı için Manually’yi seçin ve bir IP adresi girin.

mac network

mac network 2

3- Linux’da ağı ayarlayın ve tekrar başlatın:

$ more interfaces 
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.3.40
netmask 255.255.255.0
network 192.168.3.0
broadcast 192.168.3.255
gateway 192.168.3.1

$ ifconfig
eth0      Link encap:Ethernet  HWaddr 36:ea:73:e5:03:73  
          inet addr:192.168.3.40  Bcast:192.168.3.255  Mask:255.255.255.0
          inet6 addr: fe80::34ea:73ff:fee5:373/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:7342 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5165 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:3936991 (3.9 MB)  TX bytes:524362 (524.3 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:247 errors:0 dropped:0 overruns:0 frame:0
          TX packets:247 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:24862 (24.8 KB)  TX bytes:24862 (24.8 KB)


$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.3.1     0.0.0.0         UG    0      0        0 eth0
192.168.3.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

$ sudo /etc/init.d/networking restart

Hack’lenince Yapılacaklar :(

hacked

Umarım ihtiyacınız olmaz, ama eğer olur da Linux sunucunuz hack’lenirse yapmanız gerekenleri önceden bilmekte fayda var: Investigating Compromised Servers

W3 Total Cache Feed’lerin güncellenmesini engelliyor

WordPress’i hızlandırmak için yüklediğim W3 Total Cache eklentisi ve APC sitenin hızını önemli oranda artırdı. Ancak feed’lerin güncellenmediğini farkettim. Aslında ilginç bir durumdu çünkü tarayıcıdan baktığımda son yazıları da görüyordum ama wget ile aynı sayfayı çektiğimde yeni yazılar gelmiyordu. Sorun W3TC’in giriş yapmış kullanıcılar için önbellekleme yapmaması, giriş yapmamış ziyaretçilere ise önbellekten vermesiydi.

W3TC’in Page Caching ayar sayfasında Feed’ler için önbelleklemeyi devre dışı bırakınca sorun çözüldü.1