====== Linux Hints, Top Tips, and FAQs ======
Here are some of the Linux hints and documentation that seems to be woefully lacking or just mis-leading on the greater wider Internet.
===== Installing HWE kernel =====
This example is for Ubuntu 22.04 but the same principle applies to other releases too.
sudo apt install linux-generic-hwe-22.04
and once you have rebooted into the HWE kernels you can remove the non-HWE bits:
sudo apt remove linux-generic linux-headers-generic linux-image-generic
===== Installing latest PHP on Ubuntu =====
Ubuntu 18.04 ships with php7.2. But software like LibreNMS now specifies a minimum of php7.3 so what do you do?
Easy, install the latest php which, at time of writing, is 7.4.
We need to add Ondre Sury's PPA repository which has the latest php builds. Ondre also recommends installing his PPA of apache2, so we'll add that as well.
philip@host:~$ sudo -s
root@host:~# add-apt-repository ppa:ondrej/php
root@host:~# add-apt-repository ppa:ondrej/apache2
root@host:~# apt update
This will update the database to the latest packages available. And then we simply do:
root@host:~# apt upgrade
which will update php and apache2 to the latest versions plus do all the needful with enabling modules etc etc.
Once installed check that it is working by running ''php -v''. You should see output like this:
philip@host:~$ php -v
PHP 7.4.12 (cli) (built: Oct 31 2020 17:04:09) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.12, Copyright (c), by Zend Technologies
It is also worth checking that ''/etc/php/7.4/apache2/php.ini'' and ''/etc/php/7.4/cli/php.ini'' have the settings you expect. Compare with your previous version of php. Most commonly, the timezone value will need to be set different from UTC0/GMT.
===== Setting iDRAC8 Server info =====
This applies to Dell servers of course. First off, install ''ipmitools'':
''apt-get update; apt-get install ipmitools''
To find out the options available in ''ipmitools'', run:
''ipmitools help''
and there is a manpage available too.
To set the iDRAC8 System Host Name, you want:
''ipmitools mc setsysinfo system_name HOSTNAME''
To set the iDRAC8 Operating System, you want:
''ipmitools mc setsysinfo os_name OSNAME''
To set the iDRAC8 Operating System Version, you want:
''ipmitools mc setsysinfo delloem_os_version OSVERSION''
And that's it - after that, if you refresh the iDRAC8 Server Overview screen you will see the changes you made.
BTW, this is a simplified version of what is written up on [[https://www.dell.com/support/article/en-au/sln311355/setting-idrac-os-information-with-ipmi-on-ubuntu-server?lang=en|Dell's website]]
===== Ubuntu LACP with Cisco Catalyst Switches =====
This will of course depend on the switch model you are using and the IOS version, but I've documented here what works in the installations I've been assisting with.
==== Ubuntu LACP Configuration ====
This example shows the ''/etc/network/interfaces'' configuration using two ethernet interfaces on a server to be combined to form a LAG, and using LACP. Here I'm using VLAN 3, 5 and 7 on the server, and they are being passed by the LAG from the switch the server is connected to. VLAN 3 is for server management access, whereas VLAN 5 and 7 are passed on to virtual machines within the server.
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
auto eno1
iface eno1 inet manual
bond-master bond0
auto eno2
iface eno2 inet manual
bond-master bond0
auto bond0
iface bond0 inet manual
bond-mode 802.3ad
bond-miimon 100
bond-lacp-rate 1
bond-slaves eno1 eno2
auto bond0.3
iface bond0.3 inet manual
vlan-raw-device bond0
auto bond0.5
iface bond0.5 inet manual
vlan-raw-device bond0
auto bond0.7
iface bond0.7 inet manual
vlan-raw-device bond0
auto br0
iface br0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.254
bridge_ports bond0.3
bridge_stp off
bridge_fd 0
auto br1
iface br1 inet manual
bridge_ports bond0.5
bridge_stp off
bridge_fd 0
auto br2
iface br2 inet manual
bridge_ports bond0.7
bridge_stp off
bridge_fd 0
==== Cisco Catalyst 2950G-48 Configuration ====
Configuration snipped for a Catalyst 2950G-48 running '12.1(22)EA13'. Note that the 2950G-48 needs the ''flowcontrol send off'' command - other switches don't seem to need this.
For security reasons, I've made the native VLAN on the trunk to be 999, rather than the default VLAN of 1. I strongly recommend never to use VLAN1 for anything.
interface Port-channel2
description Trunk
switchport trunk native vlan 999
switchport mode trunk
load-interval 30
flowcontrol send off
!
interface FastEthernet0/1
description LAG-PORT1
switchport trunk native vlan 999
switchport mode trunk
load-interval 30
channel-group 2 mode active
!
interface FastEthernet0/2
description LAG-PORT2
switchport trunk native vlan 999
switchport mode trunk
load-interval 30
channel-group 2 mode active
!
With this configuration, VLAN 999 is the native VLAN (frames sent untagged), and all other VLANs (including 1) are sent tagged.
[[start| Back to Home page]]