কম্পিউটার

কিভাবে ln কমান্ড ব্যবহার করে লিনাক্স সিমলিংক তৈরি করবেন

এই টিউটোরিয়ালটি ব্যাখ্যা করে যে কিভাবে ln কমান্ড ব্যবহার করে লিনাক্সে সিমলিঙ্ক (সিম্বলিক লিঙ্ক) তৈরি করতে হয়, যাকে "সফ্ট লিঙ্ক" নামেও পরিচিত।

আপনি যদি উইন্ডোজ অপারেটিং সিস্টেম ব্যবহার করে ব্যাকগ্রাউন্ড থেকে লিনাক্সে আসেন, তাহলে আপনি শর্টকাট এর ধারণার সাথে পরিচিত হবেন - যে ফাইলগুলিতে কোনও বাস্তব ডেটা নেই এবং আপনি যে ফাইল বা ফোল্ডার অ্যাক্সেস করতে চান তার লিঙ্ক রয়েছে৷

এগুলি কেবল আপনার সুবিধার জন্য (নেস্টেড ফোল্ডারগুলির মাধ্যমে ক্লিক করার সময় বাঁচাতে) বা আউটপুটকে পুনঃনির্দেশিত করার জন্য বিদ্যমান থাকতে পারে (আপনার কাছে একটি হার্ড-কোডেড ডিরেক্টরি সহ একটি প্রোগ্রাম রয়েছে যেখানে এটি ফাইলগুলি আউটপুট করে এবং আপনি সেগুলি অন্য কোথাও পাঠাতে চান)। পি>

লিনাক্সে সফ্ট লিংক (সিমলিংক) মূলত একই উদ্দেশ্যে কাজ করে।

হার্ড লিঙ্ক বনাম সফট লিঙ্ক

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

সিনট্যাক্স

ln [OPTIONS] SOURCE_PATH LINK_PATH

মনে রাখবেন:

  • ফাইল এবং ফোল্ডার উভয়ই SOURCE_PATH হিসাবে ব্যবহার করা যেতে পারে
  • সফট লাইক LINK_PATH এ তৈরি করা হবে

বিকল্পগুলি

আপনি ln-এ নিম্নলিখিত বিকল্পগুলি পাস করতে পারেন৷ কমান্ড:

-F যদি প্রস্তাবিত লিঙ্ক (link_name) ইতিমধ্যেই বিদ্যমান থাকে এবং একটি ডিরেক্টরি হয়, তাহলে এটি সরিয়ে ফেলুন যাতে লিঙ্কটি ঘটতে পারে। -F বিকল্পটি -f বা -i বিকল্পগুলির সাথে ব্যবহার করা উচিত। যদি কোনোটি নির্দিষ্ট করা না থাকে, -f উহ্য থাকে। -F বিকল্পটি একটি নো-অপ যদি না -s বিকল্প নির্দিষ্ট করা হয়।
-h যদি link_name বা link_dirname একটি প্রতীকী লিঙ্ক হয়, তাহলে এটি অনুসরণ করবেন না। এটি একটি সিমলিংক প্রতিস্থাপন করতে -f বিকল্পের সাথে সবচেয়ে দরকারী যা একটি ডিরেক্টরিতে নির্দেশ করতে পারে৷
-f যদি প্রস্তাবিত লিঙ্কটি (link_name) আগে থেকেই থাকে, তাহলে লিঙ্কটি আনলিঙ্ক করুন যাতে লিঙ্কটি ঘটতে পারে। (-f বিকল্পটি পূর্ববর্তী কোনো -i বিকল্পকে ওভাররাইড করে।)
-i প্রস্তাবিত লিঙ্কটি বিদ্যমান থাকলে স্ট্যান্ডার্ড ত্রুটির জন্য একটি প্রম্পট লিখতে ln করুন। যদি স্ট্যান্ডার্ড ইনপুট থেকে প্রতিক্রিয়া y বা Y অক্ষর দিয়ে শুরু হয়, তাহলে প্রস্তাবিত লিঙ্কটি আনলিঙ্ক করুন যাতে লিঙ্কটি ঘটতে পারে। অন্যথায়, লিঙ্ক চেষ্টা করবেন না. (-i বিকল্পটি আগের যেকোনো -f বিকল্পকে ওভাররাইড করে।)
-n অন্যান্য ln বাস্তবায়নের সাথে সামঞ্জস্যের জন্য -h এর মতোই।
-s একটি প্রতীকী লিঙ্ক তৈরি করুন।
-v কারণ ln verbose হতে হবে, ফাইলগুলিকে প্রসেস করার সময় দেখাচ্ছে৷

এই বিকল্পগুলি এবং ls-এর জন্য সম্পূর্ণ বিবরণ৷ কমান্ড চালানোর মাধ্যমে ব্যবহারকারীর ম্যানুয়াল পাওয়া যাবে:

man ls

উদাহরণ

একটি সাধারণ প্রতীকী লিঙ্ক (symlink তৈরি করা প্রদর্শন করতে সংক্ষেপে), আমরা একটি ফাইল তৈরি করতে পারি:

touch test_file.txt

তারপর আমরা একটি নরম লিঙ্ক তৈরি করতে পারি এটিতে:

ln -s test_file.txt link_to_test_file

আপনি রান করে লিঙ্কটি যাচাই করতে পারেন:

ls -l

যা এরকম কিছু আউটপুট করবে:

-rw-r--r--  1 user  staff        0  2 Jan 01:31 test_file.txt
lrwxr-xr-x  1 user  staff        9  2 Jan 01:32 link_to_test_file -> test_file.txt

মনে রাখবেন:

  • প্রথম কলামের অক্ষরগুলি ফাইল বা ফোল্ডারের ধরন এবং অনুমতিগুলি উপস্থাপন করে
  • নিম্নলিখিত সংখ্যা হল ফাইলের সংখ্যা
  • ব্যবহারকারী/স্টাফ হল সেই ব্যবহারকারী/গোষ্ঠী যাদের ফাইল বা ফোল্ডারের অনুমতি রয়েছে
  • ফাইলের আকার, পরিবর্তনের তারিখ এবং নাম দ্বারা অনুসরণ করা হয়
  • দেখুন l সারির শুরুতে? এর মানে হল এটি একটি লিঙ্ক
  • অতিরিক্ত, আপনি -> দেখতে পারেন শেষে বিট, যা দেখাচ্ছে যে ফাইলটি test_file.txt
  • এর সাথে লিঙ্ক করা হয়েছে
  • So, এটি অবশ্যই একটি লিঙ্ক

উপসংহার

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

সুতরাং, এটি বেশ দরকারী।

লিনাক্সে নতুন? কিছু কোড শিখে ব্যবহার করার জন্য সোজা রাখুন!


  1. ফাইন্ড কমান্ড ব্যবহার করে লিনাক্সে একটি ফাইল কীভাবে সন্ধান করবেন

  2. লিনাক্সে টি কমান্ড কীভাবে ব্যবহার করবেন

  3. লিনাক্স ln – কিভাবে লিনাক্সে একটি সিম্বলিক লিঙ্ক তৈরি করবেন [উদাহরণ ব্যাশ কমান্ড]

  4. লিনাক্সে ঘড়ির কমান্ড কীভাবে ব্যবহার করবেন, উদাহরণ সহ