08 September 2014

LibreOffice’den haberler…


Aslında uzun uzadıya yazacak çok şey var ama zaman olmadığından kısa kısa derlemek en iyisi…

  • TDF LibreOffice’in Android sürümü için ihaleye çıkıyor: Bilindiği üzere epeyce bir zamandır LibreOffice’in Android sürümü için çalışmalar yürütülmekteydi. Bu çalışmalar sıfırdan bir uygulama yazmanın zorluğu ve LibreOffice camiasının bu konuda yeteri kadar donanımlı ve platforma hakim katkıcıları olmadığı için ağır aksak ilerlemekteydi, temel belge görüntüleyicisi üzerinde Smoose vb gibi şirketlerin sponsorluğunda biraz ilerleme kaydedilmişse de temek çerçeve oluşturma meselesi istenilen hızla ilerlemedi. Bu yüzden The Document Foundation LibreOffice’in Android sürümün temel çerçevesini oluşturmak ve üzerine temel özellikleri inşa etmek için ihaleye çıkma kararı aldı. Bu ihale ile Şubat 2015′de temel düzenleme özellikleri çalışır halde bir Android uygulamasına kavuşmak hedefleniyor. İhale duyurusunu şuradan okuyabilirsiniz. Türkiye’den de bu ihaleye katılmak isteyen şirketler olursa çekinmeden başvursunlar derim.
  • TÜBİTAK’ın yazılım uyum sorunları yaşanmayacak olan bilgisayarlarda LibreOffice ve Pardus kullanılması ile ilgili bir genelge yayımladığını duyduk. Detaylarını öğrenmek için bu genelge ve hedeflenen bilgisayar sayısı gibi rakamlara ulaşmak için ilk fırsatta bir girişimde bulunacağım. Bu bilgiler ile güzel bir göç haberi hazırlayabilir ve küresel olarak da duyurabiliriz.. Şayet bu yazıyı okuyan yetkili varsa, bilgileri temin ederse çok daha iyi olur. Bu tür göçler bizim için önemli, hele TÜBİTAK gibi bu konuda yıllardır bir şekilde öncülük etmeye çalışan bir kurum için gecikmiş bir karar. Şahsi görüşüm ise daha önce de dediğim gibi, yazılımı sadece kullanmak değil, üretimine de katkıda bulunmak gerekir, bu sebeple TÜBİTAK’ın olması gereken yer kurumsal kullanıcıdan öte TDF Tavsiye Kuruluna üye olmak ve/veya LibreOffice geliştiricisi istihdam etmek… Türkiye’deki kullanım ve Türkçe için yapacak çok şey var…
  • Üyesi bulunduğum TDF’nin Üyelik Komitesi seçimleri yapılıyor. Bu seçimde aday oldum. Seçim duyurusu şurada ve adaylık için öz tanıtımım da şurada. Seçileceğimi sanmıyorum ama vakıfta görev almak ve seçimlerin daha zengin olması için aday oldum.
  • LibreOffice konferansı bu yıl Bern’de gerçekleştirildi. Ülkemizden geçen yılki konferansa katılmış olan Efe Gürkan Yalaman bu yıl da GSoC öğrencisi olarak Bern konferansına katıldı. Detaylarını günlüğünde yazar diye tahmin ediyorum. Konferansla ilgili haberleri gezegenden ve sunum ve diğer içeriği ise konferans sitesinden okuyabilirsiniz.
  • Önümüzdeki yıllardaki LibreOffice konferansını Türkiye’de gerçekleştirmek için sevgili Volkan Evrin niyetli… LKD öncülüğünde bu organizasyona ev sahipliği yapabiliriz diye düşünüyorum ama organizasyon işi benim pek becerebileceğim bir şey değil. Başvuru vs süreçlerde elimden geleni yaparım. Ama organizasyonun maddi/manevi ve lojistik kısımları ile ilgili durumlar nasıl olur bilemiyorum. Dediğim gibi anladığım şeyler değil.

Haberler böyle… LibreOffice’in özgür yazılım dünyası için ne kadar önemli olduğunu söylemekten sıkıldım, tamam ofis yazılımına katkı vermek kolay değil ve sıkıcı bir alan diye düşünülebilir ama sahip çıkmadan da olmuyor. Bu nedenle özellikle eli kod tutan ve zamanı olan özgür yazılım severleri LibreOffice’e katkı vermeye çağırıyorum.

Mutlu günler.



05 September 2014

Vimdiff Kullanımı


İki yada daha fazla txt dosyalarının, vim editörün diff mode özelliğini kullanarak diff farkını görmek için kullanılır. Vim text editörünün diff modda çalıştırılması ( vim -d ) ile vimdiff komutunu vererek çalıştırmak arasında bir fark yoktur. Aşağıdaki resimdeki gibi dosyalar açıldığında koyu kırmızı satırlar, iki dosya arasındaki diff farkını gösterir. ” –#########– “şeklinde dosyaların başında ve sonunda görünmesinin sebebi, o satırların iki dosyada da aynı olmasıdır. Vimdiff, fark bulunmayan satırları göstermez.

Kullanımı

# vimdiff file1 file2 [file3 [file4]]
# vim -d file1 file2 [file3 [file4]

httpd.conf ( resimde solda ) ve apachenin kaldırılması sonucunda oluşan httpd.conf.rpmsave dosyalarının aralarında diff farkına bakalım,

# vimdiff httpd.conf httpd.conf.rpmsave

Editör içerisinde iken iki dosya arasında gezinmek için aşağıdaki kısayollardan biri kullanılabilir;

  • Ctrl+W + Ctrl+W
  • Ctrl+W + W

İki dosya arasındaki farkları uygulamak için aşağıdaki editör komutları yada kısayolları kullanılır,

  • :[range]diffput ( yada dp kısayolu ), imlecin bulunduğu satırındaki değişikliği karşı dosyaya uygulayarak, karşı dosyanın aynı satırını değiştirir. ( put )
  • :[range]diffget ( yada do kısayolu ), imlecin bulunduğu satırı, karşıdaki dosyanın aynı satırına göre, imclecin bulunduğu satırı değiştirir. ( get )

diffput yada diffget komutların başlarında range kullanılmaması durumunda, farklı satırların alt alta olması durumunda vim grup olarak  değişiklik uygular. Sadece satırda değişiklik yapmak için diffget ve diffput aşağıdaki şekilde kullanılır.

  • :39,diffget  ; 39. satırı karşı dosyadaki aynı satıra göre imlecin bulunduğu satırı değiştirir.
  • :299,diffput ; Karşı dosyadaki 299. satırı değiştir.
  • :200,$diffget ; 200. satırdan sonra son satıra kadar değişiklikleri uygular.

Vim diff mode özelliğini daha ayrıntılı incelemek için man sayfasına bakabilirsiniz.

 



