کیا آپ جانتے ہیں کہ آپ iOS ڈیوائس پر لینکس کمانڈ لائن چلا سکتے ہیں؟ آپ پوچھ رہے ہوں گے، "میں اپنے آئی فون پر ٹیکسٹنگ ایپس کیوں استعمال کروں؟" منصفانہ سوال۔ لیکن اگر آپ Opensource.com پڑھتے ہیں، تو آپ کو شاید اس کا جواب معلوم ہوگا: لینکس کے صارفین اسے کسی بھی ڈیوائس پر استعمال کرنے کے قابل ہونا چاہتے ہیں اور اسے خود اپنی مرضی کے مطابق بنانا چاہتے ہیں۔
لیکن سب سے زیادہ، وہ پیچیدہ مسائل کو حل کرنے کی خواہش رکھتے ہیں۔
میرے پاس سات سال پرانا آئی پیڈ 2 منی ہے جو اب بھی ای بک پڑھنے اور دیگر کاموں کے لیے کافی اچھا ہے۔ تاہم، میں اسے اپنے پروگراموں اور اسکرپٹس کے سیٹ کے ساتھ ایپلی کیشنز کی کمانڈ لائن تک رسائی کے لیے بھی استعمال کرنا چاہتا ہوں، جس کے بغیر میں کام نہیں کر سکتا۔ مجھے ایک ایسے ماحول کی ضرورت ہے جس کا میں عادی ہوں، نیز میرے معیاری ترقیاتی ماحول۔ اور یہاں یہ ہے کہ میں نے اسے کیسے حاصل کیا
کی بورڈ سے منسلک ہو رہا ہے۔
فون یا ٹیبلیٹ کے آن اسکرین کی بورڈ کے ذریعے پروگرامنگ کے لیے کمانڈ لائن کے ساتھ کام کرنا کافی تکلیف دہ ہے۔ میں ایک بیرونی کی بورڈ کو جوڑنے کی تجویز کرتا ہوں، یا تو بلوٹوتھ کے ذریعے، یا وائرڈ کی بورڈ کو جوڑنے کے لیے کیمرہ کنکشن اڈاپٹر کا استعمال کرتے ہوئے (میں نے بعد کا انتخاب کیا)۔ جب آپ کائنیسس ایڈوانٹیج اسپلٹ کی بورڈ کو آئی فون 6 سے جوڑتے ہیں تو آپ کو ایک عجیب ڈیوائس ملتی ہے جو اس سے ملتی جلتی ہے۔
iOS پر شیل انسٹال کرنا
iOS پر مکمل خصوصیات والا لینکس سسٹم چلانے کے لیے، دو اختیارات ہیں:
- سیکیور شیل (SSH) لینکس کمپیوٹر سے منسلک ہے۔
- iSH کے ساتھ الپائن لینکس کا استعمال کرتے ہوئے ایک ورچوئل سسٹم چلانا، جو اوپن سورس ہے لیکن ایپل کی ملکیتی TestFlight ایپلیکیشن کا استعمال کرتے ہوئے انسٹال ہونا ضروری ہے۔
متبادل کے طور پر، دو اوپن سورس ٹرمینل ایمولیٹر ایپلی کیشنز ہیں جو ایک محدود ماحول میں اوپن سورس ٹولز کے ساتھ کام کرنے کی صلاحیت فراہم کرتی ہیں۔ یہ سب سے زیادہ سٹرپڈ ڈاؤن آپشن ہے - درحقیقت، اس طرح آپ لینکس ٹولز چلاتے ہیں، لینکس نہیں۔ ان ایپلی کیشنز کے ساتھ کام کرتے وقت خصوصیت کی شدید حدود ہیں، لیکن آپ کو جزوی کمانڈ لائن فعالیت ملتی ہے۔
پیچیدہ حل کی طرف بڑھنے سے پہلے، میں سب سے آسان طریقہ دیکھوں گا۔
آپشن 1: سینڈ باکس شیل
سب سے آسان طریقوں میں سے ایک iOS ایپ کو انسٹال کرنا ہے۔
تقریباً ایک جیسی فعالیت ہے۔
آپشن 2: SSH
ایپ ڈاؤن لوڈ کرنے سے ایک اور قدم ایک SSH کلائنٹ کو ترتیب دینا ہے۔ اب ایک طویل عرصے سے، ہم iOS کے لیے بہت سے SSH کلائنٹ ایپس میں سے کسی کو بھی لینکس یا BSD چلانے والے سرور سے منسلک کرنے کے لیے استعمال کر رہے ہیں۔ SSH استعمال کرنے کا فائدہ یہ ہے کہ سرور کسی بھی سافٹ ویئر کے ساتھ کسی بھی تقسیم کو چلا سکتا ہے۔ آپ دور سے کام کرتے ہیں اور آپ کے کام کے نتائج آسانی سے آپ کے iOS ڈیوائس پر ٹرمینل ایمولیٹر میں منتقل ہو جاتے ہیں۔
آپشن 3: لینکس لانچ کریں۔
لینکس سرور سے جڑنے کے لیے SSH کا استعمال کمانڈ لائن تک رسائی کا بہترین طریقہ ہے، لیکن اس کے لیے ایک بیرونی سرور اور نیٹ ورک کنکشن کی ضرورت ہے۔ یہ سب سے بڑی رکاوٹ نہیں ہے، لیکن اسے مکمل طور پر نظر انداز نہیں کیا جا سکتا، اس لیے آپ کو بغیر سرور کے لینکس چلانے کی ضرورت پڑ سکتی ہے۔
اگر یہ آپ کا معاملہ ہے، تو آپ کو اسے ایک قدم آگے لے جانے کی ضرورت ہوگی۔
iSH کے ساتھ الپائن لینکس چلانا
اہم خصوصیت: تجرباتی درخواست. چونکہ iSH فی الحال ایک ٹیسٹ ایپلی کیشن ہے، اس لیے مستقل اور قابل اعتماد آپریشن کی توقع نہ کریں۔ TestFlight ایپلی کیشنز کا وقت محدود ہے۔ میری موجودہ تعمیر صرف 60 دن تک چلے گی۔ اس کا مطلب یہ ہے کہ 60 دنوں کے بعد مجھے ختم کر دیا جائے گا اور مجھے iSH ٹیسٹنگ کے اگلے دور میں دوبارہ شامل ہونا پڑے گا۔ مزید برآں، میں اپنی تمام فائلوں کو کھو دوں گا جب تک کہ میں انہیں iOS پر فائلز کا استعمال کرکے ایکسپورٹ نہ کروں یا انہیں گٹ ہوسٹ میں کاپی کروں یا
iSH انسٹال کرنا
تنصیب کے ساتھ شروع کریں
لنک کا استعمال کرتے ہوئے، TestFlight آپ کے آلے پر iSH ایپلیکیشن انسٹال کرے گی۔ کسی دوسرے ایپلیکیشن کی طرح، اسکرین پر ایک آئیکن ظاہر ہوگا۔
پیکیج مینجمنٹ
iSH الپائن لینکس کے ساتھ ایک x86 ایمولیٹر چلاتا ہے۔ الپائن ایک چھوٹا سا ڈسٹرو ہے، جس کا سائز 5MB سے کم ہے۔ الپائن کے ساتھ کام کرنے کا یہ میرا پہلا موقع تھا، اس لیے میں نے سوچا کہ minimalism پریشان کن ہو گا، لیکن مجھے واقعتاً یہ پسند آیا۔
الپائن ایک پیکیج مینیجر کا استعمال کرتا ہے۔
پیکیج کو انسٹال کرنے کا طریقہ:
apk add package
پیکیج کو کیسے ہٹایا جائے:
apk del package
دیگر احکامات اور معلومات کیسے تلاش کریں:
apk --help
پیکیج مینیجر کی تازہ کاری:
apk update
apk upgrade
ٹیکسٹ ایڈیٹر انسٹال کرنا
الپائن کا ڈیفالٹ ٹیکسٹ ایڈیٹر Vi ہے، لیکن میں Vim کو ترجیح دیتا ہوں، اس لیے میں نے اسے انسٹال کیا:
apk add vim
اگر چاہیں تو آپ نینو یا ایماکس انسٹال کر سکتے ہیں۔
شیل کی تبدیلی
میں آپ کے بارے میں نہیں جانتا، لیکن مجھے ضرورت تھی
مچھلی کی تنصیب:
apk add fish
اگر آپ کو باش کی خودکار تکمیل اور مین پیجز کے ساتھ ضرورت ہے تو انہیں انسٹال کریں:
apk add bash bash-doc bash-completion
الپائن کے minimalistic نظریے کا عام طور پر مطلب یہ ہوتا ہے کہ کچھ پروگرام جو دوسری تقسیم میں پیک کیے جاتے ہیں انہیں کئی چھوٹے پیکجوں میں تقسیم کیا جائے گا۔ اس کا مطلب یہ بھی ہے کہ آپ اپنے سسٹم کے سائز کو اپنی مرضی کے مطابق اور کم کر سکتے ہیں جس طرح آپ چاہتے ہیں۔
Bash انسٹال کرنے کے بارے میں مزید معلومات کے لیے دیکھیں
پہلے سے طے شدہ شیل کو تبدیل کرنا
مچھلی کو انسٹال کرنے کے بعد، آپ داخل کر کے عارضی طور پر اس پر سوئچ کر سکتے ہیں۔ fish
اور خول میں جانا. لیکن میں مچھلی کو ڈیفالٹ شیل اور کمانڈ بنانا چاہتا ہوں۔ chsh
، جسے میں نے دوسری تقسیم پر استعمال کیا، کام نہیں کیا۔
سب سے پہلے ہم یہ معلوم کرتے ہیں کہ مچھلی کہاں نصب ہے:
which fish
مجھے جو ملا وہ یہ ہے:
/usr/bin/fish
اگلا، لاگ ان شیل کو مچھلی میں تبدیل کریں۔ آپ اپنے لیے کوئی بھی ایڈیٹر استعمال کر سکتے ہیں۔ اگر آپ ابتدائی ہیں، تو نینو انسٹال کریں (کمانڈ کے ساتھ apk add nano
) تاکہ آپ کنفیگریشن فائلوں میں ترمیم کر سکیں اور انہیں CTRL+X کے ذریعے محفوظ کر سکیں، تصدیق کریں اور باہر نکلیں۔
لیکن میں نے Vim استعمال کیا:
vim /etc/passwd
میری پہلی لائن اس طرح تھی:
root:x:0:0:root:/root:/bin/ash
مچھلی کو ڈیفالٹ شیل بنانے کے لیے، اس لائن کو درج ذیل میں تبدیل کریں:
root:x:0:0:root:/root:/usr/bin/fish
پھر فائل کو محفوظ کریں اور باہر نکلیں۔
مجھے یقین ہے کہ شیل کا راستہ تبدیل کرنے کا ایک اچھا طریقہ ہے تاکہ اسے فوراً استعمال کیا جا سکے۔ لیکن میں اسے نہیں جانتا، اس لیے میں تجویز کرتا ہوں کہ ایپلیکیشن براؤزر پر واپس جائیں، شیل سے زبردستی باہر نکلیں، اور محفوظ طرف رہنے کے لیے، اپنے آئی پیڈ یا آئی فون کو آف کر کے دوبارہ شروع کریں۔ "الپائن میں خوش آمدید!" پیغام کے علاوہ، بار بار iSH کھولیں۔ اور apk سے لانچ کرنے کے بارے میں معلومات، آپ کو معیاری مچھلی لاگ ان خوش آمدید پیغام نظر آئے گا: مچھلی ، دوستانہ انٹرایکٹو شیل میں آپ کا استقبال ہے. ہورے!
Python اور pip ترتیب دینا
میں نے شامل کرنے کا فیصلہ کیا۔
apk add python3
اگرچہ Python 2.x پرانا ہے، آپ اسے انسٹال کر سکتے ہیں:
apk add python
آئیے پائتھون پیکیج مینیجر کو انسٹال کرتے ہیں جسے pip اور کہا جاتا ہے۔
python3 -m ensurepip --default-pip
پیکیج مینیجر کو انسٹال اور کنفیگر کرنے میں کچھ وقت لگے گا، اس لیے بس انتظار کریں۔
اس کے بعد آپ نیٹ ورک پر فائلوں کی منتقلی کے لیے ایک ٹول ڈاؤن لوڈ کر سکتے ہیں۔
apk add curl
کتابچے پڑھنا
مچھلی مین صفحات کی بنیاد پر بلٹ میں خودکار تکمیل کا استعمال کرتی ہے۔ دوسرے کمانڈ لائن صارفین کی طرح، میں دستی استعمال کرتا ہوں۔ man
، لیکن یہ الپائن میں انسٹال نہیں ہے۔ تو میں نے اسے ٹرمینل پیجر کے ساتھ انسٹال کیا۔
apk add man man-pages less less-doc
انسان کے علاوہ میں شاندار استعمال کرتا ہوں۔
میں نے اسے پائپ کا استعمال کرتے ہوئے انسٹال کیا:
pip install tldr
ٹیم tldr
جب کسی نئے صفحہ کی درخواست کا سامنا ہوتا ہے تو صفحات کو بازیافت کرنے کے لیے ویب سے منسلک ہوتا ہے۔ اگر آپ کو کمانڈ استعمال کرنے کا طریقہ جاننا ہو تو آپ کچھ ایسا لکھ سکتے ہیں۔ tldr curl
اور سادہ انگریزی میں تفصیل اور کمانڈ استعمال کرنے کے طریقے کی اچھی مثالیں حاصل کریں۔
یقینا، یہ تمام تنصیب کا کام خود کار طریقے سے استعمال کیا جا سکتا ہے
اضافی معلومات
آئی ایس ایچ ویکی کا ایک صفحہ ہے "
ایک اور ویکی صفحہ وضاحت کرتا ہے کہ کیسے
آپ گٹ بھی انسٹال کر سکتے ہیں (ہاں! apk add git
) اور اپنے کام کو ریموٹ ریپوزٹری میں دھکیلیں یا اسے SSH کے ذریعے سرور پر منتقل کریں۔ اور، یقیناً، آپ GitHub سے اوپن سورس پراجیکٹس کی کسی بھی بڑی تعداد کو ڈاؤن لوڈ اور چلا سکتے ہیں۔
iSH کے بارے میں مزید معلومات ان لنکس پر مل سکتی ہیں:
ایڈورٹائزنگ کے حقوق پر
Vdsina پیش کرتا ہے۔
ماخذ: www.habr.com