විශේෂිත පැකේජයක් යාවත්කාලීන කිරීම වළක්වා ගන්නේ කෙසේද?


403

නිසා දෝෂ # 693758 මම වැළැක්වීම සඳහා කැමතියි apt-get upgradeඇති "libgtk2.0-0" පැකේජය යාවත්කාලීන කිරීම හා යාවත්කාලීන කළමනාකරු.

මෙය සාක්ෂාත් කරගත හැක්කේ කෙසේද?


hhlp: නමුත් මෙම ප්‍රශ්නය අසන්නේ කිසි විටෙකත් ස්ථාපනය නොකළ පැකේජයක් ගැන ය.
නේතන් ඔස්මාන්

1
E ජෝර්ජ් එඩිසන් - පැකේජය රඳවා තබා ගැනීමද ඇත, එමඟින් ඔබට පැකේජය යාවත්කාලීන නොකිරීමට ඉඩ සලසයි. එබැවින් පැකේජයක් ළඟ තබා ගැනීම යන්නෙන් අදහස් කරන්නේ ඔබ වර්තමාන අනුවාදය කුමක් වුවත් තබා ගැනීමට පැකේජ කළමනාකරුට පවසන බවයි. යාවත්කාලීන කිරීමෙන් පසු දැනට ක්‍රියාත්මක වන වැඩසටහනක වඩාත් මෑත අනුවාදය කැඩී ගියහොත් මෙය ප්‍රයෝජනවත් වේ. (ඔබට කිසි විටෙකත් ස්ථාපනය කර නොමැති පැකේජයක් තබා ගත නොහැක. මගේ ප්‍රශ්නය ද එයම බව බලන්න) .... මම එය දැන්ම පරීක්‍ෂා disable packages from the auto-update
කළෙමි

Answers:


597

රඳවා තබා ගැනීම

පැකේජ රඳවා තබා ගැනීමේ ක්‍රම හතරක් ඇත: dpkg, apt, aptitude හෝ dselect සමඟ.

dpkg

පැකේජයක් අත්හිටුවන්න:

echo "<package-name> hold" | sudo dpkg --set-selections

රඳවා තබා ගැනීම ඉවත් කරන්න:

echo "<package-name> install" | sudo dpkg --set-selections

ඔබේ ඇසුරුම්වල තත්වය පෙන්වන්න:

dpkg --get-selections

තනි පැකේජයක තත්වය පෙන්වන්න:

dpkg --get-selections | grep "<package-name>"

apt

පැකේජයක් තබා ගන්න:

sudo apt-mark hold <package-name>

රඳවා තබා ගැනීම ඉවත් කරන්න:

sudo apt-mark unhold <package-name>

රඳවා ඇති සියලුම පැකේජ පෙන්වන්න:

sudo apt-mark showhold

dselect

Dselect සමග, [S], තිරය තෝරා ඔබට එහි වර්තමාන රාජ්ය හා මාධ්ය පැවැත්වීමට බලාපොරොත්තු වන පැකේජය සොයා ඇතුළු =හෝ H. [S] තෝරාගත් තිරයෙන් පිට වූ වහාම වෙනස්කම් ක්‍රියාත්මක වේ.


පහත දැක්වෙන ප්‍රවේශයන් සීමිත වන්නේ පැකේජයක් අගුලු දැමීම / රඳවා තබා ගැනීම යෝග්‍යතාව හෝ උපාගම තුළ තබා ගැනීම apt-get / apt වලට බලපාන්නේ නැත.

යෝග්‍යතාවය

පැකේජයක් තබා ගන්න:

sudo aptitude hold <package-name>

රඳවා තබා ගැනීම ඉවත් කරන්න:

sudo aptitude unhold <package-name>

Synaptic Package Manager සමඟ අගුළු දැමීම

Go to Synaptic පැකේජ කළමණාකරු (පද්ධතිය> පරිපාලන> Synaptic package manager).

සෙවුම් බොත්තම ක්ලික් කර පැකේජයේ නම ටයිප් කරන්න.

ඔබ පැකේජය සොයාගත් විට, එය තෝරා පැකේජ මෙනුව වෙත ගොස් අගුළු අනුවාදය තෝරන්න .

උපාගමික මෙනුව