04 September 2014

Ubuntu Kurulumundan Sonra Ev Dizinini Şifrelemek


Ubuntu işletim sistemini kurarken kullanıcıların karşılaştığı ekranlardan birisinde kullanıcının ev dizininin şifrelenmesini isteyip istemediği sorulur. Bu işlem, küçük bir miktar performans kaybı karşılığında kullanıcınızın ev dizinini kullanıcı parolası girilene kadar okunamaz biçimde şifrelenmesini ve kullanıcının oturumu açık olduğu müddetçe şifrelenen dosyaların içeriğine düzgünce erişilebilmesini sağlar. Örneğin kullandığınız bilgisayarınızın çalınması durumunda bilgisayarınızı çalan kişi(ler) sizin kullanıcı parolanızı bilemeyecekleri için size ait dosyaların içeriklerine asla erişemeyecektir.

Bu faydalı seçeneği kurulum sırasında işaretlememeyi tercih ederseniz bütün dosyalarınız herhangi bir özel işleme gerek kalmadan erişilebilir halde duracaktır. Eğer bu seçeneğe kurulumdan sonra ihtiyaç duyarsanız Ubuntu’nuzu tekrar baştan kurmak zorunda değilsiniz; tek yapmanız gereken aşağıdaki adımları takip etmek.

    1. Bilgisayarınızda geçici bir süreliğine yönetici haklarına sahip ikinci bir kullanıcı yaratın. Bunun sebebi, ev dizini şifrelenecek olan kullanıcının kendi kendine bu komutu çalıştıramıyor oluşu.
    2. Ev dizini şifrelenecek olan kullanıcınızın oturumunu tamamen kapatıp bir önceki adımda yarattığınız kullanıcı hesabına giriş yapın.
    3. Yeni yarattığınız kullanıcının yönetici haklarından faydalanarak aşağıdaki komutu çalıştırın. Bu komut, bilgisayarınıza ev dizininizi şifrelemenizi sağlayacak olan paketleri kurar.
      sudo apt-get install ecryptfs-utils cryptsetup
    4. Yeni kullanıcı hesabınız şifreleme işlemini başlatmak için aşağıdaki komutu çalıştırın.
      sudo ecryptfs-migrate-home -u kullanici_adi
    5. Enter tuşuna bastığınız zaman sizden ev dizini şifrelenecek olan kullanıcının (az önce yarattığınız kullanıcının değil) parolasını yazmanız istenecek. Parolanızı yazdıktan sonra ev dizininizin boyutuna bağlı olarak süresi uzayabilecek olan şifreleme işlemi başlayacak.
    6. Burası önemli: Şifreleme işlemi bittikten hemen sonra bilgisayarınızı yeniden başlatmadan kendi kullanıcı hesabınızla oturum açın. Eğer herşey yolunda gittiyse karşınıza her zamanki dosyalarınız çıkacak ve bir pencerede size şifreleme işlemiyle ilgili bir bilgi verilecek. Bu penceredeki butona tıkladığınızda size 32 karakter uzunluğunda bir parola verilecek, bunu güvenli bir yere not edin. Bu parola sayesinde dosyalarınızı gelecekte gerekirse elle kurtarabileceksiniz.
    7. Bilgisayarınızı yeniden başlatın. Eğer herşey eskisi gibi yolunda gidiyorsa /home/ dizini altında yaratılan kullanıcı hesabınızın yedek dizinini ve ilk aşamada yarattığınız geçici hesabı güvenle silebilirsiniz.

 



01 September 2014

cesi (Centralized Supervisor Interface)


    Supervisor had an interface but there were some shortcomings in the existing interface. Some shortcomings in the existing interface :

    -- Interface allows process management where supervisor's installed on computers but API allows management remote computers's process.

    -- No authorization. Anyone who can see the interface can do what you want.

    -- Process management were made without filters.

    I did my internship this summer with Kaan at Gamegos. We wrote an interface that complement these deficiencies. We use Python Flask and Jquery. I did not pack for now. I've described how to install at README. I'll explain the use of the interface on this blog.

    You can find the project here

  DASHBOARD
--------------------------

    This page is the first page you will see when the program runs. We can see that the total number of nodes , number of connected nodes and number of not connected nodes. Also we can see total number of process , number of running process, number of stopped process and the last 12 lines of activity log.













    NODE
----------------
 
    Node is a feature that provides be central of this interface. Each node corresponds to a different supervisor that we contacted. We should write into /etc/cesi.conf host port username and passwors information of every supervisor that we want to connect. (Node names must be unique.):

  [node:gulsah]
 username = gulsah
 password = ***
 host = gulsah.xyz.com
 port = 9001
    
     A list opens when we click on the node. This list is a list of nodes in the configuration file. If connected node node name must be the beginning of a checkbox. If there is a problem with the connection at the beginning of the node name will be an "x". We can manage the processes of selecting the node we want.


   ENVİRONMENT
----------------------------

    Environments are communities of nodes. It is a filtering option.This option provides stop start or restart process that environment name x and node name y. We can define the environment as much as we want. Environment names must be unique.

  [environment:market]
  members = gulsah, kaan

     A list opens when we click on the environmet. This list is a list of environments in the configuration file. When clicked an environment opens a list that include nodes that connected and members of that environment . We can manage the processes of choosen nodes.











  GROUP
---------------


   Group is a feature that already exists in the program. We don't need write in /etc/cesi.conf  . It is a filtering option provides stop start or restart process that group name x and environment name y.

    When clicked group option, opens a list that groups. When clicked a group opens a list of environment which include that group name.

  *The same process must not belong to more than one group.










 



 SHOW ALL
---------------------

    Show all option provides manage all node's processes.




















     We can subselection on tables. We can checked begin of process. By clicking the button above the table, action runs for checked process.


    We must write database and activity log path into /etc/cesi.conf before programs running.

    [cesi]
    database = /x/y/userinfo.db
    activity_log = /x/y/cesi_activity.log


   USER LEVEL
-------------------------

   Admin:
   -- Only admin can add or delete a user. They can do everything related to all process.

  Standart User:
   -- Standart users can't delete or add user but can everything else.

  Only Log
  -- Only log users can view process and read processes logs.

  Read Only
  -- Read only users only can view processes.




    When program run first time default username and password are "admin". Admin change own password using by change password option. If necessarily admin can add a user what type you want. when new users logged in,  they can change own password by change password options.


User addition panel:    
















User deletion panel:



Thanks to Kaan Özdinçer for support.








30 August 2014

Ajenti (Web Tabanlı Kontrol Paneli) ile Linux Yönetimi


