<മുമ്പത്തെ | ഉള്ളടക്കം | അടുത്തത്>
8.3.2. പാക്കേജ് മുൻഗണനകൾ കൈകാര്യം ചെയ്യുക
APT യുടെ കോൺഫിഗറേഷനിലെ ഏറ്റവും പ്രധാനപ്പെട്ട വശങ്ങളിലൊന്ന് ഓരോ പാക്കേജ് ഉറവിടവുമായും ബന്ധപ്പെട്ട മുൻഗണനകളുടെ മാനേജ്മെന്റാണ്. ഉദാഹരണത്തിന്, Debian Unstable അല്ലെങ്കിൽ Debian Experimental-ൽ നിന്നുള്ള ഒന്നോ രണ്ടോ പുതിയ പാക്കേജുകൾ ഉപയോഗിച്ച് നിങ്ങളുടെ കാലി റോളിംഗ് സിസ്റ്റം വിപുലീകരിക്കാൻ നിങ്ങൾ ആഗ്രഹിച്ചേക്കാം. ലഭ്യമായ ഓരോ പാക്കേജിനും മുൻഗണന നൽകുന്നത് സാധ്യമാണ് (ഒരേ പാക്കേജിന് അതിന്റെ പതിപ്പ് അല്ലെങ്കിൽ അത് നൽകുന്ന വിതരണത്തെ ആശ്രയിച്ച് നിരവധി മുൻഗണനകൾ ഉണ്ടായിരിക്കാം). ഈ മുൻഗണനകൾ APT-യുടെ സ്വഭാവത്തെ സ്വാധീനിക്കും: ഓരോ പാക്കേജിനും, അത് എല്ലായ്പ്പോഴും ഏറ്റവും ഉയർന്ന മുൻഗണനയുള്ള പതിപ്പ് തിരഞ്ഞെടുക്കും (ഈ പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്തതിനേക്കാൾ പഴയതും അതിന്റെ മുൻഗണന 1000-ൽ കുറവും ആണെങ്കിൽ ഒഴികെ).
APT നിരവധി ഡിഫോൾട്ട് മുൻഗണനകൾ നിർവചിക്കുന്നു. ഇൻസ്റ്റാൾ ചെയ്ത ഓരോ പാക്കേജ് പതിപ്പിനും 100 മുൻഗണനയുണ്ട്. ഇൻസ്റ്റാൾ ചെയ്യാത്ത പതിപ്പിന് ഡിഫോൾട്ടായി 500 ന്റെ മുൻഗണനയുണ്ട്, എന്നാൽ ഇത് ടാർഗെറ്റ് റിലീസിന്റെ ഭാഗമാണെങ്കിൽ (നിർവചിച്ചിരിക്കുന്നത്) 990-ലേക്ക് ഉയരാം -t കമാൻഡ്-ലൈൻ ഓപ്ഷൻ അല്ലെങ്കിൽ APT::Default-Release കോൺഫിഗറേഷൻ ഡയറക്റ്റീവ്).
എന്നതിൽ എൻട്രികൾ ചേർത്തുകൊണ്ട് നിങ്ങൾക്ക് മുൻഗണനകൾ പരിഷ്കരിക്കാനാകും / etc / apt / മുൻഗണനകൾ ബാധിച്ച പാക്കേജുകളുടെ പേരുകൾ, അവയുടെ പതിപ്പ്, അവയുടെ ഉത്ഭവം, അവയുടെ പുതിയ മുൻഗണന എന്നിവ സഹിതം ഫയൽ ചെയ്യുക.
APT ഒരിക്കലും ഒരു പാക്കേജിന്റെ പഴയ പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യില്ല (അതായത്, നിലവിൽ ഇൻസ്റ്റാൾ ചെയ്തിരിക്കുന്ന പാക്കേജിനേക്കാൾ പതിപ്പ് നമ്പർ കുറവുള്ള ഒരു പാക്കേജ്) അതിന്റെ മുൻഗണന 1000-ൽ കൂടുതലാണെങ്കിൽ അല്ലാതെ. APT എല്ലായ്പ്പോഴും ഇത് പിന്തുടരുന്ന ഉയർന്ന മുൻഗണനയുള്ള പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യും. പരിമിതി. രണ്ട് പാക്കേജുകൾക്ക് ഒരേ മുൻഗണനയുണ്ടെങ്കിൽ, ഏറ്റവും പുതിയത് (ഏറ്റവും കൂടുതൽ പതിപ്പ് നമ്പർ) APT ഇൻസ്റ്റാൾ ചെയ്യുന്നു. ഒരേ പതിപ്പിന്റെ രണ്ട് പാക്കേജുകൾക്ക് ഒരേ മുൻഗണനയുണ്ടെങ്കിലും അവയുടെ ഉള്ളടക്കത്തിൽ വ്യത്യാസമുണ്ടെങ്കിൽ, ഇൻസ്റ്റാൾ ചെയ്യാത്ത പതിപ്പ് APT ഇൻസ്റ്റാൾ ചെയ്യുന്നു (സാധാരണയായി ആവശ്യമുള്ള, റിവിഷൻ നമ്പറിന്റെ വർദ്ധനവ് ഇല്ലാതെ ഒരു പാക്കേജ് അപ്ഡേറ്റിന്റെ കാര്യം ഉൾക്കൊള്ളുന്നതിനാണ് ഈ നിയമം സൃഷ്ടിച്ചിരിക്കുന്നത്. ).
കൂടുതൽ വ്യക്തമായ പദങ്ങളിൽ, മുൻഗണന 0-ൽ കുറവുള്ള ഒരു പാക്കേജ് ഒരിക്കലും ഇൻസ്റ്റാൾ ചെയ്യപ്പെടില്ല. 0 നും 100 നും ഇടയിലുള്ള മുൻഗണനയുള്ള ഒരു പാക്കേജ് പാക്കേജിന്റെ മറ്റൊരു പതിപ്പും ഇതിനകം ഇൻസ്റ്റാൾ ചെയ്തിട്ടില്ലെങ്കിൽ മാത്രമേ ഇൻസ്റ്റാൾ ചെയ്യപ്പെടുകയുള്ളൂ. 100 നും 500 നും ഇടയിലുള്ള മുൻഗണനയോടെ, പാക്കേജ് ഉണ്ടെങ്കിൽ മാത്രമേ ഇൻസ്റ്റാൾ ചെയ്യുകയുള്ളൂ
മറ്റൊരു പുതിയ പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്തതോ മറ്റൊരു വിതരണത്തിൽ ലഭ്യമല്ല. 501-നും 990-നും ഇടയിലുള്ള മുൻഗണനാ പാക്കേജ്, ടാർഗെറ്റ് വിതരണത്തിൽ പുതിയ പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്തിട്ടില്ലെങ്കിലോ ലഭ്യമല്ലെങ്കിലോ മാത്രമേ ഇൻസ്റ്റാൾ ചെയ്യപ്പെടുകയുള്ളൂ. 990 നും 1000 നും ഇടയിലുള്ള മുൻഗണനയോടെ, ഇൻസ്റ്റാൾ ചെയ്ത പതിപ്പ് പുതിയതാണെങ്കിൽ ഒഴികെ പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യപ്പെടും. പഴയ പതിപ്പിലേക്ക് ഡൗൺഗ്രേഡ് ചെയ്യാൻ APT-യെ നിർബന്ധിച്ചാലും, 1000-ൽ കൂടുതൽ മുൻഗണന നൽകുന്നത് പാക്കേജിന്റെ ഇൻസ്റ്റാളേഷനിലേക്ക് നയിക്കും.
APT പരിശോധിക്കുമ്പോൾ / etc / apt / മുൻഗണനകൾ, ഇത് ആദ്യം ഏറ്റവും നിർദ്ദിഷ്ട എൻട്രികൾ (പലപ്പോഴും ബന്ധപ്പെട്ട പാക്കേജ് വ്യക്തമാക്കുന്നവ), പിന്നീട് കൂടുതൽ പൊതുവായവ (ഉദാഹരണത്തിന് ഒരു വിതരണത്തിന്റെ എല്ലാ പാക്കേജുകളും ഉൾപ്പെടെ) കണക്കിലെടുക്കുന്നു. നിരവധി ജനറിക് എൻട്രികൾ നിലവിലുണ്ടെങ്കിൽ, ആദ്യ പൊരുത്തം ഉപയോഗിക്കുന്നു. ലഭ്യമായ തിരഞ്ഞെടുക്കൽ മാനദണ്ഡങ്ങളിൽ പാക്കേജിന്റെ പേരും അത് നൽകുന്ന ഉറവിടവും ഉൾപ്പെടുന്നു. എയിൽ അടങ്ങിയിരിക്കുന്ന വിവരങ്ങളാൽ ഓരോ പാക്കേജ് ഉറവിടവും തിരിച്ചറിയപ്പെടുന്നു റിലീസ് എന്നതിനൊപ്പം APT ഡൗൺലോഡ് ചെയ്യുന്ന ഫയൽ പാക്കേജുകൾ ഫയലുകൾ. ഈ ഫയലുകൾ ഉത്ഭവം വ്യക്തമാക്കുന്നു, സാധാരണയായി കാലിയുടെ ഔദ്യോഗിക മിററുകളിൽ നിന്നുള്ള പാക്കേജുകൾക്ക് “കാളി” എന്നും ഡെബിയന്റെ ഔദ്യോഗിക മിററുകളിൽ നിന്നുള്ള പാക്കേജുകൾക്ക് “ഡെബിയൻ” എന്നും, എന്നാൽ ഉത്ഭവം മൂന്നാം കക്ഷി ശേഖരണങ്ങൾക്കായി ഒരു വ്യക്തിയുടെ അല്ലെങ്കിൽ ഒരു സ്ഥാപനത്തിന്റെ പേരായിരിക്കാം. ദി റിലീസ് ഫയൽ അതിന്റെ പതിപ്പിനൊപ്പം വിതരണത്തിന്റെ പേരും നൽകുന്നു. ഈ മെക്കാനിസത്തിന്റെ ചില റിയലിസ്റ്റിക് കേസ് പഠനങ്ങളിലൂടെ നമുക്ക് അതിന്റെ വാക്യഘടന നോക്കാം.
മുൻഗണന നിങ്ങൾ കാലി-ബ്ലീഡിംഗ്-എഡ്ജ് അല്ലെങ്കിൽ ഡെബിയൻ പരീക്ഷണം ലിസ്റ്റ് ചെയ്തിട്ടുണ്ടെങ്കിൽ sources.list ഫയൽ, കാളി-ബ്ലീഡിംഗ്-എഡ്ജ് ഒപ്പം അവയുടെ ഡിഫോൾട്ട് APT ആയതിനാൽ അനുബന്ധ പാക്കേജുകൾ മിക്കവാറും ഒരിക്കലും ഇൻസ്റ്റാൾ ചെയ്യപ്പെടില്ല ഡെബിയൻ പരീക്ഷണാത്മക മുൻഗണന 1. ഇത് തീർച്ചയായും ഒരു പ്രത്യേക കേസാണ്, അബദ്ധവശാൽ ബ്ലീഡിംഗ് എഡ്ജ് പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിൽ നിന്ന് ഉപയോക്താക്കളെ തടയാൻ രൂപകൽപ്പന ചെയ്തിട്ടുള്ളതാണ്. പാക്കേജുകൾ ടൈപ്പുചെയ്യുന്നതിലൂടെ മാത്രമേ ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയൂ ആപ്റ്റിറ്റ്യൂഡ് ഇൻസ്റ്റാൾ ചെയ്യുക പാക്കേജ്/kali-bleeding-edge, തീർച്ചയായും നിങ്ങൾ ജീവിതത്തിന്റെ അപകടസാധ്യതകളെക്കുറിച്ചും സാധ്യതയുള്ള തലവേദനകളെക്കുറിച്ചും ബോധവാന്മാരാണെന്ന് കരുതുക. ഇത് ഇപ്പോഴും സാധ്യമാണ് (എന്നിരുന്നാലും അല്ല ശുപാർശ ചെയ്തത്) മറ്റ് വിതരണങ്ങളെപ്പോലെ കാലി-ബ്ലീഡിംഗ്-എഡ്ജ്/പരീക്ഷണാത്മക പാക്കേജുകൾ 500-ന്റെ മുൻഗണന നൽകി പരിഗണിക്കുക. / etc / apt / മുൻഗണനകൾ: | |
പാക്കേജ്: * പിൻ: റിലീസ് a=kali-bleeding-edge പിൻ-മുൻഗണന: 500 | |
നിങ്ങൾക്ക് കാലിയിൽ നിന്നുള്ള പാക്കേജുകൾ മാത്രമേ ഉപയോഗിക്കാൻ താൽപ്പര്യമുള്ളൂ എന്നും വ്യക്തമായി ആവശ്യപ്പെടുമ്പോൾ മാത്രമേ ഡെബിയൻ പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യാവൂ എന്നും കരുതുക. എന്നതിൽ നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന എൻട്രികൾ എഴുതാം /etc/apt/ മുൻഗണനകൾ ഫയൽ (അല്ലെങ്കിൽ ഏതെങ്കിലും ഫയലിൽ /etc/apt/preferences.d/):
പാക്കേജ്: *
പിൻ: റിലീസ് o=കാലി പിൻ-മുൻഗണന: 900
പാക്കേജ്: *
പിൻ: റിലീസ് ഒ=ഡെബിയൻ പിൻ-മുൻഗണന: -10
പാക്കേജ്: *
പിൻ: റിലീസ് o=കാലി പിൻ-മുൻഗണന: 900
പാക്കേജ്: *
പിൻ: റിലീസ് ഒ=ഡെബിയൻ പിൻ-മുൻഗണന: -10
കഴിഞ്ഞ രണ്ട് ഉദാഹരണങ്ങളിൽ, നിങ്ങൾ കണ്ടു a=kali-bleeding-edge, അത് തിരഞ്ഞെടുത്ത വിതരണത്തിന്റെ പേര് നിർവചിക്കുന്നു ഒപ്പം ഒ=കാളി ഒപ്പം o=ഡെബിയൻ, ഇത് യഥാക്രമം കാലി, ഡെബിയൻ എന്നിവയുടെ ഉത്ഭവ പാക്കേജുകളിലേക്ക് പരിമിതപ്പെടുത്തുന്നു.
Perl-ന്റെ 5.22 പതിപ്പിനെ ആശ്രയിച്ച് നിങ്ങൾക്ക് നിരവധി പ്രാദേശിക പ്രോഗ്രാമുകളുള്ള ഒരു സെർവർ ഉണ്ടെന്നും അപ്ഗ്രേഡുകൾ അതിന്റെ മറ്റൊരു പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യുന്നില്ലെന്ന് ഉറപ്പാക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെന്നും ഇപ്പോൾ ഊഹിക്കാം. നിങ്ങൾക്ക് ഈ എൻട്രി ഉപയോഗിക്കാം:
പാക്കേജ്: perl
പിൻ: പതിപ്പ് 5.22* പിൻ-മുൻഗണന: 1001
പാക്കേജ്: perl
പിൻ: പതിപ്പ് 5.22* പിൻ-മുൻഗണന: 1001
ഈ കോൺഫിഗറേഷൻ ഫയലിന്റെ റഫറൻസ് ഡോക്യുമെന്റേഷൻ മാനുവൽ പേജിൽ ലഭ്യമാണ് apt_pref erences(5), നിങ്ങൾക്ക് പ്രദർശിപ്പിക്കാൻ കഴിയുന്നത് മനുഷ്യൻ apt_preferences.
അഭിപ്രായങ്ങൾ ചേർക്കുന്നു അഭിപ്രായങ്ങൾക്ക് ഔദ്യോഗിക വാക്യഘടനയില്ല / etc / apt / മുൻഗണനകൾ, എന്നാൽ ചില വാചകങ്ങൾ / etc / apt / മുൻഗണനകൾ ഒന്നോ അതിലധികമോ മുമ്പായി വിവരണങ്ങൾ നൽകാം വിശദീകരണം ഓരോ എൻട്രിയിലും ഉള്ള ഫീൽഡുകൾ: | |
വിശദീകരണം: പാക്കേജ് xserver-xorg-video-intel നൽകിയ വിശദീകരണം: പരീക്ഷണാത്മകമായി സുരക്ഷിതമായി ഉപയോഗിക്കാം പാക്കേജ്: xserver-xorg-video-intel പിൻ: റിലീസ് a=പരീക്ഷണാത്മകം പിൻ-മുൻഗണന: 500 | |