Arch Linux Komutları: Yeni Başlayanlar İçin Kullanışlı Terminal Rehberi


Arch Linux kullanmaya başladığınızda terminal komutlarını bilmek sistemi yönetmeyi çok daha kolay hale getirir. Paket kurma, güncelleme, servisleri başlatma, hata kayıtlarını inceleme, disk kullanımını kontrol etme, ağ bağlantılarını yönetme ve dosya izinlerini düzenleme gibi işlemler genellikle terminal üzerinden yapılır.


Bu rehberde Arch Linux üzerinde en çok kullanılan ve günlük kullanımda gerçekten işe yarayan komutları sade şekilde topladım. Komutların çoğu Arch Linux, EndeavourOS, CachyOS ve Arch tabanlı diğer dağıtımlarda da kullanılabilir.

1. Sistem Bilgilerini Görme

Sistemde hangi çekirdeğin, mimarinin ve dağıtım bilgilerinin kullanıldığını görmek için:

uname -a

Linux çekirdeği sürümünü daha sade görmek için:

uname -r

Arch Linux sistem bilgilerini görmek için:

cat /etc/os-release

Donanım ve sistem özetini daha güzel görmek için fastfetch kurulabilir:

sudo pacman -S fastfetch
fastfetch

2. Sistemi Güncelleme


Arch Linux rolling release bir dağıtımdır. Bu yüzden sistemi düzenli olarak tam güncellemek önemlidir. Arch Wiki de düzenli tam sistem güncellemesini önerir.

sudo pacman -Syu

Bu komut paket veritabanını yeniler ve sistemdeki paketleri günceller.

Dikkat: Arch Linux’ta sadece paket veritabanını güncelleyip tek paket kurmak, yani kısmi güncelleme yapmak sorun çıkarabilir. Bu yüzden genellikle güvenli yöntem tam güncellemedir:

sudo pacman -Syu

3. Paket Arama ve Kurma

Depolarda paket aramak için:

pacman -Ss paket_adi

Örnek:

pacman -Ss firefox

Paket kurmak için:

sudo pacman -S paket_adi

Örnek:

sudo pacman -S firefox

Bir paketin sistemde kurulu olup olmadığını kontrol etmek için:

pacman -Qs paket_adi

Kurulu paket hakkında detaylı bilgi almak için:

pacman -Qi paket_adi

4. Paket Kaldırma

Bir paketi kaldırmak için:

sudo pacman -R paket_adi

Paketi gereksiz bağımlılıklarıyla birlikte kaldırmak için:

sudo pacman -Rns paket_adi

Örnek:

sudo pacman -Rns firefox

5. Gereksiz Paketleri Temizleme

Artık hiçbir paket tarafından kullanılmayan bağımlılıkları görmek için:

pacman -Qtdq

Liste boş değilse bu paketleri kaldırmak için:

sudo pacman -Rns $(pacman -Qtdq)

Paket önbelleğini temizlemek için:

sudo pacman -Sc

Daha agresif temizlik için:

sudo pacman -Scc

Not: pacman -Scc daha fazla dosya siler. Eski paketlere geri dönme ihtimaliniz varsa dikkatli kullanılmalıdır.

6. Hangi Dosya Hangi Pakete Ait?

Bir dosyanın hangi paket tarafından kurulduğunu görmek için:

pacman -Qo /dosya/yolu

Örnek:

pacman -Qo /usr/bin/php

Kurulu bir paketin dosyalarını listelemek için:

pacman -Ql paket_adi

7. AUR ve yay Komutları


Arch User Repository yani AUR, resmi depolarda olmayan birçok paketin bulunduğu topluluk deposudur. AUR paketlerini daha kolay kurmak için yay kullanılabilir.

yay kurulu değilse önce gerekli paketleri kurun:

sudo pacman -S --needed base-devel git

yay kurulumu:

cd /tmp
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

AUR paketi aramak için:

yay -Ss paket_adi

AUR paketi kurmak için:

yay -S paket_adi

Tüm sistemi ve AUR paketlerini güncellemek için:

yay -Syu

Örnek Visual Studio Code kurulumu:

yay -S visual-studio-code-bin

8. Servis Yönetimi: systemctl


Arch Linux’ta servisleri yönetmek için systemctl kullanılır. Örneğin Apache, MariaDB, NetworkManager gibi servisler systemctl ile başlatılır, durdurulur ve sistem açılışına eklenir.

