Neler yeni

Yazılım Forum

Tüm özelliklerimize erişmek için şimdi bize katılın. Kayıt olduktan ve giriş yaptıktan sonra konu oluşturabilecek, mevcut konulara yanıt gönderebilecek, itibar kazanabilecek, özel mesajlaşmaya erişebilecek ve çok daha fazlasını yapabileceksiniz! Bu hizmetlerimiz ise tamamen ücretsiz ve kurallara uyulduğu sürece sınırsızdır, o zaman ne bekliyorsunuz? Hadi, sizde aramıza katılın!

Linux Sunucu Yönetiminde En Çok Kullanılan Temel Komutlar Rehberi

Linux Sunucu Yönetiminde Temel Komutlar Rehberi

Linux sunucuları yönetmek, sistem yöneticileri ve geliştiriciler için vazgeçilmez bir beceridir. Komut satırı arayüzü (CLI) üzerinden sunucularla etkileşim kurmak, verimliliği artırır ve daha derinlemesine kontrol sağlar. Bu kapsamlı rehberde, bir Linux sunucusunu etkin bir şekilde yönetmek için bilmeniz gereken en temel ve sık kullanılan komutları detaylı bir şekilde inceleyeceğiz. Her komutun ne işe yaradığını, nasıl kullanıldığını ve pratik örneklerini bulacaksınız. Unutmayın, pratik yapmak bu komutları hafızanıza kazımanın en iyi yoludur. Bu rehberdeki komutları dikkatlice uygulayın.

linux_terminal.png

1. Dosya ve Dizin Yönetimi Komutları

Linux'ta her şey bir dosya olarak kabul edilir. Dosya ve dizinleri yönetmek, sunucu yönetiminin temelidir.

ls: List directory contents (Dizin içeriğini listele).
Bu komut, bulunduğunuz dizindeki veya belirttiğiniz bir dizindeki dosya ve alt dizinleri listeler.
  • ls -l: Detaylı listeleme (izinler, sahip, boyut, tarih).
    Kod:
    ls -l /var/log
  • ls -a: Gizli dosyalar dahil tüm dosyaları listele.
    Kod:
    ls -a
  • ls -lh: İnsan okunabilir boyutta (MB, GB gibi) detaylı listeleme.
    Kod:
    ls -lh /home/user
cd: Change directory (Dizin değiştir).
Dosya sisteminde gezinmek için kullanılır.
Kod:
cd /etc/nginx
Kod:
cd ..
(Bir üst dizine çıkma)
Kod:
cd ~
(Ana dizine dönme)

pwd: Print working directory (Çalışma dizinini göster).
O an bulunduğunuz dizinin tam yolunu gösterir.
Kod:
pwd

mkdir: Make directory (Dizin oluştur).
Yeni bir dizin oluşturmak için kullanılır.
Kod:
mkdir yeni_dizin
Kod:
mkdir -p proje/src/main
(İç içe dizinler oluşturma)

rm: Remove (Sil).
Dosyaları ve dizinleri silmek için kullanılır. Dikkatli kullanılmalıdır!
  • rm dosya.txt: Bir dosyayı sil.
    Kod:
    rm gecici_dosya.txt
  • rm -r dizin: Bir dizini ve içindeki her şeyi sil.
    Kod:
    rm -r eski_proje
  • rm -rf dizin: Silme onayı sormadan (force) recursive olarak sil. Son derece dikkatli olun!
    Kod:
    rm -rf /tmp/test_silinecek

cp: Copy (Kopyala).
Dosya ve dizinleri kopyalamak için kullanılır.
  • cp kaynak_dosya hedef_dosya: Dosyayı kopyala.
    Kod:
    cp /etc/nginx/nginx.conf ~/nginx.conf.backup
  • cp -r kaynak_dizin hedef_dizin: Dizini recursive olarak kopyala.
    Kod:
    cp -r /var/www/html /home/yedekler

mv: Move (Taşı) / Rename (Yeniden adlandır).
Dosya ve dizinleri taşımak veya yeniden adlandırmak için kullanılır.
Kod:
mv dosya.txt yeni_ad.txt
Kod:
mv /var/log/nginx/access.log /mnt/disk2/log_yedekleri

cat: Concatenate and display (Birleştir ve göster).
Dosyaların içeriğini görüntülemek, birleştirmek veya yeni dosya oluşturmak için kullanılır.
Kod:
cat /etc/passwd
Kod:
cat dosya1.txt dosya2.txt > birlesik.txt

