लॉन्चर उत्पाद Bitnami दस्तावेज़imaxe CLI ब्लॉग संपर्क
imaxe os सिस्टम v1.0.0

सर्वर की बुनियाद, व्यवस्थित

ऑपरेटिंग सिस्टम को अद्यतन और सुव्यवस्थित रखें: अपडेट (और अनअटेंडेड), भाषा, समय-क्षेत्र, मशीन का नाम और समन्वित समय। सब कुछ मुट्ठीभर स्पष्ट कमांड के साथ।

$ imaxe os update --security-only --reboot-if-needed
संस्करण
v1.0.0
सबकमांड
9
कॉन्फ़िग
/etc/imaxe/os.yml
root आवश्यक
हाँ
आर्किटेक्चर
linux/amd64

यह मॉड्यूल क्या करता है #

हर बार जब आप कोई सर्वर शुरू करते हैं, तो बुनियाद को उसकी जगह पर रखना ज़रूरी होता है: लंबित अपडेट इंस्टॉल करना, यह तय करना कि प्रोग्राम किस भाषा में बोलें, सही समय-क्षेत्र सेट करना, मशीन को एक नाम देना और यह सुनिश्चित करना कि घड़ी सही समय पर है। ये छोटे पर दोहराए जाने वाले काम हैं, और हर एक का अपना Linux कमांड अपनी सिंटैक्स के साथ है।

os मॉड्यूल इन सबको एक सुसंगत इंटरफ़ेस के पीछे जोड़ देता है। यह सिस्टम को अपडेट करता है (या केवल सुरक्षा वाला हिस्सा) और बताता है कि रीबूट की ज़रूरत है या नहीं; अनअटेंडेड को सक्रिय करता है ताकि सुरक्षा अपडेट अपने आप लागू हों; locale, समय-क्षेत्र और hostname को idempotent तरीके से सेट करता है; और NTP समन्वयन को संभालता है ताकि समय कभी न भटके। हर क्रिया दोहराने के लिए सुरक्षित है: अगर पहले से वांछित स्थिति में है, तो कुछ नहीं छूता।

शुरू करने से पहले

जो सबकमांड कुछ बदलते हैं (अपडेट करना, locale, समय-क्षेत्र, hostname या NTP सेट करना) वे सिस्टम में लिखते हैं और उन्हें root विशेषाधिकार चाहिए: उन्हें sudo के साथ चलाएँ। जो केवल जानकारी देखते हैं (status, list, check) उन्हें इसकी ज़रूरत नहीं।

त्वरित गाइडचरण-दर-चरण कार्य

सामान्य कार्य #

चुनें कि आप क्या करना चाहते हैं। हर रेसिपी में कमांड पहले से लिखा हुआ है — बस उदाहरण मानों को अपने मानों से बदलें और कॉपी करें दबाएँ।

1

अपडेट देखें और लागू करें

जाँचें कि क्या लंबित है और पल भर में अद्यतन हो जाएँ।

पहले सामान्य स्थिति देखें और कौन से अपडेट प्रतीक्षा में हैं:

terminal
$ imaxe os status
$ imaxe os check

लंबित को लागू करें। अगर आप केवल सुरक्षा वाले चाहते हैं और ज़रूरत पड़ने पर रीबूट हो, तो flags जोड़ें:

terminal
$ sudo imaxe os update --security-only --reboot-if-needed
सिस्टम अद्यतन हो जाता है। यह जानने के लिए कि कोई रीबूट लंबित है या नहीं, imaxe os reboot-required का उपयोग करें (कोड 0 = हाँ, ज़रूरत है)।
2

सुरक्षा वाले अपडेट स्वचालित छोड़ें

ताकि सुरक्षा अपडेट अपने आप लागू हों, बिना आपके ध्यान दिए।

अनअटेंडेड को सक्रिय करें। यह आपके लिए unattended-upgrades की कॉन्फ़िगरेशन उत्पन्न करता है:

terminal
$ sudo imaxe os autoupdate enable

पुष्टि करें कि यह सक्रिय है और अगला निष्पादन कब होगा:

terminal
$ imaxe os autoupdate status
अब से सुरक्षा पैच अपने आप इंस्टॉल होते हैं। इसे बंद करना चाहते हैं? sudo imaxe os autoupdate disable
3

समय-क्षेत्र और समय सेट करें

अपना IANA क्षेत्र तय करें और सुनिश्चित करें कि घड़ी NTP द्वारा समन्वित होती है।

