কোন প্যাকেজ কোনও ফাইলের মালিক তা আমি কীভাবে জানতে পারি?


উত্তর:


44

দেবিয়ানে বেশ কয়েকটি ইউটিলিটি রয়েছে যা এই কাজটি সম্পাদন করে; একটি বিবরণ জন্য এই পৃষ্ঠা চেক করুন । আমি তাদের দুটি উল্লেখ করব, apt-fileএবং dlocate।

apt-fileএর অভ্যন্তরীণ ক্যাশে অনুসন্ধান করে, সুতরাং আপনি অনুসন্ধান করতে চান এমন সমস্ত প্যাকেজ ইনস্টল না করার অনুমতি দেয়। নীচে আপনি আরও বিস্তারিত গাইড পাবেন।

dlocatedpkg -L(কমান্ড যা প্যাকেজ বিষয়বস্তু তালিকাভুক্ত করে) এর একটি দ্রুত বিকল্প , এবং এটি কেবল ইনস্টল করা প্যাকেজগুলি অনুসন্ধান করে। দ্বারা অনুসন্ধান করা হয় dlocate -S file.name।

এছাড়াও আপনি প্যাকেজ অনলাইন ব্যবহার করে অনুসন্ধান করতে packages.debian.org সার্ভার ( প্যাকেজ বিষয়বস্তু অনুসন্ধান অধ্যায়)।


ইনস্টল এবং ব্যবহার apt-file

প্রথমে আপডেট করা ভাল ধারণা:

sudo apt-get update

কি apt-fileজন্য দেখুন :

apt-cache show apt-file

এটি ইনস্টল করুন:

sudo apt-get install apt-file

সংগ্রহস্থলগুলি থেকে ডেটা পড়ুন (এটি ছাড়াও এটি কাজ sudoকরে তবে ব্যবহারকারীর ক্যাশে তৈরি করে; sudoক্যাশেটি সিস্টেমভিত্তিক হয়):

sudo apt-file update

অনুসন্ধান করুন। এই উদাহরণে আমরা জানতে চাই যে কোন প্যাকেজ xrandrসম্পাদনযোগ্য:

apt-file search xrandr

এটি unxrandr, lxrandr.moবা সহ অনেক প্যাকেজ তালিকাভুক্ত করে source_lxrandr.py। আমাদের ক্ষেত্রে খুব দরকারী নয়। আরও চতুর অনুসন্ধান:

apt-file search -x /xrandr$

( $রেখার শেষ বোঝায়) উদাহরণ আউটপুট:

bash-completion: /usr/share/bash-completion/completions/xrandr
x11-xserver-utils: /usr/bin/xrandr

প্রথম ফলাফলটি এক্সিকিউটেবলের মতো দেখায় না, দ্বিতীয়টি করে। আমরা আরও তদন্ত করতে পারি। চালান:

apt-cache show x11-xserver-utils

বিঙ্গো! এই প্যাকেজ।


এই উত্তরের প্রথম লিঙ্কটি ( debianhelp.co.uk/findfile.htm ) মনে হচ্ছে এখন বিচ্ছিন্ন।
— rogepeppe

123
user@host:~$ dpkg-query -S /bin/bash 
bash: /bin/bash

যেখানে প্যাকেজের নাম বাশ।


4
এই উত্তর গৃহীত উত্তর চেয়ে অনেক ভাল!
— বেক্স

সঠিক। দুর্ভাগ্যজনক যে "স্বীকৃত উত্তর" একটি সবুজ চেকমার্ক পেয়েছে, এটি এমন একটি চিহ্ন যা "সঠিক উত্তর" প্রদান করে। এই ক্ষেত্রে, গৃহীত উত্তরগুলি মিস করে dpkg-query -Sএবং এটি আপনাকে
— alচ্ছিক

42

অন্য বিকল্প:

$ dpkg -S /bin/bash
bash: /bin/bash

আমার উবুন্টু কমপক্ষে, উভয়ই dpkgপ্যাকেজে উপস্থিত বলে মনে হচ্ছে , সুতরাং নির্দিষ্ট কোনওটির পক্ষে আসল সুবিধা নেই ...


14

dpkg -Sউল্লিখিত হিসাবে ইনস্টলেশন উত্পন্ন ফাইলগুলি পাওয়া যাবে না : https://askubuntu.com/a/667227/52975

উদাহরণস্বরূপ, /bin/ncআপনি প্যাকেজ ইনস্টল করার সময় উপস্থিত হয় netcat-openbsd।

তবে:

dpkg -S /bin/nc

আমরা পেতে dpkg-query: no path found matching pattern /bin/nc।

এটি ঘটায় কারণ পোস্টিনস্ট স্ক্রিপ্টের কল /bin/ncদ্বারা উত্পন্ন হয় যা ইনস্টলেশন পরে চালিত হয়।update-alternatives

এটি এর মতো কাজ করে কারণ এর অন্য সংস্করণটি প্যাকেজ /bin/ncসরবরাহ করে netcat-traditional।

আমি মনে করি না যে এ জাতীয় উত্পন্ন ফাইলগুলি সন্ধানের কোনও সাধারণ উপায় আছে। বিকল্প প্রতীকগুলির নির্দিষ্ট ক্ষেত্রে, আমরা কেবলমাত্র এর সাথে লিঙ্কটি অনুসরণ করতে পারি readlink -f:

dpkg -S "$(readlink -f /bin/nc)"

2

দেবিয়ার সাথে পরিচিত না হয়ে, আমি যখন চেষ্টা করেছিলাম তখন আমি হতবাক হয়ে পড়েছিলাম:

kearnsp@xubuntuvb:~$ dpkg -S /usr/bin/vncviewer
dpkg-query: no path found matching pattern /usr/bin/vncviewer
kearnsp@xubuntuvb:~$ 

কিছুটা তদন্ত এবং আমি প্যাকেজটি পেয়েছি:

kearnsp@xubuntuvb:~$ ls -l /usr/bin/vncviewer
lrwxrwxrwx 1 root root 27 May 28 15:49 /usr/bin/vncviewer -> /etc/alternatives/vncviewer
kearnsp@xubuntuvb:~$ ls -l /etc/alternatives/vncviewer
lrwxrwxrwx 1 root root 20 May 28 15:49 /etc/alternatives/vncviewer -> /usr/bin/xvnc4viewer
kearnsp@xubuntuvb:~$ dpkg -S /usr/bin/xvnc4viewer
xvnc4viewer: /usr/bin/xvnc4viewer
kearnsp@xubuntuvb:~$ 
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.