උබුන්ටු / ඩේබියන් හි ගොනුවක් අයත් පැකේජය කුමක්ද?


314

මගේ උබුන්ටු 8.04 පද්ධතියේ වැඩ කිරීමේදී වැඩසටහනක්, මෑන් පිටුවක් හෝ වෙනත් ගොනුවක් මග හැරී ඇති බව මට නිතරම පෙනේ. දී ඇති ගොනුවක් අඩංගු පැකේජයක් (එය දැනටමත් ස්ථාපනය කර තිබේද නැද්ද යන්න) සොයා බැලීමට සරල ක්‍රමයක් තිබේද? සමහර විට apt හෝ dpkg සඳහා අපැහැදිලි විකල්පයක් තිබේද?



34
dpkg -S /path/to/fileඔබ පැකේජය ස්ථාපනය කර ඇත්නම්.
සාස්

Answers:


259
apt-file search filename

හෝ

apt-file search /path/to/file


ස්ථාපනය කිරීමට apt-file, භාවිතා කරන්න:

sudo apt-get install apt-file

ඔබට එය භාවිතා කිරීමට පෙර එහි දත්ත සමුදාය යාවත්කාලීන කිරීමට අවශ්‍ය වනු ඇත:

sudo apt-file update

8
FYI: apt-file ගබඩාවලින් සපයනු ලබන අන්තර්ගතය- amd64.gz මත රඳා පවතින බව පෙනේ. සියලුම තෙවන පාර්ශවීය ගබඩාවන් මෙම ගොනුව සපයන්නේ නැත.
ජෝකෙස්ටර්

3
එය මට වැඩ කළේ නැත. මම දත්ත සමුදාය යාවත්කාලීන කළ නමුත් එය කිසිවක් ආපසු ලබා නොදේ. dpkg -Sපහත විස්තර කර ඇති පරිදි ක්‍රියා කරයි.
නෝර්තිස්

බොහෝ අවස්ථාවන්හීදී ඔබට සම්මත නොවන පැකේජයක් (apt-file) ස්ථාපනය කිරීමට අවශ්‍ය නොවන අතර පෙර ස්ථාපනය කර ඇති එක (dpkg) භාවිතයෙන් ඉවත් වන්න. ඉහළම ඡන්දය දුන් පිළිතුර බලන්න.
ඇලෙක්සැන්ඩර් ලෙව්චුක්

425

(Debian / Ubuntu) ගොනුවකට අයත් පැකේජය කුමක්දැයි සොයා ගන්න :

dpkg -S /usr/bin/ls

'dpkg -S' ඔබ සපයන නූලට ගැලපේ, එබැවින් තර්කයක් ලෙස 'ls' භාවිතා කිරීම ගොනු නාමයේ ඕනෑම තැනක 'ls' ඇති ඕනෑම පැකේජයකින් ඕනෑම ගොනුවකට ගැලපේ. එබැවින් සාමාන්‍යයෙන් නිරපේක්ෂ මාර්ගයක් භාවිතා කිරීම හොඳ අදහසකි. දෙවන උදාහරණයේ දී dpkg දන්නා ලිපිගොනු 12,000 ක් 'ls' හිස් නූලට ගැලපෙන බව ඔබට දැක ගත හැකිය.


34
එය දැනටමත් ගොනු ස්ථාපනය කර ඇත්නම් පමණි
ජෝන් ටී

20
ඊට හාත්පසින්ම වෙනස්ව apt-file, මෙය පැකේජයක් අතින් ස්ථාපනය කර ඇත්නම් එය සොයා ගනී dpkg -i!
ටැනියස්

4
ඔබ ලබා ගන්න නම් dpkg-විමසුම: මඟක් ගැලපෙන රටාව සොයා මෙය කරන්න උත්සාහ කරන්න : dpkg -S "$(readlink -fn "$(which rename)")".
පැබ්ලෝ ඒ

