Berth صارف دستی

SFTP · ٹرمینل · سیریل کنسول ایک ہی ونڈو میں — سرور شامل کرنے کے طریقے سے لے کر شارٹ کٹس تک

🚀شروع کرنا

اسکرین کی ساخت

ایک ونڈو میں چار حصے ہیں۔

پہلا سرور شامل کرنا

  1. سائیڈ بار کی خالی جگہ پر رائٹ کلک کریں یا ⌘N دبائیں۔
  2. نام اور سرور کا پتہ لکھیں۔ یوزر·پورٹ خالی چھوڑنے پر ڈیفالٹ قدر استعمال ہوتی ہے۔
  3. فہرست میں ڈبل کلک کرنے پر کنکشن ہو جاتا ہے۔ ایک بار کلک منتخب کرنے کے لیے ہے۔
💡 اگر آپ پہلے ہی ٹرمینل میں ssh alias کے ذریعے اس سرور سے جڑتے رہے ہیں تو نیا کچھ لکھنے کی ضرورت نہیں۔ سائیڈ بار مینو کے ‎~/.ssh/config‎ سے درآمد کریں(⌘⇧I) سے ایک ہی بار میں درآمد کریں۔ FileZilla کی سائٹ فہرست بھی درآمد کی جا سکتی ہے۔

زبان تبدیل کرنا

مینو کے Berth › ترتیبات(⌘,) میں 20 زبانوں میں سے کوئی ایک منتخب کریں۔ ڈیفالٹ کے طور پر سسٹم کی زبان اپنائی جاتی ہے، اور منتخب کردہ زبان صرف اسی ایپ پر لاگو ہوتی ہے۔ تبدیلی کے بعد ایپ دوبارہ شروع کرنے پر یہ لاگو ہو جاتی ہے۔

🗂سرورز اور فولڈرز

فولڈر میں گروپ بندی اور وراثت میں دینا

فولڈر(⌘⇧N) کے ذریعے سرورز کو گروپ کرنے پر ترتیبات نیچے منتقل ہو جاتی ہیں۔ فولڈر پر یوزر نیم یا احتیاطی درجہ ایک بار لگا دیں تو اس کے نیچے موجود تمام سرورز اسے اپناتے ہیں۔ یہ اس لیے ہے تاکہ بیس سرورز کے لیے ایک ہی قدر بیس بار نہ لکھنی پڑے۔

ترتیبات کی ونڈو میں ہر خانہ اس بات کو نیچے بتاتا ہے کہ اس کی قدر کہاں سے آئی ہے (میں نے خود مقرر کی یا کسی فولڈر سے وراثت میں ملی)، اور واپس لانے والے بٹن سے وراثت پر لوٹا جا سکتا ہے۔

احتیاطی درجہ — ڈیولپمنٹ · اسٹیجنگ · پروڈکشن

درجہ رنگ سے بالاتر ہے۔ پروڈکشن پر رکھنے سے خطرناک اعمال سے پہلے اضافی تصدیق مانگی جاتی ہے۔ سیشن فہرست میں یہ آپ کے منتخب رنگ سے بھرا جاتا ہے اور سرخ کنارے سے ظاہر ہوتا ہے، اس لیے متعدد پروڈکشن سرورز کو رنگ سے پہچانا جا سکتا ہے۔ جہاں ایک وقت میں ایک ہی دکھتا ہے (تصدیقی ونڈوز وغیرہ)، وہاں یہ سخت انتباہ کے طور پر سرخ رہتا ہے۔

کلک کے اصول

🔑کنکشن اور توثیق

پہلی بار جڑتے وقت — فولڈر کی اجازت

Berth، App Store کے اصولوں (سینڈ باکس) کی پیروی کرتا ہے اس لیے ہوم فولڈر کو اپنی مرضی سے نہیں پڑھتا۔ پہلی بار سرور کھولتے وقت SSH ترتیبات، کی اور known_hosts والا فولڈر(عام طور پر ~/.ssh) ایک بار منتخب کرنے کو کہتا ہے۔ ایک بار منتخب کرنے پر یاد رکھا جاتا ہے اور دوبارہ نہیں پوچھا جاتا۔ اگر کی کہیں اور رکھی ہو تو ہوم فولڈر منتخب کرنا بھی درست ہے۔