Genelde, Linux hostlarda her tür sistem yönetimi işininin komut satırı üzerinden ve mümkünse otomatize bir şekilde yapılmasını tavsiye ediyorum. Zira bu şekilde sistem altyapısına daha fazla hakim olabildiğiniz gibi komut satırından çalışmak bir arabirim üzerinden çalışmaya oranla yaratıcılığı da tetikleyen bir konu olduğundan epeyce önemlidir. Ancak bazı durumlarda sistemlerinizi -tercihen web üzerinden çalışan bir- arabirim üzerinden de yönetmek isteyebilirsiniz.

İşte böyle bir ihtiyaç hasıl olduğu zaman çözüm olarak Ajenti isimli web tabanlı kontrol panelini kullanabilirsiniz. Plesk, cPanel ve Webmin gibi yönetim arabirimlerine güzel bir altrenatif olan Ajenti AGPLv3 lisanslı bir açık kaynak kod yazılım olmakla birlikte hosting işi yapmıyorsanız ya da ticari olarak vps’lerinizin yönetimi için kullanmamanız durumunda yani iş ve evdeki sunucularınızın yönetimini yapmak üzere personal license adı altında tüm sunucularınıza ücretsiz olarak kurup kullanabiliyorsunuz. Hosting yönetimi, VPS ve appliance ürünlerde kullanmak için ise lisans detayları ayrıca şu sayfayada bulunuyor: http://ajenti.org/licensing

Ajenti’nin yum ve apt repoları bulunduğu için RHEL ve Debian tabanlı tüm sistemlerde doğrudan paket yöneticisi üzerinden kurulabiliyor. Bu şekilde oldukça kolay bir kurulama sahip olması ve modüler plugin sistemi sayesinde sunucularınızın üzerinde koşan hemen her türlü bileşeni (Apache, MySQL, PostgreSQL, Nginx, Cron, Firewall, Munin, Samba, FTP, BIND, Squid, OpenVPN vs. ) -eski yapılandırmanızı da bozmadan çalışan sistemlere direk entegre olarak- yönetebilmesi ve API desteği ile kolay plugin geliştirme (python) imkanı vererek kendi özel uygulamalarınız için Ajenti pluginleri yazabilmenize olanak sağlaması gibi gayet güzel özellikler sunuyor. Ayrıca çok küçük bir footprint’e sahip olmasından dolayı küçük memory ve CPU kullanım değerleri ile de oldukça hafif bir uygulama olmasından dolayı tercih edilebilecek bir çözüm sağlıyor.

Aşağıda RHEL/CentOS üzerine Ajenti kurulumun nasıl yapılacağından bahsedeceğim. İlginizi çekerse kurmak isteyebilirsiniz:


Devamini okuyun: Ajenti (Web Tabanlı Kontrol Paneli) ile Linux Yönetimi


Cagri Ersen tarafından Syslogs adresinde yayınlandı. | Permalink | Etiketler: , ,



29 August 2014

cesi (Centralized Supervisor Interface)



    Bir önceki yazımda Supervisordan bahsetmiştim. Supervisor arayüzden de komut satırından da kullanılabilen bir API si olan Unix benzeri işletim sistemleri üzerinde çalışan bir süreç yönetim sistemidir. Bazı eksikleri şöyleydi:

  -- Supervisorun varolan arayüzü sadece kurulu olduğu makine üzerindeki süreçleri yönetebiliyordu. Ama API uzaktaki makinelerle iletişim kurmaya izin veriyordu.
  -- Arayüzde herhangi bir yetkilendirme seviyesi yoktu. Arayüzü görebilen herkes süreçlerle ilgili istediğini yapabiliyordu.
  -- Herhangi bir şekilde süreçler filtrelenerek yönetilemiyordu. Ya tek tek ya da hepsiyle birden iş yapılabiliyordu.

    Bu yaz stajımı Gamegos'ta Kaan'ın mentörlüğünde yaptım. Yaptığımız iş Supervisor'a yukarıda bahsettiğim eksiklikleri gideren yeni bir arayüz yazmaktı. Yeni arayüzü Python Flask ve Jquery kullanarak yazdık. Şimdilik paketlemedim. Nasıl kurulacağını projenin README kısmında açıkladım. Bu blogta arayüzün yeteneklerini ve kullanımını anlatacağım.
  Projeyi buradan bulabilirsiniz.

  DASHBOARD
--------------------------

    Program çalıştığında karşımıza gelen ilk sayfadır. Toplamda kaç node olduğunu kaçının bağlı kaçının sorunlu olduğunu, toplam kaç süreç olduğunu kaçının çalışıp kaçının durmuş olduğunu ve kullanıcının arayüzde yaptığı işlemlerin logunun son 12 satırını görüntüleyen paneller var.













    NODE
----------------
   
    Node özelliği bu arayüzün merkezi olmasını sağlayan özelliktir. Yani her bir node bizim iletişim kurduğumuz farklı bir supervisora denk geliyor. Kaç tane süpervisor ile iletişim kuracaksak hepsinin host port kullanıcı adı parola bilgilerini /etc/cesi.conf içine şu şekilde yazmalıyız (node isimleri eşsiz olmalıdır) :

  [node:gulsah]
 username = gulsah
 password = ***
 host = gulsah.xyz.com
 port = 9001
    
     Node seçeneğine tıkladığımızda açılan liste yapılandırma  dosyasındaki nodeların listesidir. Node eğer bağlıysa node  isminin  başında bir checkbox olacaktır. Bağlantıda bir  problem  olmuşsa node isminin başında bir çarpı olacaktır.  Buradan istediğimiz nodeları seçerek süreçlerini  yönetebiliriz.


   ENVİRONMENT
----------------------------

    Nodelardan oluşan topluluklardır. Bir filtreleme seçeneğidir. Environment'ı x node ismi y olan süreçler hakkında şunları yap dememize imkan tanır. İstediğimiz kadar environment tanımlayabiliriz. Environment isimleri eşsiz olmalıdır. /etc/cesi.conf  dosyasında şöyle tanımlanır:

  [environment:market]
  members = gulsah, kaan

  Arayüzde environment seçeneğine tıkladığımızda o environmenta üye olan ve bağlantısında problem olmayan nodeların listesini görürüz. Bu nodelardan hangisini seçersek onların süreçlerini yönetebiliriz.











  GROUP
---------------


   Grup zaten Supervisor'un sağladığı bir özellikti. Bu yüzden /etc/cesi.conf içine bununla ilgili birşey yazmaya gerek yok. Supervisor'un yapılandırma dosyasında tanımlanır. Süreçler bir gruba eklenebilir. Eğer sürecin grubu yoksa varsayılan olarak grup adı sürecin adı olur. Bu da arayüzde bir filtreleme seçeneğidir. Grubu x environmeti y olan süreçler için şunları yap deme imkanı sağlar.

    Arayüzde grup seçeneğine tıkladımızda içinde o grubu bulunduran  environmetların listesini görürüz. Buradan hangi environmentleri seçersek grubu seçtiğimiz grup, environmenti seçtiğimiz environment olan süreçleri görüntüleyip yönetebiliriz.

  *Aynı süreç birden fazla gruba ait olmamalıdır.










  SHOW ALL
