Bir sistemcinin kara kaplı diyerek biraz mizah katarak not defteri diyelim kafasına göre yazar amaç sadece not tutmak.
ubuntu 24.04.3 LTS Server kurulumu hatası
ubuntu 24.04.3 LTS Server kurulumu yaparken yaşadığım bir sorun, defulat olarak kurulum yaparken kurulum ekranlarında güncelleme yapmasını onaylayıp devam ediyoruz burada ubuntu' nun kendi repo sunucuları olan bir sorun yüzünden kurulum hata alıyor bu yüzden kurulum ekranında aşağıdaki resimdeki alanı silip devam edip kurulum yapmalısınız ve kurulum sonrasında ise repoları düzenleyerek yeniden güncelleme yaparak süreci tamamlayabilirsiniz. öncesinde ypaılanarl ise cheksun yapılması bir kaç kere iso download yapılması eth modu cpu modu vm modu gibi bir çok alanı değiştirmek sonuç vermeyince bunu bu şekilde çözdüm bilginize - kurulum yaptığım platform : Proxmox VE 9.0.3
kernel shared memory
kernel shared memory değişimi geçici olarak yapmak için
sudo sysctl -w kernel.shmall=8388608
kalıcı olarak değiştirmek için
buradan değiştirebilirsin
sudo nano /etc/sysctl.conf
içinde kernel.shmall=*** değerini bulup yeni değeri ekleyip restart servis yapman gerekiyor.
sudo sysctl -p veya
sysctl --system
komutları uygulanır
Red Hat OpenShift 4.19 - Yenilikler
Red Hat OpenShift 4.19 sürümü, işletmelerin yapay zeka (AI) ve sanallaştırma alanındaki ihtiyaçlarını hızlandırmak için önemli yenilikler sunuyor.
PVE 8.3 den 8.4 e Upgrade
Selamlar hadi bakalım ilk proxmox ilk yazımıda ilk bash scriptimizde bu konu için olsun, nedir kısaca Proxmox Virtual Environment 8.3 den Proxmox Virtual Environment 8.4 e upgrade nasıl yapılır.
RedHat Paket kilitleme (package locking)
Red Hat gibi Linux dağıtımlarında "paket kilitleme" (package locking) kavramını açıklayalım
Paket Kilitleme Nedir?
Paket kilitleme, bir paket yöneticisi (örneğin yum veya dnf) tarafından belirli bir paketin güncellenmesini veya kaldırılmasını engelleme işlemidir. Bu, özellikle sistemde kritik bir paketin yanlışlıkla güncellenmesini veya kaldırılmasını önlemek için kullanılır. Paket kilitlendiğinde, paket yöneticisi bu paketi değiştiremez.
Bir Linux Mühendisi Olmak İçin Temel Alanlar
Bir Linux mühendisi olarak, sistem başlatma süreçleri, performans izleme, güvenlik önlemleri ve disk yönetiminde yetkinlik kazanmak kritik öneme sahiptir. İşte bu rolde başarılı olmanızı sağlayacak temel konuların kısa bir özeti:
🔹 Linux Başlangıç (Boot) Süreci
Adımlar:
BIOS/UEFI → Bootloader (GRUB gibi) → Çekirdek (Kernel) → Init/Systemd → Servisler/Çalışma Seviyesi (Runlevel)
Amaç:
- Donanımı başlatır.
- Kök dosya sistemini (root filesystem) bağlar.
- Kullanıcı alanı (user-space) işlemlerini başlatır.
Ekstra:
- GRUB menüsünde sorun gidermek için başlatma sırasında
etuşuna basarak ayarları düzenleyebilirsiniz. - Acil durumda
rescueveyasingle-user modemodları başlatılarak sistem kurtarılabilir.
🔹 Yavaş Bir Sunucuyu Sorun Giderme
Araçlar:
- CPU ve bellek:
top,vmstat,free - Disk kullanımı:
df,du - Ağ bağlantıları:
ss,netstat
Eylemler:
- Kaynak tüketen süreçleri optimize edin veya sonlandırın.
- Donanım yükseltmelerini değerlendirin.
- Disk IO darboğazlarını kontrol edin (
iotop).
Ekstra:
- Otomasyon: Sürekli yavaşlık problemleri için cron job’lar veya bash script kullanarak otomasyon yapabilirsiniz.
🔹 Linux Dosya İzinleri
İzin Türleri:
- Okuma (read), Yazma (write), Çalıştırma (execute).
- Kullanıcı, grup ve diğerleri için ayrı ayrı tanımlanır.
Komutlar:
- İzin değiştir:
chmod - Sahip değiştir:
chown - Grup değiştir:
chgrp
Ekstra:
chmod 750 dosya.txt→ Sadece dosya sahibi okur, yazar ve çalıştırır. Grup okur ve çalıştırır, diğerleri erişemez.
🔹 LVM (Mantıksal Birim Yöneticisi) Nedir?
Tanım:
LVM, esnek ve dinamik disk yönetimi sağlar. Diskleri fiziksel olarak birleştirerek veya bölerek kullanılmasına olanak tanır.
Temel Komutlar:
- Fiziksel birim oluştur:
pvcreate - Hacim grubu oluştur:
vgcreate - Mantıksal birim oluştur:
lvcreate
Disk Boyutunu Değiştirme:
- Büyütme:
lvextend - Küçültme:
lvreduce - Dosya sistemi genişletme:
resize2fs /x/y/z
Ekstra:
- LVM snapshot’ları kullanarak sistemde veri kaybı olmadan anlık görüntüler alabilirsiniz.
🔹 Bir Linux Sunucusunu Güvenceye Alma
Adımlar:
- Kullanılmayan servisleri devre dışı bırakın.
- iptables/firewalld yapılandırın.
- SSH güvenliği:
- Root girişini devre dışı bırakın.
- SSH anahtarları kullanın.
- SELinux/AppArmor etkinleştirin.
- Düzenli olarak yama (patch) yapın.
- Brute-force saldırılarına karşı Fail2ban kullanın.
Ekstra:
- TCP Wrapper kullanarak belirli IP’lerin erişimini sınırlayın.
- Sistem günlüğü analizi için auditd kullanabilirsiniz.
🔹 Servisleri Yönetme
Komutlar:
- Servis başlat/durdur/yönet:
systemctl start/stop/status servis_adı - Servisi otomatik başlatma:
systemctl enable servis_adı
Eski Yöntemler:
serviceveya/etc/init.d/
Ekstra:
- Restart döngülerini önlemek için
restartyerinereloadkullanın (systemctl reload nginx).
🔹 Kullanıcı Ekleme ve İzinleri Yönetme
Komutlar:
- Kullanıcı ekle:
useradd kullanıcı_adı - Şifre ayarla:
passwd kullanıcı_adı - Gruba ekle:
usermod -aG grup_adı kullanıcı_adı - Dosya izinlerini ayarla:
chmod,chown
Ekstra:
- Sudo yetkisi vermek:
usermod -aG sudo kullanıcı_adı
🔹 Sunucu Performansını İzleme
Araçlar:
- Gerçek zamanlı:
top,htop - Tarihsel veriler:
sar - Disk IO:
iostat,iotop - Ağ:
ss,netstat
Ekstra:
- Grafiksel İzleme: Prometheus + Grafana entegrasyonu ile performans izleme yapabilirsiniz.
Bu araç ve komutlar, bir Linux sistemini yönetmek ve optimize etmek için kritik öneme sahiptir. Her bir alanı derinlemesine öğrenmek, sistem yönetimi becerilerinizi geliştirir ve olası sorunlarda hızlı çözüm sunmanızı sağlar.
Linux’ta Kullanılan 15 Ağ Aracı
1. ping
ping komutu, sistem yöneticileri tarafından en sık kullanılan komutlardan biridir. ICMP paketlerini kullanarak iki makinenin birbirine bağlı olup olmadığını kontrol eder. Ağ bağlantılarının sağlığı ve gecikme sürelerini test etmek için idealdir.
Kullanım:ping google.com
Bu komut, google.com sunucusunun yanıt verip vermediğini kontrol eder.
2. traceroutetraceroute komutu, mevcut makineden uzak bir sunucuya olan yolu ve bu yol üzerindeki her bir atlamayı (hop) gösterir. Ağ sorunlarını tespit etmek için sıklıkla kullanılır.
Kullanım:traceroute google.com
Bu komut, google.com’a giden veri paketlerinin hangi yollardan geçtiğini gösterir.
3. mtrmtr komutu, traceroute ve ping komutlarının bir kombinasyonu gibidir. Ağda herhangi bir paket kaybı olup olmadığını kontrol etmek için kullanılır. Anlık olarak sürekli güncellenen bir ağ izleme sağlar.
Kullanım:mtr google.com
Bu komut, google.com’a olan ağ yolunu izler ve olası gecikmeleri anlık olarak raporlar.
4. curlcurl, HTTP istekleri yapmak ve dosya indirmek için kullanılan yaygın bir komuttur. Web sayfalarından veri çekmek, API çağrıları yapmak ve dosya indirmek için kullanılır.
Kullanım:curl https://example.com
Bu komut, example.com’un içeriğini terminale indirir.
Ekstra:
Bir dosyayı indirmek için:curl -O https://example.com/file.txt
5. wgetwget komutu, curl komutuna benzer ancak genellikle daha basit ve sadece dosya indirmek için kullanılır. Kesilen indirmeleri devam ettirebilmesi önemli bir avantajdır.
Kullanım:wget https://example.com/file.txt
Bu komut, belirtilen dosyayı indirir.
6. digdig komutu, DNS problemlerini çözmek için harika bir araçtır. DNS sorguları yapar ve alan adlarının IP adreslerini çözümlemek için kullanılır.
Kullanım:dig google.com
Bu komut, google.com için DNS bilgilerini görüntüler.
7. whoiswhois komutu, bir alan adıyla ilgili bilgileri almak için kullanılır. Alan adının sahibi, tescil tarihi ve diğer kayıt bilgileri gibi veriler sağlanır.
Kullanım:whois google.com
Bu komut, google.com alan adıyla ilgili kayıt bilgilerini getirir.
8. sshSSH (Secure Shell), uzaktaki bir sunucuya güvenli bir şekilde bağlanmak için kullanılır. Varsayılan olarak 22 numaralı port üzerinden çalışır.
Kullanım:ssh kullanıcı@sunucu_ip
Bu komut, belirtilen IP adresindeki sunucuya bağlanmayı sağlar.
9. scp ve rsyncscp ve rsync komutları, bir sunucudan diğerine dosya kopyalamak için kullanılır. SSH üzerinden güvenli bir şekilde dosya aktarımı yaparlar.
Kullanım:scp dosya.txt kullanıcı@sunucu:/hedef_klasor/rsync -av dosya.txt kullanıcı@sunucu:/hedef_klasor/rsync daha gelişmiş bir yapıya sahip olup, sadece değişen bölümleri kopyalar.
10. ifconfigifconfig komutu, sunucunun mevcut ağ yapılandırmasını incelemek için kullanılır. IP adresi, MAC adresi gibi bilgileri gösterir.
Kullanım:ifconfig
Bu komut, mevcut ağ arabirimlerini ve yapılandırmalarını listeler.
11. ipip komutu, ifconfig komutunun daha modern bir versiyonudur. Ağ yapılandırması, rota ekleme, IP adresi ayarlama gibi görevler için kullanılır.
Kullanım:ip a
Bu komut, ağ arabirimlerinin yapılandırmasını gösterir.ip r
Bu komut, mevcut yönlendirme tablolarını listeler.
12. telnettelnet, SSH’den önce bir sunucudan diğerine bağlanmak için kullanılan protokoldür. Ancak güvenli olmadığı için günümüzde kullanımı önerilmez.
Kullanım:telnet sunucu_ip
Bu komut, belirtilen IP adresindeki sunucuya bağlanır. Ancak güvenlik nedeniyle SSH tercih edilmelidir.
13. nc (netcat)nc komutu, TCP veya UDP kullanarak ağ bağlantılarına okuma/yazma işlemleri yapar. Port tarama, dosya aktarımı ve basit sunucu istemci uygulamaları için kullanılır.
Kullanım:nc -l 1234
Bu komut, 1234 portunda dinleme yapar.nc sunucu_ip 1234
Bu komut, belirtilen IP adresindeki 1234 portuna bağlanır.
14. nmapnmap, ağları taramak için kullanılan açık kaynaklı bir araçtır. Belirli bir ağdaki diğer sunucuları keşfetmek için paketler gönderir ve yanıtları analiz eder.
Kullanım:nmap 192.168.1.1
Bu komut, 192.168.1.1 IP adresindeki sunucuyu tarar.nmap -sP 192.168.1.0/24
Bu komut, tüm alt ağı tarar.
15. netstat/ssnetstat ve ss komutları, ağ istatistiklerini görüntüler. Ayrıca hangi servislerin çalıştığını ve hangi portların dinlendiğini gösterir.
Kullanım:netstat -tuln
Bu komut, dinlenen portları listeler.ss -tuln
Bu komut, netstat komutunun daha hızlı bir alternatifidir.

