উবুন্টু [বন্ধ] ডিরেক্টরিতে একটি প্রতীকী লিঙ্ক তৈরি করুন


247

ডিরেক্টরিটির একটি সিমলিংক তৈরি করার জন্য নীচে আমার কোডটি দেওয়া হয়েছে:

sudo ln -s /usr/local/nginx/conf/ /etc/nginx

আমি ইতিমধ্যে ডিরেক্টরি তৈরি করেছি /etc/nginx। আমি কেবল উত্স ডিরেক্টরি ( /usr/local/nginx/conf/) এর বিষয়বস্তু লক্ষ্য ডিরেক্টরি ( /etc/nginx) এর সামগ্রীতে থাকতে চাই । তবে আমি কোডটি কার্যকর করার সময় এর /etc/nginxডিরেক্টরিগুলির confপরিবর্তে একটি ডিরেক্টরি বলে conf। এই ডিরেক্টরিতে আমার পছন্দের বিষয়বস্তু রয়েছে তবে ভুল জায়গায়।

কেন এটি লক্ষ্য ফোল্ডারে ডিরেক্টরি ফোল্ডারের পরিবর্তে লক্ষ্য ফোল্ডারে একটি ডিরেক্টরি স্থাপন করেছিল?


আপনি ফাইল (ডিফল্ট ফাইল ব্রাউজার) ব্যবহার করতে পারেন। আপনি যে ফোল্ডারে লিঙ্ক করতে চান> "লিঙ্ক তৈরি করুন" বিকল্পটিতে ডান ক্লিক করুন। এটি লিঙ্কযুক্ত ফোল্ডার তৈরি করবে যা আপনি প্রয়োজন হিসাবে স্থানান্তর এবং পুনরায় নামকরণ করতে পারেন।
জন লিনহার্ট

4
লিনাক্স bind mountবৈশিষ্ট্যটি ব্যবহার করুন । উদাহরণস্বরূপ
gkiko

উত্তর:


254

lnদ্বিতীয় আর্গটি ডিরেক্টরি হলে এটির আচরণ । এটি এর ভিতরে প্রথম আরগের একটি লিঙ্ক স্থাপন করে । আপনি যদি /etc/nginxসিমলিংক হতে চান তবে আপনার প্রথমে সেই ডিরেক্টরিটি সরিয়ে নিয়ে একই কমান্ডটি চালানো উচিত।



10
সেই ইউনিক্স.এসই লিঙ্কটি এখানে আবার সমাধান হয়েছে। মনে হচ্ছে আমরা একটি বিজ্ঞপ্তি নির্ভরতা পেয়েছি।
কায়সার

30

যে কি lnযখন লক্ষ্য আগে থেকেই আছে এবং একটি ডিরেক্টরি কি করতে নথিভুক্ত করা হয়। আপনি যদি চান /etc/nginxকরতে হবে একটি সিমবলিক লিঙ্ক বদলে ধারণ একটি সিমবলিক লিঙ্ক, আপনি ভালো একটি ডিরেক্টরি হিসাবে প্রথম তৈরি করেছে!


51
আপনার উত্তরটি ইতিমধ্যে উত্তরটি জেনে পাঠকের প্রসঙ্গেই বুঝা যায়। এই প্রশ্নটি যে কারও পক্ষে অকেজো
রিকার্ডো সাপোর্টা

1
আমি কি আসলে একটি মাউন্ট করা ইউএসবি ডিভাইসের মূলের জন্য একটি সিমলিংক তৈরি করতে পারি (এভাবে আমি এই ফোল্ডারটি প্রথমে মুছতে পারি না)?
গ্রিগরি কর্নিলভ

1
@GrigoryKornilov আপনি একটি সিমবলিক লিঙ্ক তৈরি করতে পারেন থেকে কিছু করতে চান, কিছু যা বিদ্যমান নেই সহ। এই প্রশ্নটি বরং সেই স্থানটি সম্পর্কে ছিল যেখানে সিমিলিংক তৈরি করা হয়েছে (যেখানে এটি নির্দেশ করে সেখানে নয়)। ফাইল সিস্টেমে একটি নির্দিষ্ট পথের নাম হয় নিয়মিত ফাইল বা এটি একটি ডিরেক্টরি বা এটি একটি সিমিলিংক (বা এটি সকেট বা পাইপ বা ডিভাইস)। এটি একই সাথে এই জিনিসগুলির একের বেশি হতে পারে না (যেমন আপনার সঠিক নামটির সাথে একাধিক স্বতন্ত্র ফাইল থাকতে পারে না)।
সেলেদা

10

স্ক্রিপ্টে দরকারী কিছু এই:

if [ ! -d /etc/nginx ]; then ln -s /usr/local/nginx/conf/ /etc/nginx > /dev/null 2>&1; fi

এটি পুনরায় রান স্ক্রিপ্টের পরে "খারাপ" লুপযুক্ত সিমিলিংকে পুনরায় তৈরি করার আগে বাধা দেয়


1
অসাধারণ! এটি হ'ল সঠিক সমাধান। ডিরেক্টরিটি ইতিমধ্যে বিদ্যমান থাকলে তৈরি করার দরকার নেই। হার্ড লিঙ্কটি এবং এটি ব্ল্যাকহোল (ডাব / নাল) এ ডুবিয়ে ফেলার জন্য এটি সত্যিকারের ভাল টুইট
কসমো অরুণ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.