---------------------

Show all seçeneği ne kadar node ve onların ne kadar süreci varsa hepsini birden görüntülemeyi ve yönetmeyi sağlar.




















    Ayrıca herhangi bir şekilde görüntülediğimiz tabloların üzerinde alt seçimler de yapabiliriz. O anda görüntülediğimiz süreçlerden hangisinin başındaki checkbox işaretliyse tabloların üstündeki turuncu butonları kullanarak sadece o süreçleri durdurup başlatabiliriz.


    Program çalıştırılmadan önce yapılandırma dosyasında veritabanı ve kullanıcı loglarının tutulduğu dosyaların yolunu /etc/cesi.conf dosyasında şu şekilde belirtmeliyiz:

    [cesi]
    database = /x/y/userinfo.db
    activity_log = /x/y/cesi_activity.log


   KULLANICI SEVİYELERİ
--------------------------------------------

   Admin:
   -- Kullanıcı ekleme silme işi sadece admin tipindeki kullanıcılar tarafından yapılır.
   -- Tüm süreçlerle ilgili herşeyi yapabilirler.

  Standart User:
   -- Tüm süreçler hakkında herşeyi yapabilir.

  Only Log
  -- Süreçlerin hepsini görüntüleyebilir
  -- Süreçlerin sadece loglarını okuyabilir.

  Read Only
  -- Sadece süreçleri görüntüleyebilir. Herhangi bir şeye müdahale edemez.




    Program ilk kurulduğunda varsayılan kullanıcı admindir. Kullanıcı adı ve parolası "admin" dir. Change password seçeneğini kullanarak admin ilk olarak parolasını değiştirmelidir. Gerek varsa istediği yetkilerde yeni kullanıcılar ekleyebilir. Eklediği yeni kullanıcılarda oturum açtıklarında aynı şekilde parolalarını değiştirebilirler.


Kullanıcı ekleme paneli:      
















Kullanıcı silme paneli:



Desteği için Kaan Özdinçer'e teşekkürler. 









28 August 2014

Kişiselleştirilmiş Veri Bize Ne Sağlamaz?


Veri işlemenin/veriyi analiz etmenin popülerleşmesiyle beraber kişinin davranışlarını analiz ederek kişiye özel hizmetlerde bulunmak (personalization / kişiselleştirme) artık bir çok alanda olmazsa olmazlardan biri haline geldi. Kişiselleştirme kavramının daha iyi anlaşılması adına basit bir örnek vereyim. Bir gün e-posta kutunuzu açtınız ve Amazon’un size bir kaç kitap önerisi ile geldiğini gördünüz. Peki nasıl oldu da binlerce kitap arasından sizin okuyacağınızı Devamını Oku […]

24 August 2014

ncdu – Disk Kullanımı Görüntüleme Aracı


Normalde dosya ve dizinlerin sistemde ne kadar yer kapladığını görmek için du (ya da find) komutu kullanır ve konsol üzerinden gerekli bilgiyi ediniriz. Her ne kadar du komutunun çıktısını düzenlemek için bir çok parametre bulunsa da genel anlamda du çıktısı özellikle Linux ile yeni tanışan kişiler için karışık olabilir. İşte bu nedenle, du’nun yaptığı işi yapan ancak çıktı olarak ncurses kullandığından dolayı text-tabanlı da olsa grafiksel sonuç döndüren “ncdu” isimli bir uygulama bulunuyor.

Ncdu hem okunaklı çıktı üretmesi hem de uzak hostlarda doğrudan çalıştırılabilmesi gibi özelliklerinden dolayı epey kullanışlı bir araç. Bulunduğunuz dizinde ncdu’yu çalıştırdığınız zaman aşağıdaki gibi bir çıktı alıyorsunuz:

Devamini okuyun: ncdu – Disk Kullanımı Görüntüleme Aracı


Cagri Ersen tarafından Syslogs adresinde yayınlandı. | Permalink | Etiketler: , ,



17 August 2014

Madrid-Toledo-Barselona Gezisi, 3. Gün: Madrid


İspanya gezimizin 3.gününde Madrid’i gezmeye erken başladık. Hava bulutlu olduğu için gezmek daha kolay olacaktı. Sırt çantamızı ve fotoğraf makinemizi alıp önce otelimizin 100 metre uzağındaki Plaza Mayor meydanına gittik. Sabah saatlerinde boş olan meydanı gezmeyi daha sonraki saatlere bırakıp asıl hedefimiz olan Palacio Real de Madrid (Kraliyet Sarayı) ‘e doğru yürümeye başladık. Çok düzenli …

Madrid-Toledo-Barselona Gezisi, 2. Gün: Toledo


İspanya’da 2.günümüzü bir ortaçağ şehri ve aynı zamanda İspanya’nın eski başkenti olan Toledo ‘da geçirmek için ayarlamıştık. Henüz gelmeden önce hızlı tren biletlerimizi almıştık. Hızlı trenle yaklaşık 30 dakika süren yolculuğun biletleri Renfe web sitesinden online olarak alınabiliyor. Online biletlerin fiyatı kişi başı 10 euro civarındaydı. Sabah saat 8:00 gibi kalkıp 8:50’deki trene yetişmeye çalıştık …

15 August 2014

Aman Oracle Duymasın!


Basında çıkan haber/yorumların altında imzanın olmamasını hep garip buluyorum. Köşede yazanların ismi var da bu tip saçma haberleri yazanların neden ismi yok!

Oracle firması’ni Eski CIA ajanları kurmuş; merak ediyorum bundan firmanın haberi var mıydı?

Oracle bu kadar tehlikeli bir firma ise neden üniversitelerimiz (üstüne para verip) Oracle veritabanı kullanıyor? Hatta TTNET’de Oracle ürünü kullandığına göre tüm internet trafiğimiz tehlikede olmasın!

Kripto telefon casusluğu’ skandalının ardından görevinden alınan Hasan Palaz’ın TÜBİTAK BİLGEM Başkanlığı döneminde hazırlanan şartnameyle, yeni biyometrik kimlik kartlarının ihalesi ‘adrese teslim’ şekilde ABD’li Gate Elektronik’e verilmek istenmiş, skandalın ortaya çıkmasıyla bu ihale iptal edilmişti. Paralel örgütün, eski CIA ajanlarının kurduğu Oracle şirketince üretilen yazılımı kullanacak Gate Elektronik vasıtasıyla vatandaşların ‘avuç içi damar yapısı’ da dahil bütün bilgilerini elde etmeyi amaçladığı vurgulanıyor.

Kaynak: Yeni Şafak, Alıntı Kaynağı: http://www.haber10.com/haber/530625/

