উবুন্টু বা ডেবিয়ান সংগ্রহশালাটি কোন প্যাকেজ আসে তা থেকে কীভাবে বলা যায়?


167

উবুন্টু সহ ডেবিয়ান-ভিত্তিক সিস্টেমে, ডাউনলোডের সূচনা না করে কোন প্যাকেজটি কোন প্যাকেজটি ডাউনলোড করা হবে তা কীভাবে বলতে পারেন? aptitude showএবং বিভাগটি (উদাহরণস্বরূপ, মেটাপ্যাকেজ, ভিত্তি, গ্রাফিক্স) apt-cache infoপ্রদর্শন করবে তবে কোনও প্যাকেজ অন্তর্ভুক্ত এমন সংগ্রহস্থল নয় (যেমন, http://ppa.launchpad.net/mactel-support/ppa/ubuntu বা http: // আমাদের .archive.ubuntu.com / উবুন্টু / )।

প্যাকেজটি ইনস্টল করার সময়, প্রকৃত সংগ্রহশালা ডাউনলোডের সময় উপস্থিত হয় (এটি অ্যাপ্লিকেশন এবং অনুরূপ প্রোগ্রামগুলি থেকে "ডাউনলোড করা ..." আউটপুট প্রিন্ট করা হয়) তবে কীভাবে প্যাকেজ (বা একটি নির্দিষ্ট) রয়েছে সেই সংগ্রহস্থলের উপর তথ্য কীভাবে পাওয়া যায়? একটি প্যাকেজের সংস্করণ) ছাড়া ডাউনলোড এবং এটি প্রথম ইনস্টল?

অতিরিক্তভাবে, ইতিমধ্যে ইনস্টল থাকা কোনও প্যাকেজের উত্স সংগ্রহস্থল কীভাবে একজন নির্ধারণ করতে পারে?


1
আমি এপটির একটি ঘাটতি খুঁজে পাই; কোনটি সংগ্রহস্থল প্যাকেজ ইনস্টলার সরঞ্জামগুলির মধ্যে একটি নির্দিষ্ট প্যাকেজ সরবরাহ করে তা বলা সহজ নয়।
কোয়াকোট কোয়েসোট

উত্তর:


202

আমি চালাচ্ছি apt-cache policy <package name>:

$ apt-cache policy wajig
wajig:
  Installed: 2.1
  Candidate: 2.1
  Version table:
 *** 2.1 0
        100 /var/lib/dpkg/status
     2.0.47 0
        500 file:/home/wena/.repo_bin/ squeeze/main i386 Packages
        500 ftp://ftp.is.co.za/debian/ squeeze/main i386 Packages

তার মানে তিনটি wajigপ্যাকেজ রয়েছে:

  • ইনস্টল করা আছে এমন একটি ( /var/lib/dpkg/status)

  • একটি স্থানীয় সংগ্রহস্থল ( file:/home/wena/.repo_bin/) থেকে উপলব্ধ

  • রিমোট রিপোজিটরি ( ftp://ftp.is.co.za/debian) থেকে পাওয়া যায় এমন একটি , যা স্থানীয় সংগ্রহস্থলের মতো একই সংস্করণ ( ২.০.৪7 ) রয়েছে


অতিরিক্তভাবে, apt-cache madison <package name>একটি সারণী বিন্যাসে অনুরূপ তথ্য প্রদর্শিত হবে।

 wajig |        2.2 | mirror://mirrors.ubuntu.com/mirrors.txt/ precise/universe amd64 Packages
 wajig |        2.2 | mirror://mirrors.ubuntu.com/mirrors.txt/ precise/universe Sources

তবে এটি ইনস্টল করা প্যাকেজটি কোথা থেকে এসেছে তা দেখায় না, তাই না?
অ্যাডোব

2
@ অ্যাডোব আমার ক্ষেত্রে, 2.1সংস্করণটি কোনও সংগ্রহস্থল থেকে পাওয়া যায় না। এটি স্থানীয়ভাবে নির্মিত।
tshpang

2
ইনস্টলড প্যাকেজটির চিহ্ন কী? ***বা /var/lib/dpkg/status?
এসবিবি

হয়তো উভয়? নিশ্চিত না.
tshepang

প্যাকেজটি ইনস্টল করা না থাকে, apt-cache policyবলে: Installed: (none)
জন ম্যাকগিহি

28

আহা! স্পষ্টতই, সঠিক aptকমান্ডটি নয় apt-cache info, পরিবর্তে apt-cache showpkg,।

$ apt-cache showpkg linux-generic
Package: linux-generic
Versions: 
2.6.31.19.32 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic-updates_main_binary-amd64_Packages) (/var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_karmic-security_main_binary-amd64_Packages) (/var/lib/dpkg/status)
 Description Language: 
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic-updates_main_binary-amd64_Packages
                  MD5: 5d722da329763b9342d322f5a140005c

