একটি দ্রুত ভূমিকা চান? শুধু উপরের ভিডিও দেখুন!
গত বছর, আমি নামক একটি ইউটিলিটি মুক্তি পাফেরা ফাইল সার্ভার . এটি রাস্টে লেখা একটি কনসোল অ্যাপ যা আপনার ডিভাইসের জন্য একটি ওয়েব-ভিত্তিক ফাইল ম্যানেজার চালায়, আপনার ফটো এবং শিবা আইকনগুলি দেখানোর জন্য একটি সহজ স্লাইড শো বৈশিষ্ট্য সহ একটি ওয়েব ব্রাউজার আছে এমন যেকোনো কিছুতে সহজে ফাইল শেয়ার করার অনুমতি দেয়৷ এর মানে হল যে আপনি একটি পার্টিতে যেতে পারেন এবং 200 জন বন্ধুকে তাদের নিজস্ব ফোনে, তাদের নিজস্ব সময় এবং গতিতে আপনার সাম্প্রতিক ছুটির ছবিগুলি ব্রাউজ করতে দিতে পারেন৷
পরে, বন্ধুদের এবং র্যান্ডম ইন্টারনেট অপরিচিতদের কাছ থেকে বিভিন্ন পরামর্শ এবং ব্যবহারের ধরণ আসায়, আমি আরও বেশি করে বৈশিষ্ট্য যুক্ত করতে শুরু করি। এটি এখন সম্পূর্ণ ডিরেক্টরি ট্রি সিঙ্ক করতে, মিডিয়া ফাইলগুলিকে ট্রান্সকোড করতে, নেটিভ অপারেটিং সিস্টেম অ্যাপগুলির সাথে ফাইলগুলি খুলতে এবং আপনার ডিভাইস জুড়ে ফাইলগুলি স্বয়ংক্রিয়ভাবে সিঙ্ক করতে সক্ষম৷
যাইহোক, একটি কনসোল অ্যাপ হওয়ায়, সর্বদা একটি বড় সমস্যা ছিল যা এটিকে আপনার সমস্ত ডিভাইসের জন্য সর্বজনীন সমাধান হতে বাধা দেয়:
কনসোল অ্যাপ্লিকেশানগুলি iOS এ চলতে পারে না, যার অর্থ আপনি iPhones বা iPads এ Pafera ফাইল সার্ভার চালাতে পারবেন না...
এখন পর্যন্ত।
মন্টিনিগ্রো ছুটির দিনগুলি উদযাপন করার সময় ক্রিসমাস বিরতিতে আমার কিছু অতিরিক্ত সময় ছিল, তাই আমি Flutter/Dart-এ একটি মাল্টিপ্ল্যাটফর্ম সহচর অ্যাপ লেখার পরীক্ষা করেছি যা আপনাকে আপনার ফোন থেকে সার্ভারগুলি সহজেই ব্রাউজ করতে দেয়। এইভাবে, আমার কম প্রযুক্তি-প্রবণ বন্ধুরা কেবল দুটি বোতাম চাপতে পারে এবং আমার সার্ভারের সাথে সংযোগ করতে পারে।
পথ ধরে, আমি বুঝতে পেরেছিলাম যে আপনি আসলে iOS ডিভাইসে আপনার নিজস্ব ওয়েব সার্ভার চালানোর জন্য ডার্ট ব্যবহার করতে পারেন, এবং আমি ভেবেছিলাম...
আরে! কেন আমি এর পরিবর্তে ডার্টে ফাইল সার্ভার বাস্তবায়ন করি না!
তাই দুই সপ্তাহ পরে, অ্যাপটি এখানে।
এখন, মরিচা সংস্করণের তুলনায় কর্মক্ষমতা ভয়ঙ্করভাবে ধীর। মরিচা সার্ভার প্রতি সেকেন্ডে প্রায় 40,000 অনুরোধ পরিবেশন করতে পারে...
যদিও ডার্ট সংস্করণটি প্রায় 400 পরিবেশন করতে পারে।
কিন্তু গুরুত্বপূর্ণ বিষয় হল এটি কাজ করে ...
এবং এটি আইফোনে ইনস্টল হয়!
Flutter-এর সাম্প্রতিক সংস্করণ সহ PDFx লাইব্রেরিতে একটি বাগ থাকার কারণে, আমাকে সমস্ত বোতামের জন্য সুন্দর আইকনগুলি ব্যবহার করা বন্ধ করতে হয়েছিল কারণ সেগুলি কুৎসিত কালো লাইন হিসাবে দেখাচ্ছিল৷
যাইহোক, মৌলিক অপারেশন একই রয়ে গেছে।
একবার সবাই একই ওয়াইফাই নেটওয়ার্কে বা আপনার ফোনের হটস্পটে সংযুক্ত হয়ে গেলে, শুধু অ্যাপ আইকনে ক্লিক করুন, আপনি যে ফোল্ডারটি শেয়ার করতে চান সেটি বেছে নিন এবং "স্টার্ট সার্ভার" এ আলতো চাপুন।
তারপর QR কোড বোতামে ক্লিক করুন, আপনার বন্ধুদের এটি স্ক্যান করতে দিন, এবং তারপরে তারা আনন্দের সাথে তাদের ফোনে আপনার ফোল্ডার ব্রাউজ করতে পারবেন, এমনকি আপনার ফোন থেকে সরাসরি তাদের ফোনে সিনেমা স্ট্রিমিং করতে পারবেন।
আপনার বন্ধু যদি ল্যাপটপ বা ডেস্কটপ কম্পিউটার ব্যবহার করে, তাহলেও কোন সমস্যা নেই। শুধু তাদের ডিভাইসে QR কোডের উপরে দেখানো URL টাইপ করুন, এবং তারা ঠিক একই জিনিস করতে পারে।
আপনি যদি আইওএস বা অ্যান্ড্রয়েডে না চালান, তাহলেও কোনো সমস্যা নেই। ফ্লাটার অ্যাপগুলি ওএসএক্স, উইন্ডোজ এবং লিনাক্সে ঠিকঠাক কাজ করে, তাই আপনি একই কার্যকারিতা পাবেন, এবং আরও বেশি যদি আপনি অ্যাপটি ব্যবহারের জন্য আপনার সিস্টেমে rsync, FFMpeg এবং ImageMagick ইনস্টল করেন।
সাধারণ ফাইল শেয়ারিং ছাড়াও বেশ কিছু উন্নত বৈশিষ্ট্য রয়েছে, তাই আমি এখানে একটি দ্রুত ওভারভিউ দেব।
হোস্টনাম হল যা অন্যান্য ডিভাইসে দেখায় যখন তারা "অন্যান্য সার্ভার অনুসন্ধান করুন" এ ক্লিক করে। আপনি যদি একই সময়ে কয়েকটি ডিভাইস ভাগ করে থাকেন তবে আপনি একটি ডিভাইস থেকে আরেকটি ডিভাইসকে দ্রুত আলাদা করতে এটি ব্যবহার করতে পারেন৷
ফোল্ডার হল ফাইল সিস্টেম ফোল্ডার যা আপনি আসলে শেয়ার করছেন৷ আপনি "দস্তাবেজ ফোল্ডার ব্যবহার করুন" ডকুমেন্টস/শেয়ারড-এ ডিফল্টের জন্য অথবা আপনি "ফোল্ডার চয়ন করুন" অন্য ফোল্ডার বাছাই করতে। এছাড়াও আপনাকে "ডকুমেন্ট ফোল্ডার ব্যবহার করুন" এ ক্লিক করতে হতে পারে; যদি ঘুম থেকে পুনরায় শুরু করার সময় iOS সঠিকভাবে অ্যাপের সেটিংস রিফ্রেশ না করে।
বর্তমান আইপি ব্যবহার করুন স্বয়ংক্রিয়ভাবে আপনার ডিভাইসের বর্তমান ওয়াইফাই আইপি সনাক্ত করে৷ যেমন "দস্তাবেজ ফোল্ডার ব্যবহার করুন," এটি ব্যবহার করুন যদি iOS অ্যাপটি সঠিকভাবে রিফ্রেশ না করে এবং এটি এখনও পূর্ববর্তী ওয়াইফাই নেটওয়ার্ক থেকে একটি আইপি ব্যবহার করে।
"সকল ইন্টারফেসে শেয়ার করুন" পাবলিক আইপিকে 0.0.0.0 এ সেট করে, যার মানে হল সবাই যে কোনো কিছুতে আপনি সংযুক্ত আছেন আপনার সার্ভার দেখতে সক্ষম হবেন৷ একাধিক সংযোগ সহ ডেস্কটপে সহজ, তবে সর্বজনীন স্থানে এটি ব্যবহারে সতর্ক থাকুন।
"শেয়ার করা শুরু করুন" সার্ভার চালাবে এবং আপনার পরিচালনার জন্য হোমপেজ খুলবে। এটিকে আবার ক্লিক করলে সার্ভার বন্ধ হয়ে যাবে এবং আপনার ফাইলগুলি সুরক্ষিত থাকবে।
"শেষ সেটিংস লোড করুন" এবং "বর্তমান সেটিংস সংরক্ষণ করুন" তারা যা বলে ঠিক তাই করুন। কনসোল রাস্ট সংস্করণের মতোই আপনার সেটিংস Documents/paferafileserver.cfg এ সংরক্ষণ করা হবে।
বিভিন্ন লোককে বিভিন্ন স্তরের অ্যাক্সেস দেওয়ার জন্য বিভিন্ন পাসওয়ার্ড বিকল্প রয়েছে।
সাধারণত, সবাই আপনার সার্ভারের সাথে সংযোগ করে আপনার ফাইলগুলি দেখতে পারে, কিন্তু আপনি যদি "ব্যক্তিগত ফাইল সক্ষম করুন" এগুলোর নিচে, তাহলে রিড পাসওয়ার্ড ছাড়া কেউ আপনার ফাইল দেখতে পারবে না।
লেখার পাসওয়ার্ড ফাইল আপলোড, সরানো, অনুলিপি বা মুছে ফেলার জন্য ব্যবহৃত হয়। এটি ছাড়া, আপনার ফাইলগুলি দেখার পাশাপাশি আপনার সিস্টেমে অন্য কেউ কিছু করতে পারবে না।
শেল পাসওয়ার্ডটি মোবাইল অ্যাপে অকেজো, কিন্তু ডেস্কটপ অপারেটিং সিস্টেম এবং অ্যান্ড্রয়েডের Termux-এ খুবই উপযোগী। এটি আপনাকে আরবিটারি সিস্টেম কমান্ডগুলি চালাতে দেয়, যা এটিকে একই সাথে খুব শক্তিশালী এবং খুব বিপজ্জনক করে তোলে। এই বৈশিষ্ট্যটি ডিফল্টরূপে অক্ষম করা হয়, এবং আপনাকে অবশ্যই একটি শেল পাসওয়ার্ড লিখতে হবে এবং "শেল কমান্ড সক্রিয় করুন" এটি ব্যবহার করার জন্য নীচে।
বিভিন্ন সক্ষম এবং নিষ্ক্রিয় বিকল্পগুলি আপনাকে অন্য লোকেরা আপনার সিস্টেমে কী করতে পারে তা চয়ন করতে দেয় এমনকি যখন তারা ইতিমধ্যে সঠিক পাসওয়ার্ড আছে. এগুলি অন্য সমস্ত বিকল্পগুলিকে ওভাররাইড করে, তাই আপনি যদি ফাইলগুলি অনুলিপি করা অক্ষম করেন, কেউ - এমনকি আপনি নিজেও নয় - ফাইলগুলি অনুলিপি করতে সক্ষম হবেন না৷
বিশেষ বিকল্প "SSH কীচেক নিষ্ক্রিয় করুন" আমার মত লোকেদের জন্য যারা বিভিন্ন ডিভাইসের মধ্যে ফাইল সিঙ্ক করার সময় ক্রমাগত ঘুরে বেড়ায়। সাধারণত, SSH একটি সিস্টেমের সাথে সংযোগ করার সময় নিশ্চিতকরণের জন্য জিজ্ঞাসা করবে যার IP ঠিকানা পরিবর্তিত হয়েছে, এমনকি যদি সেই সিস্টেমের পরিচয় ইতিমধ্যেই জানা থাকে। এই বিকল্পটি আপনাকে SSH সংযোগ নিশ্চিত করতে কনসোলে নেমে না গিয়ে স্বয়ংক্রিয়ভাবে বিভিন্ন নেটওয়ার্কে ফাইলগুলিকে সিঙ্ক করতে সক্ষম করবে৷ আপনি যখন নিজেকে নিয়ন্ত্রণ করেন না এমন নেটওয়ার্কগুলিতে সাবধানতার সাথে এটি ব্যবহার করুন৷
Termux বা ডেস্কটপ পরিবেশে চলার বিপরীতে, iOS এবং Android অ্যাপগুলির একটি শেল, rsync, ImageMagick, বা FFMpeg-এ অ্যাক্সেস নেই, তাই সমস্ত উন্নত সিঙ্কিং এবং ট্রান্সকোডিং বৈশিষ্ট্যগুলি অক্ষম করা হয়েছে৷
যেহেতু মোবাইল অপারেটিং সিস্টেম যেকোন সময় ব্যাকগ্রাউন্ড অ্যাপসকে মেরে ফেলতে পারে, তাই সময়মত স্বয়ংক্রিয় কাজগুলিও অক্ষম করা হয়।
এই সমস্ত দিকগুলির জন্য সম্ভাব্য সমাধান রয়েছে, তবে এই বৈশিষ্ট্যগুলিকে সংহত করার জন্য যে সময় প্রয়োজন তা এই মুহূর্তে আমার উদ্দেশ্যের বাইরে। যদি কেউ আমাকে তাদের যোগ করার জন্য অর্থ প্রদান করতে আগ্রহী হয়, তাহলে আমরা দেখব কি হয়৷ 😁
আমার সমস্ত প্রকল্পের মতো, সোর্স কোড কোডবার্গে হোস্ট করা হয়েছে এবং হতে পারে এখানে পাওয়া গেছে .
precompiled বাইনারি জন্য, আপনি করতে পারেন এখানে রিলিজ ডিরেক্টরি ব্রাউজ করুন ...
অথবা নীচের লিঙ্কগুলিতে ক্লিক করুন:
অ্যাপল স্বাক্ষর করার প্রয়োজনীয়তার কারণে, iOS এবং OSX ব্যবহারকারীদের অ্যাপ স্টোরে অ্যাপটি উপলব্ধ হওয়ার জন্য অপেক্ষা করতে হবে, অথবা সোর্স কোড ডাউনলোড করতে হবে এবং আপনার ডিভাইসের জন্য আপনার নিজস্ব সংস্করণ কম্পাইল করতে হবে।
যেহেতু এটি একটি নতুন রিলিজ, আমি নিশ্চিত যে বিভিন্ন সিস্টেমে প্রচুর বাগ এবং অদ্ভুত আচরণ থাকবে৷ আপনি যদি আমার জন্য এই অ্যাপটির বিটা পরীক্ষা করতে চান, তাহলে অনুগ্রহ করে আমাকে আপনার ডিভাইস এবং অপারেটিং সিস্টেম সংস্করণ সহ একটি ইমেল পাঠান এবং আমি আপনাকে TestFlight-এ সেটআপ করে দেব।
একটি ফ্লাটার অ্যাপ বিতরণ করা আসলে মরিচা সংস্করণের চেয়ে অনেক বেশি জটিল, যেখানে আমি শুধুমাত্র একটি একক এক্সিকিউটেবল আপলোড করি এবং পুরো জিনিসটি সম্পন্ন করি, তাই অনুগ্রহ করে বুঝতে হবে যে অ্যাপল আমার অ্যাপটি পরীক্ষা করতে এবং এটিকে iOS-এ অনুমতি দিতে তিন সপ্তাহ সময় নেয় অ্যাপ স্টোর। অ্যাপল যখন ইইউর নিয়ম অনুযায়ী তৃতীয় পক্ষের অ্যাপগুলিকে অনুমতি দেওয়ার প্রয়োজন হয় তখন জিনিসগুলি আরও সহজ হওয়া উচিত।
বরাবরের মতো, আমি আশা করি যে আপনি এই অ্যাপটিকে দরকারী বলে মনে করেন, এবং আপনি যদি এটিকে আপনার নিজের উদ্দেশ্যে কাস্টমাইজ করতে চান, আমি সর্বদা একজন প্রযুক্তিগত পরামর্শদাতা হিসাবে উপলব্ধ থাকি। মজা আছে!
লেখক সম্পর্কে |
|
![]() |
জিম 90 এর দশকে IBM PS/2 ফিরে পাওয়ার পর থেকে প্রোগ্রামিং করছে। আজ অবধি, তিনি এখনও হাতে এইচটিএমএল এবং এসকিউএল লিখতে পছন্দ করেন এবং তার কাজের দক্ষতা এবং সঠিকতার উপর ফোকাস করেন। |