Hepsi yerli olacak bu yazılım’ın veritabanı bakalım ne kadar Yerli! olacak.



14 August 2014

Madrid-Toledo-Barselona Gezisi, 1. Gün: Madrid


Uçağımız Madrid için Sabiha Gökçen Havalimanı’ndan kalkarak 4 saatlik uçuş sonrasında saat 14:30 civarında Aeropuerto Adolfo Suárez Madrid-Barajas (MAD) havalimanına indi. Havalimanından şehir merkezine ulaşmak içn metro kullandık. Metro için 10 kullanımlık bir kart aldık, fiyatı 18.50 euro. İstanbul’dan farklı olarak Madrid metrolarında o turnikeden bu turnikeye girip çıkmanıza gerek yok, birinden diğerine aktarma yapmak …

Madrid-Toledo-Barselona Gezisi


Avrupa’da görmeyi istediğim şehirlerden ikisini birden görmek için bu yıl İspanya’ya gitmeyi istiyordum. Bu yüzden 2014 Nisan içerisinde Madrid ve Barselona’ya gitmek için Pegasus’tan Temmuz ortasına indirimli bilet buldum. Her ne kadar indirimli desem de Barselona biletleri Madrid’e göre pahalıydı. Planımız önce Madrid’e gidip 3 gün kalmak, daha sonra ise hızlı trenle Barselona’ya geçip toplam …

12 August 2014

Kurumsal Müşterilerin Segmentasyonu


Bu yazıda veri madenciliği, CRM ve müşteri segmentasyonu kavramlarından bahsedeceğim; konular hakkında kısa kısa ön bilgi sahibi olmak için wikipedia makalelerine bakabilirsiniz (Veri Madenciliği, CRM). Veri madenciliğinin CRM uygulamalarını araştırırken okuduğum kitaplarda ve makalelerde sürekli olarak eksik gördüğüm bir kısım vardı. Verilen örnekler, yapılan çalışmalar sürekli olarak son kullanıcıyı (consumer) dikkate alıyor ama kurumsal müşterileri dikkate Devamını Oku […]

08 August 2014

Linux Yaz Kampı 2014


Linux Kullanıcıları Derneği ve İnternet Teknolojileri Derneği tarafından her yıl düzenlenen Linux Yaz Kampı, bu sene 11 – 23 Ağustos tarihleri arasında Bolu Abant İzzet Baysal Üniversitesi‘nin ev sahipliğinde düzenleniyor.

Benim de eğitmen olarak katılacağım Linux Yaz Kampı 2014, farklı alanlarda, farklı bilgi düzeylerine hitap eden paralel sınıflarda gerçekleştirilen eğitimlerden oluşan ve sektörün ihtiyaç duyduğu Linux ve Açık Kaynak Kod teknolojilerle ilgili yetişmiş işgücü açığını kapatmaya yardımcı olmak üzere düzenlenen ve kar amacı güdmeksizin kamu yararına düzenlenen oldukça geniş kapsamlı bir eğitim organizasyonudur.

Türkiye’nin dört bir yanından gelen 300′ü aşkın üniversite ve kamu bilgi işlem personelleri, özel sektör çalışanları ve öğrencilerin yoğun bir eğitim programıyla bilgi düzeylerini yükseltmeyi ve kendi aralarında iletişimlerini arttırmayı hedefleyen kampta, 12 gün boyunca 80 saati aşkın eğitim ve ek olarak etüt çalışmaları yapılmaktadır.

Türkiye’de alanındaki tek eğitim kampı olması, geniş ve kaliteli eğitmen kadrosu, katılımın ücretsiz olması ile büyük ilgi toplayan Linux Yaz Kampı’nda bu sene 10 paralel sınıfta gerçekleştiriliyor. 4 sınıfı “Linux Sistem Yönetimi I-II” olmak üzere, “PHP ile Yazılım Geliştirme”, “Ruby/Rails ile Yazılım Geliştirme”, “Python/Django ile Yazılım Geliştirme”, “Java Programlamaya Giriş”, “Tersine Mühendislik”, “Web Uygulama Güvenliği ve Güvenli Kod Geliştirme” sınıfları da yer alıyor.

Kamp ile ilgili detaylı bilgi için http://kamp.linux.org.tr/2014/ adresini ziyaret edebilirsiniz.

Kampa katılacak arkadaşlarla orada görüşmek üzere.


Cagri Ersen tarafından Syslogs adresinde yayınlandı. | Permalink | Etiketler: ,



07 August 2014

XIX. Türkiye'de İnternet Konferansı ve Akademik Bilişim 2015


Türkiye'de İnternet Konferanslarının ondokuzuncusu bu yıl 26-29 Kasım 2014 tarihlerinde Yaşar Üniversitesinde yapılacak.

Onyedinci Akademik Bilişim Konferansı ise 4-6 Şubat 2015 tarihleri arasında Anadolu Üniversitesinde düzenlenecek.

Bilişim camiasının en büyük iki buluşmasını takvimlerinize şimdiden işaretleyin de sonradan keşke haberim olsaydı demeyin.

Linux sunuculara Iscsi storage bağlama


Linux sunuculara Iscsi storage bağlamak bir kaç adımdan oluşan bir süreç. Ben bu süreci Oracle Linux ve Qnap bağlantılı anlatmaya çalışacağım. Öncelikle linux iscsi için Initiator paketlerini kurmamız gerekiyor. [crayon-5408364ff2850143922336/]…

05 August 2014

apt-get Komutunun Güzellikleri


Debian tabanlı dağıtımlarda paket yönetim işleri için kullanılan apt-get’in birkaç farklı parametre ile çalıştırıldığını bilirsiniz. Bunların en sık kullanılanları olan install ile yeni paket kurulumu, remove ile kurulu paketlerin kaldırılması, upgrade ile kurulu paketlerin güncellenmesi gerçekleştiriliyor.

Aynı anda hem sistemde var olan paketlerin güncellenmesi, hem de yeni paketlerin kurulumu için ayrı ayrı önce apt-get upgrade, sonra apt-get install çalıştırmak yerine tek seferde “apt-get upgrade <yeni paket adı>” şeklinde bir komut çalıştırılabileceğini de 8 yıllık apt-get geçmişimde ilk defa bugün farkettim :)

                 (__) 
                 (oo) 
           /------\/ 
          / |    ||   
         *  /\---/\ 
            ~~   ~~   
..."Have you mooed today?"...


31 July 2014

Nerelerdeyim, neler yapıyorum…


Son yazımı yazalı epey bir zaman geçti. Yazmadıkça yazmıyor insan… Devamlılık gerektiren her eylem gibi yazmak da zor kazanılan ve çabuk kaybedilen bir alışkanlık.  Tabi bir de başka bir faktör var o da zaman… Yorgunlukla mücadele edebiliyor insan ama zaman ile mücadele edip daha fazlasını kazanmak çok ama çok zor.

