<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Linux on Jackenhack</title><link>https://www.jackenhack.com/tags/linux/</link><description>Recent content in Linux on Jackenhack</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 25 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://www.jackenhack.com/tags/linux/index.xml" rel="self" type="application/rss+xml"/><item><title>Getting Asus ROG STRIX B550-F GAMING Motherboard To Boot Headless</title><link>https://www.jackenhack.com/getting-asus-rog-strix-b550-f-gaming-motherboard-to-boot-headless/</link><pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/getting-asus-rog-strix-b550-f-gaming-motherboard-to-boot-headless/</guid><description>&lt;p&gt;I&amp;rsquo;m running a &lt;a href="https://www.truenas.com"&gt;TrueNAS&lt;/a&gt; Server using the &lt;a href="https://rog.asus.com/se/motherboards/rog-strix/rog-strix-b550-f-gaming-model/"&gt;Asus ROG STRIX B550-F GAMING&lt;/a&gt; motherboard. Because of all the peripherals like a LSI® &lt;a href="https://www.aliexpress.com/w/wholesale-lsi-9300-8i.html"&gt;SAS 9300-8i PCI Express card&lt;/a&gt; for my SAS disks, I didn&amp;rsquo;t have enough PCI lanes to run a &amp;ldquo;normal&amp;rdquo; graphics card. So I got an old &lt;a href="https://www.techpowerup.com/gpu-specs/quadro-nvs-290.c1453"&gt;Nvidia Quadro NVS 290 NVS290&lt;/a&gt; PCIe x1 card that only uses one PCI lane and fits into a X1 PCI slot. But I would rather run the box without a graphics card and boot headless. But all the information on the internet told me that the Asus ROG STRIX B550-F GAMING Motherboard could not run headless. After several tries, nothing worked. But I finally found a solution&lt;/p&gt;</description></item><item><title>Quartus Prime FPGA USB-Blaster Problems On Ubuntu 18.04</title><link>https://www.jackenhack.com/quartus-prime-fpga-usb-blaster-problems-ubuntu-18-04/</link><pubDate>Sun, 12 Jan 2020 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/quartus-prime-fpga-usb-blaster-problems-ubuntu-18-04/</guid><description>&lt;p&gt;&lt;img decoding="async" height="261" loading="lazy" src="https://www.jackenhack.com/quartus-prime-fpga-usb-blaster-problems-ubuntu-18-04/images/Quartus_prime_icon_hu_263b1cc975b64b10.png" width="213"&gt;&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve decided to learn how to program FPGA:s. So I got myself two Terasic boards, one &lt;a href="https://amzn.to/36XENOk"&gt;Terasic DE10-Nano&lt;/a&gt; for testing out the excellent &lt;a href="https://github.com/MiSTer-devel/Main_MiSTer/wiki"&gt;MiSTer FPGA hardware arcade/computer/console emulator&lt;/a&gt; and a simpler &lt;a href="https://amzn.to/36NnYWj"&gt;DE0-Nano&lt;/a&gt; for beginning to learn Verilog.&lt;/p&gt;
&lt;p&gt;But the software used, called &lt;a href="https://www.intel.com/content/www/us/en/software/programmable/quartus-prime/overview.html"&gt;Intel Quartus Prime 19.1&lt;/a&gt;, is truly horrible. The Windows version doesn&amp;rsquo;t work with high-resolution screens when using scaling; the text is cut off on the display. So I installed it on my &lt;a href="https://ubuntu.com/"&gt;Linux Ubuntu 18.04&lt;/a&gt; machine instead. Now the display works, but there&amp;rsquo;s a lot of other problems, like getting the dreaded error message: &amp;ldquo;USB-Blaster unable to scan device chain&amp;rdquo;. I&amp;rsquo;ve written them down here for later reference, and maybe you have the same install problems, so this might help.&lt;/p&gt;</description></item><item><title>DietPi Makes Your Raspberry Pi a Lean Mean Linux Machine</title><link>https://www.jackenhack.com/dietpi-lean-mean-linux-machine/</link><pubDate>Thu, 13 Apr 2017 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/dietpi-lean-mean-linux-machine/</guid><description>&lt;p&gt;&lt;img alt="DietPi Logo" decoding="async" height="1440" loading="lazy" sizes="(min-width: 768px) 720px, 100vw" src="https://www.jackenhack.com/dietpi-lean-mean-linux-machine/images/dietpi-logo_hu_a5d0aed0d3182a91.jpg" srcset="https://www.jackenhack.com/dietpi-lean-mean-linux-machine/images/dietpi-logo_hu_94e50182f13404bf.jpg 360w,/dietpi-lean-mean-linux-machine/images/dietpi-logo_hu_b1308f6deb338ab2.jpg 480w,/dietpi-lean-mean-linux-machine/images/dietpi-logo_hu_741739949ab83d98.jpg 720w,/dietpi-lean-mean-linux-machine/images/dietpi-logo_hu_6fa8526d729f7db0.jpg 1080w,/dietpi-lean-mean-linux-machine/images/dietpi-logo_hu_a5d0aed0d3182a91.jpg 1440w" width="1440"&gt;&lt;/p&gt;
&lt;p&gt;My wild guess is that most people get a small Linux computer, like the &lt;a href="http://bit.ly/RaspberryPi3-board"&gt;Raspberry Pi&lt;/a&gt;, &lt;a href="http://bit.ly/beaglebone-black-board"&gt;BeagleBone&lt;/a&gt;, &lt;a href="http://bit.ly/banana-pi-board"&gt;Banana Pi&lt;/a&gt; or &lt;a href="http://bit.ly/orange-pi-board"&gt;Orange Pi&lt;/a&gt; for a specific task. Unfortunately, most distributions are chock-full of software, with everything installed per default. But if you want to set up a lean single board computer for a specific task, you&amp;rsquo;re out of luck. Thankfully there is a Linux distribution, &lt;a href="http://dietpi.com"&gt;DietPi&lt;/a&gt;, that aims to fix that problem.&lt;/p&gt;</description></item><item><title>NTP Server Extreme accuracy for under $200 Using SI5351C</title><link>https://www.jackenhack.com/ntp-server-extreme-accuracy-for-under-200/</link><pubDate>Wed, 12 Apr 2017 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/ntp-server-extreme-accuracy-for-under-200/</guid><description>&lt;p&gt;&lt;a href="https://www.jackenhack.com/si5351c-i2c-frequency-clock-generator-breakout-board/"&gt;&lt;img decoding="async" height="1050" loading="lazy" sizes="(min-width: 768px) 720px, 100vw" src="https://www.jackenhack.com/ntp-server-extreme-accuracy-for-under-200/images/SI5351C_breakoutboard_hu_d9e4f4483259607e.jpg" srcset="https://www.jackenhack.com/ntp-server-extreme-accuracy-for-under-200/images/SI5351C_breakoutboard_hu_5fad011b66273809.jpg 360w,/ntp-server-extreme-accuracy-for-under-200/images/SI5351C_breakoutboard_hu_bb0e7ecb471cae46.jpg 480w,/ntp-server-extreme-accuracy-for-under-200/images/SI5351C_breakoutboard_hu_35ae20e1ae7fd8cb.jpg 720w,/ntp-server-extreme-accuracy-for-under-200/images/SI5351C_breakoutboard_hu_e7cd3b145dc5565a.jpg 1080w" width="1400"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;When you make your own NTP server, you probably spend a lot of time trying to get it as accurate and stable as possible. To get good results, you need to connect your server to a good time reference, like an atomic clock, GPS or a GPSDO to get the PPS (Pulse Per Second) to sync your server with the reference clock.&lt;/p&gt;
&lt;p&gt;In both Linux and BSD, there is kernel support to slave the very inaccurate CPU clock crystal to the PPS signal, continually adjusting the frequency, because the crystals of computers continuously drift due to temperature and barometric pressure differences. So most of the work is to get a crappy crystal to behave. What if you just jumped over that step, so the CPU clock gets synchronized with the same lab reference that the PPS signal uses, using a SI5351C Clock Generator?&lt;/p&gt;
&lt;p&gt;Read on to see a simple way of doing it and get an extremely accurate NTP server for under $200.&lt;/p&gt;</description></item><item><title>Raspberry Pi 3 Overclocking Heatsink Cheap</title><link>https://www.jackenhack.com/raspberry-pi-3-overclocking-heatsink-cheap/</link><pubDate>Sat, 17 Dec 2016 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/raspberry-pi-3-overclocking-heatsink-cheap/</guid><description>&lt;p&gt;&lt;img alt="Raspberry-Pi-3-DIY-heatsink" decoding="async" height="715" loading="lazy" sizes="(min-width: 768px) 720px, 100vw" src="https://www.jackenhack.com/raspberry-pi-3-overclocking-heatsink-cheap/images/Raspberry-Pi-3-DIY-heatsink_hu_67a39a2b09ce17a2.jpg" srcset="https://www.jackenhack.com/raspberry-pi-3-overclocking-heatsink-cheap/images/Raspberry-Pi-3-DIY-heatsink_hu_f00788e6c0d5a25.jpg 360w,/raspberry-pi-3-overclocking-heatsink-cheap/images/Raspberry-Pi-3-DIY-heatsink_hu_65cf75858f4d4beb.jpg 480w,/raspberry-pi-3-overclocking-heatsink-cheap/images/Raspberry-Pi-3-DIY-heatsink_hu_6c48030ecddd55d1.jpg 720w,/raspberry-pi-3-overclocking-heatsink-cheap/images/Raspberry-Pi-3-DIY-heatsink_hu_1d0459da1a6c7bca.jpg 1080w,/raspberry-pi-3-overclocking-heatsink-cheap/images/Raspberry-Pi-3-DIY-heatsink_hu_67a39a2b09ce17a2.jpg 1440w" width="1440"&gt;&lt;/p&gt;
&lt;p&gt;I needed a cheap heatsink for my Raspberry Pi 3 that I use as a music player/server. To maximize performance, I wanted to overclock the computer for faster searching and handling of all my music. &lt;a href="https://www.jackenhack.com/raspberry-pi-3-overclocking/"&gt;I&amp;rsquo;ve managed to overclock my central Stratum-1 NTP server to 1350MHz without any problems&lt;/a&gt;, but the dinky little aluminium heatsink was way to anaemic, so I found a very cheap DIY solution to my question. With this heatsink, I can run the Raspberry Pi 3 at 1.5GHz all day at full tilt without any issues!&lt;/p&gt;</description></item><item><title>Increase Pulse Width 1 PPS signal from GPSDO</title><link>https://www.jackenhack.com/wider-pulse-width-1-pps-signal-gpsdo/</link><pubDate>Thu, 28 Jan 2016 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/wider-pulse-width-1-pps-signal-gpsdo/</guid><description>&lt;p&gt;&lt;strong&gt;Update: You can download the Eagle PCB files for the PPS Pulse Width Extender here. The PCB is made to fit the &lt;a href="http://amzn.to/2pbXoRo"&gt;Hammond 1455C802BK enclosure&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I have two Stratum-1 NTP servers using Raspberry Pi 2&amp;rsquo;s as servers. But the two setups are entirely different. &lt;img alt="trimble-gpsdo" decoding="async" height="300" loading="lazy" src="https://www.jackenhack.com/wider-pulse-width-1-pps-signal-gpsdo/images/trimble-gpsdo-400x300_hu_7098dd93a36e27.png" width="400"&gt;My primary NTP Stratum-1 server is available at ntp.jacken.se, but it is also in the .se pool of ntp.org. It&amp;rsquo;s a Raspberry Pi 2 I use a &lt;a href="https://www.jackenhack.com/raspberry-pi-3-overclocking/"&gt;Raspberry Pi 3&lt;/a&gt; that I have connected a U-Blox Neo-7 GPS receiver. But I&amp;rsquo;m not using the 1 PPS signal coming out of the U-Blox. I have a &lt;a href="https://rover.ebay.com/rover/1/711-53200-19255-0/1?ff3=4&amp;amp;toolid=11800&amp;amp;pub=5575287150&amp;amp;campid=5338067808&amp;amp;mpre=http%3A%2F%2Fwww.ebay.com%2Fitm%2FTrimble-GPS-Receiver-GPSDO-10MHz-1PPS-GPS-Disciplined-Clock-sine-and-square-wave-%2F252162780444%3Fhash%3Ditem3ab612ad1c%3Ag%3AudkAAOSwhcJWQCPM"&gt;Trimble GPSDO that I bought from eBay&lt;/a&gt;. The unit has two 10 MHz lab reference outputs and one 1 PPS output. But after measuring the signal coming out from the GPSDO, I realized that the timing speed for the seconds &amp;ldquo;Tick&amp;rdquo; was only 10 µsec which is way to fast for the Raspberry Pi to pick up as an interrupt on one of the GPIO pins. &lt;img alt="pulse-increaser" decoding="async" height="400" loading="lazy" src="https://www.jackenhack.com/wider-pulse-width-1-pps-signal-gpsdo/images/pulse-increaser-358x400_hu_716d285389558108.png" width="358"&gt;So I built a pulse extender, making the pulse around 250 milliseconds instead. And now the Raspberry Pi picks up the pulse without problems. Some GPSDO units can set the pulse width by programming the unit via a serial port, but I can&amp;rsquo;t find that feature on this unit (which is poorly documented and was OEM made for some other manufacturer), so I had to do it with hardware. So how does it look when crunching the numbers on it?&lt;/p&gt;</description></item><item><title>Nagios Directory Index Forbidden by Options Directive</title><link>https://www.jackenhack.com/nagios-directory-index-forbidden-options-directive/</link><pubDate>Fri, 27 Mar 2015 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/nagios-directory-index-forbidden-options-directive/</guid><description>&lt;p&gt;&lt;img alt="Nagios Screenshot" decoding="async" height="982" loading="lazy" sizes="(min-width: 768px) 720px, 100vw" src="https://www.jackenhack.com/nagios-directory-index-forbidden-options-directive/images/nagios-screenshot_hu_bdfea31040359de8.png" srcset="https://www.jackenhack.com/nagios-directory-index-forbidden-options-directive/images/nagios-screenshot_hu_231aa61114f16aab.png 360w,/nagios-directory-index-forbidden-options-directive/images/nagios-screenshot_hu_51a5d881605e7adb.png 480w,/nagios-directory-index-forbidden-options-directive/images/nagios-screenshot_hu_38cad3c3020e759f.png 720w,/nagios-directory-index-forbidden-options-directive/images/nagios-screenshot_hu_8c426496de0d439b.png 1080w,/nagios-directory-index-forbidden-options-directive/images/nagios-screenshot_hu_bdfea31040359de8.png 1440w" width="1440"&gt;&lt;/p&gt;
&lt;h2 id="nagios-directory-index-forbidden-by-options-directive"&gt;Nagios Directory Index Forbidden by Options Directive&lt;/h2&gt;
&lt;p&gt;After installing Nagios on a &lt;a href="http://www.raspberrypi.org/products/raspberry-pi-2-model-b/" title="Raspberry Pi 2 Model B"&gt;Raspberry Pi 2 Model B&lt;/a&gt; &lt;a href="http://www.i-security.ro/linux/raspberry-pi-and-nagios-open-source-monitoring/"&gt;by following these installation instructions&lt;/a&gt;, I ran into an irritating problem. When trying to connect, I got the authentication dialog, but after that, I got an access error in my browser.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Directory index forbidden by Options directive: /usr/local/nagios/share&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;I searched around on Google but couldn’t find a solution. But after a lot of fiddling with Apache2, I found a solution. There’s a problem with the standard installation of the file in &lt;strong&gt;/etc/apache2/conf.d/nagios.conf&lt;/strong&gt; created by &lt;strong&gt;make install-webconf&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Raspberry Pi Samba Showing Wrong Size Mounted USB Disk</title><link>https://www.jackenhack.com/raspberry-pi-samba-showing-wrong-size-share/</link><pubDate>Thu, 30 May 2013 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/raspberry-pi-samba-showing-wrong-size-share/</guid><description>&lt;p&gt;&lt;img alt="Raspberry pi" decoding="async" height="393" loading="lazy" sizes="(min-width: 768px) 720px, 100vw" src="https://www.jackenhack.com/raspberry-pi-samba-showing-wrong-size-share/images/raspberry-pi_hu_37c4426a8d5aca44.jpg" srcset="https://www.jackenhack.com/raspberry-pi-samba-showing-wrong-size-share/images/raspberry-pi_hu_98cfd064d84e5940.jpg 360w,/raspberry-pi-samba-showing-wrong-size-share/images/raspberry-pi_hu_518595198b947cc7.jpg 480w" width="600"&gt;&lt;br&gt;
After setting up a SMB &lt;a href="http://www.samba.org"&gt;Samba&lt;/a&gt; share on my &lt;a href="http://www.raspberrypi.org"&gt;Raspberry Pi&lt;/a&gt; in &lt;a href="http://squeezeplug.de"&gt;Squeezeplug&lt;/a&gt;, the size of the mounted volume showed the size of the SD-card instead of the USB hard disk. To fix it, I had to change the setup for Samba. Here’s what I did to fix it.&lt;/p&gt;</description></item><item><title>Raspberry Pi avahi-daemon disabled because there is a unicast .local domain - solved</title><link>https://www.jackenhack.com/raspberry-pi-avahi-daemon-disabled-because-there-is-a-unicast-local-domain-solved/</link><pubDate>Sat, 06 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/raspberry-pi-avahi-daemon-disabled-because-there-is-a-unicast-local-domain-solved/</guid><description>&lt;p&gt;When setting up a Raspberry Pi with &lt;a href="http://www.squeezeplug.de"&gt;SqueezePlug&lt;/a&gt;, my favorite distribution for &lt;a href="https://www.jackenhack.com/raspberry-pi-squeezebox-logitech-server/"&gt;setting up a music server&lt;/a&gt; I always get the error message “avahi-daemon disabled because there is a unicast .local domain” because I have a lot of Apple equipment configured with Bonjour. To fix it, all you need to do is to edit &lt;code&gt;/etc/default/avahi-daemon&lt;/code&gt; and change the line:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;AVAHI_DAEMON_DETECT_LOCAL=1&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;to&lt;/p&gt;
&lt;p&gt;&lt;code&gt;AVAHI_DAEMON_DETECT_LOCAL=0&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;then restart the Avahi-daemon with&lt;/p&gt;
&lt;p&gt;&lt;code&gt;sudo service avahi-daemon restart&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Problem solved.&lt;/p&gt;</description></item><item><title>Ubuntu Server WordPress with W3 Total Cache install</title><link>https://www.jackenhack.com/ubuntu-server-wordpress-w3-total-cache-install/</link><pubDate>Mon, 04 Jun 2012 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/ubuntu-server-wordpress-w3-total-cache-install/</guid><description>&lt;h2&gt;&lt;img decoding="async" height="1632" loading="lazy" sizes="(min-width: 768px) 720px, 100vw" src="https://www.jackenhack.com/ubuntu-server-wordpress-w3-total-cache-install/images/servers_hu_8614b27c571c8cb3.jpg" srcset="https://www.jackenhack.com/ubuntu-server-wordpress-w3-total-cache-install/images/servers_hu_d54f9189a649df5b.jpg 360w,/ubuntu-server-wordpress-w3-total-cache-install/images/servers_hu_f830d9da07d2a5ff.jpg 480w,/ubuntu-server-wordpress-w3-total-cache-install/images/servers_hu_286eb1d4e33becb0.jpg 720w,/ubuntu-server-wordpress-w3-total-cache-install/images/servers_hu_6c22a44cfcb8e09a.jpg 1080w" title="servers" width="1224"&gt;&lt;/h2&gt;
&lt;h2 id="initial-installation-ubuntu-server"&gt;Initial installation Ubuntu Server&lt;/h2&gt;
&lt;p&gt;Last time I configured my web server with Ubuntu Server, I had problems finding all the instructions on what and how to install everything needed to get a WordPress blog with W3 Total Cache, CDN, Apache2 MPM Worker and fcgi working. So this is my attempt to write down the steps needed to get the server going. You might find it of interest if your needs are similar to mine. Here&amp;rsquo;s the requirements for my WordPress blog.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Apache MPM Worker threaded version&lt;/li&gt;
&lt;li&gt;APC PHP Opcode optimizer&lt;/li&gt;
&lt;li&gt;All the required modules for W3 Total Cache&lt;/li&gt;
&lt;li&gt;Graphics libraries for &lt;a href="http://haveamint.com/"&gt;Mint&lt;/a&gt; statistics&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Web server with SSD disk</title><link>https://www.jackenhack.com/web-server-with-ssd-disk/</link><pubDate>Mon, 21 May 2012 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/web-server-with-ssd-disk/</guid><description>&lt;h2 id="ssd"&gt;SSD&lt;/h2&gt;
&lt;p&gt;My old web server built on old spare parts had a hard disk crash a month ago. So I had to put it up on my BlueHost account while waiting to get hold of a new disk. I decided to try out a SSD disk, so I got hold of a 60gb IBM SSD disk. Without any optimizations, it can now handle double the traffic! I’ll continue to optimize tomorrow to get the most out of it. I’m doing an article on how to set up a LAMP server on Ubuntu Linux for WordPress with all the stuff needed to get W3 Total Cache, APC and other stuff working, because I can’t find a good article that describes everything. I will start writing on it tomorrow.&lt;/p&gt;</description></item><item><title>Adding blacklist to an Asterisk PBX Server</title><link>https://www.jackenhack.com/adding-blacklist-to-an-asteriskhome-pbx-voip-server/</link><pubDate>Mon, 26 Sep 2005 00:00:00 +0000</pubDate><guid>https://www.jackenhack.com/adding-blacklist-to-an-asteriskhome-pbx-voip-server/</guid><description>&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; The code below does not work in Asterisk 2.0b4 or newer. I will update with instructions on how to get it to work in those versions. Thanks to &lt;a href="http://www.thestroots.com"&gt;Dan&lt;/a&gt; for pointing this out.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; I have changed the code to the removed part. It now requires a key press to accept the number to delete.&lt;/p&gt;
&lt;p&gt;I have added a blacklist function to my Asterisk@Home server and thought that I&amp;rsquo;d share it here if someone is interested. There are two ways to add a number to the blacklist. The easiest is to dial *32. Then you get a voice telling you the number of the last incoming call. To add it to the blacklist, press 1. Great use against pesky telemarketers and If you want to add it manually,  press *30. Then you can enter the phone number directly on your telephone. To remove an entry from the blacklist, press *31 and enter the phone number. If you don&amp;rsquo;t like the codes I use, change them.&lt;/p&gt;</description></item></channel></rss>