یہ ماڈیول کیا کرتا ہے #
جب آپ کوئی imaxe AMI چلاتے ہیں، تو پہلا سوال اکثر سب سے بنیادی ہوتا ہے: اندر کیا ہے؟ آپریٹنگ سسٹم کا کون سا ورژن، کون سا سافٹ ویئر انسٹال ہے اور کس ورژن میں، اس کے پیچھے کون سا ڈیٹابیس ہے اور کون سا imaxe پروڈکٹ تعینات کیا گیا ہے۔
info ماڈیول یہ سب ایک ہی بار میں جواب دیتا ہے: یہ سسٹم کی براہِ راست جانچ کرتا ہے اور /etc/imaxe/info.yaml میں ایک واضح، پڑھنے کے قابل فہرست لکھتا ہے۔ وہ فائل آپریٹنگ سسٹم، سافٹ ویئر اور اس کے ورژنز، ڈیٹابیس اور imaxe پروڈکٹ کو جمع کرتی ہے، جو اسکرین پر یا آٹومیشن کے لیے JSON میں دیکھنے کے لیے تیار ہے۔
/etc/imaxe/info.yaml فائل خالصتاً وضاحتی ہے: نام اور ورژنز۔ یہ کبھی پاس ورڈ، کیز یا ٹوکن محفوظ نہیں کرتی، اس لیے آپ اسے اطمینان سے پڑھ سکتے ہیں، کاپی کر سکتے ہیں یا کسی ٹکٹ کے ساتھ منسلک کر سکتے ہیں۔
عام کام #
جو آپ کرنا چاہتے ہیں اسے منتخب کریں۔ ہر ترکیب کمانڈ پہلے سے لکھی ہوئی لاتی ہے — بس اسے کاپی کریں اور کاپی کریں دبائیں۔
1
فہرست تیار کریں
مشین کی جانچ کریں اور پہلی بار /etc/imaxe/info.yaml لکھیں۔
/etc/imaxe/info.yaml لکھیں۔اپنے سرور سے ubuntu صارف کے ساتھ SSH کے ذریعے جڑیں۔
create چلائیں: یہ سسٹم کا جائزہ لیتا ہے اور فہرست ڈسک پر لکھتا ہے۔
$ sudo imaxe info create/etc/imaxe/info.yaml فائل آپریٹنگ سسٹم، سافٹ ویئر اور اس کے ورژنز، ڈیٹابیس اور imaxe پروڈکٹ کے ساتھ لکھی جاتی ہے۔2
دیکھیں میرے پاس کیا انسٹال ہے
پہلے سے تیار شدہ فہرست کو اسکرین پر دکھاتا ہے۔
/etc/imaxe/info.yaml میں محفوظ فہرست پڑھیں:
$ imaxe info show3
فہرست JSON میں حاصل کریں
اسکرپٹس، نگرانی یا کسی مرکزی فہرست کے لیے منظم آؤٹ پٹ۔
فہرست کو مشین کے پڑھنے کے قابل فارمیٹ میں حاصل کرنے کے لیے show میں --json شامل کریں:
$ imaxe info show --jsonکوئی ایک قدر نکالنا چاہتے ہیں؟ اسے jq کے ساتھ ملائیں، مثلاً آپریٹنگ سسٹم کا ورژن:
$ imaxe info show --json | jq .osstdout پر نکلتا ہے، جو jq، کسی فہرست ایجنٹ یا آپ کے CMDB میں پائپ کرنے کے لیے تیار ہے۔4
تبدیلی کے بعد دوبارہ بنائیں
سافٹ ویئر انسٹال یا اپ گریڈ کرنے کے بعد فہرست اپ ڈیٹ کریں۔
فہرست سسٹم کی اس لمحے کی تصویر ہے جب یہ تیار ہوئی تھی۔ اگر آپ نے پیکجز اپ گریڈ کیے ہیں یا ڈیٹابیس تبدیل کیا ہے، تو اسے تازہ ڈیٹا کے ساتھ دوبارہ لکھنے کے لیے create پھر چلائیں:
$ sudo imaxe info create
$ imaxe info show/etc/imaxe/info.yaml فائل مشین کی حقیقی حالت کی دوبارہ عکاسی کرتی ہے۔فائل سسٹم کی اس حالت کی عکاسی کرتی ہے جب create چلا تھا۔ یہ خود بخود اپ ڈیٹ نہیں ہوتی: سافٹ ویئر میں کسی بھی اہم تبدیلی کے بعد create پھر چلائیں تاکہ show حقیقت کے مطابق رہے۔
نحو #
imaxe info <subcomando> [--json]create ذیلی کمانڈ کو root کے مراعات درکار ہیں (sudo استعمال کریں) کیونکہ یہ /etc/imaxe/ میں لکھتا ہے۔ اس کے برعکس، show صرف فہرست پڑھتا ہے اور sudo کے بغیر چل سکتا ہے۔ scripting کے لیے موزوں مشین کے پڑھنے کے قابل آؤٹ پٹ حاصل کرنے کے لیے show میں --json شامل کریں۔
ذیلی کمانڈز #
| ذیلی کمانڈ | یہ کیا کرتا ہے | متعلقہ فلیگز |
|---|---|---|
| create | سسٹم کی براہِ راست جانچ کرتا ہے اور فہرست کو /etc/imaxe/info.yaml میں (دوبارہ) لکھتا ہے۔ | — |
| show | /etc/imaxe/info.yaml میں محفوظ فہرست دکھاتا ہے۔ | --json |
| help | ماڈیول کی مدد دکھاتا ہے۔ | — |
آرگیومنٹس اور فلیگز #
| فلیگ | قسم | طے شدہ | تفصیل |
|---|---|---|---|
| --json | bool | false | show میں، فہرست کو stdout پر منظم JSON کے طور پر جاری کرتا ہے، جو jq اور آٹومیشن کے لیے موزوں ہے۔ |
info ماڈیول کوئی پوزیشنل آرگیومنٹ نہیں لیتا: ہر ذیلی کمانڈ سسٹم کی اپنی فہرست پر کام کرتا ہے۔
فائلیں اور راستے #
| راستہ | مواد |
|---|---|
| /etc/imaxe/info.yaml | AMI فہرست: آپریٹنگ سسٹم، سافٹ ویئر اور ورژنز، ڈیٹابیس اور imaxe پروڈکٹ۔ خالصتاً وضاحتی، کوئی راز نہیں۔ |
info.yaml کی مثال:
os:
name: Ubuntu
version: 22.04
software:
nginx: 1.18.0
php: 8.1
database:
engine: mysql
version: 8.0.36
product:
name: imaxe
version: 1.0.0ایگزٹ کوڈز اور لاگز #
ہر عملدرآمد ایک کوڈ لوٹاتا ہے جسے آپ echo $? کے ساتھ جانچ سکتے ہیں — اسکرپٹس میں سلسلہ بنانے کے لیے مفید:
show: پہلے create چلائیں۔/etc/imaxe/ میں لکھنے کے مراعات کے بغیر create۔مسائل کا حل #
| علامت | ممکنہ وجہ | حل |
|---|---|---|
| show کچھ نہیں دکھاتا یا ناکام ہوتا ہے | فہرست ابھی تیار نہیں ہوئی ہے۔ | sudo imaxe info create چلائیں اور show دوبارہ آزمائیں۔ |
| create اجازتوں کی خرابی دیتا ہے | یہ root کے بغیر چلایا گیا اور /etc/imaxe/ میں نہیں لکھ سکتا۔ | اسے sudo imaxe info create کے ساتھ دوبارہ چلائیں۔ |
| فہرست حقیقت سے میل نہیں کھاتی | تیار ہونے کے بعد سافٹ ویئر انسٹال یا اپ گریڈ کیا گیا۔ | اسے sudo imaxe info create کے ساتھ دوبارہ بنائیں: یہ ایک وقتی تصویر ہے۔ |
--json آؤٹ پٹ صاف نہیں ہے | --json کسی ایسے ذیلی کمانڈ پر لاگو کیا گیا جو اسے سپورٹ نہیں کرتا۔ | --json صرف show پر لاگو ہوتا ہے؛ اسے imaxe info show --json کے طور پر استعمال کریں۔ |
کیا فہرست ماڈیول کے ساتھ اٹک گئے ہیں؟
«imaxe <module> status --json» کے آؤٹ پٹ کے ساتھ ہمیں لکھیں اور ہم فوراً جواب دیں گے۔