İşyerinde  son altı aydır çok yoğun bir dönem geçirmekteyim . Gündüz yoğunluğu nöbetini akşamın yorgunluğuna ve boşvermişliğine devretmekte, ben ise kendimi hoyratça bu dar boşluğa bırakmaktayım.

Hobiler, sosyal yaşam, planlar ve hayalcilik gibi boş zamanını harcadığım faaliyetlerim de çok iyi gitmiyor haliyle. Bu güçlükle en çok yer ayırdığı konu olan özgür yazılım ve son iki yıldır LibreOffice ile ilgili şeylere de bakamıyorum gibi gibi görünse de asgari oranda bakabiliyorum diyebilirim. Yeni bir şey katmasam da olanı muhafaza etmeye gayret ediyorum. Sadece ben değil, gördüğüm kadarıyla birçok arkadaş da benzer bir atalet içerisinde.

İşte bu çerçevede ne yaptık ne ettik dersek şöyle bir liste ile durumu özetlemeye çalışayım:

  • LibreOffice’in yeni sürümü olan 4.3 duyuruldu. Sürüm notlarına şuradan bakabilirsiniz.
  • Mazoşist ıstırabımızın keyifli aralarından biri olan çevirilerini yetiştirebildik. Arayüz %99.9 seviyesine ulaştı. Bu çevirilerde sevgili Ayhan Yalçınsoy ve her zamanki gibi yaşı ve verdiği emeği en büyük olan -bu kısımda utanmaz gerekiyor- sevgili Necdet Hocamız büyük çaba gösterdiler. Ben de elimden geleni yapmaya çalıştım ama çeviri zamanımın büyük kısmını yeni Microsoft Office Excel işlevleri ve Calc işlevlerinin çevirilerini yeknesaklaştırmaya harcadım. Bununla ilgili ayrıca bir tablo da yapmıştım. Onu da güncellemem gerekiyor.
  • Bu 4.3 sürümün notlarında da adım geçiyor çok şükür. KK(QA) çalışmaları çerçevesinde 5 adet hatayı çözüldü işaretledim bu sayede adım sürüm notlarına geçti. Yeni kayıtlar girdim. Şimdiye kadar toplamda 44 hata kaydı girmişim. Bu sürüm öncesi Türkçe yerlerini ilgilendiren bir tanesi var ki önemliydi, çözüldü(Teşekkürler Eike).
  • Küresel pazarlama listesinde LibreOffice 4.4 için bir öneri sundum: İşletmeler için daha iyi bir LibreOffice sürümü olsun dedim, işletmeler için çözülmesi iyi olacak hata kayıtlarına yoğunlaşmayı önerdim. Bu konuda uzun bir tartışma olmasına rağmen net bir çizgi çizilmiş değil fakat konferans gündemine alınması da benim için mutluluk verici.
  • TDF üyeliğimi yeniledim. Ülkemizden tek üye benim.
  • Zemberek çok eskidi, Linux sürümleri üzerinde performans sorununa ek olarak tam olarak nedenini bulamasam da güncel Ubuntu 14.04 üzerinde çalıştıramadım. Bazı paketlerde sorun var sanırım… Bu konuda biraz daha araştırma yapmak gerekiyor. Şayet diğer Linux dağıtımlarında da benzer sorun yaşanırsa TÜBİTAK’ın çalışmayan bir Zemberek ile nasıl bir ofis deneyimi sunacağını merak etmiyor değilim. Zemberek’i kaybedersek önce TÜBİTAK düşünsün!
  • Yine Zemebrek demişken, gözümüz yollarda Zemberek 3′ü bekliyoruz fakat gelişmesi ne yazık ki pek kolay olmuyor, sevgili Ahmet A. Akın’dan başka bu işe elini bulaştıran yok. Yine burada iş Zemberek’in hamisi TÜBİTAK’a düşüyor…
  • TÜBİTAK demişken Micheal Meeks LibreOffice 4.3′ün kaputunun altında neler olduğunu yazdığı yazısında, LibreOffice’e kod katkısı veren kuruluş ilişikli kişiler grafiği yayımladı. İdeal tabloda TÜBİTAK imzalı geliştirici veya “o yeni modelde” TÜBİTAK’ın hizmet aldığı Türk yazılım şirketleri olmalıydı…Hala yok, beklemiyoruz da…
Kuruluşa göre kod gönderim grafiği

Kuruluşa göre kod gönderim grafiği

  • Yukarıdaki grafikle ilgili şunu da söyleyeyim, Suudi Arabistan Kral Abdülaziz Bilim ve Teknoloji Şehri(KACST) dahi The Document Foundation Danışma Kurulu’na üye oldu da TÜBİTAK hala olmadı… Kod dahi gönderiyorlar… Arapça ve sağdan sola yazılan diller ile ilgili çok güzel gelişmeler bu sayede oldu
  • Foruma birkaç kişi hariç ilgi düşük, wiki Allah’a emanet…
  • Topluluk olma adına çok aşama kaydedemedik. Hiç yoktan iyi ama bağlarımızı güçlendirmek adına bir hafta sonu İstanbul’da bir toplantı yapalım diyorum. Detayı planı ile ilgili fikir alış verişi için e-posta listemize ilk fırsatta bir ileti göndereceğim.
  • Kod katkısı olarak sevgili Efe Gürkan Yalaman bu yıl da GSoC’a katıldı, Şablon Yöneticisini iyileştirecek ama sesi soluğu çıkmıyor pek…
  • Türkiye’de özgür yazılıma olan ilgi ve katkı çok iyi seyretmiyor, haliyle LibreOffice’e de pek ilgi yok… Onca yazı yazdık, kod katkısı verin, Andorid sürümüne geliştirici olun diye ama önemsiz işlere bulaşmayan kod okur yazarlarımızın dikkatini çekemedik maalesef.

Velhasıl-ı kelam, ölmesek de sürünmeye devam ediyoruz, bireysel yük ile 5-10 kişi çeşitli alanlarda dağınık zamanlarda katkı vermeye devam ediyoruz. Her alanda katkıcıya ihtiyacımız var. Bekleriz.

Mutlu günler.

PS: Bu yazıya tablette başladım, telefonda devam ettim ama fiziki klavyesiz olmuyor…



29 July 2014

Yaz Stajım-2


Merhaba, bu yıl stajımı Metglobal'in sistem yönetimi bölümünde yaptım. Uğraştığım işten ve bana kazandırdıklarından kısaca bahsedeyim istiyorum.

Şirketin Amazon'da baya sunucusu var. Kullandıkları araçlardan biri de Puppet. Ne olduğu hakkında burada bir yazım var. Puppet'a eklenen yeni bir sertifika çeşidi "Policy-Base Autosigning". Öncekinden farkı da, makinalar arası imza gerçekleşmeden önce, yazılan sorgu çalışıp, sonucuna göre işlem yapılıyor. Kısaca daha fazla güvenli diyebiliriz.

