লিনাক্সে ইনস্টলড সফ্টওয়্যারটি কোথায় রয়েছে? [প্রতিলিপি]


11

সম্ভাব্য সদৃশ:
যেখানে একটি সাধারণ লিনাক্স প্রোগ্রাম ইনস্টল করা আছে

আমি লিনাক্সে নতুন এবং আমি প্যাকেজগুলি সম্পর্কে আরও কিছু জানতে চাই।

উইন্ডোজে আমি একটি .exeফাইল ডাউনলোড করে ইনস্টল করি। যখন আমি ইনস্টল করি, আমি সেই অ্যাপটিটি যেখানে সঞ্চয় করতে চাই সেখানে আমি সেই পথটি সংজ্ঞায়িত করি। সেই ফোল্ডারে আমার কাছে অ্যাপ্লিকেশনটির জন্য প্রয়োজনীয় সমস্ত ফাইল রয়েছে।

যাইহোক, যখন আমি লিনাক্সে yumবা ব্যবহার করে কোনও প্যাকেজ ইনস্টল করি তখন আমি apt-getজানি না যে প্যাকেজটি কোথায় ইনস্টল করা আছে এবং সেই অ্যাপ্লিকেশনের জন্য প্রয়োজনীয় ফাইলগুলি কোথায় সঞ্চয় করা আছে। আমি দেখেছি যে বেশিরভাগ কনফিগারেশন /etcডিরেক্টরিতে রয়েছে। তবে লিনাক্স কেন একটি অ্যাপ্লিকেশনের জন্য প্রয়োজনীয় ফাইলগুলি বিভিন্ন ডিরেক্টরিতে সঞ্চয় করে?

কেউ আমাকে বলতে পারেন কীভাবে প্যাকেজ ইনস্টল করা হয়েছে এবং সেগুলি কোথায় এবং কীভাবে সঞ্চিত রয়েছে? এবং যদি প্যাকেজ পরিচালনার বিষয়ে আমার বুঝতে ভুল হয় তবে দয়া করে আমাকে সংশোধন করুন।


যদি আপনার বিতরণ ব্যবহার করে তবে আপনি কোনও নির্দিষ্ট ফাইলের প্যাকেজের নামটি অনুসন্ধান করতে এবং তারপরে কোন প্যাকেজ ইনস্টল করা আছে তা ফাইলগুলি খুঁজে পেতে rpmব্যবহার করতে পারেন । rpm -q --whatprovidesrpm -q -a
— ডেভিড শোয়ার্টজ

সাথে apt-get, যদি প্যাকেজটি ইনস্টল dpkg -L PKGNAMEথাকে তবে এটি ব্যবহার না করে থাকলে ব্যবহার করুন apt-file list।
— থোর

উত্তর:


15

অনেক প্রোগ্রাম (বাইনারি / স্ক্রিপ্ট) বিভিন্ন কনফিগারেশন ডিরেক্টরিগুলির মধ্যে /binবা /usr/binঅন্যান্য অংশগুলির সাথে শেষ হয় (প্রায়শই / অধীনে etc) আপনি ইতিমধ্যে উল্লেখ করেছেন।

কোনো নির্দিষ্ট কমান্ড জন্য আপনি Checkout পারেন whereis

whereis prog_name

এবং এটি আপনাকে এই আদেশটি কোথায় পাওয়া যাবে সে সম্পর্কে কিছু তথ্য দেবে। আপনি যা চেষ্টা করতে পারেন

which prog_name

এছাড়াও, এই গ্রাফিক এবং ব্যাখ্যা / উদাহরণগুলি সহায়ক হতে পারে।


1
যার জন্য +1 - লিনাক্সে

তবে কেন কনফিগারেশন পৃথক ডিরেক্টরিতে সংরক্ষণ করা হয়েছে?

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

1
সমস্ত সিস্টেম-ব্যাপী কনফিগারেশন ফাইলগুলিতে /etc/রাখার সিদ্ধান্তের ইতিহাস সম্পর্কে আমি নিশ্চিত নই , তবে কনফিগার ফাইলগুলির জন্য একটি কেন্দ্রীয় অবস্থান থাকা তাদের ব্যাকআপ নেওয়া খুব সহজ করে তোলে। (উইন্ডোজে সিস্টেম-ব্যাপী কনফিগারেশন ফাইলগুলির ব্যাকআপ আপ কল্পনা করুন, যেখানে সেগুলি ফাইল সিস্টেম এবং রেজিস্ট্রি জুড়ে ছড়িয়ে ছিটিয়ে রয়েছে ...)
— লি-অং ইইপ