එම පැකේජය දැන් යාවත්කාලීන කළමණාකරු තුළ නොපෙන්වන අතර යාවත්කාලීන නොවනු ඇත.


5
පැකේජයක් ස්ථාපනය කිරීම වැළැක්වීමටද මෙය ක්‍රියා කරයි. ස්ථාපනය කරන විට devscripts, ඇසුරුම් කරන ලද විශාල ප්‍රමාණයක් නිර්දේශිත පැකේජ ලෙස ඇද ගනු ලැබේ. මට තැපැල් සේවාදායකයක් (පෝස්ට්ෆික්ස්) අවශ්‍ය නොවන බැවින්, ධාවනය echo postfix hold | sudo dpkg --set-selectionsවීමට පෙර ධාවනය කිරීමෙන් එය ස්ථාපනය කිරීම අක්‍රිය කළ හැකිය sudo apt-get install devscripts. මෙම රඳවා ගැනීමේ ක්‍රියාව පවතින්නේ මෙම ස්ථාපනය සඳහා පමණි, ස්ථාපනයෙන් පසුව තේරීම් නැවත සකසනු ලැබේ.
ලෙකන්ස්ටයින්

4
පෙන්වා දීම වටී, සමහර විට නීතිමය විසඳුමක් නොමැති තත්වයක් නිර්මාණය කිරීමෙන් පැකේජයේ නවීකරණ හා පැච් කඩාවැටීම මඟින් යැපීමකට ගණනය කළ හැකිය. පැකේජයේ foo ට ලිබාර් මත == <හෝ <= යැපීමක් තිබේ නම්, apt විසින් ලිබාර් මෙන්ම foo යාවත්කාලීන කිරීම ප්‍රතික්ෂේප කරනු ඇත. කාලයාගේ ඇවෑමෙන්, වැදගත් ආරක්ෂක යාවත්කාල කිරීම් ඇතුළුව යාවත්කාලීන කිරීම් විශාල ප්‍රමාණයක් අවහිර කිරීම සඳහා මෙම කඳුරැල්ල පරායත්තතා වර්ධනය විය හැකිය. ඔබට එය රඳවා තබා ඉවත් කර යාවත්කාලීන කිරීමට ඉඩ දිය යුතුය, නැතහොත් මෙය සිදුවුවහොත් එහි පරායත්තතාවයේ නවතම අනුවාදයන්ට එරෙහිව ඔබ සතුව ඇති පැකේජ නැවත ගොඩනඟා ගත යුතුය.
ස්ටෙෆනි

2
සටහනක් පමණක්: 0.7.25 අනුවාදයට apt-markසහය holdනොදක්වයි (උබුන්ටු ලුසිඩ්)
ජෝරිල්

1
ග්‍රැෆික් ධාවක රඳවා ගැනීමට උත්සාහ කිරීමේදී මෙය විශේෂයෙන් ප්‍රයෝජනවත් වේ. ATI භාවිතා කරන්නන් සඳහා , apt-mark hold fglrx fglrx-amdcccle fglrx-dev && aptitude hold fglrx fglrx-amdcccle fglrx-dev.
earthmeLon

8
වර්තමානයේ උපාගමික හා යෝග්‍යතාව එම වැඩසටහන් තුළ ඇති ඇසුරුම් පමණක් අගුළු දමයි. "පැකේජ වැඩි දියුණු කරන වෙනත් ඕනෑම දෙයක් (කියවන්න: යාවත්කාලීන කළමණාකරු, apt-get, aptitude, ආදිය) මෙය නොසලකා හරියි." සිට මෙම ප්රශ්නය .
holocronweaver

44

"Foo" පැකේජයක් රඳවා තබා ගැනීමට:

echo "foo hold" | dpkg --set-selections

ඔබගේ නඩුවේදී අපි වයින් අත්හිටුවීමට යන්නෙමු:

sudo -i
echo "wine hold" | dpkg --set-selections

රඳවා තබා ගැනීම ඉවත් කිරීමට:

sudo -i
echo "wine install" | dpkg --set-selections

1
පැකේජයක් රඳවාගෙන සිටින අතරතුර, ඔබට නිශ්චිත අනුවාදයක් ස්ථාපනය කළ හැකි බව සලකන්න apt-get install wine=1.2.3. රඳවා තබා ගැනීම apt-get (dist-)upgradeඑය වෙනස් කිරීමෙන් වළක්වයි .
rcoup