Benim yaptığım iş ise imzalanmak için master'a gelen sertifikayı  çözüp, bazı bilgileri çekerek Python ile sorgulamaktı. Örneğin, imzalanmak için gelen sertifikadaki instance_id şirketin sunucularından birine mi ait, ya da hostname'leri, common_name'leri uyumlu mu gibi.. Sorgu yazma daha kısa süren kısımdı. Puppet nasıl çalışıyor, sertifika yönetimi nasıl oluyor, master makinada talimatlar nasıl yazılıyor kısımlarını deneyip test etmem daha çok zamanımı aldı.

Sertifika kodunu çözerken OpenSSL'i, sorguları yaparken AWS arayüzü için kullanılan Boto'yu öğrendim. Son olarak, imza gerçekleşmediğinde uyarı olarak mail ve log yazma kısmı ekledim. Mail atma kısmında da smtplib kütüphanesiyle uğraştım.

Bu teknik deneyim dışında, birlikte çalıştığım ekibi çok sevdim. Emre'ye, Aydan'a, Barış'a, Kubilay'a ve Eray'a ve Simge'ye buradan teşekkür edeyim. Geçirdiğim 4 hafta yoğun olduğu kadar çok da eğlenceliydi :)


Son olarak Kubilay'ın yorumu ile yazımı bitireyim: "Tanrıığm çok tatlışız değil miğğ !!"  :):)









Gog.com Oyunlarının Linux Sürümleri Yayınlanmaya Başladı


Aralarında DefCon gibi hep merak ettiğim oyunların da bulunduğu bir yığın oyunun Linux sürümleri DRM sınırlamasız olarak Gog.com tarafından yayınlandı.

http://www.gog.com/news/gogcom_now_supports_linux

Mutlaka gözden geçirin.

 

Anomaly Warzone Earth
Ascendant
Bionic Dues
Blake Stone: Aliens of Gold – first time on Linux!
Blake Stone: Planet Strike – first time on Linux!
Bloodnet – first time on Linux!
Braveland
CLARC – first time on Linux!
Darklands – first time on Linux!
Darwinia
Defcon
Don’t Starve + DLC
Dragonsphere – first time on Linux!
Duke Nukem 3D: Atomic Edition
FlatOut – first time on Linux!
Flatout 2 – first time on Linux!
Fragile Allegiance – first time on Linux!
Gemini Rue
Gods Will Be Watching
Hammerwatch
Hocus Pocus – first time on Linux!
Kentucky Route Zero
The Last Federation
Legend of Grimrock
Litil Divil – first time on Linux!
Long Live the Queen
MouseCraft
Multiwinia
Normality – first time on Linux!
Pinball Gold Pack – first time on Linux!
Pinball World – first time on Linux!
Pirates! Gold Plus – first time on Linux!
Realms of the Haunting – first time on Linux!
Rex Nebular and the Cosmic Gender Bender – first time on Linux!
Rise of the Triad: Dark War – first time on Linux!
Shattered Haven
The Shivah HD
Sid Meier’s Colonization – first time on Linux!
Sid Meier’s Covert Action – first time on Linux!
Sir, You Are Being Hunted
Slipstream 5000 – first time on Linux!
Space Pirates and Zombies
Spacechem
Stargunner – first time on Linux!
SteamWorld Dig
Super Hexagon
Surgeon Simulator 2013
Sword of the Samurai – first time on Linux!
Teslagrad
Unrest:Special Edition (Linux build on the way!)
Uplink
VVVVVV

 

Giresun, Espiye ilçesi Tarivermiş yaylası/obasından selamlar…
Not: Yaylamızda hala elektrik bulunmamaktadır.

_MG_5525



28 July 2014

Ossec Merkezi Agent Yapılandırması


Daha önce Linux Akademi’nin Blog’unda Ossec (HIDS) Kurulumu ve Yapılandırma‘sını anlatan bir döküman yayınlamıştım. İlgili dökümandan hareketle kurulan Ossec sistemlerinde, agent’lar üzerinde yapılacak dosya bütünlük kontrolü, rootkit tespiti ve log monitoring gibi işlemlerde hangi dosya/dizinlerin izleneceği vs. gibi tüm yapılandırma işlemleri default olarak uzak host üzerinde bulunan ossec yapılandırma dosyası üzerinde tanımlanmaktadır. Bu durum monitor ettiğiniz hostlarda tek tek düzenleme yapılması anlamına geldiği için özellikle fazla sayıda host’u monitor etmek iş gücü anlamında maliyetli bir durum oluşturmaktadır. Böylesi bir durumda agent yapılandırmalarını merkezi olarak düzenleyebilmek isteyebilirsiniz.  İşte bu sebeple Ossec, syscheck (dosya bütünlük kontrolü) rootkit tespiti ve log monitoring tanımlamalarının merkezi yapılabilmesine olanak sağlamaktadır.


Devamini okuyun: Ossec Merkezi Agent Yapılandırması


Cagri Ersen tarafından Syslogs adresinde yayınlandı. | Permalink | Etiketler: ,



25 July 2014

15. Sistem Yöneticileri günü


Geleneksel 25 Temmuz, 2014, 15. Sistem Yöneticileri Gününüz kutlu olsun!

Şirketinize bilgisayar ağlarınız nasıl güvende? Bilgisayar ve yazıcı  sistemleriniz, ağ şebekeleriniz nasıl kesintisiz çalışıyor hiç merak ettiniz mi? Çünkü harika bir sistem yöneticisine  ( ya da büyük bir IT departmanına ) sahsipsiniz ve işinizi kesintisiz yürütebiliyorsunuz. İşte şimdi IT biriminiz ile gurur duyma zamanı.

Sistem Yöneticileri Gününüz Kutlu Olsun!

Sistem yönetici günü mü? O nasıl gün öyle derseniz, 24 saatliklik gezenenin en muhteşem günü. :) Gün boyunca sizin IT alyapısını felatetlerden koruyan, kollayan iş sürecinizi aksamadan yürütmenizi sağlayan o kahraman sistem yöneticilerinizi hatırlama zamanı.

Evet şimdi “Harika, benim sistem yöneticim bir kahramam, e peki ne yapalım yani?”  diyorsunuz? Işte size kutlama firsati. Hemen aşağıdakilerden birini seçin  (liste sınırlı olmamak ile beraber) sistem yöneticilerinize koşun!

  • Pasta ve Dondurma,
  • Pizza,
  • Tebrik kartları,
  • Hediyeler,
  • Sistem yöneticinizin harikalığı ile ilgili yazılı ve basılı materiyaller (T-shirt),
  • Balonlar,
  • Konfetiler,
  • Canavar düdükleri

