<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.rainsbrook.co.uk/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.rainsbrook.co.uk/wiki/feed.php">
        <title>Rainsbrook - linux</title>
        <description></description>
        <link>https://www.rainsbrook.co.uk/wiki/</link>
        <image rdf:resource="https://www.rainsbrook.co.uk/wiki/lib/exe/fetch.php?media=wiki:dokuwiki.svg" />
       <dc:date>2026-05-04T12:47:57+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:apt-cheat-sheet&amp;rev=1610200110&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:authagainstldap&amp;rev=1647257500&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:autologinrunscript&amp;rev=1610200178&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:avermedia-a815&amp;rev=1690797362&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backup&amp;rev=1610200204&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupdnsconfig&amp;rev=1610200242&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupdnsconfig2&amp;rev=1610200275&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupldap1&amp;rev=1610200308&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-generic-script-framework1&amp;rev=1668076132&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-getoptions&amp;rev=1643282814&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-json&amp;rev=1748424566&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-post-to-api&amp;rev=1680104975&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-quickguide&amp;rev=1704284198&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-quotes&amp;rev=1708101116&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-snippets&amp;rev=1707818124&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash&amp;rev=1757508986&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bashshortcut&amp;rev=1703871485&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash_aaart&amp;rev=1696518594&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bios-codes&amp;rev=1775808221&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bluetooth-gps&amp;rev=1681175090&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:brumlugldapnotes&amp;rev=1610236012&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:centos8&amp;rev=1639418370&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:centosnetwork&amp;rev=1610024382&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_all_groups_exist.bash&amp;rev=1734949327&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_gids.sh&amp;rev=1734949514&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_groups.sh&amp;rev=1734949587&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_uids.sh&amp;rev=1734949623&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_users.sh&amp;rev=1734949656&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_home_dirs&amp;rev=1734953124&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:cron&amp;rev=1632824288&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:cups-options&amp;rev=1611784083&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:datacash-dns&amp;rev=1734956608&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:datacash&amp;rev=1734955727&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:deleteoldfiles&amp;rev=1610455639&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dell-ipmi&amp;rev=1734956532&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dns-bind-named&amp;rev=1670251966&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dns-fowardrev&amp;rev=1670252007&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ethernet-subinterface&amp;rev=1670251754&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ethernetbonding&amp;rev=1642175730&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:eximcheatsheet&amp;rev=1713022091&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:eximconfig&amp;rev=1740486800&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:expect&amp;rev=1753115504&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:findipdevices&amp;rev=1610456277&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ftponly&amp;rev=1733755238&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ftponlyshell&amp;rev=1610457462&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:getmyipaddress&amp;rev=1726786290&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:glusterfs&amp;rev=1610457504&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:gpt&amp;rev=1642075244&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:hp-ipmi-ilo&amp;rev=1734956799&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ipcommand&amp;rev=1696848782&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:jq&amp;rev=1748424637&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:kdeshortcuts&amp;rev=1632824417&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldap-logon-groups&amp;rev=1610235680&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldap&amp;rev=1757363520&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapandedirectory&amp;rev=1610237589&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapandmad&amp;rev=1670252096&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapclientsidesetup&amp;rev=1610326490&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldaphowto&amp;rev=1610456394&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-apache2&amp;rev=1749766009&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-resize-lvm&amp;rev=1610234880&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-snmpd&amp;rev=1610468768&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux&amp;rev=1750763970&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linuxloginscripts&amp;rev=1735588666&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linuxreplacemdmirror&amp;rev=1632824921&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:logsegment&amp;rev=1610457420&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:lotusnoteslinux&amp;rev=1649267869&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:misc-bash-cgi&amp;rev=1751628393&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:nano&amp;rev=1739531308&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:networktime&amp;rev=1727449259&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldap&amp;rev=1610237706&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapintro&amp;rev=1610237587&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldaplogging&amp;rev=1610237767&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapreplication&amp;rev=1610237822&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapreplicationtest&amp;rev=1610237908&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:pidgin-extract-sip-id&amp;rev=1670252095&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:pidginconfigforlync&amp;rev=1719314388&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:recover-raid-disk&amp;rev=1670251637&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:renameuser&amp;rev=1630157809&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:rootloginwarning&amp;rev=1610457573&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:rpmcheatsheet&amp;rev=1649243599&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:smartcards&amp;rev=1735318449&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:smtp_protocol&amp;rev=1649262991&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ssh&amp;rev=1735562760&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:start&amp;rev=1735560727&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:supermicro-ipmi&amp;rev=1640906566&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:syslog&amp;rev=1718621768&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:syslogtotty&amp;rev=1610536621&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:systemload-script&amp;rev=1739186126&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:testfilextension&amp;rev=1610469293&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:trap-ctl-c&amp;rev=1632824999&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntu1804netplan&amp;rev=1642175855&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntunetwork&amp;rev=1642114083&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntupatching&amp;rev=1678456712&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ufw-cheet-sheet&amp;rev=1610537181&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:vicheatsheet&amp;rev=1649263067&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:vnc&amp;rev=1705661689&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:write-cdrom-cli&amp;rev=1621592628&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:xforwarding&amp;rev=1610469172&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:yum-cheat-sheet&amp;rev=1610469517&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.rainsbrook.co.uk/wiki/lib/exe/fetch.php?media=wiki:dokuwiki.svg">
        <title>Rainsbrook</title>
        <link>https://www.rainsbrook.co.uk/wiki/</link>
        <url>https://www.rainsbrook.co.uk/wiki/lib/exe/fetch.php?media=wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:apt-cheat-sheet&amp;rev=1610200110&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T13:48:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>apt-cheat-sheet</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:apt-cheat-sheet&amp;rev=1610200110&amp;do=diff</link>
        <description>apt Cheatsheet

Unpacking .deb files

Search for available packages
root@server01:~# apt-cache search isc-dhcp
isc-dhcp-client - ISC DHCP client
isc-dhcp-client-dbg - ISC DHCP client (debugging symbols)
isc-dhcp-common - common files used by all the isc-dhcp* packages
...edited...</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:authagainstldap&amp;rev=1647257500&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-03-14T11:31:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>authagainstldap</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:authagainstldap&amp;rev=1647257500&amp;do=diff</link>
        <description>Authenticating against LDAP

Cannot find group info
[root@cube etc]# ssh -l andrew 127.0.0.1
andrew@127.0.0.1's password:
Last login: Mon Dec  3 01:01:27 2012
id: cannot find name for group ID 1001
[andrew@cube ~]$

[andrew@cube ~]$ getent group andrew
[andrew@cube ~]$ getent passwd andrew
andrew:*:1001:1001:Andrew:/home/andrew:/bin/bash
[andrew@cube ~]$</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:autologinrunscript&amp;rev=1610200178&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T13:49:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>autologinrunscript</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:autologinrunscript&amp;rev=1610200178&amp;do=diff</link>
        <description>Auto login and run script

tty1 should show menu.sh, 
root@usta01:/etc/init# tail /etc/init/tty1.conf 

start on stopped rc RUNLEVEL=[2345] and (
            not-container or
            container CONTAINER=lxc or
            container CONTAINER=lxc-libvirt)

stop on runlevel [!2345]

respawn
exec /usr/local/bin/menu.sh 
root@usta01:/etc/init#</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:avermedia-a815&amp;rev=1690797362&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-31T09:56:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>avermedia-a815</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:avermedia-a815&amp;rev=1690797362&amp;do=diff</link>
        <description>AverMedia Volar-X (A815)



Firmware file:-

----------

TV stick uses MMCX for external antenna:-</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backup&amp;rev=1610200204&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T13:50:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backup</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backup&amp;rev=1610200204&amp;do=diff</link>
        <description>Backup Scripts
#!/bin/sh
# filename: backup.sh
# location: /root/backup/backup.sh
# modified : Andrew Stringer 25/04/2004 onwards
# modified : AJS 21/11/06 to backup files to nfs mounted directory

#my name
HOST='ns0'
BACKUPLIST='/etc/backup/backuplist.txt'
MAILRESULT='an.st@xxx.gov.uk'
BACKUPHOST='10.1.1.1'
BACKUPHOSTPATH='/vol/dnsbackup'
LOCALWRKDIR='/tmp/dnsbackup'
MOUNTPATH='/mnt/dnsbackup'
LOGFILE=&quot;/root/log.txt&quot;