Bir servisi başlatmak için:

sudo systemctl start servis_adi

Bir servisi durdurmak için:

sudo systemctl stop servis_adi

Bir servisi yeniden başlatmak için:

sudo systemctl restart servis_adi

Servis durumunu görmek için:

systemctl status servis_adi

Servisi sistem açılışında otomatik başlatmak için:

sudo systemctl enable servis_adi

Servisi hem başlatıp hem otomatik açılışa eklemek için:

sudo systemctl enable --now servis_adi

Örnek Apache başlatma:

sudo systemctl enable --now httpd

Örnek MariaDB başlatma:

sudo systemctl enable --now mariadb

9. Log ve Hata Kayıtlarını İnceleme


Bir servis çalışmıyorsa veya hata veriyorsa en önemli komutlardan biri journalctl komutudur.

Bir servisin loglarını görmek için:

sudo journalctl -xeu servis_adi

Örnek Apache logları:

sudo journalctl -xeu httpd

Sistemin son açılıştaki loglarını görmek için:

journalctl -b

Canlı log takibi yapmak için:

journalctl -f

Son 100 satırı görmek için:

journalctl -n 100

10. Disk ve Alan Kontrolü

Diskleri ve bölümleri görmek için:

lsblk

Disk kullanımını görmek için:

df -h

Bir klasörün ne kadar yer kapladığını görmek için:

du -sh klasor_adi

Bulunduğunuz klasördeki dosya ve klasör boyutlarını görmek için:

du -h --max-depth=1

Disk bölümleme aracı olarak cfdisk kullanılabilir:

sudo cfdisk /dev/sda

Dikkat: Disk bölümleme komutları veri kaybına neden olabilir. Hangi diski seçtiğinizden emin olmadan işlem yapılmamalıdır.

11. USB ve Disk Bağlama

Diskleri görmek için:

lsblk

Bir diski elle bağlamak için önce klasör oluşturulur:

sudo mkdir -p /mnt/disk

Sonra disk bağlanır:

sudo mount /dev/sdX1 /mnt/disk

Bağlantıyı kaldırmak için:

sudo umount /mnt/disk

NTFS disklerde sorun varsa gerekli paket kurulabilir:

sudo pacman -S ntfs-3g

NTFS onarım denemesi için:

sudo ntfsfix /dev/sdX1

12. Ağ ve İnternet Komutları

Ağ cihazlarını görmek için:

ip link

IP adreslerini görmek için:

ip addr

Varsayılan ağ yolunu görmek için:

ip route

İnternet bağlantısını test etmek için:

ping archlinux.org

DNS çözümleme testi için:

resolvectl status

NetworkManager kullanıyorsanız bağlantıları görmek için:

nmcli connection show

Wi-Fi ağlarını listelemek için:

nmcli device wifi list

Wi-Fi ağına bağlanmak için:

nmcli device wifi connect "WiFi_Adi" password "WiFi_Sifresi"

13. Dosya ve Klasör İşlemleri

Bulunduğunuz dizini görmek için:

pwd

Klasördeki dosyaları listelemek için:

ls

Detaylı listelemek için:

ls -la

Klasör oluşturmak için:

mkdir klasor_adi

İç içe klasör oluşturmak için:

mkdir -p ana/alt/klasor

Dosya kopyalamak için:

cp kaynak hedef

Klasör kopyalamak için:

cp -r kaynak_klasor hedef_klasor

Dosya taşımak veya yeniden adlandırmak için:

mv eski_ad yeni_ad

Dosya silmek için:

rm dosya_adi

Klasör silmek için:

rm -r klasor_adi

Dikkat: rm -rf komutu çok tehlikelidir. Yanlış klasörde kullanılırsa önemli dosyaları geri dönüşsüz silebilir.

14. Dosya İzinleri

Bir dosyanın veya klasörün sahibini değiştirmek için:

sudo chown kullanici:grup dosya_veya_klasor

Örnek:

sudo chown -R mustafast:http /home/mustafast/www

İzinleri değiştirmek için:

chmod 755 dosya_veya_klasor

Bir klasör ve içeriğine izin vermek için:

chmod -R 755 klasor_adi

Web projelerinde sık kullanılan örnek:

sudo chown -R mustafast:http /home/mustafast/www
sudo chmod -R 755 /home/mustafast/www

15. Dosya İçinde Arama

Bir klasörde dosya aramak için:

