ইউনিক্স / লিনাক্স ওএসে স্ট্যান্ডার্ড এবং / অথবা সাধারণ ডিরেক্টরি


25

উইন্ডোজ ওয়ার্ল্ড থেকে আগত, আমি বেশিরভাগ ফোল্ডার ডিরেক্টরি নামগুলি বেশ স্বজ্ঞাত হিসাবে খুঁজে পেয়েছি :

  • \Program Files প্রোগ্রাম দ্বারা ব্যবহৃত ফাইল রয়েছে (আশ্চর্য!)

  • \Program Files (x86) ৪-বিট ওএসে 32-বিট প্রোগ্রাম দ্বারা ব্যবহৃত ফাইল রয়েছে

  • \Users(পূর্বে Documents and Settings) ব্যবহারকারীর ফাইল, অর্থাৎ নথি এবং সেটিংস রয়েছে

    • \Users\USER\Application Data অ্যাপ্লিকেশন-নির্দিষ্ট ডেটা রয়েছে

    • \Users\USER\Documents ব্যবহারকারীর সাথে সম্পর্কিত নথি রয়েছে

  • \Windows উইন্ডোজ নিজেই অপারেশন সম্পর্কিত ফাইল রয়েছে

    • \Windows\Fonts হরফ ফাইল সঞ্চয় (আশ্চর্য!)

    • \Windows\Temp একটি বিশ্বব্যাপী অস্থায়ী ডিরেক্টরি

ইত্যাদি। এই ফোল্ডারগুলি কী করেছিল আমার যদি ধারণা নাও ছিল তবে আমি তাদের নামগুলি থেকে ভাল নির্ভুলতার সাথে অনুমান করতে পারি।

এখন আমি লিনাক্সকে ভালভাবে দেখছি, এবং ফাইল সিস্টেমের চারপাশে কীভাবে আমার উপায় সন্ধান করতে হবে তা সম্পর্কে বেশ বিভ্রান্ত হয়ে পড়ছি।

উদাহরণ স্বরূপ:

  • /binবাইনারি থাকে কিন্তু তাই /sbin, /usr/bin, /usr/sbin, এবং সম্ভবত আরো আমি জানি না। যাহা তাহাই?? তাদের মধ্যে পার্থক্য কী? আমি যদি বাইনারি তৈরি করতে এবং এটি সিস্টেম-ব্যাপী কোথাও রেখে দিতে চাই তবে আমি এটি কোথায় রাখব?

  • /mediaবাহ্যিক মিডিয়া ফাইল সিস্টেম রয়েছে। কিন্তু তাই না /mnt। এবং এগুলির কোনওটিতেই এই মুহুর্তে আমার সিস্টেমে কিছু নেই; সবকিছু মনে হয় /dev। পার্থক্য কি? উইন্ডোজের মতো C:এবং হার্ড ডিস্কের অন্যান্য পার্টিশনগুলি কোথায় D:?

  • /homeব্যবহারকারীর ফাইল এবং সেটিংস রয়েছে। যে অনেক স্বজ্ঞাত, কিন্তু তারপরে, কি মধ্যে toোকা অনুমিত হয় /usr? /rootএটি ফাইল এবং সেটিংস সহ কোনও ব্যবহারকারী হওয়া সত্ত্বেও কীভাবে এখনও পৃথক রয়েছে?

  • /libডিএলএল এর মতো ভাগ করে নেওয়া লাইব্রেরি রয়েছে। কিন্তু তাই না /usr/lib। পার্থক্য কি?

  • কি হল /etc ? এটি কি সত্যিই "এট সিটিরা" বা অন্য কিছুর পক্ষে দাঁড়িয়ে? কি ধরণের ফাইল সেখানে যেতে হবে - গ্লোবাল বা স্থানীয়? এটি কী এমন জায়গাগুলির জন্য ধরা পড়ে যেটি কোথায় রাখবেন তা কেউ জানত না, বা এর জন্য কোনও বিশেষ ব্যবহারের ঘটনা রয়েছে?

  • কি কি /opt, /procএবং /var? তারা কীসের পক্ষে দাঁড়ায় এবং তারা কীসের জন্য ব্যবহার হয়? আমি উইন্ডোজ * তে তাদের মতো কিছু দেখিনি, এবং তারা কী হতে পারে তা আমি ঠিক বুঝতে পারি না।

