Berth ব্যবহার নির্দেশিকা

SFTP · টার্মিনাল · সিরিয়াল কনসোল এক উইন্ডোতে — সার্ভার যোগ করা থেকে শর্টকাট পর্যন্ত

🚀শুরু করা

স্ক্রিন গঠন

একটি উইন্ডোতে চারটি জায়গা আছে।

প্রথম সার্ভার যোগ করা

  1. সাইডবারের খালি জায়গায় ডান-ক্লিক করুন বা ⌘N চাপুন।
  2. নাম ও সার্ভার ঠিকানা লিখুন। ব্যবহারকারী·পোর্ট খালি রাখলে ডিফল্ট মান ব্যবহৃত হয়।
  3. তালিকায় দুইবার ক্লিক করলে সংযুক্ত হয়। একবার ক্লিক করা মানে বেছে নেওয়া।
💡 আগে থেকেই টার্মিনালে ssh alias দিয়ে সংযুক্ত হওয়া সার্ভার হলে নতুন করে কিছু লিখতে হবে না। সাইডবার মেনুর ~/.ssh/config থেকে আমদানি(⌘⇧I) দিয়ে একবারে আমদানি করুন। FileZilla সাইট তালিকাও আমদানি করা যায়।

ভাষা পরিবর্তন

মেনুর Berth › সেটিংস(⌘,)-এ 20টি ভাষার মধ্যে একটি বেছে নিন। সিস্টেমের ভাষা অনুসরণ করাই ডিফল্ট, আর বেছে নেওয়া ভাষা শুধু এই অ্যাপে প্রযোজ্য হয়। বদলানোর পর অ্যাপ আবার চালু করলে তা কার্যকর হয়।

🗂সার্ভার ও ফোল্ডার

ফোল্ডারে একত্র করে সেটিংস উত্তরাধিকার করা

ফোল্ডারে (⌘⇧N) সার্ভার একত্র করলে সেটিংস নিচের দিকে নেমে যায়। ফোল্ডারে একবার ব্যবহারকারীর নাম বা সতর্কতা গ্রেড বসালে তার নিচের সব সার্ভার তা অনুসরণ করে। 20টি সার্ভারে একই মান 20 বার না লেখার জন্যই এই ব্যবস্থা।

সেটিংস উইন্ডোর প্রতিটি ঘর সেই মান কোথা থেকে এসেছে(আমি নিজে ঠিক করেছি, নাকি কোন ফোল্ডার থেকে উত্তরাধিকারসূত্রে পেয়েছি) তা নিচে লিখে দেয়, আর ফিরিয়ে আনার বোতাম দিয়ে উত্তরাধিকারে ফিরে যাওয়া যায়।

সতর্কতা গ্রেড — ডেভেলপমেন্ট · স্টেজিং · প্রোডাকশন

স্তর রঙের চেয়ে উপরে। প্রোডাকশন সেট করলে ঝুঁকিপূর্ণ কাজের আগে বাড়তি নিশ্চিতকরণ চাওয়া হয়। সেশন তালিকায় এটি আপনার বেছে নেওয়া রঙে ভরা হয় এবং লাল সীমানা দিয়ে চিহ্নিত হয়, তাই একাধিক প্রোডাকশন সার্ভার রঙ দিয়ে আলাদা করা যায়। যেখানে একসাথে একটিই দেখা যায় (নিশ্চিতকরণ ডায়ালগ ইত্যাদি), সেখানে এটি জোরালো সতর্কতা হিসেবে লাল থাকে।

ক্লিক নিয়ম

🔑সংযোগ ও প্রমাণীকরণ

প্রথমবার সংযুক্ত হওয়ার সময় — ফোল্ডার অনুমতি

Berth App Store-এর নিয়ম (স্যান্ডবক্স) মেনে চলে বলে হোম ফোল্ডার নিজের ইচ্ছেমতো পড়ে না। প্রথমবার সার্ভার খোলার সময় SSH সেটিংস·কী·known_hosts থাকা ফোল্ডার(সাধারণত ~/.ssh) একবার বেছে দিতে বলে। একবার বেছে দিলে মনে রাখে, আর দ্বিতীয়বার জিজ্ঞাসা করে না। কী অন্য কোথাও রাখা থাকলে হোম ফোল্ডারও বেছে নেওয়া যায়।

লোকাল ফাইল প্যানেলও একই কারণে আপনার বেছে নেওয়া ফোল্ডারকে রুট হিসেবে ব্যবহার করে — প্যানেলের শিরোনামের লোকাল ফোল্ডার খুলুন দিয়ে বদলানো যায়, আর এটিও মনে রাখা হয়।