ve sevginizi ve takdirinizi sunun!

Bugun, 25, Temmuz 2014 Cuma, 15. Sistem Yöneticileri  günü. Işte bu özel günde, geceli gündüzlü zorlu çalışma şartları olan sistem yöneticilerinize övgülenirizi sunabiliriz ( Tüm Cuma günü, 24 saat yerel saatinizle)

Gerçekten bakın, sistem yöneticileriniz yılın diğer 364 günü hiçbir saygı görmüyor. Bugün dünya çapında sistem yöneticilerin zor kahır dolu görevlerleri için pahalı spor arabaları ve tomarla para içinde yüzeceği gün olmalı belki.  Tabi ki şaka bir kenara,  sadece bugun, sistem yöneticileri belki sadece basit bir hediye veya teşekkür ile farkındalıklarını sizlere anlatamya çalışıyor.

Dürüst olmak lazım. Aslında gerçekte Sistem Yöneticilerini, onların bizi tanıdığı kadar tanımıyoruz, ne ile uğraştıklarını bilmiyoruz. Mesai saatlerinden sonra  (ya da haftasonu dahil)   sistemlerinizin düzgün çalışabilmesi için gecesini gündüzüne katan sistem yöneticilerini bu çabaları neticesinde en azından bugün hatırlanmak istiyor. Lütfen bari bugün sistem yöneticilerinize, şirketinize ve size gösterdiği emeklerin karşılığı olarak hatırlayın. Onlara tüm çabaları ve profesyonel emekleri için teşekkür edin.

[] http://www.sysadminday.com ‘dan alıntıdır.

 



22 July 2014

Puppet Otomatik İmzalama Hakkında


Bu yazımda Puppet'taki otomatik imzalama çeşitlerinden bahsedeceğim. 3 çeşit otomatik imza kullanılabiliyor. Bunlar:

** Naive Autosigning : Master makinaya gelen tüm imzalar (CSR - Certificate Sign Request) imzalanır.  Master'daki puppet.conf'da autosign = true olması yeterli.

** Basic Autosigning : Otomatik imza için sertifika ve domain isimlerinin olduğu bir beyaz liste oluşturmalıyız. İmzalama gerçekleşecek makinaları önceden tanıtmak gibi düşünebiliriz. Master'daki puppet.conf dosyasında autosign = <whitelist file> diye oluşturduğumuz listeyi bilirtmeliyiz. Bu listenin yolu $confdir/autosign.conf şeklinde olmalı. autosign.conf içeriği şu şekilde olmalı: 
ornek1.ornek1.com
*.ornek2.com
*.local

** Policy-Based Autosigning : Kendi belirlediğimiz ilkelere uygunsa, imzalamanın gerçekleşeceği çeşittir. Diğerlerine göre güvenlik açığı daha az. Çünkü direk imzalama gerçekleşmeden önce ilkelere uygunluk sonucunda işlem yapılıyor.

Bunun için master makinadaki puppet.conf'a autosign = <policy executable file> diyerek belirlediğimiz ilkelerin olduğu çalıştırılabilir dosyayı belirtmeliyiz. Peki ilkeleri hangi kurallara göre yazmalıyız?

* İlkeleri herhangibir programlama dili ile yazabiliyoruz. 
* İstek olarak master makinaya gelen pem formatlı dosyayı, ilkeleri yazacağımız dosyaya stdin ile almalıyız. 
* Çıktı olarak 0 ise onay(imza gerçekleşecek), 1 ise red döndürmeliyiz.

Ayrıntılı şekilde buradan da bakabilirsiniz. Kolay gelsin :)





21 July 2014

Python-Boto İle AWS'ye Bağlanmak


Boto, AWS(Amazon Web Services) arayüzü için bir Python kütüphanesi. Fotoğraftaki seçenekler ve alt başlıkları için fazlasıyla modül içeriyor. Bana stajımda EC2( Elastic Compute Cloud ) kısmı lazım olmuştu. Bağlantı kurup instance_id kısmı ile birkaç işlem yapacaktım.


Krulumu oldukça basit:

pip install boto

ya da kaynak kodu yerelimize çekersek:

$ git clone git://github.com/boto/boto.git
$ cd boto
$ python setup.py install

Yapılandırma:
Bunun için AWS'de hesabımız olmalı çünkü API Key ve Secret Access Key bilgileri gerekiyor. Boto sırasıyla şu dosyalara bakıyor:

* /etc/boto.cfg
* ~/.boto
* ~/.aws/credentials

1. "~/.aws/credentials", "~/.boto" ve "/etc/boto.cfg" dosyalarını oluşturup, API Key ve Secret Access Key bilgileri vereceğiz. Burada fazladan region(alan) tanımı var. Belirtmek zorunda değiliz ama Amazon Servisleri'nin hangi alanına bağlanmak istediğimizi yazabiliriz.

[default]
aws_access_key_id =*******************
aws_secret_access_key = ****************************************
# Optional, to define default region for this profile.
# region=eu-west-1

2. "export AWS_AWS_CREDENTIAL_FILE=/path/to/aws-credentials.txt" ve 
    "export BOTO_CONFIG=/path/to/.boto" diyerek

dosya yollarını çevresel değişkenlerde belirtmeliyiz. "$ set" komutu ile kontrol edebilirsiniz.

Bağlantı kurma kısmı:

ipython ile oldukça hızlı şekilde deneyebilirsiniz.

>> import boto.ec2 

>> regions = boto.ec2.regions () ,

>> regions
[RegionInfo:us-east-1,
 RegionInfo:cn-north-1,
 RegionInfo:ap-northeast-1,
 RegionInfo:eu-west-1,
 RegionInfo:ap-southeast-1,
 RegionInfo:ap-southeast-2,
 RegionInfo:us-west-2,
 RegionInfo:us-gov-west-1,
 RegionInfo:us-west-1,
 RegionInfo:sa-east-1]


>> eu = regions[3]
>> eu_conn = eu.connect()

Kütüphaneyi ekledikten sonra, ilk satırda ec2 bağlantı alanlarının listesini regions değişkeninde tutuyoruz. 3. satırda, regions[3] teki alanı,  bağlanmak için bir değişkene atıyoruz. Son satırda ise connect() ile bağlantı gerçekleşiyor. 

ipython'da tab tuşu ile fazlasıyla modül olduğunu görebilirsiniz.  Örneğin benim işime yarayanlardan biri get_all_instances modülüydü. Alt satırda; i_id değişkeni, bağlandığı alandaki makinalardan birisine ait mi diye kontrol yapılabiliyor.

eu_conn.get_all_instances(filters={'instance-id' : i_id})

 Kısaca Boto'nun ana işlevi böyle. Tabiki daha çok karıştırmak gerektiğini düşünüyorum. Şimdilik görüşmek üzere..