@ লি-অংইইপ ভাল পয়েন্ট
— লেভন

5

উইন্ডোজের অধীনে, বিশেষত পুরানো সংস্করণগুলির জন্য, প্রোগ্রামগুলি তাদের C:\Program Filesডিরেক্টরিতে কনফিগারেশন ফাইল এবং অ ধ্রুবক ডেটা সংরক্ষণ করা সাধারণ ছিল । এটি কীভাবে প্রোগ্রামগুলি ইনস্টল করা হয়েছিল এবং একক ব্যবহারকারীর, নন-নেটওয়ার্কওয়ালা, নন-ফাইল-অনুমতি ডসের অধীনে চালিত হয়েছিল তা থেকে উদ্ভূত হয়।

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

ভিস্তা এবং ইউএসি বিরক্তির আবির্ভাবের সাথে, এই traditionতিহ্যটি শেষ পর্যন্ত গুরুতরভাবে ট্র্যাকশন হারাতে শুরু করেছে।

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

প্যাকেজগুলি সাধারণত প্যাকেজ ম্যানেজার থেকে ইনস্টল করা হয়। বিভিন্ন প্যাকেজ পরিচালক রয়েছে, যেমন (দেবিয়ান এবং উত্সাহিত aptitudeবিতরণ), yum(রেডহাট এবং উত্পন্ন বিতরণ), pacman(ভুলে যান এটি কোন ডিস্ট্রো ...) এবং অন্যান্য।

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

সাধারণত প্যাকেজ ব্যবস্থাপক কোনও প্যাকেজগুলির বাইরে ম্যানুয়ালি ডাউনলোড করেছেন এমন প্যাকেজে একই ক্রিয়াকলাপের অনুমতি দেবে। আপনি নিজেরাই তৈরি বা সংকলিত সফ্টওয়্যার থেকে নিজের তৈরি করতে চাইলে সরঞ্জামগুলিও উপলব্ধ।

যেহেতু প্যাকেজটি নিজেই একটি এক্সিকিউটেবল ফাইল নয়, আপনার কোনও অবিশ্বস্ত এক্সিকিউটেবল চালাতে হবে না যা আপনি সত্যই জানেন না এটি কী করে। (উইন্ডোজ অবশেষে .msuএর পরিবর্তে গুলি বিতরণ করে আপডেটগুলি নিয়ে আসবে .exe- তবে .msiএর কিছুটা সময় হয়েছে ...)


1
করছেন। প্যাকম্যান, এটি আর্চ লিনাক্সের জন্য ।

2

একটি প্রদত্ত yumপ্যাকেজ ইনস্টল করে ফাইলগুলির একটি তালিকা আপনি পেতে পারেন :

yum install yum-utils

তাহলে আপনি এটিকে এভাবে চালাতে পারেন:

repoquery --list yum-utils

(স্পষ্টতই, সেই দ্বিতীয় প্যাকেজের "yum-utils" কে সেই প্যাকেজের নাম দিয়ে প্রতিস্থাপন করুন যার ফাইল তালিকাটি আপনি দেখতে চান))

জন্য apt-get, আপনি ব্যবহার করতে পারেন:

dpkg -L package-name

1

সাধারণত এর অধীনে /usr/bin, যদিও এটি আপনি ইনস্টল করছেন সেই নির্দিষ্ট অ্যাপ্লিকেশন বা গ্রন্থাগারের উপর নির্ভর করে।


1

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


0

/optডিরেক্টরি উইন্ডোজ মত ইনস্টলেশনের যেখানে প্রতিটি প্যাকেজ নিজস্ব ডিরেক্টরি ট্রি হয়েছে জন্য সংরক্ষিত। কেউ এটি ব্যবহার করে না। আমি নিশ্চিত না কেন; এটি এমনও হতে পারে যে আপনি যখন প্যাকেজ ইনস্টল করেন তখন /opt/PACKAGE/binআপনার যুক্ত $PATHহওয়া ঠিক বিরক্তিকর।


/optমনে হয় বেশিরভাগ বাণিজ্যিক / অবিহীন সফ্টওয়্যার প্যাকেজগুলি যেমন ম্যাটল্যাবের মতো ব্যবহার করা হয়েছে।
— লি-অং ইপ

আমার উবুন্টু 12.04 এ, গুগল ক্রোম ইনস্টল /optকিন্তু তারপর তাই LibreOffice এর 3.5 যা আমি থেকে সরাসরি ইনস্টল করেনি এখানে ।

0

