rocky_linux_9_migration_notes
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
rocky_linux_9_migration_notes [2022/06/26 17:45] – juckins | rocky_linux_9_migration_notes [2025/06/29 08:24] (current) – juckins | ||
---|---|---|---|
Line 1: | Line 1: | ||
==== Rocky Linux 9 Migration Notes ==== | ==== Rocky Linux 9 Migration Notes ==== | ||
- | //Below are CentOS 8 migration notes, so update/ | + | __2025-06-25__ |
+ | Upgrade to Rocky Linux 9.6 initially failed on test VM with package errors. | ||
- | Check: | + | Trying these steps on a test VM: |
- | Consult [[virtualbox_for_centos_stream_notes|Virtual Box running CentOS8 Stream]] notes if dnf updates are slow | + | |
- | + | dnf update | |
- | + | dnf install vlc totem | |
- | Fix php for phpmyadmin: | + | |
- | + | ||
- | dnf install php-gd php-ldap php-mysqlnd php-pecl-mcrypt php-pecl-zip | + | |
| | ||
- | Also comment out the cookie validity setting in config.inc.php | + | Then reinstall VBox Guest Additions. |
- | Secure | + | Got message ''/ |
- | Fix php.ini from known good config | + | Rebooted and then tried installing kernel-debug-devel but same problem. |
- | Configure $HOME/.vimrc as the following: | + | Upgraded host computer' |
- | autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o | + | Now can upgrade from 9.5 to 9.6 on VirtualBox VMs but Xfce logs in for 1 second, a black screens appears, and then the sytem logs out. |
- | | + | < |
- | # python3 -m pip install dictor | + | |
- | # python3 -m pip install wheel | + | |
- | # python3 -m pip install httplib2 | + | |
- | # python3 -m pip install PyMySQL | + | |
- | PyMySQL v0.9.3 has been upgraded | + | For my non-virtual, |
- | Other fixes: | + | '' |
- | * Disable WiFi LAN connection with ''# | + | Using a [[https://www.google.com/search? |
- | * [[https://unix.stackexchange.com/questions/ | + | |
- | For migrating a system from a different OS, take note of this info first: | + | # lsmod | grep kvm |
- | | + | |
- | * Compare hidden files to see if anything changed between OSs | + | Verified the following output: |
- | * This allows for easy migrating of data for users' $HOME directories | + | |
- | * ensure all scripts make their own log file directory | + | |
- | * $log_dir = "/ | + | |
- | * mkdir (" | + | |
- | * should crons write to /tmp and then have a daily script that checks cron logs for errors? | + | |
+ | kvm_intel | ||
+ | kvm 1404928 | ||
- | ---- | + | Disabled the KVM temporarily: |
+ | # modprobe -r kvm_intel | ||
+ | | ||
+ | Verified nothing was returned with the following command: | ||
+ | | ||
+ | # lsmod | grep kvm | ||
+ | | ||
+ | Was then able to start up the VMs using the VirtualBox GUI successfully. | ||
- | * Get inventory of users | + | Need to reboot machine and see if fix stays. |
- | * /// | + | |
- | * Check that PHP is working correctly, localhost/ | + | |
- | * check httpd.conf | + | |
- | * /// | + | |
- | * Clear all history from Firefox before testing phpmyadmin | + | |
- | * Check httpd logs for any errors, such as mod security | + | |
- | * uninstall [[https:// | + | |
- | * [[https:// | + | |
- | * '' | + | |
- | * '' | + | |
- | * <color # | + | |
- | * [[https:// | + | |
- | * [[https:// | + | |
- | * [[https:// | + | |
- | * [[https:// | + | |
- | * Note that the restore of mysql does not use " | + | |
- | * [[https:// | + | |
- | * [[http:// | + | |
- | * They can be exported from phpmyadmin (but don't include root) | + | |
- | * export MySQL databases with mysqldump | + | |
- | * [[https:// | + | |
- | * [[http:// | + | |
- | * list of installed perl modules | + | |
- | * grep all .pl script and look for the "use " calls | + | |
- | * Copy the following | + | |
- | * users' $HOME | + | |
- | * crons should be in each user's $HOME/ | + | |
- | * various processing log files from /var/tmp/ | + | |
- | * / | + | |
- | * / | + | |
- | * / | + | |
- | * Samba users, passwords, shares (for security cameras) | + | |
- | * / | + | |
- | * / | + | |
- | * / | + | |
- | * Make sure service is running and will start at boot. | + | |
- | * Check output with: testparm -v | + | |
- | * nxclient-3.5.0-7.x86_64.rpm | + | |
- | * nxnode-3.5.0-9.x86_64.rpm | + | |
- | * nxserver-3.5.0-11.x86_64.rpm | + | |
- | * < | + | |
- | * verify services that should be installed/ | + | |
- | * Note firewall rules | + | |
- | * [[https:// | + | |
- | <color # | + | Create a file named kvm-blacklist.conf in / |
- | Must-Have functionality: | + | Add the blacklist entry: Add the appropriate line to the file: |
- | * Apache, MySQL, PHP, Perl | + | |
- | * [[https:// | + | |
- | * edit / | + | |
- | * Check logs: # cat / | + | |
- | * Ensure service is running: | + | |
- | * ''# | + | |
- | * ''# | + | |
- | * [[gmail_as_a_relay_on_linux|Set up Gmail Relay and test]] | + | |
- | * Disable SELinux | + | |
- | * VSFTP (for security cameras) | + | |
- | * [[http:// | + | |
- | * [[https:// | + | |
- | * As root: setsebool -P allow_ftpd_full_access on | + | |
- | * As root: systemctl restart vsftpd | + | |
- | * As root: systemctl enable vsftpd | + | |
- | * Samba | + | |
- | * [[samba_file_sharing|Samba File Sharing]] | + | |
- | * < | + | |
- | * Virtual Box | + | |
- | * Working crontabs for each user | + | |
- | * [[python_notes|Install Python 3]] | + | |
- | Customize MATE Desktop displays | + | blacklist kvm_intel |
- | | + | |
- | * Under Fonts tab, set all to size 8 | + | -or- |
- | | + | |
- | | + | |
- | * [[http:// | + | |
- | * Set up gnome-terminal preferences | + | |
- | * General: Font Monospace 9, No terminal bell | + | |
- | * Colors: Use colors from system theme | + | |
- | * Or, black background with text color #d3d7cf (from GNOME Dark in RHEL9) | + | |
- | * Scrolling: unlimited | + | |
- | * Edit > Keyboard Shortcuts > Reset and Clear > F2 | + | |
- | * Disable Vim auto-indent following [[vim_tips|Vi and Vim Tips]] | + | |
- | Change setting on screensaver | + | Reboot to apply the changes. |
- | * System > Preferences > Look and Feel > Screensaver | + | |
- | System Monitor (needs mate-system-monitor and mate-applets RPMs): | + | __2024-11-25__ |
- | * Right-click top panel > Add to Panel | + | |
- | * In the "Find an item to add to the panel:" | + | |
- | * Moving display of current CPU usage should appear | + | |
- | ---- | + | Old news, but LibreOffice no longer supported by RedHat. |
- | Database work: | + | Unpack the tar and verify you see individual RPMs. |
- | * Backup /etc/my.cnf | + | |
- | * Add this line under [mysqld] | + | |
- | * default-storage-engine=MyISAM | + | |
- | * Add other database users with phpMyAdmin GUI | + | |
- | * set username | + | |
- | * set password | + | |
- | * select "Grant all privileges on wildcard name (username\_%)." | + | |
- | * Dump all databases from source server to sql file then import on target server | + | |
- | * mysqldump -u USER -p' | + | |
- | * Ensure database on target server exists; create if necessary | + | |
- | * Tables migrated should be MyISAM | + | |
- | * Default database engine is InnoDB as<color # | + | |
- | * [[https:// | + | |
- | * The exact number of rows of InnoDB tables cannot be shown | + | |
- | * Need to monitor / | + | |
- | * <color # | + | |
- | * [[http:// | + | |
- | * [[http:// | + | |
- | * [[https:// | + | |
- | * Alternatively, | + | |
- | * systemctl start mariadb.service | + | |
- | * systemctl enable mariadb.service | + | |
- | * mysql DATABASE -h localhost -u USER -p' | + | |
- | Setup ddclient: | + | dnf localinstall |
- | | + | |
- | | + | You can then start an application like this: |
- | * Use / | + | |
- | Setup duckdns: | + | libreoffice24.8 --calc test.csv |
- | | + | |
+ | Make a .bashrc alias for shortcuts. | ||
- | Setup ydns: | + | __2024-11-21__ |
- | * crontab is < | + | |
- | Firewall notes: | + | Upgrade |
- | * Using firewall-config | + | |
- | rsync / | + | Had to run the following due to package problems (which will break ' |
- | * test pages for proper display | + | |
- | * check soft link to phpmy is correct and current | + | |
- | Restore and test crons | + | dnf remove compat-ffmpeg4 ffmpeg-libs vlc |
- | | + | |
+ | dnf install vlc gstreamer1-plugin-openh264 | ||
+ | |||
+ | Then security cameras running vlc and totem worked correctly. | ||
- | Backup / | + | __2024-05-13__ |
- | Restore /etc/hosts from previous machine as needed | + | Upgrade to Rocky Linux 9.4: |
- | Then, edit the network connections and make sure the " | + | Had to run '' |
- | Download sample | + | After the upgrade the test Rocky Linux 9.3 VM would not start X with Xfce. Tried a bunch of things like reinstalling all RPMs, getting list of matching RPMs against another VM that upgraded OK but X still would not start. |
- | * [[http://juckins.net/ | + | |
- | * [[http:// | + | |
- | * [[http:// | + | |
- | [[http:// | + | Discovered that if you select the " |
- | Install X2Go | + | Very odd but that seems to be the workaround for this upgrade. |
- | Restore Thunderbird profile | + | ---- |
- | Restore Firefox profile | + | NOTE 1: The fresh install instructions below were tested on Rocky Linux 9.3 |
- | Restore VirtualBox | + | NOTE 2: Upgrading Rocky Linux 9.2 to 9.3 in late November 2023 resulted in ImageMagick errors. |
- | Test ASMAD for processing end-to-end | + | NOTE 3: To migrate from Rocky Linux 8.x to 9, [[https:// |
- | SSH issues | + | //The notes below have been combined from [[centos_8_migration_notes|CentOS 8 Migration Notes]] and [[centos_7_migration_notes|CentOS 7 Migration Notes]].//\\ |
- | * Cannot ssh to yourself passwordlessly with default | + | //It is based on the **[[https://www.xfce.org/|Xfce Desktop Environment]]**. MATE is available, see notes at bottom of the page.// |
- | * Comment out the following line, like this: | + | |
- | * # | + | |
- | * This allows you to NX into the CentOS7 machine | + | |
- | * Update to openssh seems to require RSA keys now and authorized_keys file instead of DSA keys and authorized_keys2 file | + | |
- | * Set " | + | |
- | * < | + | |
- | * < | + | |
- | | + | |
- | | + | |
- | | + | |
- | * User accounts | + | |
- | Update GRUB and splash screen | + | __Before Starting__ |
- | * My saved splash images with varying resolutions are in / | + | |
- | * <color # | + | |
- | * cd / | + | |
- | * cp grub grub.YYYYMMDD | + | |
- | * vi grub | + | |
- | * remove "rhgb quiet" from the GRUB_CMDLINE_LINUX call | + | |
- | * add " | + | |
- | * comment out this line: GRUB_TERMINAL_OUTPUT=" | + | |
- | * add this line: GRUB_BACKGROUND="/ | + | |
- | * Ensure it is rw-r-r permissions | + | |
- | * [[http:// | + | |
- | * For VM/ | + | |
- | * For UEFI-based installs, as root: grub2-mkconfig -o / | + | |
- | * More info at [[https:// | + | |
- | * [[https:// | + | |
- | * [[https:// | + | |
- | * [[http:// | + | |
- | * [[https:// | + | |
- | * Tried part about making a special font | + | |
- | * Tried installing all grub2* rpms | + | |
- | * Tried 640x480 small splash image | + | |
- | < | + | * Get inventory of users (see /home) |
- | GRUB_CMDLINE_LINUX_DEFAULT=" | + | * Become familiar with what each one does and the crons they run |
- | GRUB_GFXMODE=1024x768 | + | * Copy the following to external hard drive or other machine for restoration after upgrade |
- | GRUB_GFXPAYLOAD_LINUX=keep | + | * All users $HOME directories |
- | </code> | + | * Ensure crons are in each user's $HOME/ |
+ | * ''/ | ||
+ | * ''/ | ||
+ | * ''/ | ||
+ | * ''/ | ||
+ | * ''/ | ||
- | Set default GRUB entry | + | __Installation__ |
- | * Download [[https:// | + | |
- | If GRUB2 no longer finds other OS to boot (such as Windows 10) use [[https://sourceforge.net/ | + | * Perform a minimal or basic install of Rocky Linux 9 |
+ | * Backup '' | ||
+ | * Run the [[dnf_installer_bash_script_rocky_linux_9|Rocky Linux 9 bash setup script]] to get the usual extras, add-ons and other packages | ||
+ | * Reboot target computer and login. | ||
- | Install | + | * Since Xfce will be installed by running the bash script noted above, you can copy in pre-existing configs from another machine that already has Xfce installed. |
+ | * Log out of the target machine | ||
+ | * Copy files in '' | ||
+ | * '' | ||
+ | * Copy files in '' | ||
+ | * '' | ||
+ | * Reboot the target machine | ||
+ | * See {{: | ||
+ | * [[https:// | ||
- | Set up local printer(s) | + | * Disable screensaver and power management |
- | * Note that Brother has notes for the HL2170W at https:// | + | * If necessary, disable WiFi LAN connection as root: '' |
- | * RPM #1: brhl2170wlpr-2.0.2-1.i386.rpm | + | * If necessary, keep WiFi LAN enabled but install Intel WiFi drivers if needed |
- | * RPM #2: cupswrapperHL2170W-2.0.2-1.i386.rpm | + | * '' |
- | * Use ' | + | * Reboot |
- | * [[https://access.redhat.com/ | + | * http://linuxwireless.sipsolutions.net/en/users/Drivers/iwlwifi/ |
- | * dnf install cups | + | * https://www.intel.com/content/www/us/ |
- | * service cups start | + | * [[https://unix.stackexchange.com/questions/152691/how-to-disable-beep-sound-in-linux-centos-7-command-line|Disable bell]] |
- | * systemctl enable cups | + | |
- | * Use System > Administration > Print Settings | + | |
- | * Add printer with Network JetDirect by IP address | + | |
- | * Default printer driver works OK | + | |
- | * Or use web browser: | + | |
- | * # dnf install httpd | + | |
- | * # / | + | |
- | * # dnf install system-config-firewall | + | |
- | * # firewall-config (or System > Administration > Firewall) | + | |
- | * Allow http and https as rules | + | |
- | * Sometimes the firewall-config command will hang if trying to run via an SSH connection to a remote machine | + | |
- | * To add a port manually follow [[http://stackoverflow.com/questions/24729024/centos-7-open-firewall-port]] | + | |
- | * To close a port manually follow | + | |
- | * # systemctl enable httpd | + | |
- | * Go to http:// | + | |
- | * Go to Administration tab | + | |
- | * Enter credentials for user root | + | |
- | * Add printer with prompts | + | |
- | Firewall Notes | + | * Create necessary user accounts |
+ | * '' | ||
+ | * Restore user's $HOME directories | ||
+ | * Copy over non-hidden files/ | ||
+ | * You can use rsync with the option to [[rsync_ignore_hidden_files|ignore hidden files]] | ||
+ | * Then rsync other hidden directories in each user's $HOME one-by-one, taking only what is needed | ||
- | * Adding an allowed port at the command line (from [[http://stackoverflow.com/questions/ | + | * [[https://www.linuxteck.com/how-to-install-apache-on-rocky-linux/ |
- | * Use this command to find your active zone(s): | + | * Copy/merge in ''/ |
+ | * Test password-restricted pages | ||
+ | * Run through [[php8.2_on_rocky_linux_8|PHP 8.2 on Rocky Linux 9]] | ||
+ | * Copy/merge in a known good ''/ | ||
+ | * Ensure a php file loads correctly (localhost, 192.168.X.XX, | ||
+ | * Check httpd logs for any errors, such as mod security | ||
+ | * Uninstall [[https:// | ||
- | < | + | * Firewall configuration |
- | firewall-cmd --get-active-zones | + | * [[https:// |
- | </code> | + | * [[https:// |
+ | * Can also try '' | ||
+ | * [[https:// | ||
+ | * '' | ||
+ | * '' | ||
+ | * [[https:// | ||
+ | * Edit ''/ | ||
+ | * Review ''/ | ||
+ | * As root, ensure service is running: | ||
+ | * '' | ||
+ | * '' | ||
- | * It will say either public, dmz, or something else. You should only apply to the zones required. | + | * MySQL / MariaDB Database - Installation |
+ | * [[https:// | ||
+ | * How to [[https:// | ||
- | * If you want to add a port such as 8080 to your public zone: | + | * Install [[https:// |
+ | * Merge in config.inc.php from previous machine | ||
+ | * Clear local browser history, then test | ||
+ | * To create the phpmyadmin database, use the " | ||
+ | * To move over users, export from phpMyAdmin on old machine and cut-past into the Import function on new machine. | ||
+ | * If problematic, | ||
- | < | + | * MySQL / MariaDB Database - Migrate databases |
- | firewall-cmd --zone=public | + | * [[http:// |
- | </code> | + | * They can be exported from phpMyAdmin (but don't include root) |
+ | * [[https:// | ||
+ | * Note that the restore of mysql does not use '' | ||
+ | * [[https:// | ||
+ | * Export MySQL databases with mysqldump | ||
+ | * [[https:// | ||
+ | * [[http:// | ||
+ | * When done, check format of tables (MyISAM vs InnoDB vs Aria) | ||
+ | * To change database engine, see [[https:// | ||
- | * Then remember to reload | + | * [[python_notes|Run through Python/PIP configuration]] |
+ | * For the non-root user needing it, run '' | ||
- | < | + | * Install miniconda3 (see [[python_virtual_environments|Python Virtual Environments]]) |
- | firewall-cmd --reload | + | |
- | </ | + | |
- | Managing runlevel settings | + | * [[gmail_as_a_relay_on_linux|Set up Gmail Relay and test]] |
- | + | * Set up [[samba_file_sharing|Samba]] users, passwords, shares (for security cameras) | |
- | * Switch | + | * Credentials are stored in my secure password file |
- | < | + | * command will be: '' |
- | # systemctl | + | * Make sure service is running and will start at boot. |
- | </code> | + | * Check output with: '' |
- | + | * The security cameras will need to reformat their nas disk locations to store video files | |
- | * Initiate runlevel 5 by default: | + | * VSFTP (for security cameras) |
+ | * [[https:// | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | * As root: '' | ||
+ | * As root: '' | ||
+ | * As root: '' | ||
+ | * Setup ddclient: | ||
+ | * https:// | ||
+ | * '' | ||
+ | * Use ''/ | ||
+ | * Setup duckdns updater cron | ||
+ | * Setup ydns updater cron | ||
+ | * Rsync over ''/ | ||
+ | * Test pages for proper display | ||
+ | * Check httpd logs for errors | ||
+ | * Restore and test crons for each user | ||
+ | * At the top of each user's cron file, add something like '' | ||
+ | * Alternatively, | ||
+ | * Check that each cron job runs and the specified log directory exists | ||
+ | * Modify ''/ | ||
+ | * Check network connections and make sure active connection comes up at boot time | ||
+ | * Restore Thunderbird profile | ||
+ | * [[https:// | ||
+ | * Migrate/ | ||
+ | * I had to create and self-sign MOK (Machine Owner Key) certificates. | ||
+ | * My Google Doc "Linux Replacement 2024" has some crude notes | ||
+ | * Restore Remmina profiles | ||
+ | * '' | ||
+ | * Test ASMAD for processing end-to-end | ||
+ | * All perl scripts | ||
+ | * Required modules should be included in the [[dnf_installer_bash_script_rocky_linux_9|dnf installer bash script]] | ||
+ | * All python scripts | ||
+ | * Check my amtrak_status " | ||
+ | * Install [[clamav_antivirus|ClamAV]] | ||
+ | * Install local printer | ||
+ | * Use http:// | ||
+ | * If you don't use root credentials, | ||
+ | * Then restart cups '' | ||
+ | * Use AppSocket/ | ||
+ | * Choose driver '' | ||
+ | * Use option settings to make it the default printer and use 600x600 DPI quality | ||
+ | * Test using enscript filename.txt (old a2ps command) | ||
+ | * **When using evince to print out PDFs, it seems you need to choose "Print to " | ||
+ | | ||
+ | * Note that Libre Office can print to the printer name " | ||
+ | * See if printer is default | ||
+ | * '' | ||
+ | * Local RPMs | ||
+ | * perl-Math-Round | ||
+ | * Slack | ||
+ | * sunwait | ||
+ | * Test with ''/ | ||
+ | * Check any remaining ''/ | ||
+ | * For example, [[https:// | ||
+ | * If Ookla becomes a graphical output, might need to consider '' | ||
+ | * Mount /disk2 (see [[adding_a_second_hard_drive]]) | ||
+ | * Install [[https:// | ||
+ | * See repo at https:// | ||
+ | * Use this instead of [[https:// | ||
+ | * v1.16 works with '' | ||
+ | * Binary is / | ||
+ | * Add CPU graph and Weather Info to panel | ||
+ | * Packages are xfce4-cpugraph-plugin and xfce4-weather-plugin which are part of the bash install script noted near top of this page | ||
+ | * Right-click top panel > Add New Items | ||
+ | * Add CPU Graph, Weather Info | ||
+ | * Adjust top and bottom panels | ||
+ | * Reverse positions | ||
+ | * Make top panel 24px with icons at fixed 22px | ||
+ | * Bottom panel 24px with icons at fixed 16px | ||
+ | * Top panel has these buttons: | ||
+ | * Show desktop, separator, calculator, xterm, gedit, chrome, chrome beta, firefox, app finder, file manager, screenshot, password safe, keepassxc, shortcut to security cams, VirtualBox, Remmina, XfreeRDP | ||
+ | * Stop the Keyring popup GUI when starting Chrome (see [[https:// | ||
+ | * '' | ||
+ | * Log out and log back in or reboot | ||
- | < | + | __Post Installation__ |
- | # systemctl set-default graphical.target | + | |
- | </ | + | |
- | * Switch | + | * In /root/bin on old/new machines, see final_sync_for_new_server.txt |
- | < | + | * As root, use '' |
- | # systemctl isolate multi-user.target | + | * Cleanup old files in root, my $HOME |
- | </code> | + | * Fix date [[https:// |
+ | * Setting should be in .bashrc | ||
+ | * If you have slow dnf updates, add these 2 lines to '/etc/ | ||
+ | * '' | ||
+ | * '' | ||
- | * Initiate runlevel 3 by default: | + | __Other Notes__ |
- | < | + | MATE is now available. See [[https:// |
- | # systemctl set-default multi-user.target | + | |
- | </code> | + | |
- | * For other run-level info, see [[https:// | + | * Add System Monitor to panel |
+ | * '' | ||
+ | * Right-click top panel > Add to Panel | ||
+ | * In the "Find an item to add to the panel:" | ||
+ | * Moving display of current CPU usage should appear | ||
- | After machine has been running for a few days, don't forget to use " | + | __Known issues__ |
+ | * SHA-1 security signing is not supported on RHEL9 ([[https:// | ||
+ | * / | ||
+ | * Probably not a critical issue since Chrome can be updated via dnf |
rocky_linux_9_migration_notes.1656279925.txt.gz · Last modified: by juckins