যদি কেউ এমন অন্যান্য স্ট্যান্ডার্ড জায়গাগুলি সম্পর্কে জানতে পারে যেগুলি সম্পর্কে জানতে ভাল হতে পারে তবে এটিকে প্রশ্নটিতে যুক্ত করতে নির্দ্বিধায়; আশা করি এটি আমার মতো লোকদের জন্য একটি ভাল রেফারেন্স হতে পারে, যারা * নিক্স সিস্টেমের সাথে পরিচিত হতে শুরু করেছে।

* ঠিক আছে, এটা মিথ্যা। আমি WinObj তে একই জিনিস দেখেছি, তবে অবশ্যই এটি নিয়মিত নয়। যদিও লিনাক্সে এগুলি কী করে তা আমি এখনও জানি না।


1
শেখার একটি ভাল চেতনা রাখার জন্য ধন্যবাদ। এই বিষয়টি প্রায়শই বিতর্কিত হয়। উইন্ডোজ বনাম লিনাক্সের ফাইল সিস্টেম কাঠামোর মধ্যে মৌলিক পার্থক্য সম্পর্কে কিছু অতিরিক্ত ব্যাখ্যা জন্য এই প্রশ্নের আমার উত্তর দেখুন See
কালেব

"ইউএসআর" কে "ব্যবহারকারী" তবে "ইউনিক্স সিস্টেম রিসোর্সস " এর সংক্ষিপ্ত রূপ হিসাবে ভাবেন না (যদিও এটি সম্ভবত একটি ব্যাক্রোনিয়াম যেহেতু এটি বহু বছর পূর্বে ব্যবহারকারীর ডিরেক্টরিগুলি ধারণ করে)) /fun/ch09s08.html )।
দীর্ঘকাল

উইন্ডোজ (বা ম্যাক ওএস এক্স) এর বিরুদ্ধে ইউনিক্স / লিনাক্স / ইত্যাদির ক্রিপ্টিক ডিরেক্টরি নামকরণকে ন্যায্যতা প্রমাণ করার চেষ্টা করার কোনও লাভ নেই। এটা ঠিক কেমন আছে।
অ্যান্ড্রু ওল্ফ

2017 হিসাবে, উইন্ডোজ ফোল্ডার কাঠামো একটি সম্পূর্ণ জগাখিচুড়ি। C:\Program Files, C:\ProgramData, %HOME%\AppData\Local, %HOME%\AppData\LocalLow, C:\Windows\SystemApps... সকল উদাহরণ যেখানে এক উইন্ডোজে এক্সেকিউটেবল খুঁজে পেতে পারেন। এবং আমি কনফিগারেশন ফাইল এবং রেজিস্ট্রি সম্পর্কেও কথা বলব না, আমি আরও বেশি হতাশ হতে চাই না। পিএস: আমি মূলত উইন্ডোজে কাজ করি।
আরএসেন্না

উত্তর:


29

লিনাক্স বিতরণগুলি এফএইচএস ব্যবহার করে: http://www.pathname.com/fhs/pub/fhs-2.3.html

আপনিও চেষ্টা করতে পারেন man hier

আমি আপনার প্রশ্নের উত্তরগুলি আমার মাথার উপরের অংশ থেকে সংক্ষেপে জানার চেষ্টা করব, তবে আমি দৃ strongly়ভাবে পরামর্শ দিচ্ছি যে আপনি এফএইচএসের মাধ্যমে পড়ুন:

  • / বিন হ'ল নন-সুপারভাইজার সিস্টেম বাইনারিগুলির জন্য
  • / এসবিন সুপারভাইজার (মূল) সিস্টেম বাইনারিগুলির জন্য
  • / usr / বিন এবং / usr / sbin যথাক্রমে অ-সমালোচিত শেয়ার্ড অ-সুপারইউসার বা সুপারভাইজার বাইনারিগুলির জন্য
  • / mnt সাময়িকভাবে একটি পার্টিশন মাউন্ট করার জন্য
  • / মিডিয়া হ'ল একসাথে অনেকগুলি অপসারণযোগ্য মিডিয়া মাউন্ট করার জন্য
  • / dev এ আপনার সিস্টেম ডিভাইস ফাইল রয়েছে; এটি একটি দীর্ঘ গল্প :)
  • / Usr ফোল্ডার এবং এর সাবফোল্ডারগুলি অন্যান্য সিস্টেমে ভাগ করা যায়, যাতে তাদের একই জায়গায় / একই জায়গায় ইনস্টল করা ফাইলগুলিতে অ্যাক্সেস থাকতে পারে। যেহেতু / usr সাধারণত একটি পৃথক ফাইল সিস্টেমে থাকে তাই এতে অনলাইনে সিস্টেম আনার জন্য প্রয়োজনীয় বাইনারি থাকে না।
  • / রুট পৃথক পৃথক পৃথক পার্টিশন / হার্ড ড্রাইভ / সার্ভারে থাকা অন্য ডিরেক্টরিগুলি মাউন্ট না করেই অনলাইনে সিস্টেম আনার প্রয়োজন হতে পারে
  • হ্যাঁ, / ইত্যাদির অর্থ "এট সেল্টেরা"। স্থানীয় সিস্টেমের জন্য কনফিগারেশন ফাইলগুলি সেখানে সংরক্ষণ করা হয়।
  • / opt এমন একটি জায়গা যেখানে আপনি ডাউনলোড / সংকলন করা প্রোগ্রামগুলি ইনস্টল করতে পারেন। এই ভাবে আপনি সমস্ত ফাইল এক জায়গায় রেখে বাকী সমস্ত সিস্টেম থেকে আলাদা রাখতে পারেন।
  • / proc এ কার্নেল এবং চলমান প্রক্রিয়া সম্পর্কে তথ্য রয়েছে
  • / var এ পরিবর্তনীয় আকারের ফাইলগুলি থাকে যেমন লগ, মেল, ওয়েবপৃষ্ঠা ইত্যাদি contains

