Linux Notes: x86-64

  1. The information presented here is intended for educational use by qualified computer technologists.
  2. The information presented here is provided free of charge, as-is, with no warranty of any kind.
Edit: 2021-06-04

The Platform Name Game: x86, x86-64, x64, ia64 (what does it all mean?)

  • So you want to play with Linux but don't have a spare Itanium or Alpha Server to mess around with?
  • Download an all-in-one DVD for your PC then just boot it up to check it out.
    • It will come up entirely in memory so will not mess up your hard drives
    • Note: many people install Oracle VM VirtualBox then install one, or more, Linux distributions as a VM instance
  • The target-platform name-game used my most Linux distros
    • x86
      • amd86 is used for any x86 chips from any company supporting 64-bit extensions
        • gets the prefix amd because AMD was the first company to introduce 64-bit extensions to x86
      • i686 is used for any x86 chips from any company (starting after Pentium) not supporting 64-bit extensions (a.k.a. 32-bit only)
        • gets the prefix i because Intel was the first company to introduce 686
      • i586 is used for any Pentium-class x86 chips
        • some distros put Pentium-class chips in their i686 packages
      • i486 is used for any x86 chips before Pentium
      • x32 means pure 32-bit on x86
      • x64 means pure 64-bit on x86-64
    • Itanium (this is Intel's original 64-bit CPU)
      • i64 and ia64 both mean Itanium which will only work on an Itanium or Itanium2 platform

Installing CentOS-5 on an HP ProLiant DL360-g5 (gen 5 CPU)

date: 2016.09.xx

  • hardware:
    • HP ProLiant DL360-G5 (manufactured in 2007)
    • 4 GB of memory; P400i on-board RAID controller
  • My only reason for doing this was to test the claim that shutdown problems associated with large XtraDB (which masquerade as InnoDB) tables in MariaDB-5 were fixed in MariaDB-10
  • I tried installing CentOS-7 but it would not recognize the RAID controller (no hard discs found)
  • I tried installing CentOS-6 but got the same error (no hard discs found)
  • I was able to install CentOS-5.11 in under an hour (caveat: support for CentOS-5 will be dropped in March-2017)
  • This older distro came with MySQL-5 but replacing it with MariaDB-10 was trivial after reading the instructions associated with repository configuration tool found here
  • test results:
    • MariaDB-10 can be shutdown quickly without corrupting the InnoDB tables
    • I do not like how CentOS-5 handles virtual memory.
      • After the system has been up for a few days with the console left logged in for ~ 24-hours, starting a GUI app (Terminal or Firefox) can take several minutes

Installing CentOS-6 on an HP ProLiant DL380-g6 (gen 6 CPU)

date: 2016.10.xx

  • hardware
    • HP ProLiant DL380-G6 (manufactured in 2010)
    • 8 GB of memory; P400i on-board RAID controller
  • I was able to install CentOS-6 with ease so I suspect CentOS-7 (which I am using at home) would work here as well
  • test results:
    • MariaDB-10 can be shutdown quickly without corrupting the InnoDB tables
    • I do not like how CentOS-6 handles virtual memory.
      • After the system has been up for a few days with the console left logged in for ~ 24-hours, starting a GUI app (Terminal or Firefox) can take a minute
      • This system is a little better than CentOS-5 on DL360 described above but not much better (could this improvement be due to twice as much physical memory? Perhaps)

date: 2017.01.xx

  • I replaced CentOS-6 with CentOS-7 which was a huge improvement

Installing CentOS-7 on an HP ProLiant ML370-g6 (gen 6 CPU)

date: 2016.12.xx

  • hardware:
    • HP ProLiant ML370-G6 (manufactured in 2011)
    • 64 GB of memory; P410i on-board RAID controller
    • 24 SAS disks (we are only using 2)
    • 16 NICs (we are only using 1)
  • I was able to install CentOS-7 in under an hour
  • This newer distro came with MariaDB-10.1.19
  • test results:
    • MariaDB-10 can be shutdown quickly without corrupting the InnoDB tables (it is also VERY fast)
    • This OS does not seem to be exhibiting memory problems seen with CentOS-5; is the OS doing a better job managing virtual memory or is the due to the fact that this platform has 16 times more memory? (Not Sure)

Installing CentOS-7 on an HP ProLiant DL385-g7 (gen 7 CPU)

date: 2017.02.xx

  • hardware:
    • HP ProLiant DL385-G7 (manufactured in 2011)
    • 2 CPUs for a total of 16 cores
    • 12 GB of memory
    • P410i onboard RAID controller
  • So I just noticed that this machine does not have an optical drive. I have lots of optical media laying around the work bench so it would be nice to have access to a DVD drive on a USB cable but today is a holiday in Canada which means that all the retail stores are closed. So I played around with lots of freeware meant to write ISO images to a USB stick. Here are two noteworthy solutions:
    1. RUFUS (Reliable USB Formatting Utility)
        • I used the "dd" option in RUFUS to copy the DVD ISO of CentOS-7 to an 8-gig USB stick which the ProLiant happily booted.
    2. Win32 Disk Imager
    Caveat: during hardware power-up these systems will run ROM-based diagnostics which may clobber your USB stick (why did they never include a write-protect mechanism?) so I recommend this procedure:
      • startup the server with all writable USB devices out (USB sticks as well as portable writable DVDs)
      • during the next 5-mnutes you might be presented with a small menu of startup options (only lasts 5-seconds) asking you to hit key one-or-all of: F9, F10 or F11. Hit the F11 (boot menu)
      • let everything continue until you see the boot menu.
      • now connect your USB boot device
      • now type the menu number associated with either: one-time boot of thumb drive or one-time- boot of DVD-CD
  • Since this machine will be a hot-spare for the other two (see above), I think it will make a great LVM learning tool

Installing CentOS-7 on an HP ProLiant DL385p gen8 (gen 8 CPU)

hpe-sff-disk-old
Older SFF Adapter
hpe-sff-disk-new
Newer SFF Adapter

date: 2018.07.xx

  • hardware:
    • HP ProLiant DL385-Gen8 (manufactured in 2014)
    • 2 CPUs for a total of 24 cores
    • 128 GB of memory (this is not a typo; how many people remember when PCs maxed out at 4 MB (or even 640 KB)?
    • P420i on-board RAID controller (with a 1 GB buffer)
    • I ended up acquiring seven of these during a server refresh (they were slated to be crushed)
    • This machine supports RAID-60 which I knew nothing about. Here is a short blurb from the way-back machine
    • iLO configuration from RHEL/CentOS moved here
    • Caveat: beginning with gen8 servers, HPE has changed the caddy (plastic mounting adapter) used to insert the SAS disk drive into its slot.
      • These SFF (small form factor) caddies are not interchangeable since the new style is a little shorter.
      • Why shorter? A wiring cable (not seen in this photo) connects an array of multicolored LEDs (seen as green in this photo) to the back end of the socket.
      • Note that the drive electronics has not changed so a small Phillips screwdriver is all you need to swap a drive between the old and new adapters.
  • This machine does not have an optical drive so I used a portable USB-based DVD
  • If you employ a USB stick then be sure to read this USB caveat 22-lines up
  • MariaDB served up by CentOS-7 is scary-fast

Downloading Older Distros

This side of Y2K we all live in the world of cloud computing where network costs are cheap and storage costs almost free. So I do not know why many Linux distros are deleting their old offerings which could be used for anything from computer museums to just supporting older (but not yet dead) hardware.

openSUSE CentOS Ubuntu Debian Various

Moving to from CentOS to openSUSE in 2021

Comparing the product offerings of two founding Linux distros

  • If having an American company (IBM) pulling the plug on an opensource project (CentOS) reminds you of how Oracle did the same to MySQL after Oracle acquired SUN, then you might consider jumping to a European product.
  • SuSE was founded in 1992 Germany
  • Red Hat was founded in 1993 USA
  • SuSE 8.2 was followed by SUSE 9.0 in October of 2003 (notice the shift to all upper case?)
  • The following table shows the way that things look after IBM's Dec-2020 announcement (ie. things could change)
    Company Product Notes
    SUSE SLE (Suse Linux Enterprise) requires a license to install and an active license to update and/or upgrade
      openSUSE Leap is a once-a-year release (employing major-minor version numbers) and is virtually identical to SLE
      openSUSE Tumbleweed is a constantly rolling release targeted at students and developers
    Red Hat RHEL (Red Hat Enterprise Linux) requires a license to install and an active license to update and/or upgrade
      CentOS-7 is a major-minor point release done in lockstep with RHEL which always appears first
    this will continue until 2024-06-24 when this version will no longer be supported
      CentOS-8 is a major-minor point release done in lockstep with RHEL which always appears first
    this will continue until 2021-12-31 when this version will shift to a constantly rolling release
  • I just did a trial install of Rocky Linux 8.3 and it looks exactly like CentOS-8.3

Trial install on an HP-Compaq-6000 (old desktop PC)

  • 2020-12-23
  • One of our employees retired in October and his old desktop (an HP-Compaq 6000) has been sitting at an A:\> prompt for ~ 8 weeks (his last act was to run a floppy-based program which erased Windows-7 from his hard drive)
  • So I downloaded a copy of  openSUSE Leap 15.2  onto a different PC then burned it to a DVD (a lot of older PC's cannot boot from a USB thumb drive so this step might not be the best way for YOU to proceed)
  • The DVD booted without a hitch and I had openSUSE installed and running in just under an hour (this hardware is SLOW...)
  • While there are a lot of similarities between the CentOS installer and the openSUSE installer there were also so notable differences:
  • After the Christmas break I will experiment with installing openSUSE onto a server (HP DL385p_gen8)

Trial install on an HP DL385p_gen8 (server)

  • 2021-01-08
  • this install was fast while uneventful and only required 45-minutes
  • Step-1 (install Linux):
    01) boot from DVD
    02) waited for menu then selected "Installation"
    03) waited for "Initializing Network Configuration" on the left-hand menu
    04) waited for "Welcome: License Agreement" then clicked NEXT
    05) waited for "Online Repositories" then clicked NO for "YaST2: activate online repositories?"
    06) waited for "System Role" then picked the "Server" recipe
    07) waited for "Suggested Partitioning" then accepted the recommendations, clicked LVM, did not encrypt the hard disk
    08) waited for "Installation Settings"
    09) clicked "Software" then also enabled, "console tools", "software management", all 3 "Gnome offerings"
    10) clicked "Default Target" then selected "Graphical"
    11) clicked "Install" then waited ~ 45 minutes"  
    
  • Step-2 (install zypper):
    neil@localhost:~> sudo rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
    neil@localhost:~> sudo zypper --gpg-auto-import-keys refresh
    Repository 'Non-OSS Repository' is up to date.
    Repository 'Main Repository' is up to date.
    Repository 'Main Update Repository' is up to date.
    Repository 'Update Repository (Non-Oss)' is up to date.
    All repositories have been refreshed.
  • Step-3 (install mariadb):
    neil@localhost:~> sudo zypper addrepo --gpgcheck --refresh https://yum.mariadb.org/10.5/opensuse/15/x86_64 mariadb
    neil@localhost:~> sudo zypper install MariaDB-server MariaDB-client
    Retrieving repository 'mariadb' metadata ...................................................................[done]
    Building repository 'mariadb' cache ........................................................................[done]
    Loading repository data...
    Reading installed packages...
    Resolving package dependencies...
    
    The following 6 NEW packages are going to be installed:
    galera-4 libboost_program_options1_66_0 MariaDB-client MariaDB-common MariaDB-server socat
    
    6 new packages to install.
    Overall download size: 36.9 MiB. Already cached: 0 B. After the operation, additional 208.5 MiB will be used.
    Continue? [y/n/v/...? shows all options] (y): y
    Retrieving package MariaDB-common-10.5.8-1.x86_64                            (1/6),  77.8 KiB (298.0 KiB unpacked)
    Retrieving: MariaDB-common-10.5.8-1.x86_64.rpm .............................................................[done]
    Retrieving package MariaDB-client-10.5.8-1.x86_64                            (2/6),   7.0 MiB ( 64.2 MiB unpacked)
    Retrieving: MariaDB-client-10.5.8-1.x86_64.rpm ...............................................[done (558.7 KiB/s)]
    Retrieving package libboost_program_options1_66_0-1.66.0-lp152.6.2.x86_64    (3/6), 139.3 KiB (500.6 KiB unpacked)
    Retrieving: libboost_program_options1_66_0-1.66.0-lp152.6.2.x86_64.rpm .......................[done (498.1 KiB/s)]
    Retrieving package socat-1.7.3.2-lp152.5.6.x86_64                            (4/6), 224.8 KiB (710.5 KiB unpacked)
    Retrieving: socat-1.7.3.2-lp152.5.6.x86_64.rpm ...............................................[done (461.1 KiB/s)]
    Retrieving package galera-4-26.4.6-1.sle15.x86_64                            (5/6),  14.4 MiB ( 14.4 MiB unpacked)
    Retrieving: galera-4-26.4.6-1.sle15.x86_64.rpm ...............................................[done (619.1 KiB/s)]
    Retrieving package MariaDB-server-10.5.8-1.x86_64                            (6/6),  15.1 MiB (128.3 MiB unpacked)
    Retrieving: MariaDB-server-10.5.8-1.x86_64.rpm ...............................................[done (622.0 KiB/s)]
    
    Checking for file conflicts: ...............................................................................[done]
    (1/6) Installing: MariaDB-common-10.5.8-1.x86_64 ...........................................................[done]
    (2/6) Installing: MariaDB-client-10.5.8-1.x86_64 ...........................................................[done]
    (3/6) Installing: libboost_program_options1_66_0-1.66.0-lp152.6.2.x86_64 ...................................[done]
    (4/6) Installing: socat-1.7.3.2-lp152.5.6.x86_64 ...........................................................[done]
    (5/6) Installing: galera-4-26.4.6-1.sle15.x86_64 ...........................................................[done]
    (6/6) Installing: MariaDB-server-10.5.8-1.x86_64 ...........................................................[done]
    Additional rpm output:
    
    Two all-privilege accounts were created.
    One is root@localhost, it has no password, but you need to
    be system 'root' user to connect. Use, for example, sudo mysql
    The second is mysql@localhost, it has no password either, but
    you need to be the system 'mysql' user to connect.
    After connecting you can set the password, if you would need to be
    able to connect as any of these users with a password and without sudo
    
    See the MariaDB Knowledgebase at https://mariadb.com/kb or the
    MySQL manual for more instructions.
    
    Please report any problems at https://mariadb.org/jira
    
    The latest information about MariaDB is available at https://mariadb.org/.
    You can find additional information about the MySQL part at:
    https://dev.mysql.com
    Consider joining MariaDB's strong and vibrant community:
    https://mariadb.org/get-involved/
    
    Executing %posttrans scripts ...............................................................................[done]
  • Step-4 (refresh zypper - just good form):
    neil@localhost:~> sudo zypper refresh
    [sudo] password for root: 
    Repository 'mariadb' is up to date.
    Repository 'Non-OSS Repository' is up to date.
    Repository 'Main Repository' is up to date.
    Repository 'Main Update Repository' is up to date.
    Repository 'Update Repository (Non-Oss)' is up to date.
    All repositories have been refreshed.
  • Step-5 (install apache2):
    neil@localhost:~> sudo zypper install --no-confirm  apache2
    Loading repository data...
    Reading installed packages...
    Resolving package dependencies...
    
    The following 6 NEW packages are going to be installed:
    apache2 apache2-mod_dnssd apache2-prefork apache2-utils libbrotlienc1 system-user-wwwrun
    
    6 new packages to install.
    Overall download size: 1.9 MiB. Already cached: 0 B. After the operation, additional 5.7 MiB will be used.
    Continue? [y/n/v/...? shows all options] (y): y
    Retrieving package system-user-wwwrun-20170617-lp152.5.114.noarch            (1/6),  10.3 KiB (   96   B unpacked)
    Retrieving: system-user-wwwrun-20170617-lp152.5.114.noarch.rpm ................................[done (14.9 KiB/s)]
    Retrieving package apache2-utils-2.4.43-lp152.2.9.1.x86_64                   (2/6), 151.8 KiB (203.0 KiB unpacked)
    Retrieving: apache2-utils-2.4.43-lp152.2.9.1.x86_64.rpm ......................................[done (334.4 KiB/s)]
    Retrieving package libbrotlienc1-1.0.9-lp152.2.3.1.x86_64                    (3/6), 213.1 KiB (581.9 KiB unpacked)
    Retrieving: libbrotlienc1-1.0.9-lp152.2.3.1.x86_64.rpm .......................................[done (499.3 KiB/s)]
    Retrieving package apache2-2.4.43-lp152.2.9.1.x86_64                         (4/6),   1.3 MiB (  4.3 MiB unpacked)
    Retrieving: apache2-2.4.43-lp152.2.9.1.x86_64.rpm ............................................[done (602.2 KiB/s)]
    Retrieving package apache2-prefork-2.4.43-lp152.2.9.1.x86_64                 (5/6), 306.6 KiB (629.2 KiB unpacked)
    Retrieving: apache2-prefork-2.4.43-lp152.2.9.1.x86_64.rpm ....................................[done (562.8 KiB/s)]
    Retrieving package apache2-mod_dnssd-0.6-lp152.4.6.x86_64                    (6/6),  22.6 KiB ( 42.3 KiB unpacked)
    Retrieving: apache2-mod_dnssd-0.6-lp152.4.6.x86_64.rpm .....................................................[done]
    
    Checking for file conflicts: ...............................................................................[done]
    (1/6) Installing: system-user-wwwrun-20170617-lp152.5.114.noarch ...........................................[done]
    Additional rpm output:
    groupadd -r www
    useradd -r -s /sbin/nologin -c "WWW daemon apache" -U -d /var/lib/wwwrun wwwrun
    usermod -a -G www wwwrun
    
    (2/6) Installing: apache2-utils-2.4.43-lp152.2.9.1.x86_64 ..................................................[done]
    (3/6) Installing: libbrotlienc1-1.0.9-lp152.2.3.1.x86_64 ...................................................[done]
    (4/6) Installing: apache2-2.4.43-lp152.2.9.1.x86_64 ........................................................[done]
    Additional rpm output:
    Updating /etc/sysconfig/apache2 ...
    
    (5/6) Installing: apache2-prefork-2.4.43-lp152.2.9.1.x86_64 ................................................[done]
    (6/6) Installing: apache2-mod_dnssd-0.6-lp152.4.6.x86_64 ...................................................[done]
    Executing %posttrans scripts ...............................................................................[done]
    neil@localhost:~> 
    

openSUSE update-1 (a few observations)

  • date: 2021-01-17
  • issued bash command: sudo zypper update
    which announced:
    • will install: 21
    • will remove: 1
    • will update: 440
  • from: "Kernel 5.3-18 LP.152.19"
    • GUI session was on TTY2 (connect there by typing the 3-finger command: CTRL-ATLF2
    • TTY1 to TTY6 are TEXT_based
    • a subset of DMESG can be seen on TTY10 (I wonder what this is)
  • to: "Kernel 5.3-18 LP.152.60"
    • the GUI session moved to terminal TTY8 (I wonder what this is about)

openSUSE update-2 (another observation)

  • date: 2021-01-22
  • playing with network settings from GNOME but key getting a message about the network manager service not running so i did this:
    systemctl disable Wicked
    systemctl enable NetworkManager
    reboot

Back to Home
Neil Rieck
Waterloo, Ontario, Canada.