2.6.31.14.27 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic_main_binary-amd64_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic_main_binary-amd64_Packages
                  MD5: 5d722da329763b9342d322f5a140005c


Reverse Depends: 
Dependencies: 
2.6.31.19.32 - linux-image-generic (5 2.6.31.19.32) 
2.6.31.14.27 - linux-image-generic (5 2.6.31.14.27) 
Provides: 
2.6.31.19.32 - 
2.6.31.14.27 - 
Reverse Provides: 

File:লাইন পর সংগ্রহস্থলের তথ্য প্রদান করে /var/lib/apt/lists/

নেই একটি বাগ রিপোর্ট যে aptitudeউৎস সংগ্রহস্থলের প্রদর্শন করতে পারবে না , কিন্তু এটা বর্তমানে মনে হয় বৈশিষ্ট্য অভিলাষও অবশিষ্ট তালিকা এখনও।


এই প্রবণতা বৈশিষ্ট্যটি 8 বছর পরে এখনও হুইলিস্টে রয়েছে এবং কেন জানি না এই উত্তর ( apt-cache showpkg) সঠিক হিসাবে চিহ্নিত করা হয়নি।
সিসাবা তোথ

8

এটি আমার পক্ষে কাজ করে (2vcard প্যাকেজটি কোথায় তা দেখায়):