কোনও সিস্টেম অ্যাক্সেস করতে আপনার সাধারণত / var, / opt, / usr, / home প্রয়োজন হয় না; একটি সিস্টেমে সম্ভাব্য বৃহত্তম ডিরেক্টরি কিছু।

আমার প্রিয়গুলির মধ্যে একটি, যা কিছু লোক ব্যবহার করে না, তা হ'ল / এসআরভি। এটি এমন ডেটার জন্য যা HTTP / ftp / সাম্বার মতো পরিষেবাদির মাধ্যমে হোস্ট করা হচ্ছে। আমি এর জন্য অনেকগুলি ব্যবহার করেছি / দেখেছি, যা আসলে এটির উদ্দেশ্য নয়।


নির্দিষ্ট প্রশ্নগুলি সম্বোধন করার জন্য ভাল ওভারভিউ। নোট করুন যে কিছু ডিস্ট্রো /home/users/usernameব্যবহারকারীর /home/services/servicenameজন্য এবং আপনি /srcযার জন্য উল্লেখ করেছেন তার জন্য ব্যবহার করে। আমি মনে করি এটি আরও ভাল কাজ করে যে এটি বিভাজনের চেয়ে বহুমুখী। আপনার নিজের পার্টিশনে এটি থাকতে পারে বা একই পার্টিশন এবং আপনার ব্যবহারকারীর ডেটা ব্যবহার করতে পারেন, যা প্রায়শই আমি করতে চাই।
কালেব

লিঙ্ক এবং বর্ণনার জন্য +1 ধন্যবাদ, সেগুলি দুর্দান্ত! :)
মেহরদাদ

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

1
ইউনিক্স সম্পর্কে আরেকটি বিষয় মনে রাখতে হবে "" সবকিছুই একটি ফাইল "(বা কমপক্ষে একটির মতো দেখতে লাগে) is উদাহরণস্বরূপ, / প্রোক মধ্যে থাকা স্টাফগুলি ফাইল এবং ডিরেক্টরিগুলির মতো দেখায় তবে সামগ্রীগুলি যখন আপনি অ্যাক্সেস করেন তখন কার্নেল দ্বারা সত্যই গতিশীলভাবে তৈরি হয়। এর অর্থ এই তথ্য অ্যাক্সেস করতে আপনি একই সরঞ্জামগুলি (এলএস, বিড়াল ইত্যাদি) ব্যবহার করতে পারেন।
কিথবি

1
@ সাইমস্কিয়ান থেকে এফএইচএস থেকে: "... / usr শেয়ারযোগ্য, কেবলমাত্র পঠনযোগ্য ডেটা That স্পষ্টতই কিছু ফাইল আর্কিটেকচার নির্ভর, এবং কিছু বিতরণ বন্যভাবে বিভিন্ন ডিরেক্টরি শ্রেণিবিন্যাস আশা করে। সমাধানটি হ'ল আপনার বাড়ির কাজটি করা, একটি ভাল অ্যাডমিনের মতো :)
ভিনসলে

18

তাদের সবার অর্থ (অন্যদের কাছে) কী আছে সে সম্পর্কে আমি উত্তর দেব না, তবে কিছুটা historicalতিহাসিক প্রসঙ্গ দেব।

