Linux bir işletim sistemi çekirdeğidir. (kernel) Bilgisayar üzerinde çalışan yazılımların donanım parçalarına erişimini sağlar. Bu rehberde linux denilen yerlerde GNU/Linux kastedilmiştir. Kelimeyi yaygın kullanım şekli linuxtur.
" GNU, özgür yazılım olan bir işletim sistemidir, yani kullanıcıların özgürlüğüne saygı duyar. GNU işletim sistemi; GNU paketlerinden (özellikle GNU Projesi tarafından yayımlanan programlar) ve üçüncü taraflarca yayımlanan özgür yazılımdan oluşur. GNU'nun geliştirilmesi, özgürlüğünüzü ihlal eden yazılımlar olmadan bir bilgisayarın kullanılmasını mümkün kılmıştır. "
Kaynak : https://gnu.org
Linux olarak bilinen işletim sistemleridir.
Özgür yazılım (free software) felsefesi yazılımın kaynak kodlarının internet gibi herkesin erişimine açık ortamda bulundurulmasıdır. Özgür yazılım ücretsiz olmak zorunda değildir. Ayrıca özgür yazılımlar kullanan bir yazılım projesinde özgür yazılım lisansı bulunmak zorundadır.
Açık kaynak yazılım (open source software/OSS) kaynak kodu internet gibi bir ortamda herkese açık olarak bulundurulan yazılım türüdür. Açık kaynak yazılımlarda lisansın türüne göre yazılımı kullanan kişinin açık kaynak lisansı kendi yazılım lisansında dahil etme gibi yükümlülükleri bulunabilir. Ücretsiz olmak zorunda değildir.
Öncelikle, tüm yazılım projeleri gelir elde etmek zorunda değildir. Ancak tabii ki özgür yazılım ve açık kaynak yazılım projelerinden gelir elde edilebilmektedir. Gelir eldesi için genellikle şu yollar izlenir
- kurulum ücreti
- kullanım eğitimi ücreti
- yazılım süreç yönetimi
- yazılıma yapılan bağışlar
Yazılım bilmenize gerek yoktur. Çeviri gibi hizmetler yaparak da özgür veya açık kaynak yazılımlara katkı sağlayabilirsiniz. Ftp üzerinde bulunan bir projeyi indirip düzenleyebileceğiniz gibi VCS (version control system) denilen yapıları kullanan platformlar üzerinden de katkı sağlayabilirsiniz. Günümüzde proje yönetimine birçok faydasından dolayı VCS sistemleri tercih edilmektedir. VCS kullanan yaygın platformlar
- GitHub
- GitLab
Kullanmanız için zorunlu bir neden yoktur. Ancak linux distroları çok çeşitli olduğundan kendinize uygun bir linux dağıtımı (distro) bulmanız oldukça olasıdır. Göreceksiniz ki her linux dağıtımı kendisine özgü bir yaklaşımla linux çekirdeği üzerinde farklı amaçlarla geliştirilmiştir. Örneğin Arch Linux dağıtımının bana göre en güzel özellikleri sade, minimal, öğretici, performanslı, aur ve pacman sistemlerini kullanması gibi özelliklerdir.
Herhangi bir linux dağıtımında karşılaşabileceğiniz hatalar sonucu çözüm ararken İngilizce bilgisi gerekecektir. Bu yüzden lütfen öncelikle İngilizce'nizi geliştirin ve İngilizce terimleri yoğun şekilde araştırmaya hazır olun.
Bu işlem için birçok yol vardır.
Çoğu linux dağıtımında live adı verilen bir özellik bulunur. Bu özellik sayesinde usb flash belleğinizdeki alanı disk gibi kullanarak live olarak deneyimlediğiniz linux dağıtımının birçok özelliğini kullanabilirsiniz.
Sanal makine yazılımları kullanarak (Virtualbox, VMWare gibi) ana işletim sisteminizde program çalıştırır gibi linux dağıtımlarını çalıştırabilirsiniz.
Docker kullanarak containerlere linux dağıtımlarını kurabilirsiniz.
Kendinize en uygun dağıtımı bulmak için performans karşılaştırmaları, paket yöneticileri vs. özelliklere bakarak bir karar verebilirsiniz. Ayrıca dağıtımlarla ilgili detaylı bilgi alabileceğiniz web sitesi: https://distrowatch.com
https://github.com/m-enes/linux-rehberi/blob/main/Arch-kurulum.md
https://github.com/LuNiZz/siber-guvenlik-sss/blob/master/Docker-da-KALI.md
Hatalardan korkmamalısınız. Bu depoda aradığınız tarzda bilgiler var https://github.com/m-enes/advanced-linux
- https://gnu.org > gnu resmi sitesi
- https://linux-dersleri.github.io > adım adım Türkçe linux dersleri
- https://wiki.archlinux.org > archlinux resmi wiki sayfası
- https://github.com/buraaksenturk/linuxegitim > linux komutları ve kullanımını anlatan döküman
- https://github.com/LuNiZz/siber-guvenlik-sss > LuNiZz'in (Can Değer) hazırladığı siber güvenlik sss
- https://www.youtube.com/c/Yusuf%C4%B0pek > Yusuf İpek YouTube kanalı
- https://linuxjourney.com/ > linux kavramlarını adım adım öğreten websitesi (Türkçe desteği mevcut)
- https://cmdchallenge.com/ > linux terminal komutlarını alıştırmalarla öğrenebileceğiniz websitesi