<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>dcglug &amp;mdash; Paul Sutton</title>
    <link>https://personaljournal.ca/paulsutton/tag:dcglug</link>
    <description>Personal Blog</description>
    <pubDate>Wed, 13 May 2026 23:35:37 +0000</pubDate>
    <item>
      <title>Tinkerers Meeting - June 2025</title>
      <link>https://personaljournal.ca/paulsutton/tinkerers-meeting-june-2025</link>
      <description>&lt;![CDATA[Tinkerers Meeting - June 2025&#xA;&#xA;The next meeting of the Tor bay Tinkerers group will be on Saturday 28th June 2025 from 9:30am&#xA;&#xA;We meet at:-&#xA;&#xA;STEAM Café &amp; Discovery Centre&#xA;13 Torbay Road, Paignton.&#xA;&#xA;We usually start off in the café, then move in to the back room, where the discovery centre is.   However, we may also visit the Tea Shed which is in the Hyperspace café, this is located a short distance away in Victoria Square.  &#xA;&#xA;We will let the staff at the café know where we are, please ask.&#xA;&#xA;Possible topics&#xA;&#xA;Dragster Race Car update&#xA;Obstacle Robot update&#xA;Update : Arduino CNC Control updates&#xA;Arduino LCD&#xA;Lego Robots&#xA;What ever else comes up&#xA;&#xA;If you would like to ask any questions, please message Helen via our Facebook page&#xA;&#xA;Or message Paul via the DCGLUG Matrix Room&#xA;&#xA;Related Links&#xA;&#xA;UK Micromouse and Robotics Society&#xA;&#xA;Invite open to:&#xA;   Open Street mappers&#xA;   Members of the Devon, Cornwall &amp; SW Linux user group&#xA;&#xA;Tags&#xA;&#xA;#Torbay,#Tinkerers&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Tinkerers Meeting – June 2025</p>

<p>The next meeting of the <a href="http://www.tinkerers.uk/" rel="nofollow">Tor bay Tinkerers</a> group will be on <strong>Saturday 28th June 2025</strong> from 9:30am</p>

<p>We meet at:-</p>

<p><a href="https://www.facebook.com/people/STEAM-Paignton/61564393025280/" rel="nofollow">STEAM Café &amp; Discovery Centre</a>
13 Torbay Road, Paignton.</p>

<p>We usually start off in the café, then move in to the back room, where the discovery centre is.   However, we may also visit the Tea Shed which is in the Hyperspace café, this is located a short distance away in Victoria Square.</p>

<p>We will let the staff at the café know where we are, please ask.</p>

<p><strong>Possible topics</strong></p>
<ul><li>Dragster Race Car update</li>
<li>Obstacle Robot update</li>
<li>Update : Arduino CNC Control updates</li>
<li>Arduino LCD</li>
<li>Lego Robots</li>
<li>What ever else comes up</li></ul>

<p>If you would like to ask any questions, please message Helen via our <a href="https://www.facebook.com/profile.php?id=61554348046709" rel="nofollow">Facebook page</a></p>

<p>Or message Paul via the <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">DCGLUG Matrix Room</a></p>

<p><strong>Related Links</strong></p>
<ul><li><p><a href="https://ukmars.org/" rel="nofollow">UK Micromouse and Robotics Society</a></p></li>

<li><p>Invite open to:</p>
<ul><li><a href="https://www.openstreetmap.org/#map=17/50.436526/-3.564886" rel="nofollow">Open Street mappers</a></li>
<li>Members of the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon, Cornwall &amp; SW Linux user group</a></li></ul></li></ul>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Torbay" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Torbay</span></a>,<a href="/paulsutton/tag:Tinkerers" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Tinkerers</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/tinkerers-meeting-june-2025</guid>
      <pubDate>Fri, 27 Jun 2025 06:00:00 +0000</pubDate>
    </item>
    <item>
      <title>ssh - secure shell</title>
      <link>https://personaljournal.ca/paulsutton/ssh-secure-shell</link>
      <description>&lt;![CDATA[ssh - secure shell&#xA;&#xA;Secure shell is a remote login client.   The following is from the man page&#xA;&#xA;DESCRIPTION&#xA;       ssh (SSH client) is a program for logging into a remote machine and for executing  commands on a remote machine.  It is intended to provide secure encrypted communications between two untrusted hosts over an insecure network.  X11 connections, arbitrary  TCP  ports  and  Unix-domain sockets can also be forwarded over the secure channel.&#xA;So as mentioned before, vfsync can&#39;t do everything, so if you do need a full Linux system to log in to and install what you want.  By this, I am saying you also need to at least have sudo access to that remote system, even if this is a Raspberry Pi. &#xA; &#xA;While being able to log in with &#xA;&#xA;ssh user@host &#xA;Is useful, you still need a password,  which is fine.  If you want to use some services provided by [vern.cc] then you need to be able to log in with an authentication key.  This can be generated with&#xA;&#xA;ssh-keygen&#xA;DESCRIPTION&#xA;       ssh-keygen generates, manages  and  converts  authentication  keys  for  ssh(1).  ssh-keygen can create keys for use by SSH protocol version 2.&#xA;Which will generate a public / private key pair&#xA;&#xA;man ssh-copy-id &#xA;&#xA;NAME&#xA;       ssh-copy-id  —  use locally available keys to authorise logins on a re‐mote machine&#xA;&#xA;DESCRIPTION&#xA;       ssh-copy-id  is  a script that uses ssh(1) to log into a remote machine  (presumably using a login password, so password  authentication  should be enabled, unless you&#39;ve done some clever use of multiple identities).  It  assembles  a  list of one or more fingerprints (as described below) and tries to log in with each key, to see if any of  them  are  already installed (of course, if you are not using ssh-agent(1) this may result  in  you being repeatedly prompted for pass-phrases).  It then assembles a list of those that failed to log in and, using ssh(1), enables logins with those keys on the remote server.  By default it adds the  keys  by appending  them  to  the remote user&#39;s ~/.ssh/authorized_keys (creating  the file, and directory, if necessary).  It is also capable of  detecting if the remote system is a NetScreen, and using its ‘set ssh pka-dsa&#xA;       key ...’ command instead.&#xA;&#xA;There is some good information here too&#xA;&#xA;ssh cheat sheet&#xA;&#xA;The following allowed me to remote login to my Raspberry Pi  from my desktop&#xA;&#xA;cd .ssh (I did this so I was in the right place to generate the key)&#xA;ssh-keygen&#xA;ssh-copy-id -i ~/.ssh/Pi4.pub paul@xxx.xxx.xxx.xxx&#xA;ssh paul@xxx.xxx.xxx.xxx&#xA;Login with password, and you will be asked for the passphrase the first time you do this.  After which, you will be able to just ssh in without the password. &#xA;&#xA;Replace the x&#39;s with your IPv4 address. &#xA;&#xA;While using vern,  I had to use&#xA;ssh-keygen -lf ./key.pub&#xA;To address an error, it came up with about keyboard authentication.    This worked for me,  but should not &#39;just&#39; be used in every situation.&#xA;&#xA;Graphical ssh&#xA;&#xA;With Linux mint, it is also possible to connect the file manager nemo to a remote server.&#xA;&#xA;File -  Connect to server, then fill in the credentials.&#xA;&#xA;Remote with nemo&#xA;&#xA;With folder, it is probably a good idea to enter the path to your home directory on the remote server, so for a Raspberry Pi with a default username of pi, this is:-&#xA;&#xA;/home/pi&#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Bash,#Linux,#ssh,#RemoteAccess,#Security,#SSHKeys,#SecureShell&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>ssh – secure shell</p>

<p>Secure shell is a remote login client.   The following is from the man page</p>

<pre><code>DESCRIPTION
       ssh (SSH client) is a program for logging into a remote machine and for executing  commands on a remote machine.  It is intended to provide secure encrypted communications between two untrusted hosts over an insecure network.  X11 connections, arbitrary  TCP  ports  and  Unix-domain sockets can also be forwarded over the secure channel.
</code></pre>

<p>So as mentioned before, <a href="https://personaljournal.ca/paulsutton/vfsync" rel="nofollow">vfsync</a> can&#39;t do everything, so if you do need a full Linux system to log in to and install what you want.  By this, I am saying you also need to at least have sudo access to that remote system, even if this is a Raspberry Pi.</p>

<p>While being able to log in with</p>

<pre><code>ssh user@host 
</code></pre>

<p>Is useful, you still need a password,  which is fine.  If you want to use some services provided by [vern.cc] then you need to be able to log in with an authentication key.  This can be generated with</p>

<pre><code>ssh-keygen
</code></pre>

<pre><code>DESCRIPTION
       ssh-keygen generates, manages  and  converts  authentication  keys  for  ssh(1).  ssh-keygen can create keys for use by SSH protocol version 2.
</code></pre>

<p>Which will generate a public / private key pair</p>

<pre><code>man ssh-copy-id 

NAME
       ssh-copy-id  —  use locally available keys to authorise logins on a re‐mote machine

DESCRIPTION
       ssh-copy-id  is  a script that uses ssh(1) to log into a remote machine  (presumably using a login password, so password  authentication  should be enabled, unless you&#39;ve done some clever use of multiple identities).  It  assembles  a  list of one or more fingerprints (as described below) and tries to log in with each key, to see if any of  them  are  already installed (of course, if you are not using ssh-agent(1) this may result  in  you being repeatedly prompted for pass-phrases).  It then assembles a list of those that failed to log in and, using ssh(1), enables logins with those keys on the remote server.  By default it adds the  keys  by appending  them  to  the remote user&#39;s ~/.ssh/authorized_keys (creating  the file, and directory, if necessary).  It is also capable of  detecting if the remote system is a NetScreen, and using its ‘set ssh pka-dsa
       key ...’ command instead.
</code></pre>

<p>There is some <a href="https://www.ssh.com/academy/ssh/copy-id" rel="nofollow">good information here too</a></p>
<ul><li><a href="https://www.sshhandbook.com/ssh-command-cheat-sheet/" rel="nofollow">ssh cheat sheet</a></li></ul>

<p>The following allowed me to remote login to my Raspberry Pi  from my desktop</p>

<pre><code>cd .ssh (I did this so I was in the right place to generate the key)
ssh-keygen
ssh-copy-id -i ~/.ssh/Pi4.pub paul@xxx.xxx.xxx.xxx
ssh paul@xxx.xxx.xxx.xxx
</code></pre>

<p>Login with password, and you will be asked for the passphrase the first time you do this.  After which, you will be able to just ssh in without the password.</p>

<p>Replace the x&#39;s with your IPv4 address.</p>

<p>While using vern,  I had to use</p>

<pre><code>ssh-keygen -lf ./key.pub
</code></pre>

<p>To address an error, it came up with about keyboard authentication.    This worked for me,  but should not &#39;just&#39; be used in every situation.</p>

<p>Graphical ssh</p>

<p>With Linux mint, it is also possible to connect the file manager nemo to a remote server.</p>

<p>File –&gt; Connect to server, then fill in the credentials.</p>

<p><img src="https://salsa.debian.org/zleap-guest/blog-media/-/raw/master/connecttoserver.png" alt="Remote with nemo"></p>

<p>With folder, it is probably a good idea to enter the path to your home directory on the remote server, so for a Raspberry Pi with a default username of pi, this is:-</p>

<pre><code>/home/pi
</code></pre>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bash</span></a>,<a href="/paulsutton/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a>,<a href="/paulsutton/tag:ssh" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">ssh</span></a>,<a href="/paulsutton/tag:RemoteAccess" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">RemoteAccess</span></a>,<a href="/paulsutton/tag:Security" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Security</span></a>,<a href="/paulsutton/tag:SSHKeys" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">SSHKeys</span></a>,<a href="/paulsutton/tag:SecureShell" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">SecureShell</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/ssh-secure-shell</guid>
      <pubDate>Tue, 20 May 2025 14:56:10 +0000</pubDate>
    </item>
    <item>
      <title>Tinkerers Meeting - May 2025</title>
      <link>https://personaljournal.ca/paulsutton/tinkerers-meeting-may-2025</link>
      <description>&lt;![CDATA[Tinkerers Meeting - May 2025&#xA;&#xA;The next meeting of the Tor bay Tinkerers group will be on Saturday 24th May 2025 from 9:30am&#xA;&#xA;We meet at:-&#xA;&#xA;STEAM Cafe &amp; Discovery Centre&#xA;13 Torbay Road, Paignton.&#xA;&#xA;Possible topics&#xA;&#xA;Dragster Race Car update&#xA;Obstacle Robot update&#xA;Update- Arduino CNC Control&#xA;What ever else comes up&#xA;Invite open to:&#xA;   Open Street mappers&#xA;   Members of the Devon, Cornwall &amp; SW Linux user group&#xA;&#xA;To give you an idea of what we have been up to, please see the write-ups on this blog.&#xA;&#xA;If you would like to ask any questions, please message Helen via our Facebook page&#xA;&#xA;Or message Paul via the DCGLUG Matrix Room&#xA;&#xA;Related Links&#xA;&#xA;UK Micromouse and Robotics Society&#xA;&#xA;Tags&#xA;&#xA;#Torbay,#Tinkerers&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Tinkerers Meeting – May 2025</p>

<p>The next meeting of the <a href="http://www.tinkerers.uk/" rel="nofollow">Tor bay Tinkerers</a> group will be on <strong>Saturday 24th May</strong> 2025 from 9:30am</p>

<p>We meet at:-</p>

<p><a href="https://www.facebook.com/people/STEAM-Paignton/61564393025280/" rel="nofollow">STEAM Cafe &amp; Discovery Centre</a>
13 Torbay Road, Paignton.</p>

<p><strong>Possible topics</strong></p>
<ul><li>Dragster Race Car update</li>
<li>Obstacle Robot update</li>
<li>Update- Arduino CNC Control</li>
<li>What ever else comes up</li>
<li>Invite open to:
<ul><li><a href="https://www.openstreetmap.org/#map=17/50.436526/-3.564886" rel="nofollow">Open Street mappers</a></li>
<li>Members of the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon, Cornwall &amp; SW Linux user group</a></li></ul></li></ul>

<p>To give you an idea of what we have been up to, please see the write-ups on this blog.</p>

<p>If you would like to ask any questions, please message Helen via our <a href="https://www.facebook.com/profile.php?id=61554348046709" rel="nofollow">Facebook page</a></p>

<p>Or message Paul via the <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">DCGLUG Matrix Room</a></p>

<p><strong>Related Links</strong></p>
<ul><li><a href="https://ukmars.org/" rel="nofollow">UK Micromouse and Robotics Society</a></li></ul>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Torbay" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Torbay</span></a>,<a href="/paulsutton/tag:Tinkerers" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Tinkerers</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/tinkerers-meeting-may-2025</guid>
      <pubDate>Sun, 18 May 2025 12:13:17 +0000</pubDate>
    </item>
    <item>
      <title>Bash Shortcuts</title>
      <link>https://personaljournal.ca/paulsutton/bash-shortcuts</link>
      <description>&lt;![CDATA[Bash Shortcuts&#xA;&#xA;This question was asked on the Linux Mint Matrix Support recently, I helped by looking up what was needed, and posting this as a reply, As this is also really useful and worth sharing more widely too.&#xA;&#xA;Bash Shortcuts&#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Bash,#BashScripting,#Bashscripting,#Keyboard,#Shortcuts&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Bash Shortcuts</p>

<p>This question was asked on the Linux Mint Matrix Support recently, I helped by looking up what was needed, and posting this as a reply, As this is also really useful and worth sharing more widely too.</p>
<ul><li><a href="https://www.howtogeek.com/181/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/" rel="nofollow">Bash Shortcuts</a></li></ul>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bash</span></a>,<a href="/paulsutton/tag:BashScripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">BashScripting</span></a>,<a href="/paulsutton/tag:Bashscripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bashscripting</span></a>,<a href="/paulsutton/tag:Keyboard" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Keyboard</span></a>,<a href="/paulsutton/tag:Shortcuts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Shortcuts</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/bash-shortcuts</guid>
      <pubDate>Thu, 15 May 2025 12:00:00 +0000</pubDate>
    </item>
    <item>
      <title>File integrity</title>
      <link>https://personaljournal.ca/paulsutton/file-integrity</link>
      <description>&lt;![CDATA[File integrity&#xA;&#xA;If providing downloadable files, it is important to ensure that the downloaded file is the same as that provided on the host server, this ensures the file has not been tampered with in some way.  The end user needs a way to check what they have downloaded is safe.&#xA;&#xA;One way to do this is to create a file checksum with md5sum&#xA;&#xA;let&#39;s say we have two files&#xA;-rw-rw-r-- 1 psutton psutton  67200 May  3 19:42 jcr.pdf&#xA;-rw-rw-r-- 1 psutton psutton 433231 Apr 28 17:50 southwest1.png&#xA;We want to create a checksum for both files.  To do this we can run&#xA;&#xA;md5sum southwest1.png &#xA;502d4f9dacab9240f2622c032e6ea11f  southwest1.png&#xA;md5sum jcr.pdf &#xA;b98edf4dd0afd0ede8ac6dabce66f522  jcr.pdf&#xA;This sends the checksum to stdout&#xA;&#xA;So need a file to store this&#xA;&#xA;md5sum jcr.pdf southwest1.png   md5sum2&#xA;We can then view the contents if this with&#xA;&#xA;as previously discussed the   directs output to a specified file&#xA;&#xA;cat md5sums&#xA;502d4f9dacab9240f2622c032e6ea11f  southwest1.png&#xA;b98edf4dd0afd0ede8ac6dabce66f522  jcr.pdf&#xA;&#xA;In this example, we listed the files we want to create a checksum for.&#xA;&#xA;If we were to add a 3rd file say tux.png  then we can do this and append the new checksum with&#xA;md5sum tux.png     md5sums&#xA;Then example our new md5sums file&#xA;cat md5sums&#xA;502d4f9dacab9240f2622c032e6ea11f  southwest1.png&#xA;b98edf4dd0afd0ede8ac6dabce66f522  jcr.pdf&#xA;d52cd5e7164eccd6da50e10d5a9c3dbf  tux.png&#xA;&#xA;So now that we have 3 files and a md5sums file,  we can check all the files listed&#xA;&#xA;md5sum -c md5sums&#xA;southwest1.png: OK&#xA;jcr.pdf: OK&#xA;tux.png: OK&#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Bash,#BashScripting,#Bashscripting,#md5sums,#md5sum,#file,&#xA;#integrity,#check&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>File integrity</p>

<p>If providing downloadable files, it is important to ensure that the downloaded file is the same as that provided on the host server, this ensures the file has not been tampered with in some way.  The end user needs a way to check what they have downloaded is safe.</p>

<p>One way to do this is to create a file checksum with md5sum</p>

<p>let&#39;s say we have two files</p>

<pre><code>-rw-rw-r-- 1 psutton psutton  67200 May  3 19:42 jcr.pdf
-rw-rw-r-- 1 psutton psutton 433231 Apr 28 17:50 southwest1.png
</code></pre>

<p>We want to create a checksum for both files.  To do this we can run</p>

<pre><code>md5sum southwest1.png 
502d4f9dacab9240f2622c032e6ea11f  southwest1.png
md5sum jcr.pdf 
b98edf4dd0afd0ede8ac6dabce66f522  jcr.pdf
</code></pre>

<p>This sends the checksum to stdout</p>

<p>So need a file to store this</p>

<pre><code>md5sum jcr.pdf southwest1.png &gt; md5sum2
</code></pre>

<p>We can then view the contents if this with</p>

<p><em>as previously discussed the &gt; directs output to a specified file</em></p>

<pre><code>cat md5sums
502d4f9dacab9240f2622c032e6ea11f  southwest1.png
b98edf4dd0afd0ede8ac6dabce66f522  jcr.pdf
</code></pre>

<p>In this example, we listed the files we want to create a checksum for.</p>

<p>If we were to add a 3rd file say tux.png  then we can do this and append the new checksum with</p>

<pre><code>md5sum tux.png &gt;&gt; md5sums
</code></pre>

<p>Then example our new md5sums file</p>

<pre><code>cat md5sums
502d4f9dacab9240f2622c032e6ea11f  southwest1.png
b98edf4dd0afd0ede8ac6dabce66f522  jcr.pdf
d52cd5e7164eccd6da50e10d5a9c3dbf  tux.png
</code></pre>

<p>So now that we have 3 files and a md5sums file,  we can check all the files listed</p>

<pre><code>md5sum -c md5sums
southwest1.png: OK
jcr.pdf: OK
tux.png: OK
</code></pre>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bash</span></a>,<a href="/paulsutton/tag:BashScripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">BashScripting</span></a>,<a href="/paulsutton/tag:Bashscripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bashscripting</span></a>,<a href="/paulsutton/tag:md5sums" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">md5sums</span></a>,<a href="/paulsutton/tag:md5sum" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">md5sum</span></a>,<a href="/paulsutton/tag:file" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">file</span></a>,
<a href="/paulsutton/tag:integrity" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">integrity</span></a>,<a href="/paulsutton/tag:check" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">check</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/file-integrity</guid>
      <pubDate>Thu, 15 May 2025 06:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Linux support for 486 and other CPUs</title>
      <link>https://personaljournal.ca/paulsutton/linux-support-for-486-and-other-cpus</link>
      <description>&lt;![CDATA[Linux support for 486 and other CPUs &#xA;&#xA;Linux developers consider discontinuing support for 486 and other CPUs &#xA;&#xA;Linux support for 486 processors&#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#IT #Linux #LinuxKernel #Prozessoren #news&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Linux support for 486 and other CPUs</p>

<p>Linux developers consider discontinuing support for 486 and other CPUs</p>

<p><a href="https://www.heise.de/en/news/Linux-developers-consider-discontinuing-support-for-486-and-other-CPUs-10363824.html?wt_mc=sm.red.ho.mastodon.mastodon.md_beitraege.md_beitraegel" rel="nofollow">Linux support for 486 processors</a></p>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:IT" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">IT</span></a> <a href="/paulsutton/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/paulsutton/tag:LinuxKernel" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">LinuxKernel</span></a> <a href="/paulsutton/tag:Prozessoren" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Prozessoren</span></a> <a href="/paulsutton/tag:news" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">news</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/linux-support-for-486-and-other-cpus</guid>
      <pubDate>Wed, 14 May 2025 06:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Fun bash stuff</title>
      <link>https://personaljournal.ca/paulsutton/fun-bash-stuff</link>
      <description>&lt;![CDATA[Fun bash stuff&#xA;&#xA;While these are not bash commands, there are a few fun tools.&#xA;&#xA;One is fortune,  this displays a random quote on the console or terminal.&#xA;&#xA;fortune&#xA;Many pages make a thick book, except for pocket Bibles which are on very&#xA;very thin paper.&#xA;Another is cowsay which takes an argument and prints a picture of a cow (there are options to change how it looks or to other characters)&#xA;&#xA;cowsay hello&#xA; ____&#xA; hello &#xA; -------&#xA;        \   ^^&#xA;         \  (oo)\___&#xA;            ()\       )\/\&#xA;                ||----w |&#xA;                ||     ||&#xA;&#xA;As with other commands these can be combined&#xA;fortune | cowsay&#xA; ____________________________________&#xA;/ I don&#39;t know half of you half as well  \&#xA;| as I should like; and I like less than |&#xA;| half of you half as well as you        |&#xA;| deserve.                               |&#xA;|                                        |&#xA;\ -- J. R. R. Tolkien                    /&#xA; ----------------------------------------&#xA;        \   ^^&#xA;         \  (oo)\___&#xA;            ()\       )\/\&#xA;                ||----w |&#xA;                ||     ||&#xA;&#xA;Options&#xA;cowsay -f tux hello&#xA; _____&#xA; hello &#xA; -------&#xA;   \&#xA;    \&#xA;        .--.&#xA;       |oo |&#xA;       |:/ |&#xA;      //   \ \&#xA;     (|     | )&#xA;    /&#39;\   /`\&#xA;    \)=(/&#xA;&#xA;cowsay -f daemon hello&#xA; ___&#xA; hello &#xA; -------&#xA;   \         ,        ,&#xA;    \       /(        )`&#xA;     \      \ \   / |&#xA;            /-   `-/  &#39;&#xA;           (/\/ \ \   /\&#xA;           / /   | `    \&#xA;           O O   ) /    |&#xA;           -^--&#39;&lt;     &#39;&#xA;          (.)    )   /&#xA;           ./    /&#xA;             `-----&#39; /&#xA;&lt;----.      /    \&#xA;&lt;----|====O)))==) \) /====&#xA;&lt;----&#39;    --&#39; .,&#39; \&#xA;             |        |&#xA;              \       /&#xA;        _____( (  / \___&#xA;      ,&#39;  ,-----&#39;   |        \&#xA;      `--{_______)        \/&#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Bash.#BashScripting,#Bashscripting,#Cowsay,#Fortune&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Fun bash stuff</p>

<p>While these are not bash commands, there are a few fun tools.</p>

<p>One is fortune,  this displays a random quote on the console or terminal.</p>

<pre><code>fortune
Many pages make a thick book, except for pocket Bibles which are on very
very thin paper.
</code></pre>

<p>Another is cowsay which takes an argument and prints a picture of a cow (there are options to change how it looks or to other characters)</p>

<pre><code>cowsay hello
 _______
&lt; hello &gt;
 -------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

</code></pre>

<p>As with other commands these can be combined</p>

<pre><code>fortune | cowsay
 ________________________________________
/ I don&#39;t know half of you half as well  \
| as I should like; and I like less than |
| half of you half as well as you        |
| deserve.                               |
|                                        |
\ -- J. R. R. Tolkien                    /
 ----------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
</code></pre>

<p>Options</p>

<pre><code>cowsay -f tux hello
 _______
&lt; hello &gt;
 -------
   \
    \
        .--.
       |o_o |
       |:_/ |
      //   \ \
     (|     | )
    /&#39;\_   _/`\
    \___)=(___/

</code></pre>

<pre><code>cowsay -f daemon hello
 _______
&lt; hello &gt;
 -------
   \         ,        ,
    \       /(        )`
     \      \ \___   / |
            /- _  `-/  &#39;
           (/\/ \ \   /\
           / /   | `    \
           O O   ) /    |
           `-^--&#39;`&lt;     &#39;
          (_.)  _  )   /
           `.___/`    /
             `-----&#39; /
&lt;----.     __ / __   \
&lt;----|====O)))==) \) /====
&lt;----&#39;    `--&#39; `.__,&#39; \
             |        |
              \       /
        ______( (_  / \______
      ,&#39;  ,-----&#39;   |        \
      `--{__________)        \/

</code></pre>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bash</span></a>.<a href="/paulsutton/tag:BashScripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">BashScripting</span></a>,<a href="/paulsutton/tag:Bashscripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bashscripting</span></a>,<a href="/paulsutton/tag:Cowsay" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Cowsay</span></a>,<a href="/paulsutton/tag:Fortune" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Fortune</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/fun-bash-stuff</guid>
      <pubDate>Tue, 13 May 2025 07:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Docker Containers</title>
      <link>https://personaljournal.ca/paulsutton/docker-containers</link>
      <description>&lt;![CDATA[Docker Containers&#xA;&#xA;I don&#39;t have any experience with Docker or similar tech, but as this is popular, I am going to try and link to some tutorials for popular services, If these are useful great.   I will give this a go at some point, but it will be more for learning rather than production.&#xA;&#xA;Docker&#xA;    Docker Getting started&#xA;Running Peertube in Docker&#xA;Running Mastodon in Docker&#xA;Running PixelFed in Docker&#xA;Running NextCloud in Docker&#xA;Running NGINX in Docker&#xA;Ansible&#xA;&#xA;Links&#xA;&#xA;Matrix Docker Help&#xA;DCGLUG Matrix&#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Container,#Docker,#Deployment,#Mastodon,#PixelFed,#Peertube,#NextCloud,#NGINX,#Ansible&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Docker Containers</p>

<p>I don&#39;t have any experience with Docker or similar tech, but as this is popular, I am going to try and link to some tutorials for popular services, If these are useful great.   I will give this a go at some point, but it will be more for learning rather than production.</p>
<ul><li><a href="https://www.docker.com/" rel="nofollow">Docker</a>
<ul><li><a href="https://docs.docker.com/get-started/" rel="nofollow">Docker Getting started</a></li></ul></li>
<li><a href="https://docs.joinpeertube.org/install/docker" rel="nofollow">Running Peertube in Docker</a></li>
<li><a href="https://www.howtoforge.com/how-to-install-mastodon-social-network-with-docker-on-ubuntu-1804/" rel="nofollow">Running Mastodon in Docker</a></li>
<li><a href="https://mattedwards.org/2022/02/setup-pixelfed-using-docker/" rel="nofollow">Running PixelFed in Docker</a></li>
<li><a href="https://linuxiac.com/how-to-install-nextcloud-with-docker-compose/" rel="nofollow">Running NextCloud in Docker</a></li>
<li><a href="https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-docker/" rel="nofollow">Running NGINX in Docker</a></li>
<li><a href="https://docs.ansible.com/ansible/latest/collections/community/docker/index.html" rel="nofollow">Ansible</a></li></ul>

<p><strong>Links</strong></p>
<ul><li><a href="https://matrix.to/#/%23stash-docker-help:unredacted.org" rel="nofollow">Matrix Docker Help</a></li>
<li><a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">DCGLUG Matrix</a></li></ul>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Container" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Container</span></a>,<a href="/paulsutton/tag:Docker" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Docker</span></a>,<a href="/paulsutton/tag:Deployment" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Deployment</span></a>,<a href="/paulsutton/tag:Mastodon" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Mastodon</span></a>,<a href="/paulsutton/tag:PixelFed" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">PixelFed</span></a>,<a href="/paulsutton/tag:Peertube" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Peertube</span></a>,<a href="/paulsutton/tag:NextCloud" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">NextCloud</span></a>,<a href="/paulsutton/tag:NGINX" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">NGINX</span></a>,<a href="/paulsutton/tag:Ansible" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Ansible</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/docker-containers</guid>
      <pubDate>Mon, 12 May 2025 06:00:00 +0000</pubDate>
    </item>
    <item>
      <title>More security : fail2ban</title>
      <link>https://personaljournal.ca/paulsutton/more-security-fail2ban</link>
      <description>&lt;![CDATA[More security : fail2ban&#xA;&#xA;Fail2ban is a program that will help you with the security of your system.&#xA;&#xA;There is a tutorial for this at Linux Handbook, so I have quoted the description, or part of, below.&#xA;&#xA;This is where a tool like Fail2Ban comes into picture. Fail2Ban is a free and open source software that helps in securing your Linux server against malicious logins. Fail2Ban will ban the IP (for a certain time) if there is a certain number of failed login attempts. [1]&#xA;Links&#xA;&#xA;1] [Linux handbook : fail2ban&#xA;&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Linux,#Bash,#ssh,#Security,#fail2ban&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>More security : fail2ban</p>

<p>Fail2ban is a program that will help you with the security of your system.</p>

<p>There is a tutorial for this at Linux Handbook, so I have quoted the description, or part of, below.</p>

<pre><code>This is where a tool like Fail2Ban comes into picture. Fail2Ban is a free and open source software that helps in securing your Linux server against malicious logins. Fail2Ban will ban the IP (for a certain time) if there is a certain number of failed login attempts. [1]
</code></pre>

<p><strong>Links</strong></p>

<p>[1] <a href="https://linuxhandbook.com/run-shell-script/" rel="nofollow">Linux handbook : fail2ban</a></p>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a>,<a href="/paulsutton/tag:Bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bash</span></a>,<a href="/paulsutton/tag:ssh" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">ssh</span></a>,<a href="/paulsutton/tag:Security" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Security</span></a>,<a href="/paulsutton/tag:fail2ban" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">fail2ban</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/more-security-fail2ban</guid>
      <pubDate>Thu, 08 May 2025 06:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Removing users</title>
      <link>https://personaljournal.ca/paulsutton/removing-users</link>
      <description>&lt;![CDATA[Removing users&#xA;&#xA;To remove a user, you can issue the following, as we are no longer setting up a gopher server on the pi, I will just remove the user.  &#xA;&#xA;sudo deluser gopher&#xA;&#xA;Which will remove the user, but not that users /home directory, which for the most part is fine if you want to keep hold of the user account data.&#xA;&#xA;For more information and options,  consult the man page&#xA;&#xA;man deluser&#xA;Chat&#xA;&#xA;I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.&#xA;&#xA;Tags&#xA;&#xA;#Bash,#Bashscripting,#BashScripting#users,#removing&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Removing users</p>

<p>To remove a user, you can issue the following, as we are no longer setting up a gopher server on the pi, I will just remove the user.</p>

<pre><code>sudo deluser gopher
</code></pre>

<p>Which will remove the user, but not that users /home directory, which for the most part is fine if you want to keep hold of the user account data.</p>

<p>For more information and options,  consult the man page</p>

<pre><code>man deluser
</code></pre>

<p><strong>Chat</strong></p>

<p>I am on the <a href="https://www.dcglug.org.uk/" rel="nofollow">Devon and Cornwall Linux user group</a> mailing list and also their <a href="https://matrix.to/#/%23dcglug:matrix.org" rel="nofollow">matrix channel</a> as zleap, it is better to ask there, that way others can answer too.</p>

<p><strong>Tags</strong></p>

<p><a href="/paulsutton/tag:Bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bash</span></a>,<a href="/paulsutton/tag:Bashscripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Bashscripting</span></a>,<a href="/paulsutton/tag:BashScripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">BashScripting</span></a><a href="/paulsutton/tag:users" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">users</span></a>,<a href="/paulsutton/tag:removing" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">removing</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/removing-users</guid>
      <pubDate>Wed, 07 May 2025 06:00:00 +0000</pubDate>
    </item>
  </channel>
</rss>