لوکل فائل پینل بھی اسی وجہ سے آپ کے منتخب کردہ فولڈر کو جڑ کے طور پر استعمال کرتا ہے — پینل کے ہیڈر میں لوکل فولڈر کھولیں سے اسے تبدیل کیا جا سکتا ہے، اور یہ بھی یاد رکھا جاتا ہے۔

‎~/.ssh/config‎ کو پڑھتا ہے

علیاس سے جڑنے پر اس اندراج کا ہوسٹ·پورٹ·یوزر·کی فائل·ProxyJump· StrictHostKeyChecking پڑھ کر استعمال کیا جاتا ہے۔ محفوظ شدہ پورٹ پرانا ہو جائے تو بھی ترتیبات کی فائل کو ترجیح ملتی ہے۔

⚠️ دو چیزیں ممکن نہیں ہیں۔ ProxyCommand بیرونی پروگرام چلانے کا فیچر ہے اس لیے سینڈ باکس میں روکا جاتا ہے — جمپ ہوسٹ کے لیے ProxyJump استعمال کریں۔ ssh-agent تک بھی رسائی نہیں ہوتی، اس لیے کی فائل خود پڑھی جاتی ہے، اور پاس ورڈ والی کی کے لیے جڑتے وقت پاس ورڈ پوچھا جاتا ہے۔

توثیق کا طریقہ

⚠️ اگر آپ ٹرمینل میں محض ssh سے اس سرور سے جڑتے رہے ہیں تو خودکار ہی درست ہے۔ مدد کے خیال سے کی مقرر کرنے پر دراصل کنکشن رک جاتا ہے — کیونکہ صرف مقرر کردہ ایک کی ہی آزمائی جاتی ہے۔

جب سرور پوچھے

پاس ورڈ محفوظ کر لینے پر جڑتے وقت ایک بار خودکار طور پر جواب دیا جاتا ہے۔ باقی سوالات — دو مرحلہ توثیق کوڈ، غلط پاس ورڈ دوبارہ ٹائپ کرنا، پاس ورڈ والی کی کا پاس ورڈ — "سرور کی طرف سے درخواست آئی ہے" ونڈو میں سرور کا بھیجا ہوا سوال جوں کا توں دکھا کر خود جواب دینا پڑتا ہے۔ اکاؤنٹ لاک نہ ہو اس کے لیے محفوظ شدہ پاس ورڈ صرف ایک بار خودکار طور پر داخل کیا جاتا ہے، اور زیادہ سے زیادہ تین بار ہی پوچھا جاتا ہے۔

پاس ورڈ بار بار ٹائپ کرنے سے بچنے کے لیے

سرور پر رائٹ کلک کر کے اس سرور پر پبلک کی رجسٹر کریں… منتخب کریں تو ~/.ssh کی پبلک کی سرور پر بھیج دی جاتی ہے۔ اگلی بار سے کلید کے ذریعے جڑا جائے گا۔

محفوظ کیا گیا پاس ورڈ صرف macOS کی چین میں رہتا ہے۔ ترتیبات کی فائل میں صرف "محفوظ ہے" کا نشان رہ جاتا ہے، قدر شامل نہیں ہوتی۔

پہلی بار نظر آنے والا سرور، بدلی ہوئی ہوسٹ کی

پہلی بار جڑنے والے سرور کے لیے کی کی قسم اور فنگر پرنٹ دکھا کر یاد رکھنے کے بارے میں پوچھا جاتا ہے۔ یاد رکھنے پر ~/.ssh/known_hosts میں ssh جیسی صورت میں لکھ دیا جاتا ہے اور اگلی بار نہیں پوچھا جاتا۔