#set file to just day number, this will create up to 31 unique 
#backup fil…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupdnsconfig&amp;rev=1610200242&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T13:50:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backupdnsconfig</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupdnsconfig&amp;rev=1610200242&amp;do=diff</link>
        <description>Backup DNS config
#!/bin/bash
#Written Andrew Stringer, 21/03/2012
#Purpose is to pull DNS (BIND) backup files from srv01 and srv03

SCP=/usr/bin/scp
GZIP=/bin/gzip

DATE=`date  +%d-%m-%Y`

REMOTESERVER=('srv01' 'srv03')
REMOTEDIR=/home/scope/BINDbackup

LOCALDIR=/home/scope/BINDbackup

SENDEMAIL=no
EMAILSUBJECT=&quot;BIND Backup from Guernsey to BHX&quot;

#e-mail distribution list
dist1=&quot;me@domain.pri&quot;

TMPMAILFILE=/tmp/BINDBackup-$$
DEBUGLOG=/tmp/BINDbackup-debug-$$

#Send test mail on 1st of the month…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupdnsconfig2&amp;rev=1610200275&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T13:51:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backupdnsconfig2</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupdnsconfig2&amp;rev=1610200275&amp;do=diff</link>
        <description>Backup DNS config 2
#!/bin/bash
#Written Andrew Stringer 01/08/2012
#Purpose is to back up DNS config and zone files.

#This is intended to be run from cron, the output is picked up by dev01 using scope account


DATE=`date  +%d-%m-%Y`

OUTPUTFILEPATH=/home/scope/BINDbackup
OUTPUTFILE=${OUTPUTFILEPATH}/inet01-bindbackup-${DATE}.tar
FILEOWNER='scope:netops'


SENDEMAIL=no
EMAILSUBJECT=&quot;inet01 - BIND Backup&quot;

#e-mail distribution list
dist1=&quot;support@xxx.com&quot;

TMPMAILFILE=/tmp/BINDBackup-$$
DEBUGLO…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupldap1&amp;rev=1610200308&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T13:51:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backupldap1</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:backupldap1&amp;rev=1610200308&amp;do=diff</link>
        <description>Backup LDAP locally
#!/bin/bash
#Written Andrew Stringer 21/03/2012
#Purpose is to back up LDAP database.
#To maintain maximum compatability, slapcat is used to do a dump in ldif format
#which is text based to enable import to another LDAP server if required.

#This is intended to be run from cron, the output is picked up by bkup03


SLAPCAT=/usr/sbin/slapcat
DATE=`date  +%d-%m-%Y`

OUTPUTFILEPATH=/home/scope/LDAPbackup
OUTPUTFILE=${OUTPUTFILEPATH}/ldapbackup-${DATE}.cfg
FILEOWNER='scope:netops'…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-generic-script-framework1&amp;rev=1668076132&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-10T10:28:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash-generic-script-framework1</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-generic-script-framework1&amp;rev=1668076132&amp;do=diff</link>
        <description>Generic script framework 1.

This script framework is intended for scripts which are run via cron for example, it doesn't try to handle command line arguments as might be needed in an interactive script.
#!/bin/bash

# Written Mr User &lt;DATE&gt;

# Purpose of Script
# =================
#
#                                                                                                                                    
#                                            
                                   …</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-getoptions&amp;rev=1643282814&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-27T11:26:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash-getoptions</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-getoptions&amp;rev=1643282814&amp;do=diff</link>
        <description>Bash - Get options passed to script


#!/bin/bash

usage() { echo &quot;Usage: $0 [-s &lt;45|90&gt;] [-p &lt;string&gt;]&quot; 1&gt;&amp;2; exit 1; }

while getopts &quot;:s:p:&quot; o; do
    case &quot;${o}&quot; in
        s)
            s=${OPTARG}
            ((s == 45 || s == 90)) || usage
            ;;
        p)
            p=${OPTARG}
            ;;
        *)
            usage
            ;;
    esac
done
shift $((OPTIND-1))

if [ -z &quot;${s}&quot; ] || [ -z &quot;${p}&quot; ]; then
    usage
fi

echo &quot;s = ${s}&quot;
echo &quot;p = ${p}&quot;</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-json&amp;rev=1748424566&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-28T09:29:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash-json</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-json&amp;rev=1748424566&amp;do=diff</link>
        <description>Embedding a BASH variable in JSON


STANDARD='arn:aws:securityhub:::ruleset/nist-800-53/v/5.0.0'

aws securityhub  batch-update-standards-control-associations \
    --standards-control-association-updates \
    --profile OrgDeployRole \
    '[
    {
    &quot;SecurityControlId&quot;: &quot;IAM.9&quot;,
    &quot;StandardsArn&quot;: &quot;'&quot;${STANDARD}&quot;'&quot;,
    &quot;AssociationStatus&quot;: &quot;DISABLED&quot;,
    &quot;UpdatedReason&quot;: &quot;Not applicable to environment&quot;
    }
    ]'</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-post-to-api&amp;rev=1680104975&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-29T15:49:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash-post-to-api</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-post-to-api&amp;rev=1680104975&amp;do=diff</link>
        <description>POST to API with cURL

Written to POST a file ref, username and UUID to an API running with Flask:-