2
අමුතුයි, මෙය මට වැඩ කළේ නැත dpkg-query: no path found matching pattern /usr/bin/java/usr/bin/java
:,

nnnyby පැබ්ලෝ ඒ
වොග්

20

packages.debian.org යනු මෙම කාර්යය ඉටු කිරීම සඳහා මම සැමවිටම භාවිතා කිරීමයි. එය apt-file වලට වඩා උසස් වන්නේ එයට ගොනු නාමවල කොටස් ද සොයාගත හැකි බැවිනි. එය ප්‍රධාන පැකේජ ලැයිස්තුවට සම්බන්ධ කර ඇති අතර එය විස්තර, දෝෂ ආදිය ලැයිස්තුගත කරයි. සියල්ල හොඳ වෙබ් අඩවියක ඇත. විධාන රේඛාවෙන් එතරම් ප්‍රයෝජනවත් නොවේ, නමුත් තවමත් තරමක් ප්‍රයෝජනවත් වේ.

වේගය සඳහා, මම url එක පිටු සලකුණු කළෙමි:

http://packages.debian.org/search?searchon=contents&keywords=%s&mode=filename&suite=unstable&arch=any

ෆයර්ෆොක්ස් හි, සහ "ඩෙෆ්ෆයින්ඩ්" යතුරු පදයක් ලෙස එකතු කර ඇත (පිටු සලකුණු කළමණාකරුගේ "ඉහළින්" ක්ලික් කරන්න), එබැවින් මට "ඩෙෆ්ෆයින්ඩ්" ටයිප් කළ හැකි අතර එය ක්‍රියාත්මක වනු ඇත. බෙදාහැරීමේ වෙනත් සංස්කරණ සඳහා ඔබට එය 'සූට්' අස්ථායි සිට ස්ථාවර හෝ වෙනස් කිරීමට හැකිය.


1
එය අභිරුචි නිධි සමඟ ක්‍රියා නොකරයි.
Ctrl-C

1
ස්වයංක්‍රීයකරණය සම්බන්ධයෙන් දුර්වල තේරීමක්.
ඇලෙක්සැන්ඩර් ෂ්චෙබ්ලිකින්

11

ඔබට dlocate ද භාවිතා කළ හැකිය. මිනිසා පිටුවෙන්;

$ dlocate [ PATTERN ]
List all records where either the package name or the filename matches PATTERN.

1
dlocateමගේ ප්‍රියතම ක්‍රමය ද ඉතා විශ්වාසදායක ය.
Avio

2
First dlocateඔබ sudo update-dlocatedbමුලින් ධාවනය නොකරන්නේ නම් මෑතකදී ස්ථාපනය කරන ලද පැකේජයක් ඇවියෝ සොයා නොගනී . විධානය ස්වයංක්‍රීයව දිනපතා /etc/cron.daily/dlocate හි ක්‍රියාත්මක වේ
jarno

4

මට වජිග් හමු විය ...

wajig whichpackage /path/to/file 

උදා.

wajig whichpackage /etc/apt/sources.list

වජිග් යනු ඔබට කිසි විටෙකත් ඉගෙන ගැනීමට අවශ්‍ය නොවූ සියලු යෝග්‍යතා, ඩීපීකේජී යහපත්කම් ආවරණය කරන පහසු විධාන රේඛාවක් හෝ කොන්සෝල මෙවලමකි. .

වජිග් භාවිතය ස්ථාපනය කිරීම සඳහා:

apt-get install wajig

'කුමන ඇසුරුම' යන විධානයම apt-file මත රඳා පවතී

ඔබට එය භාවිතා කිරීමට පෙර එහි දත්ත සමුදාය යාවත්කාලීන කිරීමට අවශ්‍ය වනු ඇත: - වජිග් යාවත්කාලීනය යෝග්‍ය-යාවත්කාලීනයක් මඟින් ගොනු හැඹිලිය යාවත්කාලීන කරන්නේ දැයි මම තවමත් නොදනිමි, නමුත් මම බලාපොරොත්තු වෙමි.