جب سرور کی شناخت پچھلی بار سے مختلف ہو تو بھی یہ نمودار ہوتا ہے۔ یہ درمیانی حملہ ہو سکتا ہے، یا سرور کو دوبارہ انسٹال کیا گیا ہو سکتا ہے۔ Berth خود فیصلہ نہیں کرتا بلکہ مواد فراہم کرتا ہے — پرانی/نئی کی کی قسم اور فنگر پرنٹ، اور آلے کے کنسول پر خود موازنہ کرنے کی کمانڈ تک۔ تصدیق کے بعد "پرانی کی حذف کریں اور نئی کی یاد رکھیں" دبانے پر پرانا اندراج حذف ہو کر(known_hosts.old میں بیک اپ) نئی کی لکھ دی جاتی ہے۔

💡 بار بار دوبارہ فلیش ہونے والے ڈیولپمنٹ بورڈ کی طرح جس آلے پر ہر بار یہ ونڈو نظر آتی ہے، اس کی سرور ترتیبات میں ہوسٹ کی یاد نہ رکھیں آن کیا جا سکتا ہے۔ خطرہ صرف اسی ایک آلے تک محدود رہے اس لیے known_hosts کو چھیڑا نہیں جاتا۔ پروڈکشن درجے میں یہ آن نہیں ہوتا۔

فائل پینل (SFTP)

اپ لوڈ اور ڈاؤن لوڈ کرنا

بائیں طرف آپ کا میک ہے، دائیں طرف سرور ہے۔ گھسیٹ کر چھوڑیں یا ⌥⌘→(اپ لوڈ) · ⌥⌘←(ڈاؤن لوڈ) سے بھیجیں۔ پیش رفت منتقلی کی قطار میں جمع ہوتی رہتی ہے۔

ٹرمینل کی پیروی کرنے والا فائل پینل

ٹرمینل میں cd کرنے پر ریموٹ پینل اسی فولڈر کی پیروی کرتا ہے۔ یہ پیروی رکاوٹ بنے تو ⌘⇧L سے بند کر دیں۔

اکثر جانے والی جگہیں · منظر

فرق دیکھنا

⌘⇧Y سے آن کرنے پر لوکل اور ریموٹ کا ساتھ ساتھ موازنہ کر کے مختلف اور صرف ایک طرف موجود فائلیں دکھائی جاتی ہیں۔ صرف ضروری فائلیں بھیجنی ہوں تو استعمال کریں۔

🌏 میک اور لینکس کوریائی، جاپانی اور ویتنامی فائل ناموں کو مختلف بائٹس میں لکھتے ہیں۔ Berth صرف جوڑا ملاتے وقت نام موازنہ کرتا ہے، اس لیے ایک جیسی نظر آنے والی فائل "صرف ایک طرف موجود" میں تقسیم نہیں ہوتی۔ اصل منتقلی میں سرور پر موجود نام جوں کا توں استعمال ہوتا ہے۔

حذف کرنا

⌘⌫ کا مطلب بنیادی طور پر سرور کی طرف کے ردی کے ڈبے میں منتقل کرنا ہے اور ہمیشہ تصدیق مانگی جاتی ہے۔ جس سرور پر ردی کا ڈبہ بند ہو، وہاں پہلے ہی بتا دیا جاتا ہے کہ یہ واپس نہیں لایا جا سکے گا۔

⌨️ٹرمینل

یہ ایک حقیقی شیل ہے جس میں vim·tmux·less جوں کے توں چلتے ہیں۔ ماؤس سے گھسیٹ کر منتخب کریں اور ⌘C سے کاپی کریں — کمانڈ لائن کے آخر کی فالتو خالی جگہ کے بغیر صاف ستھری پیسٹ ہوتی ہے۔

پیسٹ کی تصدیق

کئی لائنیں پیسٹ کرنے پر پہلے دکھایا جاتا ہے کہ کیا چلایا جائے گا۔ کیونکہ لائن بریک والی پیسٹ اسی جگہ کمانڈ بن جاتی ہے۔ خطرناک نظر آنے والی چیز وجہ کے ساتھ دکھائی جاتی ہے۔

