LinuxHelp.me Logo

Linux – Pratik kılavuz

Bu sayfa, kompakt ama kullanışlı bir Linux referansı olarak tasarlanmıştır.
Tüm örnekler genel olup, çoğu Linux dağıtımına uygulanabilir.
(Debian/Ubuntu, RHEL/Fedora, Arch, Alpine), aksi belirtilmedikçe.


1. Dosya Yapısı ve Navigasyon

Linux, bir merkezi ağaç yapısı (/) ile çalışır, Windows'taki gibi sürücü harfleri ile değil.

Önemli klasörler:

Navigasyon tamamen terminal üzerinden yapılır. Her zaman "geçerli dizin" üzerinden çalışırsınız.

Mevcut yolu görüntüle:

pwd

Geçerli klasördeki dosyaları ve klasörleri göster:

ls
ls -lah

Seçenekler:

Klasör yapısında gezinme:

cd /path/to/folder
cd ..
cd ~

2. Dosyaları ve klasörleri yönetme

Dosyalar ve klasörler tamamen komutlar aracılığıyla oluşturulur, taşınır ve silinir.

Bir klasör oluşturmak:

mkdir folder
mkdir -p a/b/c

-p eksik ara dizinlerin de oluşturulmasını sağlar.

Boş bir dosya oluşturmak veya zaman damgasını güncellemek:

touch file.txt

Dosyaları veya klasörleri kopyalama:

cp source dest
cp -a source dest

-a (arşiv) hakları, sahipliği ve sembolik bağlantıları korur ve neredeyse her zaman önerilir.

Dosyaları veya klasörleri taşımak veya yeniden adlandırmak:

mv old new

Dosyaları ve klasörleri silmek:

rm file
rm -r folder
rm -rf folder

rm -rf komutunu yalnızca ne yaptığınızdan emin olduğunuzda kullanın.

Bir sembolik bağlantı oluşturmak:

ln -s target link

3. Dosyaları görüntüleme ve okuma

Dosyaları görüntülemek için boyut ve kullanımına bağlı olarak çeşitli araçlar mevcuttur.

Tam içeriği göster:

cat file

Küçük dosyalar için uygundur.

Etkileşimli görüntüleme (kaydırma ve arama):

less file

İlk veya son satırları görüntüle:

head -n 20 file
tail -n 20 file

Bir dosyayı canlı takip etmek (örneğin günlükler):

tail -f /var/log/syslog

4. Metin arama ve filtreleme

Linux, günlüklerde ve yapılandırma dosyalarında metin aramak ve filtrelemek için güçlü araçlar sunar.

Metin arama:

grep "text" file
grep -R "text" folder
grep -Rni "tekst" folder

Seçenekler:

Dosya adıyla arama:

find . -name "*.log"

Değişiklik tarihine göre dosyaları arama:

find . -type f -mtime -7

Metin içinden sütunlar veya alanlar almak:

awk '{print $1}' file
cut -d: -f1 file

5. Haklar ve mülkiyet

Linux, kullanıcılar, gruplar ve dosya başına izinlerle çalışır.

Hakları görüntüle:

ls -l

Hakları ayarlamak:

chmod 644 file
chmod 755 script.sh

Anlamı:

Sahibi ve grubu düzenle:

chown user:group file

Mevcut kullanıcı ve grupları görüntüle:

id
groups

6. Süreçler ve sistem durumu

Linux, aktif süreçler ve sistem kullanımı hakkında kapsamlı bilgiler sunar.

Tüm süreçler gösteriliyor:

ps aux

Canlı CPU ve bellek görünümü:

top
htop

Bellek kullanımını görüntüle:

free -h

Dosya sistemi başına disk alanı:

df -h

Klasör boyutu:

du -sh folder

Bir süreci sonlandırmak:

kill PID
kill -9 PID

-9 kapatmayı zorlar ve yalnızca son çare olarak kullanılmalıdır.


7. Ağ ve bağlantı

Ağ durumu ve bağlantı, sunucular ve uygulamalar için hayati öneme sahiptir.

Ağ arayüzleri ve yollar:

ip a
ip r

Dinleyen portlar ve süreçler:

ss -tulpn

Ağ bağlantısını test et:

ping domain.tld

HTTP istekleri gerçekleştirmek:

curl https://site.tld
curl -I https://site.tld

DNS bilgilerini sorgulama:

dig domain.tld

Bir portun erişilebilir olup olmadığını kontrol etme:

nc -vz host 443

8. Hizmetler ve günlükler (systemd)

Çoğu modern Linux sistemi, hizmet yönetimi için systemd kullanır.

Hizmetlerin durumu ve yönetimi:

systemctl status service
systemctl start service
systemctl stop service
systemctl restart service
systemctl reload service

Hizmetler önyüklemede otomatik olarak başlatılır:

systemctl enable service
systemctl disable service

Logları görüntüle:

journalctl -u service
journalctl -u service -f
journalctl -p err

9. Paket yöneticileri

Yazılım, dağıtımın paket yöneticisi aracılığıyla yüklenir.

Debian / Ubuntu (apt)

apt update
apt install package
apt remove package
apt purge package
apt autoremove

RHEL / Fedora (dnf)

dnf install package
dnf remove package
dnf search package

Arch (pacman)

pacman -S package
pacman -Rns package
pacman -Syu

Alpine (apk)

apk add package
apk del package

10. Git – sürüm kontrolü

Git, kod ve yapılandırma sürüm kontrolü için kullanılır.

Temel komutlar:

git init
git clone url
git status
git add .
git commit -m "description"

Uzak bir cihazla senkronize etme:

git pull --rebase
git push

Değişikliklere dair içgörü:

git log --oneline --graph
git diff

11. Docker – konteynerler

Docker, uygulamaların izole bir şekilde çalıştırılmasını sağlar.

Konteynerlerde görüntüleri yönetmek:

docker pull image
docker images
docker ps
docker ps -a

Bir konteyner başlatmak ve yönetmek:

docker run -d -p 8080:80 image
docker logs container
docker exec -it container sh

Docker Compose:

docker compose up -d
docker compose down

12. Temel güvenlik

Minimum bir güvenlik temeli özellikle sunucularda hayati öneme sahiptir.

Güvenlik Duvarı (Ubuntu):

ufw status
ufw allow 22
ufw enable

Nftables (düşük seviye güvenlik duvarı):

nft list ruleset

Kaba kuvvet saldırılarına karşı koruma:

fail2ban-client status

Otomatik güvenlik güncellemeleri:

apt install unattended-upgrades

13. Yaygın Olarak Kullanılan Araçlar