sudo wajig update

sudo apt-file update

(සහ සුපිරි එළ, පාස්කු උදා?!)


2

ඩෙබියන් සඳහා ජමුරාගේ පිළිතුරට සමානය, ඔබට උබුන්ටු සඳහා http://packages.ubuntu.com/ වෙතද යා හැකිය . ගොනුවක මාවතට ඇතුළු විය හැකි "ඇසුරුම්වල අන්තර්ගතය සොයන්න" සෙවුම් කොටුව සොයා ගැනීමට ඔබට ටිකක් පහළට අනුචලනය කිරීමට සිදුවේ .


දැන් රාස්බියන්ට පමණක් එකක් තිබුනේ නම් :)
XTL

0

Http://www.kodkast.com/applications/find-which-package-file-belongs-to භාවිතයෙන් ලිපිගොනු සෙවීමට උත්සාහ කරන්න

මෙය විවිධ rpms / linux ඇසුරුම්වල අඩංගු ගොනු සෙවීම සඳහා වන යෙදුමක් වන අතර, ඔබේ පරිගණකයේ rpm පවා ස්ථාපනය කර නොමැති විට එය ඉතා ප්‍රයෝජනවත් වේ.


Downvote: සබැඳිය කැඩී ඇති අතර සබැඳිය RPM පැකේජ සඳහා වන බව පෙනේ.
tripleee

0

විධාන සොයාගත නොහැකි පැකේජය මඟින් විභව විධාන සහ ඩෙබියන් පැකේජයේ නම පිළිබඳව ඉඟි ලබා දේ. එය ක්‍රියාත්මක වන්නේ බැෂ් කවචයේ විධානය ටයිප් කර එහි ප්‍රතිදානය දෙස බැලීමෙනි.

උදාහරණයක් ලෙස විධාන නාමය දන්නේ නම්:

zer@ivy:~ 10:45 $ zsh5
The program 'zsh5' is currently not installed.  To run 'zsh5' please ask
your administrator to install the package 'zsh'
zsh5: command not found

විධානය නොදන්නේ නම්, සමහර අනුමාන අදාළ වේ:

zer@ivy:~ 09:46 $ zsh
No command 'zsh' found, did you mean:
 Command 'lsh' from package 'lsh-client' (main)
 Command 'osh' from package 'omake' (main)
 Command 'ysh' from package 'libyaml-shell-perl' (main)
 Command 'ssh' from package 'openssh-client' (main)
 Command 'vsh' from package 'crystalspace' (main)
 Command 'dsh' from package 'dsh' (main)
 Command 'ash' from package 'ash' (main)
 Command 'msh' from package 'nmh' (main)
 Command 'zssh' from package 'zssh' (main)
 Command 'qsh' from package 'gridengine-client' (main)
 Command 'sh' from package 'dash' (main)
 Command 'bsh' from package 'bsh' (main)
zsh: command not found

කෙසේ වෙතත්, OP ඉල්ලා ඇති පරිදි අත්තනෝමතික ලිපිගොනු සඳහා මෙය ක්‍රියා නොකරයි.
සීවීඑන්

වැඩසටහන හානිකර දේ කර ස්ථාපනය කර ඇත්නම් මෙය ගැටළු සහගත ඉඟියකි. එකතු කිරීම -hහෝ --helpඅවසානයේ දී ටිකක් උපකාරී වේ. -hඅවසානයේ එකතු කිරීම මෙය ප්‍රමාණවත් තරම් ආරක්ෂිත නම් මම නිර්දේශ කරමි, නමුත් එසේ වුවද OP ඉල්ලන දේ සාක්ෂාත් කර ගැනීමට එය හොඳ ක්‍රමයක් නොවේ.
ආචාර්ය බෙකෝ
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.