بڑا کر کے دیکھنا

⌘↩ سے موجودہ حصہ بڑا کریں اور دوبارہ دبا کر واپس آئیں۔ ⌥⌘↩ صرف ایک پینل کو بڑا کرتا ہے۔ فونٹ سائز کے لیے ⌘+ · ⌘- · ⌘0 استعمال کریں۔ ⌘L سے ٹرمینل صاف کریں — اسکرین اور اسکرول بیک مٹ جاتے ہیں، صرف موجودہ پرامپٹ لائن رہتی ہے۔

🔌سیریل کنسول (UART)

آلہ منتخب کرنا

⌃⌘N سے سیریل کنسول شامل کریں، اور ترتیبات میں لگے ہوئے آلے کو منتخب کریں۔ Berth راستے کے بجائے آلے کو یاد رکھتا ہے — سیریل نمبر ہو تو اس سے، نہ ہو تو قسم سے۔ USB کے دوسرے پورٹ میں لگانے پر بھی وہی آلہ ڈھونڈ لیا جاتا ہے۔

💡 یہ سیریل نمبر USB کے ذریعے شمار ہونے والے آلے کا ہے۔ USB-سیریل ایڈاپٹر استعمال کرنے پر دراصل ایڈاپٹر یاد رکھا جاتا ہے، اس لیے ایڈاپٹر بدلنے پر دوبارہ منتخب کرنا ہوگا۔

رفتار اور لائن کی ترتیبات

رفتار فہرست سے منتخب کی جا سکتی ہے یا خود لکھی جا سکتی ہے(1,500,000 جیسی معیار سے باہر کی قدر بھی چل سکتی ہے — بس ایڈاپٹر کی قبول کردہ قدر ہونی چاہیے)۔ ڈیفالٹ 8N1 · فلو کنٹرول کے بغیر ہے، اور زیادہ تر کنسول یہی قدر استعمال کرتے ہیں۔

⚠️ فلو کنٹرول کے بغیر UART میں مسلسل اور بڑی مقدار میں مواصلت کے دوران آلے کا ترسیل روک دینا ممکن ہے۔ یہ صرف اس ایپ کا مسئلہ نہیں بلکہ خود لائن کی خاصیت ہے (اسی کیبل پر دوسرے پروگرام میں بھی ایسا ہی ہوتا ہے)، بنیادی حل یہ ہے کہ 4-تار کیبل پر فلو کنٹرول آن کریں یا بورڈ کی رفتار کم کریں۔

لاگ بورڈ

سیریل سیشن میں آپ کی ٹائپ کی گئی کمانڈ اور اس کا جواب وقت کے ساتھ دائیں طرف جمع ہوتے رہتے ہیں۔ پاس ورڈ مانگے جانے والی جگہ کا ان پٹ چھپا دیا جاتا ہے۔

شارٹ کٹس

ایپ کے شارٹ کٹس میں ہمیشہ شامل ہوتا ہے۔ · کے مجموعے شیل اور TUI(vim·tmux) کے ہوتے ہیں، اس لیے ایپ انہیں نہیں لیتی۔