find . -name "dosya_adi"

Örnek:

find . -name "*.php"

Dosya içinde kelime aramak için:

grep -R "aranacak_kelime" .

Örnek:

grep -R "mysqli" /etc/php/

Satır numarasıyla arama yapmak için:

grep -Rn "aranacak_kelime" .

16. Çalışan Programları ve Süreçleri Görme

Çalışan işlemleri görmek için:

ps aux

Belirli bir işlemi aramak için:

ps aux | grep program_adi

Sistem kaynaklarını canlı izlemek için:

top

Daha gelişmiş bir araç için htop kurulabilir:

sudo pacman -S htop
htop

Bir işlemi sonlandırmak için:

kill PID

Zorla sonlandırmak için:

kill -9 PID

17. Arşiv Açma ve Sıkıştırma

zip dosyası açmak için:

unzip dosya.zip

zip paketi kurulu değilse:

sudo pacman -S unzip zip

tar.gz dosyası açmak için:

tar -xvzf dosya.tar.gz

tar.xz dosyası açmak için:

tar -xvJf dosya.tar.xz

Bir klasörü tar.gz olarak sıkıştırmak için:

tar -czvf arsiv.tar.gz klasor_adi

18. Metin Editörleri

Terminalde dosya düzenlemek için nano en kolay editörlerden biridir:

sudo pacman -S nano

Bir dosyayı açmak için:

nano dosya_adi

Kaydetmek için:

CTRL + O

Çıkmak için:

CTRL + X

Daha gelişmiş editör olarak vim kullanılabilir:

sudo pacman -S vim

19. Yaygın Hata Çözüm Komutları

Bir servis başlamıyorsa önce durumuna bakılır:

systemctl status servis_adi --no-pager -l

Sonra logları incelenir:

sudo journalctl -xeu servis_adi

Apache ayar hatasını kontrol etmek için:

sudo apachectl configtest

PHP modüllerini görmek için:

php -m

PHP ayar dosyasını görmek için:

php --ini

MariaDB’ye terminalden girmek için:

sudo mariadb

20. Faydalı Kısa Komutlar

Komut geçmişini görmek için:

history

Önceki komutu tekrar çalıştırmak için:

!!

Bir komutun nerede olduğunu görmek için:

which komut_adi

Komutun yardım sayfasını görmek için:

man komut_adi

Örnek:

man pacman

Kısa yardım almak için:

komut_adi --help

21. Güvenli Güncelleme Rutini

Arch Linux kullanırken düzenli bir bakım rutini oluşturmak faydalıdır. Basit bir rutin şu şekilde olabilir:

sudo pacman -Syu
pacman -Qtdq
sudo journalctl -p 3 -xb

Burada:


       
  • sudo pacman -Syu sistemi günceller.

  •    
  • pacman -Qtdq gereksiz bağımlılıkları listeler.

  •    
  • sudo journalctl -p 3 -xb son açılıştaki hata seviyesindeki kayıtları gösterir.

22. Yeni Başlayanlar İçin Önemli Tavsiyeler


       
  • Güncelleme yaparken genellikle sudo pacman -Syu kullanın.

  •    
  • sudo pacman -Sy paket alışkanlığından kaçının; kısmi güncelleme sorun çıkarabilir.

  •    
  • Servis hatalarında önce systemctl status, sonra journalctl kullanın.

  •    
  • Disk işlemlerinde lsblk ile doğru diski kontrol etmeden işlem yapmayın.

  •    
  • rm -rf komutunu dikkatli kullanın.

  •    
  • AUR paketleri kurarken PKGBUILD içeriğini kontrol etmek iyi bir alışkanlıktır.

  •    
  • Sistem dosyalarını düzenlemeden önce yedek almak her zaman daha güvenlidir.

Sonuç


Arch Linux güçlü, hızlı ve esnek bir dağıtımdır. Ancak bu esneklik, terminal komutlarını bilmeyi daha önemli hale getirir. Pacman ile paket yönetimi, systemctl ile servis kontrolü, journalctl ile hata inceleme, lsblk ve df ile disk kontrolü, grep ve find ile arama işlemleri günlük kullanımda en çok işe yarayan komutlardır.


Bu komutları öğrendikçe Arch Linux üzerinde sorun çözmek, yazılım kurmak, servisleri yönetmek ve geliştirme ortamı hazırlamak çok daha kolay hale gelir.