अगर आपको अपने क्षेत्र का सटीक नाम याद नहीं, तो पहले उसे फ़िल्टर करें:

terminal
$ imaxe os timezone list Europe

क्षेत्र तय करें (यह idempotent है) और समय समन्वयन सक्षम करें:

terminal
$ sudo imaxe os timezone set Europe/Madrid
$ sudo imaxe os timesync enable
मशीन सही स्थानीय समय दिखाती है और उसे समन्वित रखती है। NTP को imaxe os timesync status से जाँचें।
4

सिस्टम की भाषा तय करें

LANG परिभाषित करें और अगर locale अभी मौजूद नहीं है तो उसे उत्पन्न करें।

सिस्टम की भाषा तय करें। यह कमांड locale उत्पन्न करता है और अगर locales पैकेज नहीं है तो उसे इंस्टॉल करता है:

terminal
$ sudo imaxe os locale set es_ES.UTF-8

LANG बदले बिना और भाषाएँ उपलब्ध चाहिए? उन्हें अलग से उत्पन्न करें:

terminal
$ sudo imaxe os locale generate es_ES.UTF-8 en_US.UTF-8
सिस्टम चुनी हुई भाषा में बोलता है। वर्तमान LANG और उत्पन्न किए गए locales को imaxe os locale status से जाँचें।
5

मशीन का नाम बदलें

एक स्पष्ट hostname सेट करें और /etc/hosts को सुसंगत रखें।

hostname असाइन करें। केवल अक्षर, अंक और हाइफ़न स्वीकार किए जाते हैं, अधिकतम 63 अक्षर:

terminal
$ sudo imaxe os hostname set web-01
नाम लागू हो जाता है और /etc/hosts उसके अनुरूप अद्यतन हो जाता है। इसे imaxe os hostname status से सत्यापित करें।
क्लाउड में hostname के साथ सावधानी

अगर इंस्टेंस को cloud-init प्रबंधित करता है, तो यह हर बूट पर hostname फिर से लिख सकता है। इसीलिए os.yml डिफ़ॉल्ट रूप से hostname फ़ील्ड को खाली छोड़ देता है: इसे केवल तभी सेट करें जब आपको पता हो कि cloud-init इसे अधिलेखित नहीं करेगा।

CLI संदर्भकमांड, flags और फाइलें

सारांश #

उपयोग
imaxe os <subcomando> [<acción>] [<argumento>...] [flags]

जो सबकमांड सिस्टम को बदलते हैं (अपडेट करना, अनअटेंडेड, locale, समय-क्षेत्र, hostname, NTP) उन्हें root विशेषाधिकार चाहिए (sudo का उपयोग करें)। मशीन-पठनीय आउटपुट पाने के लिए किसी भी status या check में --json जोड़ें, जो scripting के लिए उपयुक्त है।

सबकमांड #

सबकमांडयह क्या करता हैक्रियाएँ / flags
statusसिस्टम की अपडेट स्थिति का सारांश।--json
updateलंबित अपडेट अभी लागू करता है।--security-only, --reboot-if-needed
checkलंबित अपडेट को लागू किए बिना उनकी सूची बनाता है।--json
reboot-requiredबताता है कि कोई रीबूट लंबित है या नहीं (exit 0 = हाँ, 1 = नहीं)।--json
autoupdateस्वचालित अनअटेंडेड अपडेट को प्रबंधित करता है।enable · disable · status
localeसिस्टम का locale प्रबंधित करता है (आवश्यकता अनुसार उत्पन्न और इंस्टॉल करता है)।status · list · set · generate
timezoneसिस्टम का समय-क्षेत्र दिखाता या बदलता है।status · list · set
hostnamehostname दिखाता या बदलता है (/etc/hosts के साथ सुसंगत)।status · set
timesyncसमय समन्वयन (NTP) प्रबंधित करता है।status · enable · disable

आर्गुमेंट और flags #

आर्गुमेंट / flagप्रकारकहाँ लागू होता हैविवरण
--jsonboolstatus · checkपरिणाम को stdout में संरचित JSON के रूप में उत्सर्जित करता है, scripting के लिए उपयुक्त।
--security-onlyboolupdateकेवल सुरक्षा अपडेट लागू करता है।
--reboot-if-neededboolupdateअगर अपडेट के बाद सिस्टम को ज़रूरत हो तो स्वचालित रूप से रीबूट करता है।
<locale> आव.string…locale set · locale generatees_ES.UTF-8 प्रारूप में locale। set में एक (सिस्टम का LANG); generate में उत्पन्न करने के लिए एक या अधिक।
<zona> आव.stringtimezone setIANA समय-क्षेत्र, उदा. Europe/Madrid
<filtro>stringtimezone listक्षेत्रों की सूची को सीमित करने के लिए वैकल्पिक फ़िल्टर (उदा. Europe)।
<nuevo> आव.stringhostname setनया hostname: छोटे अक्षर a-z, अंक 0-9 और हाइफ़न, अधिकतम 63 अक्षर।

