added new article : updates (gentoo only atm)
This commit is contained in:
parent
c36cff64db
commit
5d7faa365a
147
content/updates.rst
Normal file
147
content/updates.rst
Normal file
@ -0,0 +1,147 @@
|
||||
updates
|
||||
#######
|
||||
|
||||
:date: 2019-11-08 00:00
|
||||
:modified: 2019-11-08 00:00
|
||||
:tags: server
|
||||
:category: documentation
|
||||
:slug: updates
|
||||
:authors: Ms.Leave-A-Mix
|
||||
:summary: How to update the different parts of the system
|
||||
|
||||
--
|
||||
OS
|
||||
--
|
||||
|
||||
As you may have read it elsewhere, the physical server is running an `Operating
|
||||
System`_ (OS), that I chose at first, when I bought this server. In
|
||||
Freepoteries' case, this OS is named Gentoo_. It's a highly flexible OS, and we
|
||||
can change almost everything on it, including the Kernel_ and its options.
|
||||
|
||||
Saying that Gentoo is running on my server is true, but it's not the only OS
|
||||
that I have to manage when I work on Freepoteries. As the server runs `Virtual
|
||||
Machines`_ (VM), several other OS's can be working along Gentoo.
|
||||
|
||||
In the present guide I will, not only describe the steps of updating a Gentoo
|
||||
machine, but also the other OS's that are on the server.
|
||||
|
||||
---------
|
||||
Frequency
|
||||
---------
|
||||
|
||||
Depending on the quality of the OS you run, and the program that are installed
|
||||
within it, you may update the system more or less frequently.
|
||||
|
||||
For example, for a very critical program, that receives many input by
|
||||
third-parties, it's a good idea to do updates frequently, as often as once per
|
||||
month, to avoid it being hurt by a bug that could damage the entire system.
|
||||
|
||||
|
||||
Another point to keep in mind, is that the choice of the OS is very important :
|
||||
|
||||
Usually, a characteristic of an OS is it's software versioning style, the
|
||||
standard one can be named "`point release`_" and the opposite of it, is the
|
||||
`rolling release`_.
|
||||
|
||||
A standard released system is updated regularly for security updates, and it may
|
||||
be an automated task as this don't really changes the way it will work. If there
|
||||
is a major release, more changes are happening, and you will have to follow the
|
||||
whole "upgrade" process to be sure that all your system works the same way after
|
||||
that upgrade.
|
||||
|
||||
A system that uses the rolling releases can be updated at almost any time, and
|
||||
you must be careful about breaking changes that are notified in the changelog of
|
||||
the last update. Usually, this kind of OS's have a good communication, and have
|
||||
a mailing list about important announcements. In the case of Gentoo, it's even
|
||||
included in the updating tool.
|
||||
|
||||
In Freepoteries' case, there are the two kinds of OS's release style :
|
||||
|
||||
Rolling :
|
||||
- Gentoo_
|
||||
|
||||
Standard :
|
||||
- AlpineLinux_
|
||||
- Devuan_
|
||||
|
||||
----
|
||||
News
|
||||
----
|
||||
|
||||
You may follow the latest news from the several OS's you run, here are the links
|
||||
for :
|
||||
|
||||
- `AlpineLinux News`_
|
||||
- `Devuan announces mailing list`_
|
||||
- `Gentoo news`_
|
||||
- `Gentoo security advisories`_
|
||||
|
||||
------
|
||||
Gentoo
|
||||
------
|
||||
|
||||
This how-to is written following Gentoo's wiki's guide : `Update Gentoo`_.
|
||||
Please refer to it for any need of details.
|
||||
|
||||
Begin to unmount any filesystem that is not useful.
|
||||
|
||||
:code:`umount /tmp/*`
|
||||
|
||||
Also, switch off rsnapshot, the backuping tool, as you don't want it to get a
|
||||
snapshot during the upgrade. Comment each line of it in the crontab.
|
||||
|
||||
:code:`crontab -e`
|
||||
|
||||
You may also turn off the virtual machines that are not very useful, such as
|
||||
developer ones, to save RAM and CPU (don't shutdown import services as mail and
|
||||
DBs!!)
|
||||
|
||||
:code:`virsh destroy <domain_name>`
|
||||
|
||||
The use the following command to synchronize repositories.
|
||||
|
||||
:code:`emerge --sync`
|
||||
|
||||
And then just do the update.
|
||||
|
||||
:code:`emerge --update --deep @world`
|
||||
|
||||
When everything is finished, you can use the "etc-update" tool to check if any
|
||||
critical change has to be made to configuration files of your now updated programs.
|
||||
|
||||
:code:`etc-update`
|
||||
|
||||
Now you can clean the unused dependencies, if the update did not cause any
|
||||
trouble.
|
||||
|
||||
:code:`emerge --depclean`
|
||||
|
||||
:code:`revdeb-rebuild`
|
||||
|
||||
You can now check with this tool, provided by the Gentoo portage package, if
|
||||
your system is still concerned by the known exploits.
|
||||
|
||||
:code:`glsa-check -t affected`
|
||||
|
||||
If everything went well, and that you carefully read every notice at the end of
|
||||
the commands execution : you should be good and ready for now!
|
||||
|
||||
When there's a major Gentoo release, this document explains how new Gentoo
|
||||
releases affect existing installs : `Upgrade Gentoo`_.
|
||||
|
||||
|
||||
.. _Operating System: https://en.wikipedia.org/wiki/Operating_system
|
||||
.. _Gentoo: https://gentoo.org/
|
||||
.. _Gentoo news: https://gentoo.org/news/
|
||||
.. _Gentoo security advisories: https://security.gentoo.org/glsa
|
||||
.. _Update Gentoo: https://wiki.gentoo.org/wiki/Handbook:X86/Full/Working#Updating_the_system
|
||||
.. _Upgrade Gentoo: https://wiki.gentoo.org/wiki/Upgrading_Gentoo/
|
||||
.. _Devuan: https://devuan.org/
|
||||
.. _Devuan announces mailing list: https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/devuan-announce
|
||||
.. _AlpineLinux: https://alpinelinux.org/
|
||||
.. _AlpineLinux News: https://alpinelinux.org/atom.xml
|
||||
.. _Kernel: https://en.wikipedia.org/wiki/Kernel_(operating_system)
|
||||
.. _Virtual Machines: https://en.wikipedia.org/wiki/Virtual_machine
|
||||
.. _rolling release: https://en.wikipedia.org/wiki/Rolling_release
|
||||
.. _point release: https://en.wikipedia.org/wiki/Point_release
|
||||
|
||||
Loading…
Reference in New Issue
Block a user