पाँच मिनट में SSH
सर्वर टर्मिनल में आत्मविश्वास से काम करने के लिए ज़रूरी कमांड: फ़ाइलों में नेविगेट करना, कॉन्फ़िग एडिट करना, सर्विस, लॉग और परमिशन।
23 अगस्त 2026 को अपडेट किया गया
मशीन को मैनेज करने के लिए आपको पूरा Linux जानने की ज़रूरत नहीं है। लगभग पंद्रह कमांड काफ़ी हैं — वे नीचे दिए गए हैं।
मैं कहाँ हूँ और आसपास क्या है
pwd
ls -la
cd /etc/nginx
cat /etc/os-release
pwd — मौजूदा डायरेक्टरी, ls -la — छिपी फ़ाइलों और परमिशन के साथ सामग्री, cd — डायरेक्टरी बदलें। / से शुरू होने वाला पाथ रूट से गिना जाता है; ~ होम डायरेक्टरी है, रूट के लिए यह /root है।
काम की छोटी-छोटी चीज़ें: Tab नाम पूरा करता है, ऊपर का एरो पिछली कमांड लाता है, Ctrl+C निष्पादन रोकता है, Ctrl+D सेशन ख़त्म करता है।
फ़ाइलें और डायरेक्टरियाँ
mkdir -p /opt/app/data
cp config.yml config.yml.bak
mv old.log /var/log/archive/
rm -f temp.txt
du -sh /var/log
rm -rfपूछता नहीं है और इसे वापस नहीं लाया जा सकता। इसे चलाने से पहले पाथ दोबारा पढ़ें — ख़ासकर अगर वह/से शुरू होता हो।
कॉन्फ़िग एडिट करना
एक साधारण एडिटर nano है:
nano /etc/ssh/sshd_config
सेव करें — Ctrl+O, फिर Enter। बाहर निकलें — Ctrl+X। अगर nano इंस्टॉल नहीं है:
apt install -y nano
प्रोडक्शन कॉन्फ़िग एडिट करने से पहले एक कॉपी बनाएँ: cp file file.bak.
सर्विसेज़
systemctl status nginx
systemctl restart nginx
systemctl enable --now nginx
systemctl disable --now nginx
enable का मतलब है "मशीन बूट होने पर शुरू करें", --now का मतलब है "और अभी भी"। भूला हुआ enable ही सबसे आम वजह है कि रीबूट के बाद सर्विस शुरू नहीं होती।
लॉग्स
journalctl -u nginx -n 50 --no-pager
journalctl -xe
tail -f /var/log/syslog
पहला किसी ख़ास सर्विस की आख़िरी 50 लाइनें है, दूसरा हाल की सिस्टम इवेंट्स है, तीसरा किसी फ़ाइल की लाइव स्ट्रीम है (Ctrl+C से बाहर निकलें)। जब कुछ काम न करे, तो यहीं से शुरू करें, रीबूट से नहीं।
पैकेज
Debian और Ubuntu पर:
apt update && apt upgrade -y
apt install -y curl git ufw
AlmaLinux और CentOS Stream पर — apt की जगह dnf, जिसके बारे में एक अलग आर्टिकल में बताया गया है।
परमिशन और ओनर
chown -R www-data:www-data /var/www/site
chmod 600 /root/.ssh/authorized_keys
chmod +x deploy.sh
यह नंबर ओनर, ग्रुप और बाक़ी सबके लिए परमिशन है: 6 — पढ़ना और लिखना, 4 — सिर्फ़ पढ़ना, 7 — साथ में निष्पादन। कीज़ और सीक्रेट्स के लिए 600 चाहिए, वरना SSH इन्हें इस्तेमाल करने से मना कर देगा।
रिसोर्स और प्रोसेस
free -h
df -h
ps aux | grep node
kill -9 12345
विज़ुअल तस्वीर के लिए btop सुविधाजनक है, लेकिन टेक्स्ट कंसोल पर यह 80×24 में कट जाएगा — इसे SSH या मशीन स्क्रीन पर चलाएँ।
आम गलतियाँ
- वे बिना कॉपी के कॉन्फ़िग एडिट करते हैं और फिर याद नहीं रहता कि क्या बदला।
- वे
journalctlपढ़े बिना सर्विस रीस्टार्ट करते हैं और अंदाज़े से चीज़ें ठीक करते हैं। - वे साइट डायरेक्टरी पर "काम कराने के लिए"
chmod 777लगा देते हैं — यह सुराख़ है, समाधान नहीं। - वे
systemctl enableभूल जाते हैं और रीबूट के बाद सर्विस गँवा देते हैं।
आगे: ~/.ssh/config फ़ाइल आपको लंबी कनेक्शन कमांड से बचाएगी, और ग्लॉसरी शब्दों को समझाएगी।