Table of Contents
Upgrading to TLD Linux 2016.01
Note: only upgrade from TLD Linux 2015.01 is supported. If you are running TLD Linux 2013.01 please use this howto. If you are running TLD Linux 2010.01 or PLD Titanium you will need to reinstall from scratch.
Please backup at least entire system configuration before proceeding! If possible backup entire host or take snapshot of its current state if its virtual machine.
First of all update your poldek indexes:
Now get rid of all *.rpmnew files from /etc to be sure you will have newest default configurations for all packages for which old one cannot be adjusted or updated.
Lets perform acutal system upgrade:
poldek -v --nohold --upgrade-dist
If you'll run into some unresolved dependencies you may try following things:
1. Remove problematic package. If it hauls half of your system use
rpm -e --nodeps pakcage
2. Do forced upgrade of problematic package via poldek command line:
> upgrade --force package
Add –nodeps if necessary.
When your upgrade-dist will finish you must check/modify/recreate your system configuration. It is strongly recommended to go through all *.rpmnew files in your /etc and modify them to fit your needs. Using old configuration files may cause problems for some packages or they may not run at all.
After double or even triple checking everything you are ready to reboot
Notes for some packages
PostgreSQL database version has changed from 9.4 to 9.5. As usual when major version changes it is strongly recommended to do upgrade using dump/restore method. Before upgrade dump all contents of your databases and copy them to some safe location. You can dump everything to single sql file with this command run locally on your server:
pg_dumpall -U postgres -W > sql_full_backup.sql
or dump just globals with:
pg_dumpall -g -U postgres -W > sql_globals.sql
and then each database separately with:
pg_dump -b -U postgres -W databaseX > sql_databaseX.sql
After system upgrade please move away your old database data:
mv /var/lib/pgsql /var/lib/pgsql.bak
Initialize clean PostgreSQL 9.5 database structure
service postgresql init
Follow on screen instructions to set database passwords. Later go to /var/lib/pgsql/postgresql.conf and edit database configuration to fit your needs. Restore your database contents with something like this (if you dumped everything to single file):
psql -U postgres -W < sql_full_backup.sql 1>sql_restore_log.txt 2>&1
or with something like this (if you dumped globals and each database separately):
psql -U postgres -W < sql_globals.sql 1>sql_globals_restore_log.txt 2>&1 psql -U postgres -W < sql_databaseX.sql 1>sql_databaseX_restore_log.txt 2>&1 psql -U postgres -W < sql_databaseY.sql 1>sql_databaseY_restore_log.txt 2>&1 ...
When finished check sql*_restore_log.txt files for any errors, warnings or other abnormal things. Some structures or functions may have failed to restore due to changes in PostgreSQL made between version 9.3 and 9.4. If you'll hit such problem your only solution is to manually recreate failed structures/functions later or make modification to SQL statements directly in dump files and retry restore from the beginning.
Default PHP version has been changed from 5.6 to 7.0. Be sure to update your PHP applications and/or web pages. Check link below for more details about possible incompatibility issues:
There is also PHP 5.6, 5.5 and 5.4 available as php56, php55 and php54. You may choose it over 7.0 or run in parallel, ie. as CGI or FCGI.