(Note:- this URL can be used to test your curl script to see just what you actually sent.
&lt;https://httpbin.org/anything&gt; )


#!/bin/bash

# Just random test data!

# Simple Auth Token
AUTH_TOKEN=&quot;123123aasda%^&amp;^%HG&quot;

# Generate email ramdomly
EMAILS=(user1@example.com user2@example.com user3@example.com)

# Get length of list with:- &quot;${#EMAILS[@]}&quot;
INDEX=$(( RANDOM % ${#EMAILS[@]} ))
EMAIL=&quot;${EMA…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-quickguide&amp;rev=1704284198&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-03T12:16:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash-quickguide</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-quickguide&amp;rev=1704284198&amp;do=diff</link>
        <description>Quick guide to shell scripts in BASH

Starting off

As we want our script to be run by BASH, we need to tell the shell what to run our script with so the first line should be:-
#!/bin/bash
It's possible that BASH on your system may be elsewhere, say, 000</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-quotes&amp;rev=1708101116&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-16T16:31:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash-quotes</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-quotes&amp;rev=1708101116&amp;do=diff</link>
        <description>BASH Quotes examples

BASH uses single quotes, double quotes and backticks. They all have their uses and using the wrong ones at the wrong time will cause unpredictable results. 

This page attempts to clarify their usage.

Note, just to confuse new users, BASH uses $ as a normal user prompt as well as $ as a variable identifier.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-snippets&amp;rev=1707818124&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-13T09:55:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash-snippets</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash-snippets&amp;rev=1707818124&amp;do=diff</link>
        <description>BASH Snippets

Test if file exists


#!/bin/bash

configfile='ca_config.txt'

if [ -e &quot;${configfile}&quot; ]; then
        echo &quot;${configfile} exists.&quot;
else
        echo &quot;${configfile} not exists.&quot;
        exit 2
fi


Case Statement


#!/bin/bash

printf &quot;Select duration: \n1: Choice 1\n2: Choice 2\n3: Choice 3\n&quot;

printf &quot;Choice 1, 2 or 3:- &quot;
read Choice

case &quot;${Choice}&quot; in

  1)
    echo -n 'One'
    Type='One'
    ;;

  2)
    echo -n 'Two'
    Type='Two'
    ;;

  3)
    echo -n 'Three'
    Type…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash&amp;rev=1757508986&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-10T12:56:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash&amp;rev=1757508986&amp;do=diff</link>
        <description>Bash

Quick guide to shell scripts in BASH 

BASH Quotes examples 

BASH Get Options 

POST to API with cURL 

BASH references and shortcuts 

BASH Snippets 

Ascii Art 


BASH cgi Misc info 


What is BASH?

BASH stands for the Bourne Again SHell, which is based on the UNIX C Shell and the Korn Shell. It is POSIX2 compliant.

The shell is the way users or scripts communivate with the Kernel. See &lt;https://askubuntu.com/questions/161511/are-the-linux-utilities-parts-of-the-kernel-shell&gt; for info …</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bashshortcut&amp;rev=1703871485&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-29T17:38:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bashshortcut</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bashshortcut&amp;rev=1703871485&amp;do=diff</link>
        <description>Bash references and shortcuts

Restricted BASH shell

Starting BASH with -r or running rbash will start a restricted bash shell.
In this you cannot:-

	*  cd to change directory
	*  Set or reset the $PATH or $SHELL
	*  use absolute paths for commands (/path/to/command)000</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash_aaart&amp;rev=1696518594&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-05T15:09:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bash_aaart</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bash_aaart&amp;rev=1696518594&amp;do=diff</link>
        <description>Ascii Art

&lt;http://www.network-science.de/ascii/&gt;, use “big” font with stretch=yes</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bios-codes&amp;rev=1775808221&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-10T08:03:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bios-codes</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bios-codes&amp;rev=1775808221&amp;do=diff</link>
        <description>AMI BIOS:


1 beep - System boot successfull
*1beep - Refresh failure - (NO VIDEO) memory refresh failure (bad memory)
2 beeps - Parity error - bad memory
3 beeps - Base 64K memory failure - bad memory
4 beeps - Timer not operational - bad motherboard
5 beeps - Processor error - bad processor
6 beeps - 8042 gate A20 failure - bad cpu or mainboard
7 beeps - Processor exception interput error - bad processor
8 beeps - Display memory read/write failure - bad video card or memory
9 beeps - ROM check…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bluetooth-gps&amp;rev=1681175090&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-11T01:04:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bluetooth-gps</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:bluetooth-gps&amp;rev=1681175090&amp;do=diff</link>
        <description>Bluetooth GPS

Find out your Bluetooth GPS device MAC:-
[root@q1]# hcitool scan
Scanning ...
        00:30:04:0B:24:1E       LEADTEK 9580
        00:01:E3:B8:AA:3C       S68H
[root@q1]# 

# bluetoothctl scan on
Discovery started
[CHG] Controller 90:4C:E5:DC:C1:9A Discovering: yes
[NEW] Device 00:30:04:0B:24:1E 00-30-04-0B-24-1E
[CHG] Device 44:E4:EE:BB:9D:EA RSSI: -92
[CHG] Device 00:30:04:0B:24:1E LegacyPairing: no
[CHG] Device 00:30:04:0B:24:1E Name: LEADTEK 9580
[CHG] Device 00:30:04:0B:24:1E…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:brumlugldapnotes&amp;rev=1610236012&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T23:46:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>brumlugldapnotes</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:brumlugldapnotes&amp;rev=1610236012&amp;do=diff</link>
        <description>LDAP Notes from Birmingham LUG

Autoview for flash streaming

mantis for Bug tracker.

LDAP talk, Richard Wallman,   “richard” at email domain “bossolutions.co.uk”

Classes -&gt; attributes -&gt; values

Client install  LDAP PAM, nservice module, name service cache daemon, libpam.ldap, libnss.ldap</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:centos8&amp;rev=1639418370&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-13T17:59:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>centos8</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:centos8&amp;rev=1639418370&amp;do=diff</link>
        <description>Centos 8 notepad

systemctl

Start / stop and enable at boot:-


# systemctl enable prosody.service

# systemctl restart prosody.service




Networking

Firewall


# firewall-cmd --get-default-zone
public

# firewall-cmd --zone=public --permanent --add-port 5222/tcp
success

# systemctl restart firewalld.service</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:centosnetwork&amp;rev=1610024382&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-07T12:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>centosnetwork</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:centosnetwork&amp;rev=1610024382&amp;do=diff</link>
        <description>Centos Networking

Centos Network interfaces examples

Static


[root@hydrogen]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=&quot;eth0&quot;
BOOTPROTO=&quot;none&quot;
HWADDR=&quot;52:54:00:5B:C7:10&quot;
ONBOOT=&quot;yes&quot;
IPADDR=192.168.5.24
NETMASK=255.255.255.0
DEFROUTE=yes
[root@hydrogen]#</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_all_groups_exist.bash&amp;rev=1734949327&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T10:22:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>check_all_groups_exist.bash</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_all_groups_exist.bash&amp;rev=1734949327&amp;do=diff</link>
        <description>check_all_groups_exist.sh


#!/bin/bash
for i in $(cut -s -d: -f4 /etc/passwd | sort -u ); do
 grep -q -P &quot;^.*?:[^:]*:$i:&quot; /etc/group
 if [ $? -ne 0 ]; then
 echo &quot;Group $i is referenced by /etc/passwd but does not exist in /etc/group&quot;
 fi
done</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_gids.sh&amp;rev=1734949514&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T10:25:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>check_duplicate_gids.sh</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_gids.sh&amp;rev=1734949514&amp;do=diff</link>
        <description>check_duplicate_GIDs.sh


#!/bin/bash
cat /etc/group | cut -f3 -d&quot;:&quot; | sort -n | uniq -c | while read x ; do
 [ -z &quot;${x}&quot; ] &amp;&amp; break
 set - $x
 if [ $1 -gt 1 ]; then
 groups=`awk -F: '($3 == n) { print $1 }' n=$2 /etc/group | xargs`
 echo &quot;Duplicate GID ($2): ${groups}&quot;
 fi
done</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_groups.sh&amp;rev=1734949587&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T10:26:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>check_duplicate_groups.sh</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_groups.sh&amp;rev=1734949587&amp;do=diff</link>
        <description>check_duplicate_groups.sh


#!/bin/bash
cat /etc/group | cut -f1 -d&quot;:&quot; | sort -n | uniq -c | while read x ; do
 [ -z &quot;${x}&quot; ] &amp;&amp; break
 set - $x
 if [ $1 -gt 1 ]; then
 gids=`gawk -F: '($1 == n) { print $3 }' n=$2 /etc/group | xargs`
 echo &quot;Duplicate Group Name ($2): ${gids}&quot;
 fi
done</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_uids.sh&amp;rev=1734949623&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T10:27:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>check_duplicate_uids.sh</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_uids.sh&amp;rev=1734949623&amp;do=diff</link>
        <description>check_duplicate_UIDs.sh


#!/bin/bash
cat /etc/passwd | cut -f3 -d&quot;:&quot; | sort -n | uniq -c | while read x ; do
 [ -z &quot;${x}&quot; ] &amp;&amp; break
 set - $x
 if [ $1 -gt 1 ]; then
 users=`awk -F: '($3 == n) { print $1 }' n=$2 /etc/passwd | xargs`
 echo &quot;Duplicate UID ($2): ${users}&quot;
 fi
done</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_users.sh&amp;rev=1734949656&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T10:27:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>check_duplicate_users.sh</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_duplicate_users.sh&amp;rev=1734949656&amp;do=diff</link>
        <description>check_duplicate_users.sh


#!/bin/bash
cat /etc/passwd | cut -f1 -d&quot;:&quot; | sort -n | uniq -c | while read x ; do
 [ -z &quot;${x}&quot; ] &amp;&amp; break
 set - $x
 if [ $1 -gt 1 ]; then
 uids=`awk -F: '($1 == n) { print $3 }' n=$2 /etc/passwd | xargs`
 echo &quot;Duplicate User Name ($2): ${uids}&quot;
 fi
done</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_home_dirs&amp;rev=1734953124&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T11:25:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>check_home_dirs</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:check_home_dirs&amp;rev=1734953124&amp;do=diff</link>
        <description>Check Home Dirs

check_home_ownerships.sh


#!/bin/bash
egrep -v '^(root|halt|sync|shutdown|cwagent)' /etc/passwd | awk -F: '($7 != &quot;/sbin/nologin&quot; &amp;&amp; $7 != &quot;/bin/false&quot;) { print $1 &quot; &quot; $6 }' | while read user dir; do
 if [ ! -d &quot;$dir&quot; ]; then
 echo &quot;The home directory ($dir) of user $user does not exist.&quot;
 else
 owner=$(stat -L -c &quot;%U&quot; &quot;$dir&quot;)
 if [ &quot;$owner&quot; != &quot;$user&quot; ]; then
 echo &quot;The home directory ($dir) of user $user is owned by $owner.&quot;
 fi
fi
done</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:cron&amp;rev=1632824288&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-09-28T10:18:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>cron</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:cron&amp;rev=1632824288&amp;do=diff</link>
        <description>Cron cheatsheet

Syntax
 *  *  *  *  *  /path/to/command.sh  1  2  3  4  5  6  Key  Contents  Range  1  Minute of hour  0-59  2  Hour of day  0-23  3  Day of month  1-31  4  Month of year  1-12  5  Day of week  0-6 (0=Sunday)  6  Command to run (full path)</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:cups-options&amp;rev=1611784083&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-27T21:48:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>cups-options</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:cups-options&amp;rev=1611784083&amp;do=diff</link>
        <description>CUPS Options

Random jottings

Hold jobs in queue

CUPS

Hold jobs until released from queue, this was used by a job in a Library where client printing needed to be held until paid for before releasing to the printer.


/etc/cups/ipoptions

&quot;job-hold-until=indefinite&quot;</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:datacash-dns&amp;rev=1734956608&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T12:23:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>datacash-dns</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:datacash-dns&amp;rev=1734956608&amp;do=diff</link>
        <description>#!/bin/bash
#written Andrew Stringer, 11/1/11 onwards. A date which is a palindrome.
#Purpose is to check DataCash DNS for changes and check that https is accepting connections.

#Temp Files
BASE=/usr/local/SiteScope/dnschecks
DCAUTHTEMP=${BASE}/dc-nocache-dnstemp.txt
DCCACHETEMP=${BASE}/dc-cache-dnstemp.txt

#keep past log files
LOGFILE=${BASE}/dnscheck.log
mv ${LOGFILE}.2 ${LOGFILE}.3
mv ${LOGFILE}.1 ${LOGFILE}.2
mv ${LOGFILE} ${LOGFILE}.1

echo `date` &gt; ${LOGFILE}

#Test https port
PORT=443
#…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:datacash&amp;rev=1734955727&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T12:08:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>datacash</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:datacash&amp;rev=1734955727&amp;do=diff</link>
        <description>[scope@mon01 dnschecks]$ pwd
/usr/local/dnschecks



[scope@mon01 dnschecks]$ cat datacashtest.sh

  #!/bin/bash
  #written Andrew , 11/1/11 onwards. A date which is a palindrome.
  #Purpose is to check DataCash DNS for changes and check that https is accepting connections.
  
  #Temp Files
  BASE=/usr/local/dnschecks
  DCAUTHTEMP=${BASE}/dc-nocache-dnstemp.txt
  DCCACHETEMP=${BASE}/dc-cache-dnstemp.txt
  
  #keep past log files
  LOGFILE=${BASE}/dnscheck.log
  mv ${LOGFILE}.2 ${LOGFILE}.3
  mv …</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:deleteoldfiles&amp;rev=1610455639&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T12:47:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>deleteoldfiles</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:deleteoldfiles&amp;rev=1610455639&amp;do=diff</link>
        <description>Delete files older than X days

Version 1

 
#!/bin/bash
#Written Andrew Stringer
#This is to find old files and purge them to prevent backups filling
#the system up.

#Backup files stored to here:-
BASEDIR='/mnt/datastore/db-backup'

echo &quot;Starting run at `date`&quot; &gt; ${BASEDIR}/housekeeping.log

#find files older than 2 days &amp; delete them
rm -rf `find ${BASEDIR} -type d -mtime +1` &gt;&gt; ${BASEDIR}/housekeeping.log

exit 0</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dell-ipmi&amp;rev=1734956532&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T12:22:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dell-ipmi</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dell-ipmi&amp;rev=1734956532&amp;do=diff</link>
        <description>Dell IPMI config for Nagios monitoring

Written primarily for the Dell Poweredge 1950's used at Sochi for IOC.

Installation

See:- &lt;http://linux.dell.com/repo/community/deb/OMSA_7.1/&gt;
root@sochi2:~# cat  /etc/apt/sources.list.d/linux.dell.com.sources.list
deb http://linux.dell.com/repo/community/deb/latest /

root@sochi1:~# apt-get update
rppt@sochi1:~# apt-get install srvadmin-base
root@sochi3:~# service dataeng start</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dns-bind-named&amp;rev=1670251966&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-05T14:52:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dns-bind-named</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dns-bind-named&amp;rev=1670251966&amp;do=diff</link>
        <description>BIND - Named Name server

Logging


logging {
        channel default_debug {
                file &quot;data/named.run&quot;;
                severity dynamic;
	        };
        channel syslogd  {
                file &quot;/var/log/named/named.log&quot; versions 2 size 5m ;
                severity info;
                print-category yes;
                print-severity yes;
                print-time yes;
                };
        channel queries-ch {
                file &quot;/var/log/named/dns-queries.log&quot; ;
  …</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dns-fowardrev&amp;rev=1670252007&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-05T14:53:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dns-fowardrev</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:dns-fowardrev&amp;rev=1670252007&amp;do=diff</link>
        <description>DNS check forward and reverse lookups


$ cat forward-reverse-dns-check.sh 


#!/bin/bash
#
# test DNS forward- and reverse-mapping
# Written Andrew Stringer July 2010 onwards... may even work now.

# edit this variable to reflect local class C subnet(s)
NETS=&quot;10.100.220&quot;

# Test address to name to address validity
echo &quot;Test ipaddress to host name lookup and then check hostname lookup to ipaddress.&quot;
echo

echo -e &quot;\tIP address (PTR) -&gt; hostname (A) -&gt; IP address&quot;
echo '-------------------------…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ethernet-subinterface&amp;rev=1670251754&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-05T14:49:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ethernet-subinterface</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ethernet-subinterface&amp;rev=1670251754&amp;do=diff</link>
        <description>Add an ethernet subinterface

Probably obsolete with the rise of Netplan

Assuming RedHat, Centos or Fedora.

The process:
Go to the directory with the networking scripts
cd /etc/sysconfig/network-scripts
Copy the original network script for the interface
cp ifcfg-eth0 ifcfg-eth0:1</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ethernetbonding&amp;rev=1642175730&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-14T15:55:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ethernetbonding</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ethernetbonding&amp;rev=1642175730&amp;do=diff</link>
        <description>Ethernet Bonding

Note this refers to Centos / Red Hat systems. See Ubuntu Network Config and Ubuntu 18.04 Netplan for Ubuntu related info.

Linux Network

Ethernet Bonding

The bonding driver needs to be passed some parameters in modprobe.conf. 
[root@gy-asp-db03 network-scripts]# cat /etc/modprobe.conf
alias eth0 bnx2
alias eth2 bnx2
alias bond0 bonding
options bond0 mode=1 miimon=100 max_bonds=2
alias bond1 bonding
options bond1 mode=1 miimon=100</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:eximcheatsheet&amp;rev=1713022091&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-04-13T15:28:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>eximcheatsheet</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:eximcheatsheet&amp;rev=1713022091&amp;do=diff</link>
        <description>Exim Cheat Sheet
 Cheat  Code  Show messages on queue  exim -bp  Display message for id  exim -Mvl id  Display message header for id exim -Mvh id  Display body for id  exim -Mvb id  Purge message id fro queue  exim -Mrm id  Check conf syntax  exim -bV</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:eximconfig&amp;rev=1740486800&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-25T12:33:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>eximconfig</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:eximconfig&amp;rev=1740486800&amp;do=diff</link>
        <description>Exim Configuration

exim uses a single configuration file by default, /etc/exim/exim.conf. The config file is well documented internally and will work without modification in many cases, however we need to force all outbound mail via a Smart Host relay and but also allow local delivery via a pipe to local accounts (for the junkmail user). To accomplish this we need to alter the order of one mail router and add another.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:expect&amp;rev=1753115504&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T16:31:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>expect</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:expect&amp;rev=1753115504&amp;do=diff</link>
        <description>&lt;https://phoenixnap.com/kb/linux-expect&gt;</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:findipdevices&amp;rev=1610456277&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T12:57:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>findipdevices</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:findipdevices&amp;rev=1610456277&amp;do=diff</link>
        <description>Find ip devices on network

This simple script pings a range of addresses to find active devices.
#!/bin/bash

#intended to loop through range of addresses and ping them to discover active devices.
#This fails of course if a device is set to ignore icmp.

#turn on debugging, -x starts, +x stops
set +x


#BASEIP=10.106.18
BASEIP=192.168.1


DNSSERVER=192.168.1.1

for IPADDRESS in {1..50}
do
        #echo &quot;Testing &gt;${BASEIP}.${IPADDRESS}&lt;.&quot;

        #Prime Ping with a dummy ping which we ignore, t…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ftponly&amp;rev=1733755238&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-09T14:40:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ftponly</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ftponly&amp;rev=1733755238&amp;do=diff</link>
        <description>FTP only shell for user

This was written for system users who should only have ftp access, not shell (login) access.

Copy this file to /bin/ftponly.
You will have to add /bin/ftponly.sh to /etc/shells for the system to accept it as a valid shell.


#!/bin/bash
# /bin/ftponly.sh
# Written by sysadmin ages ago.
# Use this script as a login shell for users where you don't want shell access,
# ie. ftp only users on a webserver.
# You will have to add /bin/ftponly.sh to the /etc/shells file to allo…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ftponlyshell&amp;rev=1610457462&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T13:17:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ftponlyshell</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ftponlyshell&amp;rev=1610457462&amp;do=diff</link>
        <description>FTP only shell

ftponly.sh

This shell only allows ftp access, an alert message is sent if an interactive login is attempted. This needs adding to /etc/shells to be a valid shell.
#!/bin/bash
#/bin/ftponly.sh
#Written by Andrew Stringer ages ago.
#Use this script as a login shell for users where you don't want shell access,
#ie. ftp only users on a webserver.
#You will probably have to add this to the /etc/shells file to have the system use it.

TERM=vt100
export TERM

#Set this to point to wher…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:getmyipaddress&amp;rev=1726786290&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-19T22:51:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>getmyipaddress</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:getmyipaddress&amp;rev=1726786290&amp;do=diff</link>
        <description>Get my ipaddress

curl curlmyip.com  seems unreliable these days, so other methods are required.

	*  $ curl ipinfo.io/ip
	*  $ dig +short myip.opendns.com @resolver1.opendns.com

	*  $ curl &lt;https://fapi.fmtsapi.com/appliance/whatsmyip&gt;, No credentials needed.


{&quot;IP&quot;:&quot;83.244.144.52&quot;}</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:glusterfs&amp;rev=1610457504&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T13:18:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>glusterfs</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:glusterfs&amp;rev=1610457504&amp;do=diff</link>
        <description>Gluster FS Setup

Cluster Node 1: gluster01.site.example.com ( 10.11.12.13 ) 


Cluster Node 2: gluster02.site.example.com 


Cluster Node 3: gluster03.site.example.com 


IMPORTANT NOTE: Please ensure the glusterfs security group is added to all glusterfs nodes to ensure all ports needed for glusterfs communication are opened.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:gpt&amp;rev=1642075244&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-13T12:00:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>gpt</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:gpt&amp;rev=1642075244&amp;do=diff</link>
        <description>GPT disks and parted / gdisk

Just notes. 


# lsblk
NAME    MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda       8:0    0 931.5G  0 disk
├─sda1    8:1    0     1M  0 part
└─sda2    8:2    0    60G  0 part
  └─md0   9:0    0    60G  0 raid1 /
sdb       8:16   0 931.5G  0 disk
└─sdb1    8:17   0    60G  0 part
  └─md0   9:0    0    60G  0 raid1 /</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:hp-ipmi-ilo&amp;rev=1734956799&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-23T12:26:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>hp-ipmi-ilo</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:hp-ipmi-ilo&amp;rev=1734956799&amp;do=diff</link>
        <description>HP hardware monitoring

Install HP management tools

[Managing Proliant servers with Linux]

	*  Install HP repo, add deb &lt;http://downloads.linux.hp.com/SDR/downloads/MCP/ubuntu&gt; precise/current non-free to /etc/apt/sources.list. 
Note: for Ubuntu 14.04: 

deb http://downloads.linux.hp.com/SDR/repo/mcp/Ubuntu trusty/current non-free

 Enroll keys for DEB-based systems. Issue the following commands to enroll the keys on your deb-based system:</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ipcommand&amp;rev=1696848782&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-09T10:53:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ipcommand</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ipcommand&amp;rev=1696848782&amp;do=diff</link>
        <description>IP command

Fingers still used to typing ifconfig? Here's what you need to know to get used to the new ip command. Or you could just read the man page....

ifconfig and ip compared
 NetTools  ip command  arp -a  ip neigh  arp -v  ip -s neigh  arp -i eth0 -d 192.168.10.11 000</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:jq&amp;rev=1748424637&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-28T09:30:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>jq</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:jq&amp;rev=1748424637&amp;do=diff</link>
        <description>jq - json parser

jq tutorial:- &lt;https://cameronnokes.com/blog/working-with-json-in-bash-using-jq/&gt;

See also Embedding a BASH variable in JSON

AWS Policy - get ARN


$ CREATEPOLICY=`aws iam create-policy --profile sandbox --policy-name iam-key-age-test-policy --policy-document file://lambdaPolicy-iam-key-age.json`



{
    &quot;Policy&quot;: {
        &quot;PolicyName&quot;: &quot;iam-key-age-test-policy&quot;,
        &quot;PolicyId&quot;: &quot;ANPAYJCO7BT6GMCF63B2L&quot;,
        &quot;Arn&quot;: &quot;arn:aws:iam::569248779516:policy/iam-key-age-test-p…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:kdeshortcuts&amp;rev=1632824417&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-09-28T10:20:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>kdeshortcuts</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:kdeshortcuts&amp;rev=1632824417&amp;do=diff</link>
        <description>Kde Shortcuts
 Rotate Cube  Mousewheel on Desktop  Shift Switcher3  Super + Tab (2 modes: flip and cover)  Ring Switcher  Super + Tab – overrides Shift Switcher  Film Effect  Ctrl + Alt + Down Arrow4  Rotate Cube Manually  Ctrl + Alt + Left Mouse Button</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldap-logon-groups&amp;rev=1610235680&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T23:41:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ldap-logon-groups</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldap-logon-groups&amp;rev=1610235680&amp;do=diff</link>
        <description>LDAP access groups

Objective

How to restrict login access on a per-user or per-group basis.

Overview

LDAP groups are used but the restriction method itself (which uses PAM) can use local accounts and groups as well as LDAP accounts and groups (or any other supported PAM authentication method).</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldap&amp;rev=1757363520&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-08T20:32:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ldap</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldap&amp;rev=1757363520&amp;do=diff</link>
        <description>LDAP setup

LDAP com-prod-ldap01

cn=Admin,dc=company,dc=int

Server

OS is Ubuntu 16.04, OpenLDAP is 2.4.42+dfsg-2ubuntu3.1

Install

(This is taken from the original VM on laptop)

SSL cert install

See &lt;https://help.ubuntu.com/lts/serverguide/openldap-server.html#openldap-tls&gt;


root@com-prod-ldap01:/etc/ldap/ssl# cat certinfo.ldif
dn: cn=config
replace: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/ldap/ssl/company-int-ca.cert.crt
-
replace: olcTLSCertificateFile
olcTLSCertificateFil…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapandedirectory&amp;rev=1610237589&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-10T00:13:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ldapandedirectory</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapandedirectory&amp;rev=1610237589&amp;do=diff</link>
        <description>LDAP and Novell's eDirectory

It's been a long time since I have used Novell's Netware for anything and at that time I was using it for a file and print server. Recently I have been using OpenLDAP on Linux and have been experimenting extracting info from</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapandmad&amp;rev=1670252096&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-05T14:54:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ldapandmad</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapandmad&amp;rev=1670252096&amp;do=diff</link>
        <description>LDAP and Microsoft's MAD

In order to test using OpenLDAP with Microsoft's Active Directory (since MS insist on using Microsoft in every product name acronym, I will too, hence MAD=Microsoft Active Directory), I built a test server with win2k3 in it's own subdomain, ads.mydomain.pri. The server is authoritative for this subdomain.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapclientsidesetup&amp;rev=1610326490&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-11T00:54:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ldapclientsidesetup</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldapclientsidesetup&amp;rev=1610326490&amp;do=diff</link>
        <description>LDAP client side setup

Several files need editing to enable ldap access, lines or blocks of directives which require changing are shown below, lines which are left alone are not shown for clarity:-
[root@inet03 pam.d]# more /etc/ldap.conf
# This is the configuration file for the LDAP nameservice
# switch library and the LDAP PAM module.
#
host inet02 inet01

# The distinguished name of the search base.
#base dc=example,dc=com
base dc=prod,dc=company,dc=net</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldaphowto&amp;rev=1610456394&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T12:59:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ldaphowto</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ldaphowto&amp;rev=1610456394&amp;do=diff</link>
        <description>LDAP (Lightweight Directory Access Protocol)

[Open LDAP] 

LDAP is used by The Company on its production servers to authenticate users. Configuration is split into two parts, the LDAP server config and the LDAP client setup.

The previous version of LDAP used dc=oldcompany,dc=com as it's base DN, but the new base DN is dc=int, dc=TheCompany dc=com.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-apache2&amp;rev=1749766009&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-12T22:06:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux-apache2</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-apache2&amp;rev=1749766009&amp;do=diff</link>
        <description>Linux Apache2

Hide server info

in httpd.comf:-


# don't show server tokens
ServerTokens Prod

ServerSignature Off


This shows for the header info:-


% curl --head www.rainsbrook.co.uk
HTTP/1.1 200 OK
Date: Thu, 12 Jun 2025 21:57:11 GMT
Server: Apache
Last-Modified: Wed, 12 Oct 2022 00:26:03 GMT
ETag: &quot;36c-5eacb70120add&quot;
Accept-Ranges: bytes
Content-Length: 876
Vary: Accept-Encoding
Content-Type: text/html; charset=UTF-8</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-resize-lvm&amp;rev=1610234880&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-09T23:28:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux-resize-lvm</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-resize-lvm&amp;rev=1610234880&amp;do=diff</link>
        <description>Resize LVM

Creating a new Logical Volume

In this example we will create a new logical volume called wworks, mounted at /wworks which will be part of the vg00 Volume Group at /dev/mapper/vg00-lv_wworks

1. Check to see how much free space you have to allocate the new logical volume:</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-snmpd&amp;rev=1610468768&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T16:26:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux-snmpd</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux-snmpd&amp;rev=1610468768&amp;do=diff</link>
        <description>Simple Network Management Protocol - SNMP

This was tested on Ubuntu.

Prevent ipv6 operation

In /etc/snmp/snmpd.conf, ensure the listedn diretive does not include ipv6 addresses:-


#  Listen for connections on all interfaces (both IPv4 *and* IPv6)
#agentAddress udp:161,udp6:[::1]:161
agentAddress udp:161</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux&amp;rev=1750763970&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-24T11:19:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linux&amp;rev=1750763970&amp;do=diff</link>
        <description>Linux



Pages in this namespace:

	* apt-cheat-sheet
	* authagainstldap
	* autologinrunscript
	* avermedia-a815
	* backup
	* backupdnsconfig
	* backupdnsconfig2
	* backupldap1
	* bash
	* bash-generic-script-framework1
	* bash-getoptions
	* bash-json
	* bash-post-to-api
	* bash-quickguide
	* bash-quotes
	* bash-snippets
	* bash_aaart
	* bashshortcut
	* bios-codes
	* bluetooth-gps
	* brumlugldapnotes
	* centos8
	* centosnetwork
	* check_all_groups_exist.bash
	* check_duplicate_gids.sh
	* check_du…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linuxloginscripts&amp;rev=1735588666&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-30T19:57:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linuxloginscripts</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linuxloginscripts&amp;rev=1735588666&amp;do=diff</link>
        <description>Linux Login Scripts

This wiki page is the new home for the information here:-
&lt;http://www.rainsbrook.co.uk/linux/loginscripts/index.html&gt;

You can contact me on “loginscripts atsymbol &lt;website domain name&gt;”.

Background

The original idea for this came some years ago when I was wanting to access a Novell NetWare5 server from Slackware Linux desktop. This was my initial full conversion to using Linux as a desktop and dumping windows. The two killer apps I needed were access to networked file sys…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linuxreplacemdmirror&amp;rev=1632824921&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-09-28T10:28:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linuxreplacemdmirror</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:linuxreplacemdmirror&amp;rev=1632824921&amp;do=diff</link>
        <description>Replace md mirror device

Background

System is Centos 5.6. 

Warning in logwatch:- 


--------------------- Smartd Begin ------------------------ 

 
Currently unreadable (pending) sectors detected:
	/dev/sda - 96 Time(s)
	53 unreadable sectors detected
 
Offline uncorrectable sectors detected:
	/dev/sda - 96 Time(s)
	53 offline uncorrectable sectors detected
 
---------------------- Smartd End -------------------------</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:logsegment&amp;rev=1610457420&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T13:17:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>logsegment</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:logsegment&amp;rev=1610457420&amp;do=diff</link>
        <description>LogSegment

Both these plugins rely on the logsegment created on the webserver by createlogsegment.sh :-


root@expose6app:~# cat /root/apache-analysis/createlogsegment.sh
#!/bin/bash

#Written Andrew Stringer  08-07-2014
#Purpose is to produce a log extract of the last 10 mins activity for further analysis.


grep `date -d &quot;10 minutes ago&quot; +&quot;%d/%b/%Y:%H:%M&quot;` -A 999999 /var/log/apache2/ssl-access.log &gt; /home/nagios/ssl-segment.log
chown nagios:nagios /home/nagios/ssl-segment.log


exit 0</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:lotusnoteslinux&amp;rev=1649267869&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-04-06T17:57:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>lotusnoteslinux</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:lotusnoteslinux&amp;rev=1649267869&amp;do=diff</link>
        <description>Lotus Notes v8.0



Favicon:- 

Intro

This was written for the Notes client, 8.0, however it is well worth getting the latest version as each new version shows worthwhile improvements in useability for Linux users.
Notes client v 8.0 works ok but requires some tweaks to get working correctly. Before you start, backup several Lotus Notes system files, this will enable you to preserve your workspace icons and system settings. Notes seems to do a good job of migrating desktop settings between vers…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:misc-bash-cgi&amp;rev=1751628393&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-04T11:26:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>misc-bash-cgi</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:misc-bash-cgi&amp;rev=1751628393&amp;do=diff</link>
        <description>Misc info

Really just for fun, of no practical value I think....

Bash cgi-bin

Why you would want to do this I don't know, but it seemed to fun at the time to write cgi in some obscure ways.

hello.sh


#!/bin/bash
printf &quot;Content-Type: Text/HTML\n&quot;
printf &quot;\n\n&quot;

printf &quot;&lt;html&gt;\n&quot;
printf &quot;&lt;title&gt;BASH cgi script&lt;/title&gt;\n&quot;
printf &quot;&lt;body&gt;\n&lt;h1&gt;This is `hostname` &lt;/h1&gt;\n&lt;/body&gt;\n&quot;
printf &quot;&lt;/html&gt;\n&quot;</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:nano&amp;rev=1739531308&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-14T11:08:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nano</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:nano&amp;rev=1739531308&amp;do=diff</link>
        <description>Nano editor

Line numbering


$ nano -l /etc/hosts

 1 127.0.0.1 localhost
 2 127.0.0.1 vm2
 3


In ~/.nanorc config file:-


set linenumbers</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:networktime&amp;rev=1727449259&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-27T15:00:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>networktime</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:networktime&amp;rev=1727449259&amp;do=diff</link>
        <description>NTP - Network time

Internal links

check_ntp-simple 

Check NTP on multiple servers 

NTP-Setup-On-Solaris  


NTP server

&lt;https://www.elektormagazine.com/articles/raspberry-pi-pico-makes-an-msfsdr&gt;

&lt;https://forums.raspberrypi.com/viewtopic.php?t=20968&gt;

&lt;http://www.buzzard.me.uk/jonathan/radioclock.html&gt;

&lt;https://www.lemonfool.co.uk/viewtopic.php?t=15309&gt;

&lt;https://www.electronicsweekly.com/blogs/engineer-in-wonderland/nice-little-time-receiver-module-for-msf-or-wwvb-2024-05/&gt;

&lt;http://www.…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldap&amp;rev=1610237706&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-10T00:15:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>openldap</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldap&amp;rev=1610237706&amp;do=diff</link>
        <description>Open LDAP

Background Reading

&lt;http://www.syntaxtechnology.com/2009/09/openldap-on-centos-5-3-x86_64-part-1/&gt;

Config
[root@inet01 openldap]# pwd
/etc/openldap
[root@inet01 openldap]# ls -l
total 28
drwxr-xr-x  2 root root 4096 Jul  2  2008 cacerts       &lt;----- Certificate Directory
-rw-r--r--  1 root root  330 Nov 26  2008 ldap.conf     &lt;----- Client Config file
drwxr-xr-x  3 root root 4096 Jan  5  2009 schema        &lt;----- Schema files describing object classes
-rw-r-----  1 root ldap 3930 No…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapintro&amp;rev=1610237587&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-10T00:13:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>openldapintro</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapintro&amp;rev=1610237587&amp;do=diff</link>
        <description>OpenLDAP Intro

Structure

[Overview of setup]

OpenLDAP and other Directory Services

LDAP and Novell's eDirectory 

LDAP and Microsoft's MAD 

Authenticating against LDAP</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldaplogging&amp;rev=1610237767&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-10T00:16:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>openldaplogging</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldaplogging&amp;rev=1610237767&amp;do=diff</link>
        <description>OpenLDAP logging levels
 number  hex-value  log-name  Logging description  -1	0xFFFF		enable all logging 0	0x0000	-	logging inhibited - no logging occurs including critical errors. Not recommended. 1	0x1	acl	trace function calls 2	0x2	packets	debug packet handling</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapreplication&amp;rev=1610237822&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-10T00:17:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>openldapreplication</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapreplication&amp;rev=1610237822&amp;do=diff</link>
        <description>Replication

inet02 replicates its LDAP data base from inet01, the config for this is in /etc/openldap/slapd.conf at the bottom:-
syncrepl rid=123
                provider=ldap://inet01.domain.company.net:389
                type=refreshOnly
                interval=00:00:01:00
                searchbase=&quot;dc=domain,dc=company,dc=net&quot;
                scope=sub
                schemachecking=off
                updatedn=&quot;cn=Manager,dc=company,dc=net&quot;
                bindmethod=simple
             …</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapreplicationtest&amp;rev=1610237908&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-10T00:18:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>openldapreplicationtest</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:openldapreplicationtest&amp;rev=1610237908&amp;do=diff</link>
        <description>ldapreplicationtest.sh

 cat ldapreplicationtest.sh
#!/bin/bash
#Written Andrew Stringer, 25/03/2013 onwards to test ldap replication.
#This script will update value on master server and then check for updates on slave servers
#$1 should be update or check

#The attribute used to test replication is &quot;description&quot;

#turn on debugging, -x starts, +x stops
set +x

#Set up variables
BINDNAME=&quot;'cn=Andrew Stringer,ou=People,dc=prod,dc=wagerware,dc=net'&quot;
#BINDPASSWORD=&quot;'LetMeIn1234'&quot;
BINDPASSWORD=&quot;'Aug…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:pidgin-extract-sip-id&amp;rev=1670252095&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-05T14:54:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pidgin-extract-sip-id</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:pidgin-extract-sip-id&amp;rev=1670252095&amp;do=diff</link>
        <description>Extract SIP: address from MAD LDAP for Pidgin

Using Pidgin with Lync

Pidgin can talk to a MS Lync/Office Communicator server using the SIPE plugin. However, buddies are not populated. I have written a script which authenticates using LDAP to MAD and queries a Global Catalogue server for the SIP: attributes for all users in a specified OU.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:pidginconfigforlync&amp;rev=1719314388&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-25T11:19:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pidginconfigforlync</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:pidginconfigforlync&amp;rev=1719314388&amp;do=diff</link>
        <description>Accessing Lync with Pidgin

Note, this page is rather old and may be out of date.

Turns out to be really easy! See &lt;http://home.dataforce.org.uk/2012/04/microsoft-lync-on-linux/&gt; and &lt;http://itbasedtelco.wordpress.com/2012/03/11/lync-clients-something-more-for-linux-clients-voice/&gt;
[root@e6410 ~]# yum install pidgin-evolution pidgin-sipe finch
Settings are:-

Basic Tab:-

	*  Protocol - Office Communicator
	*</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:recover-raid-disk&amp;rev=1670251637&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-05T14:47:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>recover-raid-disk</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:recover-raid-disk&amp;rev=1670251637&amp;do=diff</link>
        <description>Recover RAID mirror disk from image file

Scenario

Failing hard disk in a 2 disk mirror, suspect disk problems as both disks seemed to suffer failures at the same time.

dd-recover used to copy each partition to an image file which needed mounting to allow data to be copied off for a holding filesystem.000</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:renameuser&amp;rev=1630157809&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-08-28T13:36:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>renameuser</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:renameuser&amp;rev=1630157809&amp;do=diff</link>
        <description>Rename User account

usermod -l modifies the login name, -g modifies the primary group and -m -d moves the users home directory.


usermod -l newname pi
usermod -g newgroup pi
usermod -m -d /home/newname newname</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:rootloginwarning&amp;rev=1610457573&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T13:19:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rootloginwarning</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:rootloginwarning&amp;rev=1610457573&amp;do=diff</link>
        <description>Root login warning

Edit /root/.bash_profile
isRootLoggedIn=`who |grep root |awk '{print $1}'`

if [ &quot;$isRootLoggedIn&quot; = &quot;root&quot; ]; then
echo &quot;ROOT logged into `hostname -s` on `date` was this expected?&quot; |mail -s &quot;ROOT logged in&quot; noc@company.com
fi</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:rpmcheatsheet&amp;rev=1649243599&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-04-06T11:13:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rpmcheatsheet</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:rpmcheatsheet&amp;rev=1649243599&amp;do=diff</link>
        <description>RPM Commands

See also Maximum RPM web book. This is a comprehensive guide to all the rpm options and gives helpful examples.


rpm command cheat sheet for Linux

rpm is a powerful Package Manager for Red Hat, Suse and Fedora Linux. It can be used to build, install, query, verify, update, and remove/erase individual software packages. A Package consists of an archive of files, and package information, including name, version, and description:</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:smartcards&amp;rev=1735318449&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-27T16:54:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>smartcards</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:smartcards&amp;rev=1735318449&amp;do=diff</link>
        <description>Smart cards

[Contact Smart Card]

Just a dumping ground for tests.

Dmesg


[1110228.380130] usb 1-3: new full-speed USB device number 87 using xhci_hcd
[1110228.537039] usb 1-3: New USB device found, idVendor=076b, idProduct=3021, bcdDevice= 3.02
[1110228.537054] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[1110228.537061] usb 1-3: Product: Smart Card Reader USB
[1110228.537066] usb 1-3: Manufacturer: OMNIKEY AG</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:smtp_protocol&amp;rev=1649262991&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-04-06T16:36:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>smtp_protocol</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:smtp_protocol&amp;rev=1649262991&amp;do=diff</link>
        <description>SMTP Protocol
S: 220 smtp.example.com ESMTP Postfix
C: HELO relay.example.org
S: 250 Hello relay.example.org, I am glad to meet you
C: MAIL FROM:&lt;bob@example.org&gt;
S: 250 Ok
C: RCPT TO:&lt;alice@example.com&gt;
S: 250 Ok
C: RCPT TO:&lt;theboss@example.com&gt;
S: 250 Ok
C: DATA
S: 354 End data with &lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;
C: From: &quot;Bob Example&quot; &lt;bob@example.org&gt;
C: To: Alice Example &lt;alice@example.com&gt;
C: Cc: theboss@example.com
C: Date: Tue, 15 Jan 2008 16:02:43 -0500
C: Subject: Test message
C:
C: Hello Alice.
C:…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ssh&amp;rev=1735562760&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-30T12:46:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ssh</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ssh&amp;rev=1735562760&amp;do=diff</link>
        <description>Secure Shell, ssh

The Secure Shell is basically an encrypted telnet, but it can do a lot more than telnet ever could such as tunnelling encrypted connections both in forward and reverse directions. Both clients and servers are available SSH on many operating systems.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:start&amp;rev=1735560727&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-30T12:12:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>start</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:start&amp;rev=1735560727&amp;do=diff</link>
        <description>Linux Index



Pages in this namespace:

	* apt-cheat-sheet
	* authagainstldap
	* autologinrunscript
	* avermedia-a815
	* backup
	* backupdnsconfig
	* backupdnsconfig2
	* backupldap1
	* bash
	* bash-generic-script-framework1
	* bash-getoptions
	* bash-json
	* bash-post-to-api
	* bash-quickguide
	* bash-quotes
	* bash-snippets
	* bash_aaart
	* bashshortcut
	* bios-codes
	* bluetooth-gps
	* brumlugldapnotes
	* centos8
	* centosnetwork
	* check_all_groups_exist.bash
	* check_duplicate_gids.sh
	* ch…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:supermicro-ipmi&amp;rev=1640906566&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-30T23:22:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>supermicro-ipmi</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:supermicro-ipmi&amp;rev=1640906566&amp;do=diff</link>
        <description>SuperMicro Super Doctor 5

Background

SuperDoctor is Supermicro's hardware monitoring platform, it enables a view of the motherboard parameters such as fan speed and temperature.

Software

Download the latest from:- 

&lt;ftp://ftp.supermicro.com/utility/SuperDoctor_5/Linux/&gt;

This ftp site is really sloooowww, so it is better to use a cached local version if the release number is the same.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:syslog&amp;rev=1718621768&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-17T10:56:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>syslog</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:syslog&amp;rev=1718621768&amp;do=diff</link>
        <description>Remote Syslog

Sending to Graylog rsyslog
# cat /etc/rsyslog.d/60.graylog.conf
# Send syslog to Graylog
*.* @@192.168.5.27:514;RSYSLOG_SyslogProtocol23Format
Cisco IOS

Set buffer on router to limit message loss
logging buffered 51200 warnings

service timestamps log datetime msec

logging trap notifications
logging origin-id hostname
logging facility local3
logging 192.168.1.1
logging host 192.168.5.27 transport udp port 11001</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:syslogtotty&amp;rev=1610536621&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-13T11:17:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>syslogtotty</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:syslogtotty&amp;rev=1610536621&amp;do=diff</link>
        <description>Send syslog messages to tty

In /etc/syslog.conf add:-
mail.*                       /dev/tty11
auth.*;authpriv.*;!mail.*    /dev/tty10
This will send all mail level messages to Atl-F11 and all system messages to Alt-F12.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:systemload-script&amp;rev=1739186126&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-10T11:15:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>systemload-script</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:systemload-script&amp;rev=1739186126&amp;do=diff</link>
        <description>System Load script


#!/bin/bash

# get load from /proc as it's easier to parse then w or top etc.

LOAD=$(cat /proc/loadavg)

onemin=$(echo $LOAD | cut -d ' ' -f 1)
fivemins=$(echo $LOAD | cut -d ' ' -f 2)
fifteenmins=$(echo $LOAD | cut -d ' ' -f 3)
restofline=$(echo $LOAD | cut -d ' ' -f 4-)

printf &quot;1 min\t 5 mins\t 15 mins\n&quot;
printf &quot;${onemin}\t ${fivemins}\t ${fifteenmins}\n\n&quot;

printf &quot;Rest of line %s\n&quot; &quot;${restofline}&quot;</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:testfilextension&amp;rev=1610469293&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T16:34:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>testfilextension</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:testfilextension&amp;rev=1610469293&amp;do=diff</link>
        <description>#!/bin/bash
#

FILE=REG_20110727.csv


if [[ $FILE =~ csv$ ]]
     then
         echo &quot;File ends .csv&quot;
     else
        echo &quot;File does not end .csv, so adding extension.&quot;
         #mv ${FILE} ${FILE}.csv 

fi</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:trap-ctl-c&amp;rev=1632824999&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-09-28T10:29:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>trap-ctl-c</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:trap-ctl-c&amp;rev=1632824999&amp;do=diff</link>
        <description>Trap Ctrl-C in script


#!/bin/bash

#trapping Control + C
#these statements must be the first statements in the script to trap the CTRL C event

trap ctrl_c INT

function ctrl_c()  {
        logMsgToConfigSysLog &quot;INFO&quot; &quot;INFO: Aborting the script.&quot;
        exit 1
}

#Rest of script</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntu1804netplan&amp;rev=1642175855&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-14T15:57:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ubuntu1804netplan</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntu1804netplan&amp;rev=1642175855&amp;do=diff</link>
        <description>Ubuntu 18.04 Netplan

Intro

Ubuntu 18.04 used a YAML based file with Netplan to configure the networking. I need to set up a server for virtualisation hosting with bonded uplinks to the ethernet switch.

This page build on the basic config to have a bonded ethernet with a vlan driver next to pick off vlans from the bond0 interface, and then the bridging driver on the vlans to allow a guest to connect to any vlan presented.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntunetwork&amp;rev=1642114083&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-13T22:48:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ubuntunetwork</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntunetwork&amp;rev=1642114083&amp;do=diff</link>
        <description>Ubuntu Network Config

Ubuntu uses /etc/network/interfaces for all the network definitions.

This is valid for Ubuntu prior to Ubuntu 18.04, for networking in 18.04, see page on Ubuntu 18.04 Netplan

Static


# The primary network interface
auto eth0
iface eth0 inet static
        address 192.168.110.16
        netmask 255.255.255.0
        network 192.168.110.0
        broadcast 192.168.110.255
        gateway 192.168.110.1
        # dns-* options are implemented by the resolvconf package, if i…</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntupatching&amp;rev=1678456712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-10T13:58:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ubuntupatching</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ubuntupatching&amp;rev=1678456712&amp;do=diff</link>
        <description>Ubuntu Patching

apt-get update first to get current packages available.

apt-get upgrade - man apt-get:- Using upgrade keeps to the rule: under no circumstances are currently installed packages removed, or packages not already installed retrieved and installed.</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ufw-cheet-sheet&amp;rev=1610537181&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-13T11:26:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ufw-cheet-sheet</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:ufw-cheet-sheet&amp;rev=1610537181&amp;do=diff</link>
        <description>UFW (Firewall) Cheat Sheet

ufw =&gt; Uncomplicated FireWall

Display Rules in force
root@s6-mc:~# ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    83.244.144.48/28
[ 2] 11211                      ALLOW IN    192.168.177.183
[ 3] 11211                      ALLOW IN    192.168.145.140
[ 4] 11211                      ALLOW IN    192.168.129.71
[ 5] 11211                    …</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:vicheatsheet&amp;rev=1649263067&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-04-06T16:37:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vicheatsheet</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:vicheatsheet&amp;rev=1649263067&amp;do=diff</link>
        <description>vi cheat-sheet

a. cursor movements (items below are sometimes called objects): 
      h - left one character 
      l - right one character 
      j - down one line 
      k - up one line 
      w - right one word 
      b - back one word 
      $ - to the end of line 
      0 - to the beginning of the line 
      ) - right one sentence 
      ( - left one sentence 
      } - right one paragraph 
      { - left one paragraph 
      Ctrl-F - forward one page 
      Ctrl-B - back one page 
      …</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:vnc&amp;rev=1705661689&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-19T10:54:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vnc</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:vnc&amp;rev=1705661689&amp;do=diff</link>
        <description>Linux VNC

&lt;https://samarth-robo.github.io/blog/2020/09/28/vnc_multiuser.html&gt;</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:write-cdrom-cli&amp;rev=1621592628&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-05-21T10:23:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>write-cdrom-cli</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:write-cdrom-cli&amp;rev=1621592628&amp;do=diff</link>
        <description>Write cdrom from CLI

Command line CDROM writing
Identify the device to use:-


[root@thinkcentre1 slackware]# cdrecord --devices
wodim: Overview of accessible drives (1 found) :
-------------------------------------------------------------------------
 0  dev='/dev/scd0'     rwrw-- : 'HL-DT-ST' 'DVD-RAM GSA-H60L'
-------------------------------------------------------------------------</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:xforwarding&amp;rev=1610469172&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T16:32:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>xforwarding</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:xforwarding&amp;rev=1610469172&amp;do=diff</link>
        <description>Running GUI over ssh with X forwarding and su

If you need to run jnbSA as root from an su session, it won't work without some prior steps. This is due to the MIT magic cookie not being forwarded from your user session to the root su session.

This can be fixed by</description>
    </item>
    <item rdf:about="https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:yum-cheat-sheet&amp;rev=1610469517&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-12T16:38:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>yum-cheat-sheet</title>
        <link>https://www.rainsbrook.co.uk/wiki/doku.php?id=linux:yum-cheat-sheet&amp;rev=1610469517&amp;do=diff</link>
        <description>Yum Cheatsheet

Yum with proxy
# The proxy server - proxy server:port number
proxy=http://mycache.mydomain.com:3128</description>
    </item>
</rdf:RDF>