⌨️ ماؤس کی ضرورت نہیں۔ یہاں ہر کام کا شارٹ کٹ موجود ہے — اُن کے لیے جو ہاتھ کی بورڈ پر ہی رکھنا چاہتے ہیں۔
کیکام
⌘N · ⌃⌘N · ⌘⇧Nسرور شامل کریں · سیریل کنسول شامل کریں · فولڈر بنائیں
⌘I · ⌘⇧Iاس سرور کی ترتیبات · ‎~/.ssh/config‎ سے درآمد کریں
⌘Kکہاں جانا ہے — نام سے تلاش کر کے فوراً پہنچیں
⌘1⌘9سیشن تبدیل کرنا
⌃⌘← پینلز کے درمیان منتقلی
⌘↩ · ⌥⌘↩زوم / واپسی · صرف یہ پینل بڑا کریں
⌘⇧S · ⌥⌘↑ ⌥⌘↓سائیڈ بار · تقسیم لائن منتقل کرنا
⌥⌘→ · ⌥⌘←اپ لوڈ · ڈاؤن لوڈ
⌘D · ⌘R · ⌥⌘Nپن لگانا/نکالنا · دوبارہ پڑھیں · نیا فولڈر
⌘↓ · ⌘↑ · ⌥⌘Tاندر جانا · واپس جانا · ٹری↔فہرست
⌘⌫ · ⌘⇧Fریموٹ سے حذف کریں · سرور پر تلاش کریں
⌘⇧V · ⌘⇧L · ⌘⇧Yراستہ ٹرمینل میں · ٹرمینل فالو کرنا · فرق دکھانا
⌘+ ⌘- ⌘0 · ⌘⇧Wفونٹ سائز · یہ سیشن بند کریں
⌘L · ⌘] ⌘[ٹرمینل صاف کریں · دائیں پینل کے ٹیب بدلیں
⌘C · ⌘⇧P · ⌘⇧U · ⌘?کاپی · ریکارڈ میں رکھیں · مینی فیسٹ دوبارہ بھیجیں · صارف گائیڈ

اکثر پوچھے گئے سوالات

پاس ورڈ کہاں محفوظ ہوتا ہے؟

صرف macOS کی چین میں محفوظ ہوتا ہے۔ ترتیبات کی فائل میں صرف "محفوظ ہے" کا نشان رہ جاتا ہے۔ کی چین جڑنے کے لمحے صرف ایک بار کھولی جاتی ہے۔

کیا استعمال کا ریکارڈ اکٹھا کیا جاتا ہے؟

نہیں۔ ایپ کے اندر کوئی ٹریکنگ نہیں ہے۔ آپ کیا کھولتے ہیں یا کہاں جڑتے ہیں، کچھ بھی شمار نہیں کیا جاتا۔

سیریل کنسول درمیان میں رک جاتا ہے۔

فلو کنٹرول کے بغیر UART پر بڑی مقدار میں مواصلت کرنے سے پیدا ہونے والی لائن کی خاصیت ہے۔ 4-تار کیبل ہو تو ترتیبات میں فلو کنٹرول(RTS/CTS) آن کریں، اور 3-تار ہو تو بورڈ کی رفتار کم کریں یا آؤٹ پٹ کو صفحہ وار تقسیم کر کے آزمائیں۔

کیا پہلے سے استعمال ہونے والی SSH ترتیبات دوبارہ لکھنی ہوں گی؟

نہیں۔ ~/.ssh/config سے درآمد کرنے پر علیاس اسی طرح جڑتا ہے، اور اس اندراج کا ہوسٹ·پورٹ· یوزر·کی·ProxyJump پڑھ کر استعمال کیا جاتا ہے۔

میری ترتیبات میں ProxyCommand استعمال ہوتا ہے۔

ProxyCommand بیرونی پروگرام چلانے کا فیچر ہے اس لیے App Store کے سینڈ باکس میں استعمال نہیں ہو سکتا۔ اگر ترتیبات جمپ ہوسٹ سے گزرتی ہیں تو ProxyJump میں بدلنے پر وہی کام ہو جائے گا۔ ssh-agent بھی اسی وجہ سے استعمال نہیں ہو سکتا، اس لیے کی فائل خود پڑھی جاتی ہے اور پاس ورڈ والی کی کے لیے جڑتے وقت پاس ورڈ پوچھا جاتا ہے۔

کون سا macOS ورژن سپورٹ ہوتا ہے؟

macOS 14(Sonoma) یا اس سے اوپر، Apple Silicon اور Intel دونوں پر چلتا ہے۔

اگر یہ مددگار رہا ہو تو

Berth مفت ہے۔ عطیہ دیں کے ذریعے ڈیولپمنٹ میں مدد کی جا سکتی ہے۔