$ grep 2vcard /var/lib/apt/lists/* | grep "Filename:"

/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic_universe_binary-i386_Packages:Filename: pool/universe/2/2vcard/2vcard_0.5-3_all.deb

আপনি একাধিক সংস্করণ উপলব্ধ থাকলে সংস্করণ ইত্যাদি পরীক্ষা করতে অতিরিক্ত ফিল্টারিং প্রয়োগ করতে পারেন।


ব্যবহারিক. আমি অবাক হয়েছি dpkgযদিও এই তথ্যটি প্রথম প্রান্তের কোনও মাধ্যমে অ্যাক্সেসযোগ্য নয় , যদিও।
27

@got এটা পাওয়া যায়: superuser.com/questions/106794/...
tshepang

8

আমি অবাক হয়েছি কেন কেন কেউ উল্লেখ করেনি aptitude। আমি সব সময় এটি ব্যবহার।

প্রবণতা হ'ল:

  • অনেকগুলি ডেবিয়ান-ভিত্তিক বিতরণগুলির সাথে ডিফল্টরূপে প্রেরণ করা হয়। অন্য (যেমন উবুন্টু) এর মাধ্যমে ইনস্টল করা যেতে পারেsudo apt install aptitude
  • প্রশাসনিক সুযোগ-সুবিধার দরকার নেই (কমপক্ষে নীচের আদেশের জন্য)
  • একটি চমৎকার ncursesজিইউআই আছে (তবে বেশিরভাগ সময় এটি ব্যতীত ব্যবহৃত হয়)
  • সত্যই সুন্দর আউটপুট সরবরাহ করে। প্যাকেজগুলির সংস্করণগুলি দেখানোর জন্য, aptitude versionsকমান্ডটি ব্যবহার করুন :

    me@wheezy:~$ aptitude versions kde-standard
    Package kde-standard:                        
    i A 5:77+deb7u1     stable              500
    p A 5:84            testing,unstable    130
    
  • সুপার গাওয়ার শক্তি নেই

প্রতিটি স্ট্রিংয়ের সামনের অক্ষরটি প্যাকেজটির স্থিতি নির্দেশ করে, আমি ইনস্টল হয়েছি এবং পি শুদ্ধ (বা কখনও ইনস্টল করা হয়নি), স্থিতিশীল , পরীক্ষা এবং অস্থির সংগ্রহগুলির সংজ্ঞা, শেষটির সংখ্যাটি পিনের অগ্রাধিকার

এখানে উল্লেখ করার মতো যোগ্যতার সাম্প্রতিক সংস্করণগুলির বিষয়ে একটি সতর্কতা: ডিফল্টরূপে এটি সমস্ত প্যাকেজগুলি দেখায়, যার মধ্যে আপনি অনুসন্ধান করা নাম অন্তর্ভুক্ত করে, তাই কঠোর নাম দ্বারা অনুসন্ধানের জন্য একটি রেইজেক্স যাদুটি সামান্য ব্যবহার করুন aptitude versions ^kde-workspace$


1
দুর্দান্ত কমান্ড কিন্তু অনুরোধ অনুসারে এটি সংগ্রহস্থলের তালিকা করে না।
বুধবার


আপনি বুঝতে পারবেন না। অতিরিক্ত পিপিএ ইনস্টল করা যেতে পারে। প্যাকেজটি এই জাতীয় পিপিএর কিনা তা জানা গুরুত্বপূর্ণ। প্রকৃতপক্ষে, আমি এখনই এটি বের করার চেষ্টা করছি - যদি এটি হয় তবে আমি পিপিএটি সরাতে পারি, সমস্যার ঝুঁকি হ্রাস করতে পারি।
রিইনারপোস্ট

হ্যাঁ, আপনি ঠিক বলেছেন, versionsকেবলমাত্র সরবরাহিত প্যাকেজগুলির অ্যাপ পিনিং মানগুলি পরীক্ষা করতে পারেন, সম্পর্কিত রেপোগুলি নয়। এটি এখনও কার্যকর যদি আপনার সমস্ত রেপো এবং সেগুলি কীভাবে পিন করা হয় তা যদি আপনি জানেন।
ট্রান্সলুসেন্টক্লাউড

6

দুঃখের বিষয়, প্যাকেজ ইনস্টলেশন চলাকালীন এই তথ্য রেকর্ড করা হয় না। যদি সংগ্রহস্থলটি উত্স তালিকায় এখনও থাকে এবং সংগ্রহস্থলের কাছে প্যাকেজটি থাকে তবে আপনি একটি সঠিক ধারণা করতে পারেন:

grep -l PKG /var/lib/apt/lists/*

apt-cache showpkg সংগ্রহস্থল ডাটাবেস থেকে ডেটা দেখাচ্ছে (যা ইনস্টল করা হয় না) তাই এটি গ্রেপ থেকে একই তথ্যের অন্য রূপ।

এমনকি যদি আপনি সংগ্রহস্থল এবং আপডেটটি অক্ষম করেন তবে সিনাপটিকও (মূল পর্দায়) বলতে পারবেন না।


2

অথবা, সানির দ্বারা অনুপ্রাণিত হয়ে আপনি চেষ্টা করতে পারেন:

# list installed restricted packages
for i in `dpkg --get-selections | awk '{ print $1 }'`; do egrep -lRI "^Filename: .*/${i}_[^/]+.deb" /var/lib/apt/lists/ | grep -q 'restricted' && echo $i; done

# list installed multiverse packages
for i in `dpkg --get-selections | awk '{ print $1 }'`; do egrep -lRI "^Filename: .*/${i}_[^/]+.deb" /var/lib/apt/lists/ | grep -q 'multiverse' && echo $i; done

গীত। 100% সঠিক নয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.