less / more: Dosya içeriğini sayfa sayfa görüntüle.
Büyük dosyaları terminalde rahatça okumak için kullanılır. less daha gelişmiş özelliklere sahiptir (ileri/geri gitme, arama).
Kod:
less /var/log/syslog

grep: Global regular expression print (Düzenli ifadeye göre ara).
Dosyaların veya komut çıktılarının içinde belirli bir metin veya deseni aramak için kullanılır.
Kod:
grep "error" /var/log/nginx/error.log
Kod:
ps aux | grep nginx

find: Dosya sisteminde dosya ve dizinleri bul.
Belirli kriterlere göre dosya sisteminde arama yapmak için kullanılır.
  • find . -name "index.html": Mevcut dizinde "index.html" adında dosya bul.
    Kod:
    find /var/www -name "*.php"
  • find / -type f -size +1G: Boyutu 1GB'den büyük dosyaları bul.
    Kod:
    find / -type f -size +1G -print0 | xargs -0 du -h

2. Disk Kullanımı ve Süreç Yönetimi Komutları

Sunucunun performansını ve kaynak kullanımını izlemek kritik öneme sahiptir.

df: Disk filesystem (Disk dosya sistemi kullanımını göster).
Disk bölümlerinin doluluk oranlarını gösterir.
Kod:
df -h
(İnsan okunabilir format)

du: Disk usage (Dizin boyutunu göster).
Belirli bir dizinin veya dosyaların disk üzerindeki kapladığı alanı gösterir.
Kod:
du -sh /var/log
(Dizinin toplam boyutunu insan okunabilir formatta göster)
Kod:
du -h /home/user/resimler

ps: Process status (Süreç durumunu göster).
Çalışan süreçleri listeler.
  • ps aux: Tüm kullanıcıların süreçlerini detaylı göster.
    Kod:
    ps aux | head -n 10
  • ps -ef: Ağaç yapısında süreçleri listele.
    Kod:
    ps -ef | grep apache2

top: Süreçleri dinamik olarak izle.
Sistem kaynaklarını (CPU, bellek) en çok kullanan süreçleri gerçek zamanlı olarak gösterir. Görev yöneticisi gibidir. `q` tuşu ile çıkılır.
Kod:
top

kill: Süreçleri sonlandır.
Bir süreci Process ID (PID) kullanarak sonlandırmak için kullanılır.
  • kill PID: Normal sonlandırma sinyali gönderir.
    Kod:
    kill 12345
  • kill -9 PID: Süreci zorla sonlandırır (kill sinyali 9). Süreçlerin donması durumunda kullanılır.
    Kod:
    kill -9 54321

3. İzinler ve Kullanıcı Yönetimi Komutları

Güvenlik için dosya ve dizin izinlerini doğru ayarlamak ve kullanıcıları yönetmek hayati önem taşır.

chmod: Change mode (İzinleri değiştir).
Dosya ve dizinlerin okuma, yazma ve çalıştırma izinlerini ayarlar.
  • chmod 755 script.sh: Sahip: okuma/yazma/çalıştırma, Grup/Diğerleri: okuma/çalıştırma.
    Kod:
    chmod 755 /var/www/html/script.sh
  • chmod +x script.sh: Çalıştırma izni ekler.
    Kod:
    chmod +x my_program

chown: Change owner (Sahibini değiştir).
Dosya ve dizinlerin sahibini ve grubunu değiştirir.
Kod:
chown www-data:www-data /var/www/html/index.html
Kod:
chown -R user:group /home/user/web_files
(Recursive olarak)

useradd: Kullanıcı oluştur.
Yeni bir sistem kullanıcısı eklemek için kullanılır.
Kod:
useradd -m -s /bin/bash yeni_kullanici
(-m home dizini oluştur, -s shell ata)

passwd: Şifre değiştir.
Bir kullanıcının şifresini değiştirmek için kullanılır.
Kod:
passwd yeni_kullanici
(Kullanıcı için yeni şifre belirle)

sudo: Superuser do (Süper kullanıcı olarak yap).
Normal bir kullanıcının, root yetkileriyle komut çalıştırmasını sağlar. Güvenlik için her zaman dikkatli kullanılmalıdır.
Kod:
sudo apt update
Kod:
sudo systemctl restart nginx

4. Paket Yönetimi Komutları

Yazılım paketlerini yüklemek, güncellemek ve kaldırmak için dağıtıma özgü paket yöneticileri kullanılır.