फाइलें और पथ #

पथसामग्री
/etc/imaxe/os.ymlमॉड्यूल की कॉन्फ़िगरेशन: अनअटेंडेड, अपडेट नीति, locale, समय-क्षेत्र, hostname और NTP।
/var/log/imaxe/os.logसिस्टम के हर अपडेट और कॉन्फ़िगरेशन परिवर्तन का संरचित रिकॉर्ड।
/etc/apt/apt.conf.d/20auto-upgradesautoupdate enable द्वारा उत्पन्न कॉन्फ़िग जो अनअटेंडेड को सक्रिय करता है।
/etc/apt/apt.conf.d/50unattended-upgradesunattended-upgrades के नियम (क्या अपडेट होता है, रीबूट विंडो, बहिष्करण सूची)।

os.yml का उदाहरण:

/etc/imaxe/os.yml
unattended:
  enabled: true
  security_only: true
  automatic_reboot: false
  automatic_reboot_time: "03:00"
  blacklist: []
update:
  default_security_only: false
locale:
  lang: es_ES.UTF-8
  generate: [es_ES.UTF-8, en_US.UTF-8]
timezone: Europe/Madrid
hostname: ""
ntp:
  enabled: true

खाली फ़ील्ड ("") का अर्थ है «न छुएँ»: मॉड्यूल उस सेटिंग को जैसी है वैसी छोड़ देता है। इसीलिए hostname खाली आता है — इंस्टेंस को आमतौर पर cloud-init प्रबंधित करता है।

एग्जिट कोड और logs #

हर निष्पादन एक कोड लौटाता है जिसे आप echo $? से जाँच सकते हैं — scripts में जोड़ने के लिए उपयोगी:

0OKऑपरेशन सफलतापूर्वक पूरा हुआ।
1ERRअवर्गीकृत सामान्य त्रुटि। log जाँचें।
2USAGEअमान्य या अनुपस्थित आर्गुमेंट।

reboot-required एग्जिट कोड को ही उत्तर के रूप में उपयोग करता है: 0 का अर्थ है «हाँ, रीबूट की ज़रूरत है» और 1 का अर्थ है «नहीं»। इस तरह आप इसे टेक्स्ट पार्स किए बिना सीधे किसी script में जोड़ सकते हैं।

डीबग करते हुए log को सीधे लाइव देखें:

terminal
$ sudo tail -f /var/log/imaxe/os.log

समस्या-समाधान #

लक्षणसंभावित कारणसमाधान
USAGE आता है (कोड 2)कोई अनिवार्य आर्गुमेंट (locale, क्षेत्र या hostname) गायब है या प्रारूप मान्य नहीं है।आर्गुमेंट तालिका जाँचें: hostname केवल a-z0-9 और हाइफ़न स्वीकार करता है (≤63)।
रीबूट के बाद hostname फिर बदल जाता हैcloud-init हर बूट पर hostname फिर से लिखता है।cloud-init में hostname प्रबंधन अक्षम करें, या os.yml में फ़ील्ड खाली छोड़ें और उसे हाथ से न सेट करें।
locale set में समय लगता है या विफल होता हैlocales पैकेज नहीं है और उसे इंस्टॉल/उत्पन्न करना होगा।सिस्टम अद्यतन के साथ फिर से प्रयास करें (imaxe os update); मॉड्यूल locales इंस्टॉल करता है और locale खुद उत्पन्न करता है।
समय अभी भी भटका हुआ हैNTP समन्वयन अक्षम है।इसे sudo imaxe os timesync enable से सक्रिय करें और imaxe os timesync status से सत्यापित करें।
अनअटेंडेड लागू नहीं होतेइस मशीन पर अनअटेंडेड कभी सक्रिय नहीं किए गए।sudo imaxe os autoupdate enable चलाएँ और imaxe os autoupdate status से पुष्टि करें।

सिस्टम मॉड्यूल में अटक गए?

हमें «imaxe <module> status --json» का आउटपुट भेजें और हम आपको जल्दी जवाब देंगे।

सहायता से संपर्क करें