~/.ssh/config পড়ে

উপনাম দিয়ে সংযুক্ত হলে সেই এন্ট্রির হোস্ট·পোর্ট·ব্যবহারকারী·কী ফাইল·ProxyJump· StrictHostKeyChecking পড়ে ব্যবহার করা হয়। সংরক্ষিত পোর্ট পুরনো হয়ে গেলেও সেটিংস ফাইলই জেতে।

⚠️ দুটি জিনিস কাজ করে না। ProxyCommand বাহ্যিক প্রোগ্রাম চালানোর সুবিধা বলে স্যান্ডবক্সে আটকে যায় — জাম্প হোস্টের জন্য ProxyJump লিখুন। ssh-agent-এও পৌঁছানো যায় না, তাই কী ফাইল সরাসরি পড়া হয়, আর পাসওয়ার্ড-সুরক্ষিত কী হলে সংযুক্ত হওয়ার সময় পাসওয়ার্ড জিজ্ঞাসা করে।

প্রমাণীকরণ পদ্ধতি

⚠️ টার্মিনালে শুধু ssh দিয়ে সংযুক্ত হওয়া সার্ভার হলে স্বয়ংক্রিয়ই ঠিক। সাহায্য হবে ভেবে কী নির্দিষ্ট করলে বরং সংযোগ আটকে যায় — কারণ নির্দিষ্ট করা কী-টিই শুধু চেষ্টা করা হয়।

সার্ভার যখন জিজ্ঞাসা করে

পাসওয়ার্ড সংরক্ষণ করে রাখলে সংযুক্ত হওয়ার সময় একবার নিজে থেকে জবাব দেয়। এছাড়া অন্য প্রশ্ন — 2-ধাপ প্রমাণীকরণ কোড, ভুল পাসওয়ার্ড আবার লেখা, পাসওয়ার্ড-সুরক্ষিত কী-এর পাসওয়ার্ড — এগুলো "সার্ভার থেকে অনুরোধ এসেছে" উইন্ডোতে সার্ভারের পাঠানো প্রশ্ন হুবহু দেখিয়ে সরাসরি জিজ্ঞাসা করে। অ্যাকাউন্ট লক না হয়ে যায় সেজন্য সংরক্ষিত পাসওয়ার্ড শুধু একবারই স্বয়ংক্রিয়ভাবে দেওয়া হয়, আর সর্বোচ্চ তিনবার পর্যন্তই জিজ্ঞাসা করা হয়।

পাসওয়ার্ড আর টাইপ না করতে চাইলে

সার্ভারে ডান-ক্লিক করে এই সার্ভারে পাবলিক কী নিবন্ধন করুন… বেছে নিলে ~/.ssh-এর পাবলিক কী সার্ভারে আপলোড করে দেয়। পরের বার থেকে কী দিয়ে সংযুক্ত হবেন।

সংরক্ষিত পাসওয়ার্ড শুধু macOS Keychain-এ থাকে। সেটিংস ফাইলে শুধু "সংরক্ষিত আছে" চিহ্নই থাকে, মান থাকে না।

আগে না দেখা সার্ভার, বদলে যাওয়া হোস্ট কী

প্রথমবার সংযুক্ত হওয়া সার্ভারের ক্ষেত্রে কী-এর ধরন ও ফিঙ্গারপ্রিন্ট দেখিয়ে মনে রাখবে কিনা জিজ্ঞাসা করে। মনে রাখলে ~/.ssh/known_hosts-এ ssh-এর মতো একই আকারে লিখে রাখে, পরের বার থেকে আর জিজ্ঞাসা করে না।

সার্ভারের পরিচয় আগের বারের সাথে ভিন্ন হলেও এটি দেখা যায়। মাঝপথে আক্রমণ হতে পারে, অথবা সার্ভার আবার ইনস্টল করা হতে পারে। Berth নিজে সিদ্ধান্ত না নিয়ে উপকরণ দেয় — পুরনো/নতুন কী-এর ধরন ও ফিঙ্গারপ্রিন্ট, আর ডিভাইসের কনসোলে সরাসরি মিলিয়ে দেখার কমান্ড পর্যন্ত। যাচাই করার পর "পুরনো কী মুছে নতুন কী মনে রাখুন" চাপলে পুরনো এন্ট্রি মুছে(known_hosts.old-এ ব্যাকআপ রেখে) নতুন কী লেখে।