প্রথম, মনে রাখবেন যে ইউএনআইএক্স প্রায় 40 বছর বয়সী হয়ে আসছে, পেপার টেপের দিনগুলিতে এবং 300 বাউড হার্ড-কোডেড টার্মিনালগুলি মেইনফ্রেমগুলিতে (উইন্ডোজ এক্সপি সিস্টেমটি 10 ​​বছরের পুরানো)। টাইপিং ধীর ছিল এবং টাইপিংয়ের দক্ষতার প্রয়োজনীয়তা অন্যান্য বিবেচনার চেয়ে অনেক বেশি ছিল। এটি খুব সংক্ষিপ্ত প্রাথমিক কমান্ডের কারণ (যেমন 'এলএস', 'বিড়াল', 'সিসি', 'ডিডি' ইত্যাদি)। ডিরেক্টরি স্ট্রাকচারগুলির সাথেও এটি ছিল। চিন্তা ছিল যে কমান্ডটি তিন বা চারটি অক্ষরের বেশি হলে নামটি খুব দীর্ঘ ছিল।

/ Usr ডিরেক্টরিটিতে মূলত ব্যবহারকারীর হোম ডিরেক্টরিগুলি অন্তর্ভুক্ত থাকায় বেশিরভাগ কমান্ডগুলি / বিনে ছিল এবং সমস্ত ডিভাইস ফাইল / ডিভ মধ্যে ছিল। পরে দ্রুত ড্রাইভের জন্য প্রাথমিক ড্রাইভ (মূল ফাইল সিস্টেম, '/') ছোট করার কথা ভাবা হয়েছিল। সুতরাং অন্যান্য কাঠামো যেমন / usr / বিন, / usr / অন্তর্ভুক্ত এবং / usr / lib সম্পর্কে আসে, যেখানে / usr ছিল একটি পৃথক "ড্রাইভ"। অনেক পরে, এটি মনে করা হয়েছিল যে / হোম-এ ব্যবহারকারীর হোম ডিরেক্টরি রয়েছে, তবে এটি অন্য ড্রাইভ। এবং তার থেকে অনেক পরে, / ভেরিয়েবল (পরিবর্তনশীল / পরিবর্তনযোগ্যের জন্য সংক্ষিপ্ত) থাকতে হবে। / ইত্যাদি ডিরেক্টরিটির অর্থ 'ET cetera' ছিল, যেহেতু সমস্ত সিস্টেম কনফিগারেশন ফাইলের ক্যাচ-অল লোকেশন। / Mnt ড্রাইভ অ্যাক্সেসের জন্য অস্থায়ী জায়গা হিসাবে ব্যবহৃত হত (প্রায়শই একটি ব্যাকআপ ড্রাইভ)। / অপ্ট, / প্রোক এবং / মিডিয়ার মতো ডিরেক্টরিগুলি অনেক পরে এসেছিল।

এখানে অনেক কিছুই বাকী রয়েছে (যেমন / usr / স্থানীয় এবং / নেট) তবে নামগুলি কেন 'কম স্বজ্ঞাত' তা সংক্ষিপ্ত বিবরণ দেয়।


2
+1 আমি historicalতিহাসিক প্রসঙ্গে পছন্দ করি, এটি আমার মস্তিষ্ককে সংগঠিত করে। :) এটি লেখার জন্য সময় দেওয়ার জন্য ধন্যবাদ!
মেহরদাদ

5

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

একটি দ্রষ্টব্য হিসাবে, উইন্ডোজ ডিরেক্টরিগুলি স্বজ্ঞাগতভাবে, পর্যাপ্তরূপে মনে হয় । তবে আমি আপনাকে জিজ্ঞাসা করতে পারি, *.iniপ্রোগ্রামগুলির ফোল্ডারে কোনও ফাইল হিসাবে , Documents and Settings\User( \Application Dataবা \Local Settings\Application Data), বা কুখ্যাত রেজিস্ট্রিতে কোনও প্রোগ্রামের সেটিংস কোথায় ? কেউ জানে না, এমনকি মাইক্রোসফ্টও নয়। এবং তাই আমরা এগিয়ে যেতে পারেন।


1
আমি মনে করি উইন্ডোজ 7 ফোল্ডারের নামগুলি আরও ভাল। যেমন অ্যাপডেটা \ রোমিং বনাম অ্যাপডাটা \ স্থানীয় - তারা সেখানে ডেটা ধরণের বর্ণনা করে। কনফিগারেশন সম্পর্কিত তথ্য হিসাবে: আমার মনে হয় আমি যখন দেখি তখন এটি কোথায় রাখা উচিত, তবে আমি এটি ভালভাবে বর্ণনা করতে পারি না, আমি সম্মত। :)
মেহরদাদ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.