Bazen Linux'ta terminal komutlarını unutabilirsiniz ve bunları bilgisayarınıza veya bir kağıda kopya kağıdı olarak kaydetmek iyi bir uygulamadır. Bu liste tam değildir ancak en sık kullanılan komutları içermektedir. En sık kullandığınız komutları aşağıdaki yorumlara eklemekten ve listeyi paylaşmaktan çekinmeyin.
Kullanıcılar
- Id — Kullanıcı hakkında ayrıntılar (uid, gid ve grup);
- last — Zaman, kullanıcı adı, ip adresi ve oturum uzunluğu dahil olmak üzere sisteme son girişler hakkındaki bilgileri listeler;
- who — Yetkili kullanıcıları görüntüleme;
- groupadd "testgroup" — "testgroup" adında bir grup oluşturur;
- adduser NewUser — "NewUser" adlı kullanıcıyı ekler;
- userdel NewUser — "NewUser" adlı kullanıcıyı siler;
- usermod NewUser — "NewUser" kullanıcısının bilgilerini değiştirir.
Dizinlere Göre Gezinme
- cd /. — Çekirdek dizine gider;
- cd — Ev dizinine gider ($HOME değişkeni);
- cd /root — Kök dizine gider;
- cd .. — Bir seviye aşağıya iner;
- cd /root/.ssh — Gizli .ssh klasörüne gider.
Dosyalarla Çalışma
- ls -al — Dosyaları ve dizinleri listeler;
- pwd — Geçerli çalışma dizinini görüntüler;
- mkdir NewFolder — "NewFolder" adında yeni bir dizin oluşturur;
- rm NewFile — "NewFile" adlı dosyayı siler;
- rm -f NewFile — "NewFile" adlı dosyayı zorla siler;
- rm -r NewFolder — "NewFolder" adlı dizini özyinelemeli olarak siler;
- rm -rf NewFolder — "NewFolder" adlı bir dizini özyinelemeli olarak silmeye zorlar;
- cp oldfile1 newfile2 — oldfile1'in içeriğini newfile2'ye kopyalar;
- cp -r olddir1 newdir2 — "olddir1" dizinini "newdir2" dizinine özyinelemeli olarak kopyalar. Dir2 mevcut değilse oluşturulacaktır;
- mv oldfile1 newfile2 — "oldfile1 "i "newfile2" olarak yeniden adlandırır;
- ln -s /etc/log/file logfile — Dosya için bir kısayol oluşturur;
- touch newfile — newfile adında boş bir dosya oluşturur;
- cat > newfile — STDIN'i newfile içine yerleştirir;
- more newfile — newfile'ın içeriğini parçalar halinde çıktılar;
- head newfile — Yeni dosyanın ilk 10 satırının çıktısını verir;
- tail newfile — Yeni dosyanın son 10 satırının çıktısını alır;
- gpg -c newfile — Yeni dosyayı bir parola ile gpg biçiminde şifreler ve aynı dizinde saklar;
- gpg gpg — Dosyanın şifresini çözer;
- wc newfile — Yeni dosyanın bayt, kelime ve satır sayısını yazdırır.
Dosya/Dizin İzinleri
- chmod 777 /root/ssh — Sunucuya erişimi olan herkes (sahip, grup, diğerleri) için ssh dosyasına rwx (okuma, yazma, yürütme) izinlerini yapılandırır;
- chmod 755 /root/ssh — Sahip için rwx ve grup ve diğerleri için r_x izinlerini yapılandırır;
- chmod 766 /root/ssh — Sahip için rwx ve grup ve diğerleri için rw izinlerini yapılandırır;
- chown newuser newfile — newfile'ın sahibini newuser olarak değiştirir;
- chown newuser:newgroup newfile — Yeni dosyanın sahibini ve grup sahibini newuser ve newgroup olarak değiştirir;
- chown newuser:newgroup newfolder — newfolder dizini için sahip ve grup sahibini newuser ve newgroup olarak değiştirir;
- stat -c "%U %G" newfile — newfile kullanıcı ve grup sahiplerini görüntüler.
Arama
- grep searchargument newfile — searchargument için newfile içinde arama yapar;
- grep -r searchargument newfolder — searchargument için newfolder içindeki tüm dosyaları özyinelemeli olarak arar;
- locate newfile — newfile'ın tüm konumlarını gösterir;
- find /etc/ -name "searchargument" — etc dizininde adı searchargument ile başlayan dosyaları bulur;
- find /etc/ -size +50000k — etc dizinindeki 50000k'dan büyük dosyaları bulma.
Arşivleme
- tar -cf archive.tar newfile — 'newfile' dosyasından 'archive.tar' arşivi oluşturun;
- tar -xf archive.tar — 'archive.tar' dosyasını açın;
- tar -zcvf archive.tar.gz /var/log/ — Arşivi /var/log dizininden oluşturun;
- gzip newfile — Yeni dosyayı sıkıştırın (.gz uzantılı olacaktır).
Paketlerden Yükleme
- rpm -i pkg_program.rpm — rpm paketini yükler (CentOS, RHEL...);
- rpm -e pkg_name — rpm paketini kaldırır (CentOS, RHEL...);
- dnf install pkg_name — Depodan dnf ile paket yükler. Önceden YUM kullanılıyordu, ancak son zamanlarda YUM'un yerini DNF aldı. (CentOS, RHEL...);
- dpkg -i pkg_name — Bir deb paketinden yükler (Debian, Ubuntu, Mint...);
- dpkg -r pkg_name — Deb paketini kaldırır (Debian, Ubuntu, Mint...);
- apt install pkg_name — Depodan paket yükler (Debian, Ubuntu, Mint...);
- apt remove pkg_name — Paketleri kaldırır (Debian, Ubuntu, Mint...);
- apt upgrade && apt update — Sisteminizdeki (Debian, Ubuntu, Mint...) paketleri güncelleyin ve bundan sonra depoları güncelleyin.
Süreçler
- ps — Halihazırda çalışan süreçlerin çıktısını verir;
- ps aux | grep 'bash' — 'bash' işleminin kimliğini bulun;
- pmap -x 11 — Süreç belleğinde PID = 11 ile süreci eşler;
- top — Çalışan tüm işlemleri gösterir;
- kill pid — Süreci pid'ye göre sonlandırır;
- killall process — "process" adındaki tüm işlemleri sonlandırın;
- pkill process-name — Bir sürece sinyal gönderme;
- bg — Duraklatılmış bir süreci arka planda yürütmeye gönderme;
- fg — Çalışan bir işlemi arka plandan çıkarma;
- fg process — "process" adlı işlemi arka plandan çıkarın;
- lsof — İşlemlerin kullandığı dosyaların listeleri;
- renice 19 PID — En düşük işlem önceliğini ayarlar;
- pgrep bash — bash süreç kimliğini bul;
- pstree — Süreçlerin ağaç görünümünü gösterir.
Sistem
- uname — Sistem Bilgilerini gösterir;
- uname -r — Linux çekirdek bilgilerini gösterir;
- uptime — Sistemin ne kadar süredir çalıştığı ve yük ortalaması;
- hostname — Ana bilgisayar adını gösterir;
- hostname -i — Ana bilgisayarın IP adresini gösterir;
- last reboot — Yeniden başlatmaların geçmişini gösterir;
- date — Tarih ve saati gösterir;
- timedatectl — Tarih ve saati verir ve değiştirir;
- cal — Takvim çıktıları;
- w — Sistemde çalışan kullanıcıları görüntüler;
- whoami — Kullanıcı adınızı görüntüler;
- finger root — Kök kullanıcı bilgilerini gösterir ("apt-get install finger" ile kurulum gerektirir).
Donanım
- dmesg — Önyükleme sırasında sistem mesajlarını görüntüler;
- cat /proc/cpuinfo — CPU bilgisini gösterir;
- cat /proc/meminfo — RAM bilgisini gösterir;
- lshw — Donanım bilgilerini gösterir;
- lsblk — Sabit sürücü bilgilerini gösterir;
- free -m — Bellek boşaltır: RAM ve takas (MB cinsinden -m anahtarı);
- lspci -tv — PCI aygıtları hakkındaki bilgileri ağaç görünümünde gösterir;
- lsusb -tv — USB aygıtlarını bir ağaç görünümünde görüntüler;
- dmidecode — BIOS aygıt bilgilerini gösterir;
- hdparm -i /dev/xda — Disk bilgilerini gösterir;
- hdparm -tT /dev/xda — Xda'nın okuma-yazma hızını gösterir;
- badblocks -s /dev/xda — Kötü bloklar için testi gösterir.
Diski Kullanma
- df -h — Takılı bölümlerdeki boş alanı gösterir (bayt cinsinden);
- df -i — Dosya sistemindeki boş inode'ları gösterir;
- fdisk -l — Disk, bölüm ve dosya sistemi bilgilerini gösterir;
- du -sh — Takılı bölümlerdeki ayrılmamış alanı MB, GB, TB olarak görüntüler;
- findmnt — Tüm bağlama noktalarını görüntüler;
- mount /dev/sdb1 /mnt — sdb diskinin 1. bölümünü /mnt'ye bağlar;
Ağ
- ip addr show — Mevcut tüm ağ arayüzlerinin IP adreslerini gösterir;
- ip address add 192.168.0.1/24 dev eth0 — 192.168.0.1 adresini eth0'a atar;
- ifconfig — Mevcut tüm ağ arayüzlerinin IP adreslerini gösterir;
- ping 192.168.0.1 — 192.168.0.1 altındaki ana bilgisayara bağlanmak için bir ICMP yankı isteği gönderir;
- whois domain — Alan adı hakkındaki bilgileri gösterir;
- dig domain — Bir etki alanı hakkında DNS bilgilerini alır;
- dig -x 192.168.0.1 — İsim çözümlemesini tersine çevirir;
- host us — Ana bilgisayar adres çözümlemesini gösterir;
- hostname -I — Yerel adresleri gösterir;
- wget file_name — Bir dosya indirir;
- netstat -pnltu — Ana bilgisayarda dinlenen tüm bağlantı noktalarını gösterir ("apt-get install net-tools" gerekir).
Uzaktan bağlantı
- ssh root@host — Uzak bir ana bilgisayara ssh üzerinden root olarak bağlanır;
- ssh -p port_number user@host — Eğer 22 dışında bir ssh portu kullanılıyorsa uzak ana bilgisayara bağlanır;
- ssh host — Geçerli kullanıcı olarak varsayılan bağlantıyı kullanır;
- telnet host — Telnet bağlantısı kullanır (port 23).