Kā CentOS 7 instalēt vai jaunināt uz kodolu 5.0


Lai gan daži cilvēki lieto vārdu Linux, lai reprezentētu operētājsistēmu kopumā, ir svarīgi atzīmēt, ka, stingri ņemot, Linux ir tikai kodols. No otras puses, izplatīšana ir pilnībā funkcionāla sistēma, kas uzbūvēta uz kodola, ar visdažādākajiem lietojumprogrammām un bibliotēkām.

Normālu darbību laikā kodols ir atbildīgs par divu svarīgu uzdevumu veikšanu:

  1. darbojas kā saskarne starp aparatūru un programmatūru, kas darbojas sistēmā.
  2. pēc iespējas efektīvāk pārvaldīt sistēmas resursus.

Lai to izdarītu, kodols sazinās ar aparatūru, izmantojot tajā iebūvētos draiverus vai tos, kurus vēlāk var instalēt kā moduli.

Piemēram, kad lietojumprogramma, kas darbojas jūsu datorā, vēlas izveidot savienojumu ar bezvadu tīklu, tā iesniedz šo pieprasījumu kodolam, kas savukārt izmanto pareizo draiveri, lai izveidotu savienojumu ar tīklu.

Tā kā periodiski parādās jaunas ierīces un tehnoloģijas, ir svarīgi atjaunināt mūsu kodolu, ja mēs vēlamies tos maksimāli izmantot. Turklāt kodola atjaunināšana palīdzēs mums izmantot jaunas kodola funkcijas un pasargāt sevi no ievainojamībām, kas atklātas iepriekšējās versijās.

Vai esat gatavs atjaunināt savu kodolu CentOS 7 vai kādā no to atvasinājumiem, piemēram, RHEL 7 un Fedora? Ja tā, turpiniet lasīt!

1. darbība. Pārbaudiet instalēto kodola versiju

Kad mēs instalējam izplatīšanu, tajā ir iekļauta noteikta Linux kodola versija. Lai parādītu pašreizējo mūsu sistēmā instalēto versiju, mēs varam:

# uname -sr

Šajā attēlā parādīta iepriekš minētās komandas izvade CentOS 7 serverī:

Ja mēs tagad apmeklēsim vietni https://www.kernel.org/, mēs redzēsim, ka jaunākā kodola versija rakstīšanas laikā ir 5.0 (citas versijas ir pieejamas tajā pašā vietnē).

Šī jaunā Kernel 5.0 versija ir ilgtermiņa izlaidums, un tā tiks atbalstīta 6 gadus, agrāk visas Linux kodola versijas tika atbalstītas tikai 2 gadus.

Viena svarīga lieta, kas jāņem vērā, ir kodola versijas dzīves cikls - ja pašreiz izmantotā versija tuvojas savas dzīves beigām, pēc šī datuma vairs netiks sniegti kļūdu labojumi. Plašāku informāciju skatiet kodola izlaidumu lapā.

2. darbība: kodola jaunināšana CentOS 7

Lielākā daļa mūsdienu izplatīšanas nodrošina veidu, kā uzlabot kodolu, izmantojot pakotņu pārvaldības sistēmu, piemēram, yum un oficiāli atbalstītu krātuvi.

Svarīgi: Ja vēlaties palaist pielāgotu kompilētu kodolu, jums vajadzētu izlasīt mūsu rakstu, kurā paskaidrots, kā no avotiem apkopot Linux kodolu CentOS 7.

Tomēr tas veiks tikai jaunāko versiju, kas pieejama izplatīšanas krātuvēs, nevis jaunāko versiju, kas pieejama vietnē https://www.kernel.org/. Diemžēl Red Hat ļauj jaunināt kodolu tikai, izmantojot iepriekšējo opciju.

Atšķirībā no Red Hat, CentOS ļauj izmantot trešās puses krātuvi ELRepo, kas jaunākās versijas jaunināšanu padara par kodolu.

Lai iespējotu ELRepo repozitoriju CentOS 7, rīkojieties šādi:

# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm 

Kad repozitorijs ir iespējots, varat izmantot šo komandu, lai uzskaitītu pieejamos kernel.related pakotnes:

# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * elrepo-kernel: mirror-hk.koddos.net
Available Packages
kernel-lt.x86_64                        4.4.176-1.el7.elrepo        elrepo-kernel
kernel-lt-devel.x86_64                  4.4.176-1.el7.elrepo        elrepo-kernel
kernel-lt-doc.noarch                    4.4.176-1.el7.elrepo        elrepo-kernel
kernel-lt-headers.x86_64                4.4.176-1.el7.elrepo        elrepo-kernel
kernel-lt-tools.x86_64                  4.4.176-1.el7.elrepo        elrepo-kernel
kernel-lt-tools-libs.x86_64             4.4.176-1.el7.elrepo        elrepo-kernel
kernel-lt-tools-libs-devel.x86_64       4.4.176-1.el7.elrepo        elrepo-kernel
kernel-ml.x86_64                        5.0.0-1.el7.elrepo          elrepo-kernel
kernel-ml-devel.x86_64                  5.0.0-1.el7.elrepo          elrepo-kernel
kernel-ml-doc.noarch                    5.0.0-1.el7.elrepo          elrepo-kernel
kernel-ml-headers.x86_64                5.0.0-1.el7.elrepo          elrepo-kernel
kernel-ml-tools.x86_64                  5.0.0-1.el7.elrepo          elrepo-kernel
kernel-ml-tools-libs.x86_64             5.0.0-1.el7.elrepo          elrepo-kernel
kernel-ml-tools-libs-devel.x86_64       5.0.0-1.el7.elrepo          elrepo-kernel
perf.x86_64                             5.0.0-1.el7.elrepo          elrepo-kernel
python-perf.x86_64                      5.0.0-1.el7.elrepo          elrepo-kernel

Pēc tam instalējiet jaunāko stabilo kodolu:

# yum --enablerepo=elrepo-kernel install kernel-ml
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: centos.mirror.net.in
 * elrepo: mirror-hk.koddos.net
 * elrepo-kernel: mirror-hk.koddos.net
 * epel: repos.del.extreme-ix.org
 * extras: centos.mirror.net.in
 * updates: centos.mirror.net.in
Resolving Dependencies
--> Running transaction check
---> Package kernel-ml.x86_64 0:5.0.0-1.el7.elrepo will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================
 Package                Arch        Version                 Repository        Size
====================================================================================
Installing:
 kernel-ml              x86_64      5.0.0-1.el7.elrepo      elrepo-kernel     47 M

Transaction Summary
====================================================================================
Install  1 Package

Total download size: 47 M
Installed size: 215 M
Is this ok [y/d/N]: y
Downloading packages:
kernel-ml-5.0.0-1.el7.elrepo.x86_64.rpm                           |  47 MB  00:01:21     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : kernel-ml-5.0.0-1.el7.elrepo.x86_64                1/1 
  Verifying  : kernel-ml-5.0.0-1.el7.elrepo.x86_64                1/1 

Installed:
  kernel-ml.x86_64 0:5.0.0-1.el7.elrepo                                                                                                                                                                            

Complete!

Visbeidzot, reboot datorā, lai lietotu jaunāko kodolu, un pēc tam izvēlnē atlasiet jaunāko kodolu, kā parādīts.

Piesakieties kā root un palaidiet šo komandu, lai pārbaudītu kodola versiju:

# uname -sr

3. solis: GRUB iestatiet noklusējuma kodola versiju

Lai padarītu tikko instalēto versiju par noklusējuma sāknēšanas opciju, GRUB konfigurācija būs jāmaina šādi:

Atveriet un rediģējiet failu/etc/default/grub un iestatiet GRUB_DEFAULT = 0 . Tas nozīmē, ka pirmais kodols GRUB sākotnējā ekrānā tiks izmantots kā noklusējums.

GRUB_TIMEOUT=5
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

Pēc tam palaidiet šo komandu, lai atjaunotu kodola konfigurāciju.

# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.0.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.0.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-4.20.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.20.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-4.19.11-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.19.11-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-4.19.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.19.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-957.1.3.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.1.3.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-1e2b46dbc0c04b05b592c837c366bb76
Found initrd image: /boot/initramfs-0-rescue-1e2b46dbc0c04b05b592c837c366bb76.img
done

Pārstartējiet un pārbaudiet, vai pēc noklusējuma tagad tiek izmantots jaunākais kodols.

Apsveicam! Jūs esat jauninājis savu kodolu CentOS 7!

Šajā rakstā mēs esam paskaidrojuši, kā viegli uzlabot Linux kodolu savā sistēmā. Ir vēl viena metode, kuru mēs neesam apskatījuši, jo tā ietver kodola apkopošanu no avota, kas būtu pelnījusi veselu grāmatu un nav ieteicama ražošanas sistēmās.

Lai gan tā ir viena no labākajām mācīšanās pieredzēm un ļauj precīzāk konfigurēt kodolu, jūs varat padarīt savu sistēmu nelietojamu un, iespējams, nāksies to pārinstalēt no jauna.

Ja jūs joprojām interesē kodola veidošana kā mācīšanās pieredze, jūs atradīsit norādījumus, kā to izdarīt, lapā Kernel Newbies.

Kā vienmēr, nekautrējieties izmantot zemāk esošo veidlapu, ja jums ir kādi jautājumi vai komentāri par šo rakstu.