apt (Debian/Ubuntu tabanlı sistemler):
  • sudo apt update: Paket listelerini günceller.
    Kod:
    sudo apt update
  • sudo apt upgrade: Yüklü paketleri günceller.
    Kod:
    sudo apt upgrade
  • sudo apt install paket_adı: Paket yükle.
    Kod:
    sudo apt install nginx
  • sudo apt remove paket_adı: Paket kaldır.
    Kod:
    sudo apt remove apache2
  • sudo apt autoremove: Bağımlılıkları otomatik kaldır.
    Kod:
    sudo apt autoremove

yum / dnf (CentOS/RHEL/Fedora tabanlı sistemler):
  • sudo yum update veya sudo dnf update: Sistemdeki tüm paketleri günceller.
    Kod:
    sudo yum update
  • sudo yum install paket_adı veya sudo dnf install paket_adı: Paket yükle.
    Kod:
    sudo dnf install httpd
  • sudo yum remove paket_adı veya sudo dnf remove paket_adı: Paket kaldır.
    Kod:
    sudo yum remove mariadb-server

5. Servis Yönetimi Komutları

Sistem servislerini (web sunucusu, veritabanı vb.) başlatmak, durdurmak ve yeniden başlatmak için kullanılır.

systemctl: Control systemd system and service manager.
Modern Linux dağıtımlarında servisleri yönetmek için kullanılır.
  • systemctl start servis_adı: Servisi başlat.
    Kod:
    sudo systemctl start apache2
  • systemctl stop servis_adı: Servisi durdur.
    Kod:
    sudo systemctl stop nginx
  • systemctl restart servis_adı: Servisi yeniden başlat.
    Kod:
    sudo systemctl restart php-fpm
  • systemctl enable servis_adı: Servisin sistem başlangıcında otomatik başlamasını sağla.
    Kod:
    sudo systemctl enable ssh
  • systemctl disable servis_adı: Servisin otomatik başlamasını engelle.
    Kod:
    sudo systemctl disable postgresql
  • systemctl status servis_adı: Servis durumunu kontrol et.
    Kod:
    systemctl status docker

journalctl: Query the systemd journal.
Sistem günlüklerini (loglarını) görüntülemek için kullanılır. Servis sorunlarını gidermede çok yardımcıdır.
  • journalctl -u servis_adı: Belirli bir servisin günlüklerini göster.
    Kod:
    journalctl -u nginx.service --since "1 hour ago"
  • journalctl -f: Günlükleri gerçek zamanlı olarak izle (follow).
    Kod:
    journalctl -f

6. Ağ Komutları

Ağ bağlantılarını, trafiği ve sunucunun ağ ayarlarını yönetmek için kullanılır.

ssh: Secure Shell (Güvenli Kabuk).
Uzak bir sunucuya güvenli bir şekilde bağlanmak için kullanılır.
Kod:
ssh kullanici_adi@sunucu_ip_adresi
Kod:
ssh root@192.168.1.100 -p 2222
(Farklı port belirtme)

scp: Secure Copy (Güvenli Kopyalama).
Uzak sunucular arasında güvenli bir şekilde dosya kopyalamak için kullanılır.
  • scp yerel_dosya kullanici@uzak_sunucu:/hedef/dizin: Yerelden uzağa kopyala.
    Kod:
    scp important_data.zip user@remote:/home/user/backups/
  • scp kullanici@uzak_sunucu:/kaynak/dosya yerel/dizin: Uzaktan yerel kopyala.
    Kod:
    scp user@remote:/var/log/nginx/access.log .

rsync: Remote sync (Uzak senkronizasyon).
Dosyaları ve dizinleri yerel ve uzak konumlar arasında verimli bir şekilde senkronize etmek için kullanılır. Sadece değişen kısımları kopyalar.
Kod:
rsync -avz kaynak_dizin/ hedef_dizin
Kod:
rsync -avz /var/www/html/ user@remote:/var/www/html/

wget: Web get.
Web üzerinden dosya indirmek için kullanılır.
Kod:
wget https://example.com/software.tar.gz
Kod:
wget -c https://largefile.iso
(Kaldığı yerden devam et)

curl: Client URL.
URL sözdizimi kullanan verileri göndermek veya almak için kullanılır. API testleri, web sayfası içeriği çekme vb. için idealdir.
Kod:
curl https://api.example.com/status
Kod:
curl -O http://example.com/another_file.zip
(Dosyayı farklı kaydet)

netstat (Eski, yerini ss veya ip almıştır): Network statistics (Ağ istatistikleri).
Aktif ağ bağlantılarını, yönlendirme tablolarını ve ağ arayüzü istatistiklerini gösterir.
Kod:
netstat -tunlp
(TCP/UDP dinleyen portlar ve süreçler)

