Disk Düzeni Tasarımı
Temel Kavramlar
| Kavram | Açıklama |
|---|---|
| Disk | Verinin fiziksel olarak depolandığı donanım birimi |
| Partition | Diskin mantıksal alt bölümü. MBR veya GPT şemaları ile oluşturulur. Her diskte en az bir partition olmak zorundadır. |
| Filesystem | Verinin disk üzerinde nasıl organize edildiğini tanımlar (dizin yapısı, dosya konumları vb.) |
| LVM | Birden fazla partition’ı, farklı diskler dahil, tek bir logical volume olarak birleştirmeye yarar |
Mount Point Nedir?
Bir filesystem’i kullanabilmek için dizin ağacındaki bir noktaya mount etmek gerekir. Bu noktaya mount point denir.
mount /dev/sda1 /mnt/mymount
Ayrı Partition Kullanım Nedenleri
| Dizin | Ayrı Partition Nedeni |
|---|---|
/boot |
Root filesystem bozulsa bile sistem boot edebilsin |
/home |
Sistemi yeniden kurarken kullanıcı verisi etkilenmesin |
/var |
Kontrolsüz büyüyen bir süreç root filesystem’i doldurmasın |
/ (root, SSD) |
Performans: root’u hızlı SSD’de, /var gibi büyük dizinleri HDD’de tutmak |
/boot Partition
Boot loader ile ilgili dosyaları içerir: kernel image’ları, initrd ve GRUB dosyaları.
- Boot loader genellikle GRUB2‘dir (eski sistemlerde GRUB Legacy).
- Dosyalar
/boot/grubaltında tutulur. - Ayrı bir
/bootpartition zorunlu değildir; GRUB çoğu durumda root partition’ı mount ederek bu dosyalara ulaşabilir. Ancak güvenlik, encryption veya GRUB’ın desteklemediği bir filesystem kullanılıyorsa ayrı partition önerilir.
Neden diskin başında?
Eski IBM PC BIOS’u silindir/kafa/sektör (CHS) adresleme kullandığından maksimum 528 MB’a erişebiliyordu. /boot partition’ı silindir 1024’ten (528 MB) önce bitecek şekilde yerleştirilirse eski sistemlerle uyumluluk sağlanır.
Günümüz için önerilen
/bootboyutu: ~300 MB
EFI System Partition (ESP)
UEFI tabanlı sistemlerde boot loader ve kernel image’larını depolar.
| Özellik | Değer |
|---|---|
| Filesystem | FAT tabanlı |
| GPT partition ID | C12A7328-F81F-11D2-BA4B-00A0C93EC93B |
| MBR partition ID | 0xEF |
| Mount noktası | /boot/efi |
Swap
RAM dolduğunda kernel, bellek sayfalarını diske taşır. Bu alan swap olarak adlandırılır.
- Kullanılabilir hale getirmek için
mkswapkomutu çalıştırılmalıdır. - Normal bir dizin gibi mount edilemez, içeriğe doğrudan erişilemez.
- Partition yerine swap file da kullanılabilir (hızlı alan artırımı için pratiktir).
Red Hat önerilen swap boyutları:
| RAM | Önerilen Swap | Hibernate ile |
|---|---|---|
| < 2 GB | 2× RAM | 3× RAM |
| 2–8 GB | RAM’e eşit | 2× RAM |
| 8–64 GB | Min 4 GB | 1.5× RAM |
| > 64 GB | Min 4 GB | Önerilmez |
MBR partition ID’leri:
| Tür | ID |
|---|---|
| Linux filesystem | 0x83 |
| Linux swap | 0x82 |
| Linux LVM | 0x8E |
LVM (Logical Volume Manager)
LVM, geleneksel partition’ların sınırlarını aşarak esnek disk yönetimi sağlar.
Physical Volume (PV)
└── Volume Group (VG)
└── Logical Volume (LV)
| Bileşen | Açıklama |
|---|---|
| PV (Physical Volume) | Temel birim. Bir disk partition’ı veya RAID dizisi. |
| VG (Volume Group) | Birden fazla PV’yi tek bir havuzda birleştirir. |
| Extent | VG’nin bölündüğü sabit boyutlu parçalar. PV üzerindekiler PE (Physical Extent), LV üzerindekiler LE (Logical Extent). |
| LV (Logical Volume) | VG’den ayrılan, partition gibi davranan esnek birim. |
- LV boyutu:
extent boyutu (varsayılan 4 MB) × extent sayısı - LV device olarak şurada görünür:
/dev/VGNAME/LVNAME mkfs.ext4gibi araçlarla formatlanıp mount edilebilir;/etc/fstabüzerinden kalıcı hale getirilebilir.
Boot Manager Kurulumu
GRUB Nedir?
GRUB = Grand Unified Bootloader. Linux’ta en yaygın kullanılan boot loader’dır. İki versiyonu vardır:
| GRUB Legacy | GRUB 2 | |
|---|---|---|
| Son sürüm | 0.97 (2005) | Aktif geliştirme |
| Config dosyası | /boot/grub/menu.lst |
/boot/grub/grub.cfg |
| Disk numaralama | hd0,0 (her ikisi 0’dan) | hd0,1 (disk 0’dan, partition 1’den) |
BIOS ile Boot Akışı (MBR)
BIOS → MBR (512 byte) → Core Image (32 KB gap) → GRUB Konfigürasyonu → OS
MBR Kısıtlamaları:
- Maksimum 4 primary partition
- Maksimum 2 TB disk boyutu
- Çok sınırlı bootloader kod alanı
Bu kısıtlamalar nedeniyle MBR’nin yerini GPT + UEFI almaktadır.
UEFI ile Boot Akışı
UEFI Firmware → ESP (FAT32) → grubx64.efi → GRUB → OS
UEFI, MBR boot kodunu kullanmaz; doğrudan ESP içindeki .efi dosyalarını çalıştırır.
/boot Dizini İçeriği
Her dosya adında kernel versiyonu (-VERSION) yer alır:
| Dosya | Açıklama |
|---|---|
config-VERSION |
Kernel derleme parametreleri. Otomatik oluşturulur, elle düzenlenmez. |
System.map-VERSION |
Sembol adlarını (değişken/fonksiyon) bellek adreslerine eşleyen tablo |
vmlinuz-VERSION |
Sıkıştırılmış kernel image (vmlinux = sıkıştırılmamış) |
initrd.img-VERSION |
Initial RAM disk — boot sırasında RAM’e yüklenen minimal root filesystem |
/boot/grub/grub.cfg |
GRUB 2 konfigürasyon dosyası (elle düzenlenmez) |
/boot/grub/menu.lst |
GRUB Legacy konfigürasyon dosyası |
GRUB 2 Konfigürasyonu
/boot/grub/grub.cfg otomatik üretilir, elle düzenlenmemelidir.
# Ayarları düzenle
vi /etc/default/grub
# Konfigürasyonu yeniden üret
update-grub
# veya eşdeğeri:
grub-mkconfig -o /boot/grub/grub.cfg
/etc/default/grub önemli parametreler:
| Parametre | Açıklama |
|---|---|
GRUB_DEFAULT= |
Varsayılan boot girişi (sayı, isim veya saved) |
GRUB_SAVEDEFAULT=true |
Son seçilen giriş bir sonrakinde varsayılan olur |
GRUB_TIMEOUT= |
Menü bekleme süresi (saniye). 0 = beklemeden boot, -1 = sonsuza kadar bekle |
GRUB_CMDLINE_LINUX= |
Tüm kernel girişlerine eklenen parametreler |
GRUB_CMDLINE_LINUX_DEFAULT= |
Yalnızca varsayılan girişe eklenen ekstra parametreler |
GRUB_ENABLE_CRYPTODISK=y |
Şifreli disk desteği ekler; otomatik boot’u devre dışı bırakır |
Özel Menü Girişi Ekleme
Özel girişler /etc/grub.d/40_custom dosyasına eklenir. update-grub çalıştırıldığında bu dosya işlenir.
menuentry "Default OS" {
set root=(hd0,1)
linux /vmlinuz root=/dev/sda1 ro quiet splash
initrd /initrd.img
}
set root=(hd0,1)→ birinci disk (hd0), birinci partition (GRUB 2’de partition 1’den başlar)linux→ kernel konumu ve parametreleriinitrd→ initial RAM disk konumu
UUID ile root belirleme:
# UUID'leri listele
ls -l /dev/disk/by-uuid/
# menuentry içinde kullanım
search --set=root --fs-uuid 5dda0af3-c995-481a-a6f3-46dcd3b6998d
GRUB 2 ile Etkileşim
| Eylem | Tuş / Komut |
|---|---|
| Menüyü göster (sayım varsa) | Shift |
| Girişi düzenle | E |
| Düzenlemeden boot et | Ctrl+X veya F10 |
| Düzenlemeden çık | Esc |
| GRUB 2 shell’e gir | C |
GRUB 2 Shell’den Manuel Boot
grub> ls # disk ve partition'ları listele
grub> ls (hd0,msdos1)/ # partition içeriğini gör
grub> set root=(hd0,msdos1) # boot partition'ı seç
grub> linux /vmlinuz root=/dev/sda1
grub> initrd /initrd.img
grub> boot
GPT partitioned disk → (hd0,gpt1)MBR partitioned disk → (hd0,msdos1)
GRUB 2 Rescue Shell
Boot başarısız olursa grub rescue> prompt’u belirir.
grub rescue> set prefix=(hd0,msdos1)/boot/grub
grub rescue> insmod normal
grub rescue> insmod linux
# Ardından normal shell adımları uygulanır
GRUB 2 Kurulumu
# Boot partition'ı bul ve mount et
fdisk -l /dev/sda
mkdir /mnt/tmp
mount /dev/sda1 /mnt/tmp
# Ayrı boot partition varsa
grub-install --boot-directory=/mnt/tmp /dev/sda
# Boot partition yoksa (root'ta /boot dizini)
grub-install --boot-directory=/boot /dev/sda
GRUB Legacy
Konfigürasyon: /boot/grub/menu.lst
title My Linux Distribution
root (hd0,0)
kernel /vmlinuz root=/dev/hda1
initrd /initrd.img
⚠️ GRUB Legacy’de hem disk hem partition numarası 0’dan başlar.
(hd0,0)= birinci diskin birinci partition’ı.
Shell’den kurulum:
grub> root (hd0,0)
grub> setup (hd0)
Chainloading (örn. Windows):
title Windows XP
root (hd0,1)
makeactive
chainload +1
boot
Shared Library Yönetimi
Static vs Shared Library
Static (.a) |
Shared (.so) |
|
|---|---|---|
| Bağlanma zamanı | Derleme sırasında | Çalışma sırasında (runtime) |
| Executable boyutu | Büyük | Küçük |
| Runtime bağımlılık | Yok | Var |
| Paylaşım | Her program kendi kopyasını taşır | Birden fazla program paylaşır |
Soname (Shared Library İsimlendirmesi)
lib<NAME>.so.<VERSION>
Örnekler: libpthread.so.0, libc.so.6, libmysqlclient.so.18.0.0
Genellikle daha genel isimli symbolic link’ler mevcuttur:
/lib/x86_64-linux-gnu/libc.so.6 -> libc-2.24.so
Shared Library Dizinleri
| Dizin | Kullanım |
|---|---|
/lib, /lib64 |
Sistem boot’u için kritik binary’lerin bağımlılıkları (/bin, /sbin) |
/usr/lib, /usr/lib64 |
Ek yazılımların library’leri (örn. veritabanı sunucuları) |
/usr/local/lib |
Kullanıcı tarafından derlenen yazılımlar |
Dynamic Linker Arama Sırası
LD_LIBRARY_PATHortam değişkeni/etc/ld.so.conf.d/*.confve/etc/ld.so.confdosyaları- Varsayılan sistem dizinleri (
/lib*,/usr/lib*)
/etc/ld.so.conf ve ldconfig
# /etc/ld.so.conf içeriği (tipik)
cat /etc/ld.so.conf
# include /etc/ld.so.conf.d/*.conf
# /etc/ld.so.conf.d/ altında .conf dosyaları
ls /etc/ld.so.conf.d/
# Cache'i güncelle (yeni library eklendiğinde çalıştır)
sudo ldconfig
# Verbose: hangi linkler oluşturuldu
sudo ldconfig -v
# Mevcut cache içeriğini listele
sudo ldconfig -p
LD_LIBRARY_PATH
Geçici test ortamları için idealdir. Production’a taşıdıktan sonra /etc/ld.so.conf.d/ yöntemi tercih edilmelidir.
# Geçici olarak ekle
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/devops/library/
# Değeri kontrol et
echo $LD_LIBRARY_PATH
# Kaldır
unset LD_LIBRARY_PATH
# Kalıcı hale getirmek için ~/.bashrc veya /etc/bash.bashrc'ye ekle
export LD_LIBRARY_PATH=/usr/local/mylib
LD_LIBRARY_PATH→ shared library’ler için
PATH→ executable’lar için
ldd Komutu
Bir executable’ın shared library bağımlılıklarını gösterir.
ldd /usr/bin/git
# linux-vdso.so.1 => ...
# libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3
# libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
# Kullanılmayan bağımlılıkları listele
ldd -u /usr/bin/git
Yeni Library Ekleme Adımları
# 1. Library'yi standart bir dizine kopyala (örn. /usr/lib/myapp/)
# 2. /etc/ld.so.conf.d/ altında yeni bir .conf dosyası oluştur
echo "/usr/lib/myapp" > /etc/ld.so.conf.d/myapp.conf
# 3. Cache'i güncelle
sudo ldconfig
# 4. Kontrol et
sudo ldconfig -v 2>/dev/null | grep mylib
Debian Paket Yönetimi (dpkg & apt)
dpkg
Debian tabanlı sistemlerde temel paket aracıdır. Bağımlılıkları otomatik çözmez.
# Kur
dpkg -i package.deb
# Kaldır (config dosyaları kalır)
dpkg -r PACKAGENAME
# Kaldır + config dosyalarını sil (purge)
dpkg -P PACKAGENAME
# Paket dosyası hakkında bilgi al (kurulmadan)
dpkg -I package.deb
# Kurulu tüm paketleri listele
dpkg --get-selections
# Paketin kurduğu dosyaları listele
dpkg -L PACKAGENAME
# Hangi paket bu dosyayı kurdu?
dpkg-query -S /path/to/file
# Paketi yeniden yapılandır (post-install scriptini tekrar çalıştır)
dpkg-reconfigure PACKAGENAME
Bağımlılık sorunu varsa
dpkg -i --force PACKAGENAMEile zorlanabilir, ancak sistemi bozuk durumda bırakabilir.
apt / apt-get
APT, dpkg‘nın üzerine inşa edilmiş bir ön yüzdür. Bağımlılıkları otomatik çözer, online repository’lerden paket indirir.
Temel paket işlemleri:
# Paket indeksini güncelle
apt-get update
# Paket kur
apt-get install PACKAGENAME
# Paket kaldır (config dosyaları kalır)
apt-get remove PACKAGENAME
# Paket kaldır + config dosyaları sil
apt-get purge PACKAGENAME
# veya
apt-get remove --purge PACKAGENAME
# Tüm paketleri güncelle
apt-get upgrade
# Bozuk bağımlılıkları düzelt
apt-get install -f
# İndirilen paket cache'ini temizle (/var/cache/apt/archives/)
apt-get clean
Arama ve bilgi:
# Paket ara
apt-cache search PATTERN
# Paket hakkında detaylı bilgi
apt-cache show PACKAGENAME
/etc/apt/sources.list
APT’nin hangi repository’lerden paket alacağını belirler.
deb http://us.archive.ubuntu.com/ubuntu/ disco main restricted universe multiverse
Satır formatı: <tip> <URL> <dağıtım> <bileşenler>
| Tip | Açıklama |
|---|---|
deb |
Binary paketler |
deb-src |
Kaynak paketler |
Ubuntu bileşenleri:
| Bileşen | Açıklama |
|---|---|
main |
Resmi destekli, açık kaynak |
restricted |
Resmi destekli, kapalı kaynak (örn. GPU sürücüleri) |
universe |
Topluluk destekli, açık kaynak |
multiverse |
Desteklenmeyen, kapalı kaynak veya patent kısıtlamalı |
Ek repository dosyaları /etc/apt/sources.list.d/ dizinine .list uzantısıyla eklenebilir.
apt-file
Kurulmayan paketlerdeki dosyalar da dahil arama yapabilir.
# apt-file kur ve güncelle
apt-get install apt-file
apt-file update
# Paketin içeriğini listele
apt-file list PACKAGENAME
# Hangi paket bu dosyayı içeriyor?
apt-file search /path/to/file
apt-file searchkurulmayan paketlerde de arar.
dpkg-query -Syalnızca kurulu paketlerde arar.
RPM ve YUM Paket Yönetimi
rpm
Red Hat tabanlı sistemlerde temel paket aracıdır (RHEL, CentOS, Fedora, openSUSE). Bağımlılıkları otomatik çözmez.
# Kur (verbose + progress bar)
rpm -ivh package.rpm
# Güncelle (yoksa kur)
rpm -U package.rpm
# Güncelle (yalnızca kuruluysa)
rpm -F package.rpm
# Kaldır
rpm -e PACKAGENAME
# Tüm kurulu paketleri listele
rpm -qa
# Paket bilgisi (kurulu)
rpm -qi PACKAGENAME
# Paket dosyalarını listele (kurulu)
rpm -ql PACKAGENAME
# Paket bilgisi (kurulu değil, .rpm dosyasından)
rpm -qip package.rpm
rpm -qlp package.rpm
# Bu dosya hangi pakete ait?
rpm -qf /path/to/file
yum (YellowDog Updater Modified)
RPM tabanlı sistemlerde bağımlılık çözümleyen paket yöneticisidir.
# Paket ara
yum search PATTERN
# Paket kur
yum install PACKAGENAME
# Paket güncelle
yum update PACKAGENAME
# Tüm paketler için güncelleme var mı kontrol et
yum check-update
# Paket kaldır
yum remove PACKAGENAME
# Hangi paket bu dosyayı sağlıyor?
yum whatprovides FILENAME
# Paket bilgisi
yum info PACKAGENAME
Repository yönetimi:
# Tüm repo'ları listele
yum repolist all
# Repo ekle
yum-config-manager --add-repo URL
# Repo etkinleştir / devre dışı bırak
yum-config-manager --enable REPO_ID
yum-config-manager --disable REPO_ID
Repo dosyaları: /etc/yum.repos.d/*.repo
dnf (Dandified YUM)
Fedora’nın paket yöneticisi; yum’un fork’udur. Komutlar büyük ölçüde yum ile aynıdır.
dnf search PATTERN
dnf info PACKAGENAME
dnf install PACKAGENAME
dnf remove PACKAGENAME
dnf upgrade PACKAGENAME # tüm sistem için paket adı olmadan
dnf provides FILENAME # yum whatprovides karşılığı
dnf list --installed
dnf repoquery -l PACKAGENAME # paket içeriğini listele
dnf repolist
Repository yönetimi:
dnf config-manager --add_repo URL
dnf config-manager --set-enabled REPO_ID
dnf config-manager --set-disabled REPO_ID
Repo dosyaları: /etc/yum.repos.d/ (yum ile aynı dizin)
zypper (SUSE / openSUSE)
# Index güncelle
zypper refresh
# Paket ara
zypper se PACKAGENAME
# Kurulu paketlerde ara
zypper se -i PACKAGENAME
# Paket kur
zypper in PACKAGENAME
# Paket kaldır
zypper rm PACKAGENAME
# Mevcut güncellemeleri listele (kurmadan)
zypper list-updates
# Bu dosya hangi pakette?
zypper se --provides /path/to/file
# Paket bilgisi
zypper info PACKAGENAME
# Tüm repo'ları listele
zypper repos
# Repo etkinleştir / devre dışı bırak
zypper modifyrepo -e REPO_ALIAS
zypper modifyrepo -d REPO_ALIAS
# Auto-refresh aç / kapat
zypper modifyrepo -f REPO_ALIAS
zypper modifyrepo -F REPO_ALIAS
# Repo ekle
zypper addrepo URL ALIAS
# Repo kaldır
zypper removerepo ALIAS
Linux Sanallaştırma
Temel Kavramlar
Hypervisor: Sanal makineleri çalıştıran yazılım platformu. Host donanım kaynaklarını (CPU, RAM, disk) guest’ler arasında paylaştırır.
| Tür | Açıklama | Örnek |
|---|---|---|
| Type-1 (Bare-metal) | Doğrudan donanım üzerinde çalışır, altta OS gerekmez | Xen |
| Type-2 | Bir host OS üzerinde çalışır | VirtualBox |
| Hibrit | Her iki modda da çalışabilir | KVM |
Sanallaştırma Türleri
| Tür | Açıklama |
|---|---|
| Fully Virtualized (HardwareVM) | Guest, VM içinde olduğunu bilmez. x86’da Intel VT-x veya AMD-V gerektirir. |
| Paravirtualized (PVM) | Guest, VM içinde olduğunu bilir. Özel guest driver’ları kullanır; performans genellikle daha iyi. |
| Hybrid | Full virtualization + paravirtualized driver’lar. Disk ve ağ I/O için neredeyse native performans. |
Virtualization extension kontrolü:
grep --color -E "vmx|svm" /proc/cpuinfo
# vmx = Intel VT-x
# svm = AMD-V
KVM ve libvirt
KVM, Linux kernel modülü tabanlı bir hypervisor’dür. Sanal makineler libvirt daemon ile yönetilir.
- VM konfigürasyon dosyaları:
/etc/libvirt/qemu/*.xml - Network konfigürasyonu:
/etc/libvirt/qemu/networks/ - Disk image varsayılan konumu:
/var/lib/libvirt/images/
Disk image türleri:
| Tür | Açıklama |
|---|---|
qcow2 (COW) |
Copy-on-write. Disk dosyası yalnızca yazılan veri kadar büyür. KVM varsayılanı. |
| Raw | Tüm alan önceden ayrılır. Daha iyi yazma performansı, ama daha fazla disk kullanımı. |
D-Bus Machine ID
Linux kurulumunda oluşturulan benzersiz makine kimliği. Hypervisor üzerinde kaynak yönlendirmesi için kullanılır.
- Konum:
/var/lib/dbus/machine-id→/etc/machine-idsembolik link
# ID var mı kontrol et
dbus-uuidgen --ensure
# Mevcut ID'yi göster
dbus-uuidgen --get
# Klonlanan VM'de yeni ID oluştur
sudo rm -f /etc/machine-id
sudo dbus-uuidgen --ensure=/etc/machine-id
Aynı hypervisor üzerindeki iki VM aynı D-Bus machine ID’ye sahip olmamalıdır.
Cloud: SSH Erişimi
# Key pair oluştur (private key ~/.ssh/ içinde kalır)
ssh-keygen
# Public key'i uzak sunucuya kopyala
ssh-copy-id -i user@cloud_server
# Public key -> ~/.ssh/authorized_keys dosyasına eklenir
SSH key izinleri:
| Key | İzin |
|---|---|
| Private key | 0600 |
| Public key | 0644 |
cloud-init
Vendor-neutral bir araç. İlk boot sırasında YAML tabanlı konfigürasyon dosyalarını okuyarak sistemi otomatik yapılandırır.
#cloud-config
timezone: Europe/Istanbul
hostname: my-server
# İlk boot'ta sistemi güncelle
apt_update: true
apt_upgrade: true
# Paket kur
packages:
- nginx
İlk satır
#cloud-configolmalıdır;#ilecloud-configarasında boşluk olmamalıdır.
Container’lar
| Özellik | VM | Container |
|---|---|---|
| İzolasyon | Tam donanım emülasyonu | Yalnızca uygulama ortamı |
| Overhead | Yüksek | Düşük |
| Taşıma | Kapatılarak veya live migration | Uygulama çalışırken |
| Kernel mekanizması | Hypervisor | cgroups (control groups) |
Yaygın container teknolojileri: Docker, Kubernetes, LXD/LXC, systemd-nspawn, OpenShift.
cgroups: Kernel’in, bir uygulama veya uygulama grubuna ayrılabilen bellek, CPU, disk ve ağ bant genişliğini sınırlandırma mekanizması.
Özet: Komut Referansı
Disk / LVM
| Komut | Açıklama |
|---|---|
mount /dev/sda1 /mnt/point |
Filesystem mount et |
mkswap /dev/sdaX |
Swap alanı hazırla |
GRUB
| Komut | Açıklama |
|---|---|
update-grub |
grub.cfg‘yi yeniden üret |
grub-mkconfig -o /boot/grub/grub.cfg |
update-grub eşdeğeri |
grub-install --boot-directory=/boot /dev/sda |
GRUB 2 kur |
fdisk -l /dev/sda |
Partition’ları listele (boot partition’ı * ile işaretli) |
Shared Libraries
| Komut | Açıklama |
|---|---|
ldconfig |
Library cache’ini güncelle |
ldconfig -v |
Verbose çıktı |
ldconfig -p |
Cache içeriğini listele |
ldd /path/to/binary |
Binary’nin bağımlılıklarını göster |
dpkg / apt
| Komut | Açıklama |
|---|---|
dpkg -i pkg.deb |
Kur |
dpkg -r PKG |
Kaldır |
dpkg -P PKG |
Purge (config dahil) |
dpkg -I pkg.deb |
Paket bilgisi (kurulmadan) |
dpkg --get-selections |
Kurulu paketler |
dpkg -L PKG |
Paketin dosyaları |
dpkg-query -S /file |
Dosyaya sahip paket |
apt-get update |
İndeks güncelle |
apt-get install PKG |
Kur |
apt-get remove PKG |
Kaldır |
apt-get purge PKG |
Purge |
apt-get upgrade |
Tümünü güncelle |
apt-get install -f |
Bozuk bağımlılıkları düzelt |
apt-cache search PATTERN |
Ara |
apt-cache show PKG |
Bilgi |
apt-file search FILE |
Dosyayı içeren paket (kurulmamış dahil) |
rpm / yum / dnf / zypper
| Komut | Açıklama |
|---|---|
rpm -ivh pkg.rpm |
Kur (verbose + progress) |
rpm -U pkg.rpm |
Güncelle |
rpm -e PKG |
Kaldır |
rpm -qa |
Tüm kurulu paketler |
rpm -qi PKG |
Paket bilgisi |
rpm -ql PKG |
Paket dosyaları |
rpm -qf /file |
Dosyaya sahip paket |
yum install PKG |
Kur |
yum whatprovides FILE |
Dosyayı sağlayan paket |
yum check-update |
Güncellemeleri kontrol et |
dnf provides FILE |
yum whatprovides karşılığı |
dnf list --installed |
Kurulu paketler |
zypper se PKG |
Ara |
zypper in PKG |
Kur |
zypper rm PKG |
Kaldır |
zypper se --provides FILE |
Dosyayı sağlayan paket |
zypper modifyrepo -d ALIAS |
Repo devre dışı |
Sanallaştırma
| Komut | Açıklama |
|---|---|
dbus-uuidgen --ensure |
D-Bus ID var mı kontrol et |
dbus-uuidgen --get |
Mevcut D-Bus ID’yi göster |
ssh-keygen |
SSH key pair oluştur |
ssh-copy-id user@host |
Public key’i uzak sunucuya kopyala |
grep -E "vmx\|svm" /proc/cpuinfo |
Virtualization extension’ları kontrol et |