۱۹. برگه تقلب فرمانها
مرجع یکنگاهی. برای هر مورد توضیح و هشدار، به فصل مربوط مراجعه کنید. در کادر زیر تایپ کنید تا فقط بخشهای مرتبط بماند (مثلاً docker، پورت، journalctl).
سلامت سیستم
date; uptime; hostnamectl
free -h
df -hT
df -ih
lsblk -f
systemctl --failed
cat /proc/pressure/{cpu,memory,io}
شبکه
ip -br a
ip route
ip route get 1.1.1.1
getent hosts example.com
dig +short example.com
ss -lntup
ss -s
nc -vz HOST PORT
curl -I https://example.com
curl -sS -o /dev/null -w 'dns:%{time_namelookup} tcp:%{time_connect} tls:%{time_appconnect} ttfb:%{time_starttransfer}\n' URL
mtr -rwzc 10 HOST
سرویس و لاگ
systemctl status SERVICE
systemctl cat SERVICE
sudo systemctl reload SERVICE
sudo systemctl restart SERVICE
sudo systemctl reset-failed SERVICE
journalctl -u SERVICE --since today
journalctl -u SERVICE -f
journalctl -xeu SERVICE
journalctl -p err -b
journalctl -b -1 -e
dmesg -T | tail
فایلها
find /path -type f -name '*.log'
find /path -type f -size +100M -xdev
grep -Rni 'error' /path
du -xhd1 /path | sort -h
stat FILE
tail -F FILE
lsof +L1
کاربر و مجوز
id USER
getent passwd USER
sudo -l
ls -la
namei -l /full/path
getfacl FILE
last -a | head
sudo lastb | head
Docker
docker ps -a
docker logs --tail 100 CONTAINER
docker stats --no-stream
docker compose ps
docker compose logs -f --tail=100
docker system df
docker inspect -f '{{.State.OOMKilled}} {{.State.ExitCode}}' CONTAINER
آرشیو و بررسی صحت
tar -czf archive.tar.gz DIR
tar -tzf archive.tar.gz
tar -xzf archive.tar.gz -C /dest
sha256sum FILE
rsync -aHAXn SRC/ DEST/
بستهها (میانتوزیعی)
| کار |
Debian / Ubuntu |
RHEL / Rocky |
| بهروزرسانی فهرست |
apt update |
dnf check-update |
| ارتقا |
apt upgrade |
dnf upgrade |
| نصب / حذف |
apt install / apt remove |
dnf install / dnf remove |
| این فایل از کدام بسته؟ |
dpkg -S /path |
rpm -qf /path |
| فایلهای بسته |
dpkg -L pkg |
rpm -ql pkg |
| نسخهها / مخزن |
apt-cache policy pkg |
dnf info pkg |
| قفل نسخه |
apt-mark hold pkg |
dnf versionlock add pkg |
مجوز عددی
| عدد |
معنی |
مثال |
7 |
rwx |
|
6 |
rw- |
|
5 |
r-x |
|
4 |
r-- |
|
600 / 640 / 644 |
کلید-رمز / فایل گروهی / عمومی |
chmod 640 app.conf |
700 / 750 / 755 |
پوشهٔ خصوصی / گروهی / عمومی |
chmod 700 ~/.ssh |
4755 / 2775 / 1777 |
setuid / setgid dir / sticky dir |
/tmp |
سیگنالها و کد خروج
| سیگنال |
عدد |
معنی |
HUP |
1 |
بازخوانی تنظیمات / قطع ترمینال |
INT |
2 |
Ctrl+C |
TERM |
15 |
خاتمهٔ منظم (پیشفرض) |
KILL |
9 |
کشتن اجباری |
STOP / CONT |
19 / 18 |
توقف / ادامه |
| کد خروج |
معنی |
0 |
موفق |
1 / 2 |
خطای عمومی / استفادهٔ نادرست از دستور |
126 / 127 |
اجرا نشد (مجوز) / فرمان پیدا نشد |
130 |
Ctrl+C |
137 / 143 |
KILL یا OOM (128+9) / TERM (128+15) |
cron
┌ دقیقه (0-59)
│ ┌ ساعت (0-23)
│ │ ┌ روز ماه (1-31)
│ │ │ ┌ ماه (1-12)
│ │ │ │ ┌ روز هفته (0-7؛ 0 و 7 = یکشنبه)
* * * * * فرمان # % باید \% شود
کدهای HTTP پرتکرار
| کد |
معنی |
کد |
معنی |
200 |
موفق |
403 |
ممنوع |
301/302 |
redirect |
404 |
پیدا نشد |
401 |
احراز هویت لازم |
502 |
backend نامعتبر |
429 |
تعداد زیاد درخواست |
504 |
backend دیر جواب داد |
tmux و vim
| کار |
کلید |
| جدا شدن از tmux |
Ctrl+B سپس D |
| پنجرهٔ جدید / بعدی |
Ctrl+B سپس C / N |
| تقسیم افقی / عمودی |
Ctrl+B سپس ++percent++ یا ++quote++ |
| vim: ذخیره و خروج |
Esc سپس :wq |
| vim: خروج بدون ذخیره |
Esc سپس :q! |
الگوی عیبیابی عمومی
- Scope: چه میزبان/سرویس/کاربرانی درگیرند؟
- Time: مشکل از چه زمانی شروع شده؟
- Evidence: status، لاگ، منابع، شبکه.
- Change: آخرین تغییر قابلربط چه بوده؟
- Mitigation: کمخطرترین اقدام برای بازگرداندن سرویس.
- Verification: آزمون کاربردی و بررسی لاگ پس از رفع.
- Postmortem: علت، اقدام پیشگیرانه و مالک پیگیری.
جستوجو در خود کتابچه (روی کلون Git)
grep -Rni --include='*.md' 'عبارت' docs/
grep -Rni --include='*.md' 'journalctl' docs/
فرمانهایی که باید با احتیاط ویژه اجرا شوند
| فرمان مخرب |
چرا |
جایگزین/محافظ امنتر |
rm -rf |
بیبرگشت |
ls/find -print اول؛ "${VAR:?}" |
dd / mkfs / wipefs |
بازنویسی دیسک |
lsblk -o NAME,SERIAL,MOUNTPOINTS و تطبیق |
fdisk / parted / pvcreate / vgremove / lvremove |
تغییر ساختار دیسک |
بکاپ/snapshot؛ اول فقطخواندنی (pvs/lvs) |
iptables -F / nft flush ruleset |
قطع دسترسی و قوانین Docker |
nft -c -f + «برگرداننده» با at |
docker system prune -a --volumes / compose down -v |
حذف داده volume |
docker system df ؛ بکاپ volume |
rsync --delete |
حذف از مقصد |
--dry-run ؛ بررسی mount |
chmod -R / chown -R |
تغییر گستردهٔ مجوز |
مسیر را با pwd/ls ببینید؛ روی / هرگز |
kill -9 / pkill -f |
کشتن بدون تمیزکاری / الگوی گسترده |
TERM اول؛ pgrep -af قبل از pkill |
crontab -r |
حذف همهٔ cron |
crontab -l > backup ؛ -ri |
userdel -r |
حذف خانگی |
بکاپ؛ find -user |
setenforce 0 / ufw disable |
برداشتن لایهٔ دفاع |
فقط موقت و برای تشخیص |
پیش از اجرا: دستگاه/مسیر را دوباره بررسی کنید، پشتیبان و روش بازگشت داشته باشید و روی سیستم تولیدی تأیید تغییر بگیرید.