💡 প্রায়ই নতুন করে ফ্ল্যাশ করা ডেভেলপমেন্ট বোর্ডের মতো প্রতিবার এই উইন্ডো দেখতে হওয়া ডিভাইসের ক্ষেত্রে, সেই সার্ভারের সেটিংসে হোস্ট কী মনে না রাখা চালু করা যায়। ঝুঁকি শুধু সেই একটিতেই আটকে থাকার জন্য known_hosts-এ হাত দেওয়া হয় না। প্রোডাকশন গ্রেডে এটি চালু করা যায় না।

ফাইল প্যানেল (SFTP)

আপলোড ও ডাউনলোড

বাঁদিকে আমার Mac, ডানদিকে সার্ভার। টেনে ছেড়ে দিয়ে অথবা ⌥⌘→(আপলোড) · ⌥⌘←(ডাউনলোড) দিয়ে পাঠানো যায়। অগ্রগতি স্থানান্তর সারিতে জমা হয়।

টার্মিনাল অনুসরণ করা ফাইল প্যানেল

টার্মিনালে cd করলে রিমোট প্যানেল একই ফোল্ডারে অনুসরণ করে আসে। অনুসরণ করা বাধা মনে হলে ⌘⇧L দিয়ে বন্ধ করুন।

প্রায়ই যাওয়া জায়গা · দৃশ্য

পার্থক্য দেখা

⌘⇧Y দিয়ে চালু করলে লোকাল ও রিমোট পাশাপাশি তুলনা করে ভিন্ন জিনিস·শুধু একদিকে থাকা জিনিসকে দেখায়। শুধু প্রয়োজনীয়টুকু পাঠাতে চাইলে ব্যবহার করা হয়।

🌏 Mac ও Linux হাঙ্গুল·জাপানি·ভিয়েতনামি ফাইলের নাম ভিন্ন বাইটে লেখে। 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 Keychain-এ সংরক্ষিত হয়। সেটিংস ফাইলে শুধু "সংরক্ষিত আছে" চিহ্নই থাকে। Keychain সংযুক্ত হওয়ার মুহূর্তে শুধু একবারই খোলা হয়।

ব্যবহারের তথ্য সংগ্রহ করা হয় কি?

না। অ্যাপের ভেতরে কোনো ট্র্যাকিং নেই। কী খোলা হচ্ছে, কোথায় সংযুক্ত হচ্ছে তা গোনা হয় না।

সিরিয়াল কনসোল মাঝপথে থেমে যায়।

ফ্লো কন্ট্রোল ছাড়া UART-তে বড় আকারের যোগাযোগ করলে দেখা দেওয়া লাইনের বৈশিষ্ট্য। 4-তার কেবল হলে সেটিংসে ফ্লো কন্ট্রোল(RTS/CTS)কে চালু করুন, আর 3-তার হলে বোর্ডের দিকের গতি কমান বা আউটপুট পেজার দিয়ে ভাগ করে দেখুন।

আগে থেকে ব্যবহৃত SSH সেটিংস কি আবার লিখতে হবে?

না। ~/.ssh/config-এ থেকে আমদানি করলে উপনাম অনুযায়ীই সংযুক্ত হয়, আর সেই এন্ট্রির হোস্ট·পোর্ট· ব্যবহারকারী·কী·ProxyJump পড়ে ব্যবহার করে।

ProxyCommand ব্যবহার করা সেটিংস আছে।

ProxyCommand বাহ্যিক প্রোগ্রাম চালানোর সুবিধা বলে App Store-এর স্যান্ডবক্সে ব্যবহার করা যায় না। জাম্প হোস্ট হয়ে যাওয়া সেটিংস হলে ProxyJump-এ বদলালেই একইভাবে কাজ করবে। ssh-agent-ও একই কারণে ব্যবহার করা যায় না, তাই কী ফাইল সরাসরি পড়া হয় আর পাসওয়ার্ড-সুরক্ষিত কী হলে সংযুক্ত হওয়ার সময় পাসওয়ার্ড জিজ্ঞাসা করে।

কোন macOS সংস্করণ সমর্থিত?

macOS 14(Sonoma) বা তার পরের সংস্করণ, Apple Silicon ও Intel দুটিতেই চলে।

সাহায্য হয়ে থাকলে

Berth ফ্রি। সহায়তা করুন-এর মাধ্যমে ডেভেলপমেন্টে সাহায্য করা যায়।