ip addr: IP adresi.
Ağ arayüzlerinin IP adreslerini ve durumunu gösterir. ifconfig'in yerini almıştır.
Kod:
ip addr show
Kod:
ip a
(Kısaltma)

7. Arşivleme ve Sıkıştırma Komutları

Dosyaları yedeklemek veya transfer etmek için sıkça kullanılır.

tar: Tape archive (Bant arşivi).
Birden fazla dosyayı tek bir arşiv dosyası (tarball) halinde birleştirmek için kullanılır. Sıkıştırma seçenekleriyle birlikte de kullanılabilir.
  • tar -cvf arsiv.tar dosya1 dosya2 dizin: Arşiv oluştur.
    Kod:
    tar -cvf web_yedek.tar /var/www/html
  • tar -xvf arsiv.tar: Arşivi aç.
    Kod:
    tar -xvf web_yedek.tar -C /tmp/restore_dir
  • tar -czvf arsiv.tar.gz dosya_veya_dizin: Gzip ile sıkıştırılmış arşiv oluştur.
    Kod:
    tar -czvf loglar.tar.gz /var/log/nginx
  • tar -xzvf arsiv.tar.gz: Gzip sıkıştırılmış arşivi aç.
    Kod:
    tar -xzvf loglar.tar.gz

gzip / gunzip: Sıkıştır / Sıkıştırmayı aç.
Tek bir dosyayı sıkıştırmak veya sıkıştırmayı açmak için kullanılır.
Kod:
gzip buyuk_dosya.log
(buyuk_dosya.log.gz oluşur)
Kod:
gunzip buyuk_dosya.log.gz

unzip: Zip dosyalarını aç.
Windows'ta yaygın olan .zip uzantılı arşivleri açmak için kullanılır.
Kod:
unzip yedek.zip
Kod:
unzip -d /hedef/dizin yazilim.zip

Önemli Not: Bu komutların çoğu root yetkisi gerektiren işlemler yapar. sudo komutunu kullanırken veya direkt root kullanıcısıyla çalışırken, yaptığınız işlemlerin sonuçlarını iyi anladığınızdan emin olun. Yanlış bir komut, sisteminizde geri dönülemez hasarlara yol açabilir. Özellikle rm -rf gibi komutları kullanırken iki kere düşünün!

Sonuç

Linux sunucu yönetiminde bu temel komutlara hakim olmak, size güçlü bir kontrol ve esneklik sağlayacaktır. Her komutun farklı seçenekleri ve daha derinlemesine kullanımları bulunmaktadır. Bu rehber bir başlangıç noktasıdır. Daha fazla bilgi ve örnek için her zaman komutun man sayfası (örneğin,
Kod:
man ls
) veya internet üzerindeki güvenilir kaynaklar kullanılabilir. Unutmayın, pratik en iyi öğretmendir. Sanal bir makinede veya test sunucusunda bu komutları deneyerek kendinizi geliştirmeniz şiddetle tavsiye edilir.

Linux Foundation Hakkında Daha Fazla Bilgi
 
shape1
shape2
shape3
shape4
shape5
shape6
Üst

Bu web sitenin performansı Hazal Host tarafından sağlanmaktadır.

YazilimForum.com.tr internet sitesi, 5651 sayılı Kanun’un 2. maddesinin 1. fıkrasının (m) bendi ve aynı Kanun’un 5. maddesi kapsamında Yer Sağlayıcı konumundadır. Sitede yer alan içerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır.

YazilimForum.com.tr, kullanıcılar tarafından paylaşılan içeriklerin doğruluğunu, güncelliğini veya hukuka uygunluğunu garanti etmez ve içeriklerin kontrolü veya araştırılması ile yükümlü değildir. Kullanıcılar, paylaştıkları içeriklerden tamamen kendileri sorumludur.

Hukuka aykırı içerikleri fark ettiğinizde lütfen bize bildirin: lydexcoding@gmail.com

Sitemiz, kullanıcıların paylaştığı içerik ve bilgileri 6698 sayılı KVKK kapsamında işlemektedir. Kullanıcılar, kişisel verileriyle ilgili haklarını KVKK Politikası sayfasından inceleyebilir.

Sitede yer alan reklamlar veya üçüncü taraf bağlantılar için YazilimForum.com.tr herhangi bir sorumluluk kabul etmez.

Sitemizi kullanarak Forum Kuralları’nı kabul etmiş sayılırsınız.

DMCA.com Protection Status Copyrighted.com Registered & Protected