উইন্ডোজ বা ম্যাকের তুলনায় লিনাক্সের সফ্টওয়্যারটি কিছুটা আলাদা। উইন্ডোজ স্বাভাবিকভাবে তাদের রাখে: এই, একটি এক্সিকিউটেবল এবং এর সমস্ত সমর্থনকারী ফাইল একটি একক ফোল্ডারে ইনস্টল করা c:\Program Files\program nameমধ্যে অ্যাপল /Applications/program.app। লিনাক্সের অধীনে আরও একটি সাম্প্রদায়িক কাঠামো রয়েছে। বাইনারিগুলি সাধারণত থাকে /usr/bin, সিস্টেম-ব্যাপী কনফিগারেশন থাকে /etc, ব্যবহারকারী-নির্দিষ্ট কনফিগারেশন সাধারণত থাকে ~/.program। লাইব্রেরিগুলিতে রয়েছে /usr/lib, ফাইলগুলি সমর্থন করে (উদাঃ শিল্পকর্ম) প্রায়শই থাকে /usr/share/programইত্যাদি There এমনকী একটি স্ট্যান্ডার্ডও রয়েছে যেখানে পরামর্শ দেওয়া উচিত কোথায় জিনিসগুলি যেতে হবে।

প্রোগ্রামগুলি সাধারণত প্যাকেজ পরিচালকদের দ্বারা ইনস্টল করা হয়, rpmএবং dpkg; তারা যথাক্রমে yumএবং aptitude/ দ্বারা apt-getযথাযথভাবে অনুসন্ধান এবং পুনরুদ্ধার করা হয়েছে (নির্ভরতা-পরিচালন সহ) । আরও প্রযুক্তিগত স্তরে, প্যাকেজগুলি সহজ সংক্ষেপিত ফাইল (আমি বিশ্বাস করি যে আরপিএম এবং দেব উভয়ই .tar.gz)। এই আর্কাইভ রুট যেখানে ফাইল যেতে থেকে ফাইলসিস্টেম টুকরা একটি মিরর (ইনস্টল করা অনুমিত যেমন একটি ফাইল এ ধারণ /usr/bin/programহতে হবে usr/bin/programপ্যাকেজ মধ্যে উপযুক্ত ফোল্ডারের অধীনে।

একটি নির্দিষ্ট প্যাকেজের তথ্য সন্ধান করতে, আপনার সিস্টেমের জন্য প্যাকেজ ম্যানেজারটি ব্যবহার করুন, যেমন অন্যরা এখানে ব্যাখ্যা করেছেন।


0

Hier র manpage কিছু অর্ন্তদৃষ্টি প্রদান করতে পারেন


2
যদিও এই লিঙ্কটি প্রশ্নের উত্তর দিতে পারে, উত্তরের প্রয়োজনীয় অংশগুলি এখানে অন্তর্ভুক্ত করা এবং রেফারেন্সের জন্য লিঙ্কটি সরবরাহ করা ভাল। লিঙ্কযুক্ত পৃষ্ঠাগুলি পরিবর্তিত হলে লিঙ্ক-শুধুমাত্র উত্তরগুলি অবৈধ হতে পারে।
— ম্যাক্লিওড

@ ম্যাকলিউড আপনি যদি উদ্বিগ্ন হন যে লিঙ্কটি অবৈধ হয়ে যেতে পারে তবে আমি কেবল সুবিধার জন্য লিঙ্ক করেছি। আমি সরল পাঠ্যে কেবল "ম্যান হাইয়ার" লিখতে পারি, যেহেতু আমার ধারণা যে কোনও মূলধারার লিনাক্স বিতরণে আপনি এই ম্যানপেজটি পেতে পারেন।
— বেনামে

2
"ম্যানুয়ালটি দেখুন" এটিও একটি উপযুক্ত উত্তর নয়, এটি একটি মন্তব্য। উত্তরগুলির প্রশ্নের উত্তর অবশ্যই দেওয়া উচিত। এই প্রশ্নের উত্থাপিত উত্তর কিভাবে? স্তরক্রমের তালিকাটি কীভাবে তাৎপর্যপূর্ণ? ওপি (বা অন্য কেউ) কেন এই উত্তরটিকে লক্ষণীয় হিসাবে বিবেচনা করবেন? লিঙ্কটির প্রাসঙ্গিক অংশগুলি (বা ম্যান পেজ) অনুলিপি করুন এবং কেন সেগুলি প্রশ্নের প্রসঙ্গে তাৎপর্যপূর্ণ তা ব্যাখ্যা করুন, তবে আপনি প্রশ্নের উত্তর দিয়েছেন এবং কেবল কোনও মন্তব্য করেননি।
— MaQleod
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.