Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?
Helaian rujukan Linux & Rangkaian
Arahan yang anda dah belajar, di satu tempat.
Bergerak dan baca fail
pwdTunjuk sesuatu seperti /home/you/kedai.cd kedai/kitchenMasuk ke dapur di dalam kedai.cd ..Naik satu bilik.cd ~Pulang ke rumah (cd sahaja pun sama).cd -Lompat balik ke bilik sebelum ini.lsSenaraikan bilik ini.ls -aTermasuk nama tersembunyi (bermula dengan titik).ls -lSatu baris setiap satu: kunci, pemilik, saiz, tarikh.cat menu/today.txtTunjuk menu hari ini.cat -n today.txtNomborkan setiap baris.less orders.logBaca buku pesanan muka demi muka.head -n 3 orders.log3 pesanan pertama.tail -n 3 orders.log3 pesanan terbaru.tail -f orders.logTerus perhati baris baru. Ctrl+C untuk berhenti.mkdir recipesBina bilik bernama recipes.mkdir -p store/2026/novBuat juga folder induk yang belum ada.cp menu/today.txt menu/today.bakSandar menu hari ini.Risiko: Hati-haticp -r kitchen kitchen-copySalin folder dan semua isinya.Risiko: Hati-hatimv draft.txt promo.txtTukar nama draf itu.Risiko: Hati-hatimv *.jpg photos/Alih setiap gambar ke photos.Risiko: Hati-hatirm a.tmp b.tmpPadam dua fail sementara.Risiko: Boleh hilang kerjarm -r oldPadam folder dan semua isinya.Risiko: Boleh hilang kerjarmdir oldPadam folder hanya jika ia kosong.Risiko: Boleh hilang kerjatouch notes.txtBuat fail nota kosong.
Cari dan carian
find kedai -name "*.log"Setiap fail log dalam kedai.find kedai -iname "sambal*"Huruf besar atau kecil, kedua-duanya padan.find kedai -type d -emptyFolder kosong sahaja.grep -i unpaid orders.logSetiap pesanan belum bayar, apa jua ejaan.grep -c nasi-lemak orders.logKira baris yang padan.grep -r belacan ~/kedaiCari dalam setiap fail di setiap folder.grep -i unpaid orders.log | wc -lBerapa pesanan belum bayar?sort -rn counts.txtNombor paling besar dulu.cut -d" " -f3 orders.log | sort | uniq -cPesanan bagi setiap hidangan.cut -d" " -f3 orders.logNama hidangan sahaja daripada setiap pesanan.sudo sed -i 's/lisen/listen/' /etc/nginx/sites-available/defaultBaiki salah taip dalam fail laman nginx.Risiko: Hati-hati
Pengguna dan kebenaran
idAnda: uid 1000, kumpulan you dan sudo.id ainaNombor dan kumpulan pengguna lain.groups ainaNama kumpulan sahaja.sudo systemctl restart nginxMula semula web server sebagai root.Risiko: Hati-hatisudo -u www-data touch uploads/a.jpgJalankan sebagai pengguna lain, di sini pekerja web.Risiko: Hati-hatisudo -iBuka shell root (prompt #). Taip exit untuk keluar.Risiko: Hati-hatisudo useradd -m -s /bin/bash ainaAina, dengan folder rumah dan shell bash.Risiko: Hati-hatisudo usermod -aG kitchen ainaTambah Aina ke pasukan dapur, kekalkan pasukan lain dia.Risiko: Hati-hatichmod +x open.shBeri skrip itu kunci jalan.Risiko: Hati-hatichmod 600 secret.txtHanya anda boleh baca dan tulis.Risiko: Hati-hatichmod go-r secret.txtBuang baca daripada kumpulan dan orang lain.Risiko: Hati-hatisudo chown www-data:www-data uploadsSerahkan folder uploads kepada pekerja web.Risiko: Hati-hatisudo chown -R www-data:www-data uploadsFolder dan semua isinya. Semak path dua kali.Risiko: Hati-hati
Proses, servis dan log
ps auxSetiap proses setiap pengguna.ps aux | grep nginxBaris nginx sahaja.topPerhati pengguna CPU dan memori secara langsung.pgrep -f stock-checkPID skrip stok yang tersangkut.kill 1241Minta proses 1241 berhenti.Risiko: Hati-hatikill -9 1241Jalan terakhir: hentikan serta-merta, tanpa mengemas.Risiko: Hati-hatipkill -f oven-timerHentikan ikut nama, bukan nombor.Risiko: Hati-hatisleep 300 &Mulakan kerja panjang di belakang.jobsSenaraikan.fg %1Bawa job 1 ke depan.bgBiar job yang dijeda (Ctrl+Z) sambung di belakang.export SHOP=KancilSetiap program yang anda mulakan boleh baca SHOP.export PATH="$HOME/tools:$PATH"Cari dalam ~/tools dulu untuk arahan.envSenaraikan setiap pemboleh ubah yang di-export.which menuDi mana arahan menu tinggal.sudo systemctl restart nginxMula semula web server dengan tetapan barunya.Risiko: Hati-hatisystemctl status nginxBerjalan, berhenti atau gagal, dan baris log terakhir.Risiko: Hati-hatisudo systemctl enable --now nginxMula sekarang dan setiap kali but.Risiko: Hati-hatisudo journalctl -u nginx -n 2020 baris terakhir daripada nginx.sudo journalctl -u nginx -fPerhati baris baru secara langsung. Ctrl+C untuk berhenti.sudo journalctl -u nginx -g emergBaris yang ada emerg sahaja.
Pakej
sudo apt install treePasang program tree.Risiko: Hati-hatisudo apt updateSegarkan senarai rak dulu.Risiko: Hati-hatiapt show treeBaca label sesuatu pakej.Risiko: Hati-hatisudo apt remove treeBuang semula.Risiko: Hati-hati
Semakan rangkaian
ip -br addrSatu baris pendek untuk setiap kad rangkaian, dengan alamatnya.ip routeLaluan. default via … ialah gateway.hostname -IAlamat sahaja, tiada yang lain.ss -tlnPort TCP yang mendengar, dalam nombor.sudo ss -tlnpTambah program di sebalik setiap port. Perlu root.sudo ss -tlnp 'sport = :80'Port 80 sahaja.getent hosts kedai.exampleCetak nombornya, atau tiada apa-apa (keluar 2).dig +short kedai.exampleJawapan sahaja: nombornya.dig kedai.exampleSeluruh jawapan, dengan masa hidup (TTL).curl -sI localhostBahagian atas jawapan sahaja: status dan header.curl -v localhost/menu.htmlSeluruh perbualan: > kata curl, < jawapannya.curl -sS --connect-timeout 5 kedai.exampleBerputus asa selepas 5 saat, bukan kira-kira 2 minit.openssl s_client -connect kedai.example:443 < /dev/null 2>/dev/null | openssl x509 -noout -datesBila kad pengenalan itu bermula dan tamat.openssl x509 -noout -checkend 2592000 -in kedai.crtMasih sah dalam 30 hari? Keluar 0 bermaksud ya.sudo ufw allow OpenSSHBenarkan SSH masuk. Sentiasa sebelum hidupkan pengawal.Risiko: Hati-hatisudo ufw allow 80/tcpBenarkan pemanggil web masuk.Risiko: Hati-hatisudo ufw enableHidupkan pengawal. Melalui SSH, benarkan SSH dahulu!Risiko: Hati-hatisudo ufw status verboseSenarai itu, dengan peraturan lalai.Risiko: Hati-hatiping -c 3 kedai.exampleTiga salam, kemudian ringkasan.traceroute kedai.exampleSatu baris untuk setiap hop. * * * ialah hop yang diam.sudo apt install tracerouteTak dipasang secara lalai di Debian.
Server jauh dan cakera
ssh you@10.0.0.5Log masuk ke 10.0.0.5 sebagai you.ssh kedai hostnameJalankan satu arahan di sana, guna nama pendek dari ~/.ssh/config.ssh -G kedaiTunjuk tetapan yang ssh akan guna, tanpa memanggil.ssh-keygen -t ed25519 -C "you@laptop"Buat ~/.ssh/id_ed25519 dan id_ed25519.pub.ssh-keygen -l -f ~/.ssh/id_ed25519.pubTunjuk fingerprint sesuatu kunci.ssh-keygen -R 10.0.0.5Lupakan kad pengenalan lama server dalam known_hosts.ssh-copy-id you@10.0.0.5Satu kata laluan terakhir, kemudian log masuk dengan kunci.scp menu.txt kedai:Hantar menu.txt ke folder rumah anda di kedai. Jangan lupa titik bertindih.Risiko: Hati-hatiscp kedai:menu.txt .Ambil semula ke sini.Risiko: Hati-hatirsync -av site/ kedai:shop/Hantar apa yang berubah. Garis condong selepas site bermaksud isinya.Risiko: Hati-hatirsync -av --delete --dry-run site/ kedai:shop/Tunjuk apa yang --delete akan buang, tanpa ubah apa-apa.Risiko: Hati-hatidf -h /Saiz, terpakai, kosong dan Use% cakera utama.df -i /Slot fail (inode) dan bukan bait.sudo du -sh /var/log/*Satu jumlah untuk setiap folder log.du -sh ~/* | sort -h | tail -n 5Lima folder anda yang paling gemuk.
Skrip dan jadual
crontab jobs.txtPasang jadual dari fail. Ia ganti yang lama.Risiko: Hati-haticrontab -lTunjuk jadual anda.Risiko: Hati-hatiecho '0 2 * * * /home/you/backup.sh' | crontab -Pasang satu baris dari paip.Risiko: Hati-haticrontab -rPadam seluruh jadual anda, tanpa bertanya.Risiko: Hati-hatisystemctl list-timers kedai-backup.timerNEXT, LEFT dan servis yang ia ACTIVATES.sudo systemctl enable --now kedai-backup.timerHidupkan timer, sekarang dan setiap kali boot.systemd-analyze calendar '*-*-* 02:00:00'Bila peraturan masa ini berbunyi seterusnya?set -euo pipefailLetak terus di bawah #!/bin/bash.cmd || trueBenarkan satu kegagalan dengan sengaja.