crcoup ඔබ සතුව පැරණි අනුවාදයක් රඳවාගෙන තිබේ නම්, ඔබ විස්තර කරන පරිදි රඳවා තබා ගැනීම ඉවත් නොකර නව අනුවාදයකට ඔබ අතින් උත්ශ්‍රේණිගත කරන්නේ නම්, පැරණි අනුවාදය හැඹිලියේ තබාගෙන ඔබට එය වෙත ආපසු යා හැකිද?
cxrodgers

1
ccxrodgers දේශීය හැඹිලිය (සාමාන්‍යයෙන් /var/cache/apt/archives) රඳවා තබාගැනීම් සහ වැඩිදියුණු කිරීම් සහ දේවල් වලින් ස්වාධීන වේ, එබැවින් ඔබ බාගත කළ සියලුම සංස්කරණ ඔබ ධාවනය වන තෙක් පවතිනු ඇතapt-get [auto]clean
rcoup

37

මම එකම දේ සොයමින් සිටි අතර බොහෝ පර්යේෂණ වලින් පසුව මට පෙනී ගියේ පහත සඳහන් වාක්‍ය ඛණ්ඩය භාවිතා කිරීමෙන් ඔබට එක් විශේෂිත අනුවාදයක් තහනම් කළ හැකි නමුත් ඊළඟ යාවත්කාලයට ඉඩ දිය හැකි බවයි:

පැකේජය: compiz-plugins-main
පින්: අනුවාදය 1: 0.9.7.0 ~ bzr19-0ubuntu10.1
පින්-ප්‍රමුඛතාවය: -1

මෙය / etc / apt / preferences ගොනුවට යයි.


9
යාවත්කාලීනයන් දින නියමයක් නොමැතිව වළක්වා ගැනීමට වඩා මෙය හොඳ ක්‍රමයකි
Eero Aaltonen

මෙම ක්‍රමය සමඟ, උබුන්ටු එකක් හෝ ඇමේසන් නිරූපකය වැනි උබුන්ටු 'ඇඩ්වෙයාර්' ඊළඟ නිකුතුව යාවත්කාලීන කිරීම සමඟ නැවත ස්ථාපනය කිරීම වැළැක්වීමට අවස්ථා විශාල බව මම සිතමි ...
ඩැනියෙල් ඇල්ඩර්

20

synapticභාවිතයෙන් ස්ථාපනය කරන්න sudo apt-get install synaptic.

භාවිතයෙන් ධාවනය gksudo synapticකර සෙවුම් කොටුව තුළ ඔබට අගුළු දැමීමට අවශ්‍ය පැකේජය සොයා ගන්න, එනම්:gedit

රූප විස්තරය මෙහි ඇතුළත් කරන්න

පැකේජ මෙනුවෙන් අගුළු අනුවාදය තෝරන්න :

රූප විස්තරය මෙහි ඇතුළත් කරන්න

එපමණක් නොව, අගුලු දැමීමේ අවස්ථාවේ දැනට ස්ථාපනය කර ඇති අනුවාදය යාවත්කාලීන කිරීමේදී පවා ස්ථාපනය කර ඇත.


7
කරුණාකර බලන්න "අගුළු අනුවාදය එය සිතන තරම් දක්ෂ නැත. එය ටින් එකේ කියන දේ කළ යුතුය, අනුවාදය අගුළු දමන්න ... නමුත් එය එය උපාගම තුළ පමණක් අගුලු දමයි. පැකේජ වැඩි දියුණු කරන වෙනත් ඕනෑම දෙයක් (කියවන්න: යාවත්කාලීන කළමණාකරු , apt-get, aptitude, ආදිය) මෙය නොසලකා හරිනු ඇත. මෙය බොහෝ විට දෝෂ සහිත හැසිරීමක් බැවින් මෙය නියමිත වේලාවට නිවැරදි වනු ඇතැයි මම අපේක්ෂා කරමි. askubuntu.com/questions/9607/what-does-lock-version-do වෙතින් . වත්මන් තත්වය කුමක්ද? Synaptic හි යමක් අගුළු දමා තිබේ නම්, වෙනත් පැකේජ කළමනාකරුවන් අගුලට “ගෞරව” කරයිද?

