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 -aLinux çekirdeği sürümünü daha sade görmek için:
uname -rArch Linux sistem bilgilerini görmek için:
cat /etc/os-releaseDonanım ve sistem özetini daha güzel görmek için fastfetch kurulabilir:
sudo pacman -S fastfetch
fastfetch2. 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 -SyuBu 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 -Syu3. Paket Arama ve Kurma
Depolarda paket aramak için:
pacman -Ss paket_adiÖrnek:
pacman -Ss firefoxPaket kurmak için:
sudo pacman -S paket_adiÖrnek:
sudo pacman -S firefoxBir paketin sistemde kurulu olup olmadığını kontrol etmek için:
pacman -Qs paket_adiKurulu paket hakkında detaylı bilgi almak için:
pacman -Qi paket_adi4. Paket Kaldırma
Bir paketi kaldırmak için:
sudo pacman -R paket_adiPaketi gereksiz bağımlılıklarıyla birlikte kaldırmak için:
sudo pacman -Rns paket_adiÖrnek:
sudo pacman -Rns firefox5. Gereksiz Paketleri Temizleme
Artık hiçbir paket tarafından kullanılmayan bağımlılıkları görmek için:
pacman -QtdqListe boş değilse bu paketleri kaldırmak için:
sudo pacman -Rns $(pacman -Qtdq)Paket önbelleğini temizlemek için:
sudo pacman -ScDaha agresif temizlik için:
sudo pacman -SccNot: 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/phpKurulu bir paketin dosyalarını listelemek için:
pacman -Ql paket_adi7. 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 gityay kurulumu:
cd /tmp
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -siAUR paketi aramak için:
yay -Ss paket_adiAUR paketi kurmak için:
yay -S paket_adiTüm sistemi ve AUR paketlerini güncellemek için:
yay -SyuÖrnek Visual Studio Code kurulumu:
yay -S visual-studio-code-bin8. 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_adiBir servisi durdurmak için:
sudo systemctl stop servis_adiBir servisi yeniden başlatmak için:
sudo systemctl restart servis_adiServis durumunu görmek için:
systemctl status servis_adiServisi sistem açılışında otomatik başlatmak için:
sudo systemctl enable servis_adiServisi 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 mariadb9. 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 httpdSistemin son açılıştaki loglarını görmek için:
journalctl -bCanlı log takibi yapmak için:
journalctl -fSon 100 satırı görmek için:
journalctl -n 10010. Disk ve Alan Kontrolü
Diskleri ve bölümleri görmek için:
lsblkDisk kullanımını görmek için:
df -hBir klasörün ne kadar yer kapladığını görmek için:
du -sh klasor_adiBulunduğunuz klasördeki dosya ve klasör boyutlarını görmek için:
du -h --max-depth=1Disk bölümleme aracı olarak cfdisk kullanılabilir:
sudo cfdisk /dev/sdaDikkat: 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:
lsblkBir diski elle bağlamak için önce klasör oluşturulur:
sudo mkdir -p /mnt/diskSonra disk bağlanır:
sudo mount /dev/sdX1 /mnt/diskBağlantıyı kaldırmak için:
sudo umount /mnt/diskNTFS disklerde sorun varsa gerekli paket kurulabilir:
sudo pacman -S ntfs-3gNTFS onarım denemesi için:
sudo ntfsfix /dev/sdX112. Ağ ve İnternet Komutları
Ağ cihazlarını görmek için:
ip linkIP adreslerini görmek için:
ip addrVarsayılan ağ yolunu görmek için:
ip routeİnternet bağlantısını test etmek için:
ping archlinux.orgDNS çözümleme testi için:
resolvectl statusNetworkManager kullanıyorsanız bağlantıları görmek için:
nmcli connection showWi-Fi ağlarını listelemek için:
nmcli device wifi listWi-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:
pwdKlasördeki dosyaları listelemek için:
lsDetaylı listelemek için:
ls -laKlasör oluşturmak için:
mkdir klasor_adiİç içe klasör oluşturmak için:
mkdir -p ana/alt/klasorDosya kopyalamak için:
cp kaynak hedefKlasör kopyalamak için:
cp -r kaynak_klasor hedef_klasorDosya taşımak veya yeniden adlandırmak için:
mv eski_ad yeni_adDosya silmek için:
rm dosya_adiKlasör silmek için:
rm -r klasor_adiDikkat: 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_klasorBir klasör ve içeriğine izin vermek için:
chmod -R 755 klasor_adiWeb projelerinde sık kullanılan örnek:
sudo chown -R mustafast:http /home/mustafast/www
sudo chmod -R 755 /home/mustafast/www15. 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 auxBelirli bir işlemi aramak için:
ps aux | grep program_adiSistem kaynaklarını canlı izlemek için:
topDaha gelişmiş bir araç için htop kurulabilir:
sudo pacman -S htop
htopBir işlemi sonlandırmak için:
kill PIDZorla sonlandırmak için:
kill -9 PID17. Arşiv Açma ve Sıkıştırma
zip dosyası açmak için:
unzip dosya.zipzip paketi kurulu değilse:
sudo pacman -S unzip ziptar.gz dosyası açmak için:
tar -xvzf dosya.tar.gztar.xz dosyası açmak için:
tar -xvJf dosya.tar.xzBir klasörü tar.gz olarak sıkıştırmak için:
tar -czvf arsiv.tar.gz klasor_adi18. Metin Editörleri
Terminalde dosya düzenlemek için nano en kolay editörlerden biridir:
sudo pacman -S nanoBir dosyayı açmak için:
nano dosya_adiKaydetmek için:
CTRL + OÇıkmak için:
CTRL + XDaha gelişmiş editör olarak vim kullanılabilir:
sudo pacman -S vim19. Yaygın Hata Çözüm Komutları
Bir servis başlamıyorsa önce durumuna bakılır:
systemctl status servis_adi --no-pager -lSonra logları incelenir:
sudo journalctl -xeu servis_adiApache ayar hatasını kontrol etmek için:
sudo apachectl configtestPHP modüllerini görmek için:
php -mPHP ayar dosyasını görmek için:
php --iniMariaDB’ye terminalden girmek için:
sudo mariadb20. 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_adiKomutun yardım sayfasını görmek için:
man komut_adiÖrnek:
man pacmanKısa yardım almak için:
komut_adi --help21. 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 -xbBurada:
sudo pacman -Syusistemi günceller.pacman -Qtdqgereksiz bağımlılıkları listeler.sudo journalctl -p 3 -xbson açılıştaki hata seviyesindeki kayıtları gösterir.
22. Yeni Başlayanlar İçin Önemli Tavsiyeler
- Güncelleme yaparken genellikle
sudo pacman -Syukullanın. sudo pacman -Sy paketalışkanlığından kaçının; kısmi güncelleme sorun çıkarabilir.- Servis hatalarında önce
systemctl status, sonrajournalctlkullanın. - Disk işlemlerinde
lsblkile doğru diski kontrol etmeden işlem yapmayın. rm -rfkomutunu 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.