2
vasa1: 0.75.13 අනුවාදය අනුව, තවමත් නැත :( යෝග්‍යතාවයේ එකම ගැටළුව.
syockit

16

පැකේජයක් ස්ථාපනය කිරීමෙන් වලක්වා ගැනීම "පැකේජ රඳවා තබා ගැනීම" ලෙස හැඳින්වෙන අතර එය කිරීම ඉතා සරල ය:

echo package_name hold | dpkg --set-selections

... එහිදී * package_name * යනු ඔබට ස්ථාපනය කිරීමෙන් වළක්වා ගැනීමට අවශ්‍ය පැකේජයේ නමයි.

සටහන: ඉහත විධානය මඟින් මූල වරප්‍රසාද ලබා ගනී. වෙනත් වචන වලින් කිවහොත්, sudo suඑය ක්‍රියාත්මක කිරීමට පෙර ඔබට ටයිප් කිරීමට අවශ්‍ය වනු ඇත .


සම්පූර්ණ මෙම පිළිතුර විය. ඔබට ස්තුතියි.
asoundmove

s/sudo su/sudo -s/g(හෝ sudo -i). ( -iපිවිසුම් කවචයක් ලබා දෙනු ඇත, -sඑසේ නොවේ).
ඩෙරොබට්

7

යම් කාලයක් apt-getප්‍රතිස්ථාපනය කර ඇති aptබැවින්, උදාහරණයක් ලෙස මට ෆයර්ෆොක්ස් 56 ට වැඩි අනුවාදයට යාවත්කාලීන වීම වැළැක්වීමට අවශ්‍යය, මන්ද “ටැබ් කණ්ඩායම්” වැනි ඇඩෝන විශාල ප්‍රමාණයක් නව ෆයර්ෆොක්ස් 57 සමඟ තවදුරටත් ක්‍රියා නොකරයි (බලන්න “වෙබ්එක්ස්ටෙන්ෂන්ස්” යාවත්කාලීන කරන්න ").

එක් විධානයක් සමඟ පැකේජ එකකට වඩා තබාගෙන ආදේශක කාඩ්පත් භාවිතා කළ හැකිය.

ෆයර්ෆොක්ස් යාවත්කාලීන කිරීමෙන් වළක්වන්න

sudo apt-mark hold firefox firefox-locale-*

ඔබ පසුව ඒවා වළක්වා ගැනීමට අදහස් කරන්නේ නම්, එය අණ වනු ඇත:

sudo apt-mark unhold firefox firefox-locale-*


4

විශේෂිත පැකේජයක අනුවාදය ඔබට කැටි කළ හැකි යැයි මම සිතමි. මෙය යෝග්‍ය ලෙස සංශෝධනය කරන්නේ දැයි මට 100% ක් විශ්වාස නැත, නමුත් එය යාවත්කාලීන කළමණාකරු නිශ්චිතවම නවත්වනු ඇත.

පැකේජයක් කැටි කිරීම සඳහා එය උපාගමයෙන් තෝරන්න ඉන්පසු පැකේජ මෙනුව විවෘත කර කැටි අනුවාදය තෝරන්න.

මෙය උපකාරී වේ යැයි සිතමි

සංස්කරණය කරන්න: මෙම ප්‍රශ්නය 16668 හා සමාන තත්වයක් සමඟ කටයුතු කරයි


3

දෝෂ # 75332 , # 158981 සහ # 72806 බලන්න .

සාරාංශය නම්, apt-get / aptitude මට්ටමින් රඳවා තබා ගැනීම dpkg හි රඳවා ගැනීමේ තත්වය අවුලුවන්නේ නැත (විශේෂයෙන් දෝෂ 72806 බලන්න) සහ යාවත්කාලීන කළමණාකරු dpkg වෙතින් තත්වය කියවයි.

වැඩකරන මූල ලෙස ක්‍රියාත්මක වේ: echo "package hold" | dpkg --set-selections


2

ඔබට “විශේෂිත අතිච්ඡාදනය” යෝග්‍යතාවයෙන් භාවිතා කළ හැකිය,

aptitude reinstall ~i oracle-java8-jre:

මෙය එක් වරක් පමණක් භාවිතා කිරීම (අනාගත නැවත ස්ථාපනය සඳහා ගබඩා නොකිරීම), නිශ්චිත පෙරළීමක් තබා ගැනීම, ඔබේ පද්ධතියේ ඇති සියලුම පැකේජ නැවත ස්ථාපනය කිරීම සඳහා වන නමුත් ඔරකල්-ජාවා 8-ජෙරේ නොවේ.

ඔබ තබා ගැනීම විශේෂිත අභිබවා යාමක් භාවිතා කරන්නේ නම්, පැකේජය මොහොතකට තබා ගත හැකි තත්වයක පවතිනු ඇත.

ඔබේ පද්ධතිය කෙසේ හෝ අඩපණ වී ඇතැයි ඔබ සිතන්නේ නම් ඉතා හොඳ දෙයකි.


1

ඔබ Synaptic ස්ථාපනය කර ඇත්නම් ඔබට පැකේජය තෝරාගත හැකි අතර එය යාවත්කාලීන වීම වැළැක්වීම සඳහා පැකේජය -> අගුළු අනුවාදය භාවිතා කරන්න.

ඔබට sudo apt-get install synaptic සමඟ Synaptic ස්ථාපනය කළ හැකිය. මම පෞද්ගලිකව එය මෘදුකාංග මධ්‍යස්ථානයට වඩා ප්‍රයෝජනවත් යැයි සිතමි ... ඉන්පසු නැවතත්, මම තරමක් පැරණි පාසලකි. :)


1

උබුන්ටු 16.04 ට සාපේක්ෂව @ සොගර්ගේ අදහස් වලට විස්තර එකතු කිරීම .

උබුන්ටු 16.04 හි පෙරනිමියෙන් දැනට පවතින / etc / apt / preferences ගොනුවක් නොමැත. ඔබ සතුව දැනට එකක් නොමැති නම්, ලබා දී ඇති පැකේජය සහ එහි යැපීම් යාවත්කාලීන කිරීම් වලින් බැහැර කිරීම සඳහා @soger ඉහත විස්තර කර ඇති පරිදි නව ගොනුවක් සාදා එය ගාථාවකින් පුරවන්න.

පසුව, apt updateදුවන්න, ඔබ GTG. : 0)

උදාහරණයක් ලෙස, මට උබුන්ටු 16.04.5 LTS සේවාදායකයක් කාවැද්දූ ඉන්ටෙල් වීඩියෝ කාඩ්පතක් සහ එන්වීඩියා කාඩ්පතක් ඇත. NVidia කාඩ් පත පමණක් භාවිතා වේ. සේවාදායකය CUDA ධාවක ද භාවිතා කරයි. aptදිගින් දිගටම අවධාරනය කරමින් මට ගැටලුවක් තිබුණා

va-driver-all

(ඉන්ටෙල් ධාවක) සඳහා යාවත්කාලීනයක් අවශ්‍ය වූ නමුත් ස්ථාපනය කළ යුත්තේ කුමන අනුවාදයද යන්න තීරණය කිරීමට එයට නොහැකි විය. මෙය මට තිගැස්මක් ඇති කළ අතර මට කෙසේ හෝ ඉන්ටෙල් ධාවක අවශ්‍ය නොවීය. මම මෙම පා pre ය මනාප ගොනුවට ඇතුලත් කර උචිත, ගැටළුව විසඳුවා.

Package: va-driver-all
Pin: release *
Pin-Priority: -1

0

ඇතැම් විට කෙනෙකුට දැනට ස්ථාපනය කර ඇති සියලුම පැකේජ රඳවා ගැනීමට අවශ්‍ය විය හැකිය . මෙන්න කොහොමද.

පළමුව වත්මන් තත්වය සුරකින්න, එවිට ඔබට අහෝසි කළ හැකිය:

dpkg --get-selections > current_selections.txt

ඉන්පසු, සියලු පැකේජ රඳවා තබා ගැනීමට:

dpkg --get-selections | sed -r "s/\tinstall/hold/" |dpkg --set-selections

අවසාන වශයෙන්, ඔබට පෙර තත්වයට ආපසු යාමට අවශ්‍ය වූ විට:

dpkg --set-selections < current_selections.txt

QA සිට නිෂ්පාදන පරිසරයට සංක්‍රමණය වීම සඳහා VM හෝ Amazon AMI ඡායාරූපයක් නිර්මාණය කිරීමේදී මේ සඳහා එක් භාවිත අවස්ථාවක් විය හැකිය.

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.