<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Articles - BIOSLEVEL</title>
	<atom:link href="https://bioslevel.com/category/article/feed/" rel="self" type="application/rss+xml" />
	<link>https://bioslevel.com</link>
	<description></description>
	<lastBuildDate>Thu, 13 Jun 2024 14:42:47 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6.1</generator>

<image>
	<url>https://bioslevel.com/wp-content/uploads/2024/06/cropped-favicon-2-32x32.png</url>
	<title>Articles - BIOSLEVEL</title>
	<link>https://bioslevel.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Building a Dual-Epyc Tower Server for a Homelab or Office</title>
		<link>https://bioslevel.com/article/building-a-dualepyc-tower-server-for-a-homelab-or-office/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=building-a-dualepyc-tower-server-for-a-homelab-or-office</link>
					<comments>https://bioslevel.com/article/building-a-dualepyc-tower-server-for-a-homelab-or-office/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Tue, 06 Feb 2024 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/building-a-dualepyc-tower-server-for-a-homelab-or-office/</guid>

					<description><![CDATA[<p>When space and noise are concerns, rackmount servers don&#8217;t always provide the best option for a small office&#8230;</p>
<p>The post <a href="https://bioslevel.com/article/building-a-dualepyc-tower-server-for-a-homelab-or-office/">Building a Dual-Epyc Tower Server for a Homelab or Office</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>When space and noise are concerns, rackmount servers don&rsquo;t always provide the best option for a small office server. With the flood of &ldquo;cheap&rdquo; AMD Epyc CPUs and motherboards from China on eBay, I found it easy to build a quiet dual-Epyc CPU server.</p>
<h2 id="introduction">Introduction</h2>
<p>My company recently downsized office space due to the pandemic, and we no longer had a closet to store a server rack and servers in. We also found that having a server rack in an open floor plan office wasn&rsquo;t conducive for hosting client meetings due to both the heat and sound from the servers. Given these issues, I was given the task of relocating our network equipment to a more hidden location and replacing our servers with a quieter solution. Relocating our network equipment was easy &ndash; a wall-mounted rack was placed in a corner of the office behind a support pillar, making our Ubiquiti equipment somewhat &ldquo;out of sight&rdquo; (did you see our article on setting up a <a href="https://bioslevel.com/articles/2022/adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn">Multi-factor Authentication VPN on Unifi</a>?).</p>
<p>Our server infrastructure consisted of two Dell R720 servers running VMware ESXi, with an old Dell Compellent disk shelf attached to one of them, and a custom-built NAS running TrueNAS in a Supermicro chassis. The R720s ran VMs for tasks such as DHCP, DNS, MySQL and MSSQL servers, and plenty of docker containers for our microservices and testing / deployments.&nbsp; Our NAS has essentially been collecting dust since we began storing most of our files on Google Drive, but we did have all of the backups from the VMs being stored on it &ndash; so massive amounts of storage weren&rsquo;t really a need anymore. All of this infrastructure was well over a decade old. Replacing it meant building a solution with newer equipment that will last us another 5-10 years, and could be easily expanded if needed.</p>
<p>And so I had my goals:</p>
<ol style="list-style-type:decimal;">
<li aria-level="1">
<p role="presentation">Quiet</p>
</li>
<li aria-level="1">
<p role="presentation">Easily stored in the office without a rack</p>
</li>
<li aria-level="1">
<p role="presentation">Capable of running multiple VMs</p>
</li>
<li aria-level="1">
<p role="presentation">Modern components</p>
</li>
<li aria-level="1">
<p role="presentation">Expandable</p>
</li>
</ol>
<h3 id="selecting-an-enclosure">Selecting an Enclosure</h3>
<p>From the get-go, I knew I wanted a tower server. It would fit in the corner of the office under our new wall-mounted network rack. I also knew I wanted a dual-CPU setup, so the case would need to be able to fit an EATX motherboard.&nbsp; Lastly, I wanted something that I could add additional storage to down the line, so having as many 3.5&rdquo; and 5.25&rdquo; bays as possible was also a requirement. Given that I&rsquo;ve been building computers for well over two decades, I had some pretty good ideas of the style of case I wanted.&nbsp;&nbsp;</p>
<p>After a few searches on NewEgg and Amazon, I was quick to learn that the type of cases I wanted aren&rsquo;t made anymore. With the downfall of optical media, finding a case with more than one or two 5.25&rdquo; bays is a challenge. eBay could have been an option, but I wanted to ensure we got all the parts and accessories that ship with a new case.</p>
<p>I ended up settling on the Phanteks Enthoo Pro, which has four 5.25&rdquo; bays (albeit one is taken up by front panel connections), six 3.5&rdquo; bays, and two 2.5&rdquo; bays. Additionally, the case can fit a total of seven 140mm fans, providing plenty of airflow. The side panel is tempered glass, but it won&rsquo;t end up being visible given the way the server will be situated in the corner of our office.</p>
<div class="row">
<div class="offset-md-4 col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B078K32G27?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/31W0bnxoxcL._SL160_.jpg'/><p class='title'>Phanteks (PH-ES614PTG_BK) Enthoo Pro ATX Chassis, Tempered Glass, Intergrated RGB Lighting, Black</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B078K32G27?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$128.49 at Amazon</a></div></div></div>
</div>
<h3 id="cheap-epyc-cpus-motherboard-and-ram-from-ebay">&ldquo;Cheap&rdquo; Epyc CPUs, Motherboard, and RAM from eBay</h3>
<p>eBay has been flooded with first- and second-generation Epyc CPUs and motherboards from China.&nbsp; At the time of writing, I was able to find a listing for a Supermicro D11HSI motherboard, dual Epyc 7302 CPUs, and 128GB of RAM for around $700. The Epyc 7302 is a second-geneartion Epyc CPU with 16 cores and 32 threads, and the Supermicro D11HSI provides plenty of PCI-E expansion and IPMI remote management in an EATX form factor.</p>
<p>As always, some research is necessary when buying products from eBay. Specific to the Epyc CPUs, it is important to verify the CPUs are unlocked &ndash; otherwise they may only work with specific motherboards.&nbsp;</p>
<h3 id="enterprise-nvme-storage">Enterprise NVMe Storage</h3>
<p>A pair of Samsung EVO 870 SATA drives would be used for booting VMware ESXi in a mirrored configuration. For virtual machine storage, I wanted a minimum of 7.5TB of fast storage.</p>
<p>SAS, SATA, M.2, U.2, U.3, E1.s &ndash; so many options for storage. For performance concerns, SATA and m.2 drives weren&rsquo;t even a consideration in this build. U.3 and E1.s drives turned out to be difficult to find on the consumer market, and the backplanes for these are still quite pricey &ndash; and rare.&nbsp; M.2 drives are plentiful and reasonably priced in the current market, but their performance and longevity were still a concern for me.</p>
<p>After finding a four-drive U.2 backplane, the ToughArmor MB699VP-B<insert here="" icydock="" model="">, from our friends at IcyDock, I decided on U.2 drives. SAS drives probably would have been a cheaper option, but U.2 offers higher speeds. I was able to find 3.84TB Intel U.2 drives at ServerPartySupply.com for a little over $200 each.</insert></p>
<p>The U.2 drive interface may look similar to a SAS interface, however it is slightly different (seriously, don&rsquo;t try hooking one up with a SAS cable), and the controller would need to support U.2 drives as well.&nbsp; Thankfully, Icy Dock provides plenty of documentation on compatible controllers and cables for their drive cages. Additionally, the server would be running VMware ESXi 6.7 when completed, so a RAID controller would also be necessary rather than a HBA since VMware doesn&rsquo;t support software RAID or ZFS.</p>
<p>Tri-mode controllers can be configured to support a combination of SATA, SAS, and NVMe drives. I selected the Broadcom 9460-16i, which can support a maximum of four x4 NVMe drives, perfect for the Icy Dock drive cage. This would be used to run the Intel U.2 drives in a RAID5 configuration.</p>
<p>The last piece of the puzzle was finding the correct cables that would connect from the RAID controller to the drive cage. Icy Dock recommended the Broadcom 05-50061-00 cable, which was incredibly hard to find.&nbsp; Even after finding a retailer with it in stock, the cables didn&rsquo;t work.&nbsp; The difference between these and standard SFF-8643 cables is that a U.2 enabler is needed, which directs the PCI-Express signals. Big thanks to Taylor and SerialCables.com for coming through with a <a href="https://www.serialcables.com/product/pci-43x8-43x2i-n2/">working set of cables</a>.</p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B07B9HK4QG?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51dfWL2fHxL._SL160_.jpg'/><p class='title'>ICY DOCK 4 Bay 2.5 NVMe U.2/U.3 SSD PCIe 4.0 Rugged Mobile Rack Enclosure for 5.25" Bay (4 x Mini-SAS HD) | ToughArmor MB699VP-B</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B07B9HK4QG?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$303.50 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B0C94VXZ4T?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51XhBZ8mdWL._SL160_.jpg'/><p class='title'>Dell Intel P4510 4TB PCIe Gen3 x4 NVMe U.2 2.5-inch Enterprise SSD - SSDPE2KX040T8TP</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B0C94VXZ4T?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$ at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B07SYM8CH5?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41nIMBLvMXL._SL160_.jpg'/><p class='title'>Dell Broadcom 9460-16i 042PDX SAS/SATA/NVMe Tri-Mode PCIe RAID Controller 42PDX</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B07SYM8CH5?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$395.00 at Amazon</a></div></div></div>
</div>
<h3 id="power-supply">Power Supply</h3>
<p>Aside from buying a power supply from a reliable brand, this was not a huge concern for the build. The Supermicro HS11DSI motherboard does require two 8-pin CPU connectors, so this was the only important factor to consider. The server won&rsquo;t be running a GPU anytime soon, so a 850W unit from Corsair checked all the boxes, with room for expansion down the road.</p>
<div class="row">
<div class="offset-md-4 col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B08R5JPTMZ?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41evEnbC68S._SL160_.jpg'/><p class='title'>CORSAIR RM850x Fully Modular ATX Power Supply - 80 PLUS Gold - Low-Noise Fan - Zero RPM - Black</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B08R5JPTMZ?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$130.99 at Amazon</a></div></div></div>
</div>
<h3 id="cooling">Cooling</h3>
<p>When it comes to quiet cooling, Noctua is one of the top names on the market. A handful of their A14 and A12 fans would provide case airflow, and NH-U9 supports the SP3 socket. Despite the tempered glass window on the Enthoo, the is<br />
 a lack of RGB lighting in this build.</p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B00CP6QLY6?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51WGw7ggbXL._SL160_.jpg'/><p class='title'>Noctua NF-A14 PWM, Premium Quiet Fan, 4-Pin (140mm, Brown)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B00CP6QLY6?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$23.95 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B07C5VG64V?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41hRggXISGL._SL160_.jpg'/><p class='title'>Noctua NF-A12x25 PWM, Premium Quiet Fan, 4-Pin (120mm, Brown)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B07C5VG64V?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$41.79 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B074DXFB66?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51weNFTwnKL._SL160_.jpg'/><p class='title'>Noctua NH-U9 TR4-SP3, Premium CPU Cooler for AMD sTRX4/TR4/SP3 (92mm, Brown)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B074DXFB66?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$89.95 at Amazon</a></div></div></div>
</div>
<h3 id="backup-storage">Backup Storage</h3>
<p>While a dedicated NAS may be purchased down the road, it wasn&rsquo;t part of this budget.&nbsp; Initially, I had planned to install a handful of spinning drives in the Enthoo, but eventually decided not to.&nbsp; While these would provide ample storage and could be passed through to a TrueNAS VM or similar, they wouldn&rsquo;t be easy to access if there was a hardware failure on the server. Due to this consideration, I opted for a 4-bay RAID enclosure from QNAP with USB-C connectivity &ndash; the TR-004.</p>
<p>Integrated RAID on the enclosure removes any OS requirements, and the USB-C connectivity ensures both fast transfer speeds and the ability to connect it to other systems in the event of hardware failure in the server.</p>
<div class="row">
<div class="offset-md-4 col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B0C5NYD6QF?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41IIFhxSqHL._SL160_.jpg'/><p class='title'>QNAP TR-004-44W-US 4 Bay DAS (USB Type-C) with 12TB Storage Capacity, Preconfigured RAID 5 WD Red Plus HDD Bundle</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B0C5NYD6QF?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$ at Amazon</a></div></div></div>
</div>
<h3 id="final-considerations">Final Considerations</h3>
<p>The Supermicro H11DSI only provides gigabit ethernet interfaces, so to provide 10GB connectivity I added an Intel X520 card with dual SFP+ interfaces. This will connect to our office&rsquo;s network through the SFP+ ports on our Ubiquti switch.</p>
<p>The Phanteks Enthoo has a USB-C port on the front of the case, and the QNAP TR-004 would achieve its fastest speeds over a USB-C interface. The Supermicro H11DSI doesn&rsquo;t provide USB-C connectivity, so an add-on card is needed. I found a PCI-Express card that provides both external USB-C 3.2 ports, as well as an internal USB 3.2 header for the case. This card would be passed through directly to our Windows Server 2016 VM, making it easy to share the TR-004&rsquo;s storage on our network.</p>
<div class="row">
<div class="offset-md-4 col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B09C58N66R?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41hZWd-1nXL._SL160_.jpg'/><p class='title'>Sinefine PCI-E to USB 3.2 Expansion Card,3.2 gen2 10Gpbs (3X USB C, 1x USB A, 1x USB Type E A Key), USB C PCI Express Card, A-Key 20 Pin Header for Type C Front Panel Mount Adapter</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B09C58N66R?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$39.99 at Amazon</a></div></div></div>
</div>
<h3 id="putting-it-all-together">Putting It All Together</h3>
<p>Assembly was completed without a hitch.&nbsp; The Supermicro H11DSI provided plenty of fan headers to power all the Noctua case fans, and the Phanteks Enthoo Pro made cable management a breeze.&nbsp;&nbsp;</p>
<p>The only issue that popped up was after assembly. The 9460-16i RAID controller was not seeing the Intel U.2 drives.&nbsp; I double-checked the specialized cables and reset the controller&rsquo;s settings, however no matter what I tried, the drives were not detected.</p>
<p>After several days of research on the internet, the only possible solution I could find was the cables I was sent were wrong. Unfortunately the vendor insisted they were the correct cables and would neither issue a refund nor send new cables. I was back to trying to source the cables again.</p>
<p>Enter SerialCables.com. While certainly not the cheapest listing I could find, they provided an excellent experience. After placing my order, Taylor reached out to me asking if their lead time on the cables was acceptable.&nbsp; I explained my situation to Taylor, Taylor brought in a sales engineer and even provided a schematic for the cable so I could verify it was what I needed. There was a few weeks of lead time, but sure enough the cables came.</p>
<p>After configuring the RAID controller for NVMe drives and switching to the new cables, the Intel U.2 drives were finally detected. Now I was able to install ESXi and finish configuring the server.&nbsp;</p>
<h3 id="conclusion">Conclusion</h3>
<p>At a hair under $3,500, this server went together almost without any issues.&nbsp; With its 32 cores, 128GB of RAM, and speedy U.2 NVMe storage, this server far outshines the Dell R720 servers it is replacing.&nbsp; Thanks to the Noctua cooling, the server runs near silent &ndash; it can barely be heard even with a fair load running. For the price and performance, I don&#39;t believe I&#39;d be be able to find a similar off-the-shelf server anyhwere close to $3,500.</p>
<p>After three months of operation, we haven&rsquo;t experienced any stability issues. There are still several PCI-Express slots and drive cages available in the case, so we can continue to expand the server as required &ndash; however the next addition will probably be a dedicated NAS for a better backup solution.&nbsp; I&rsquo;ve included a full build list below for those interested:</p>
<table class="table table-striped table-hover">
<thead>
<tr>
<th>Component</th>
<th align="left">Product</th>
<th align="left">Quantity</th>
<th align="left">Price</th>
</tr>
</thead>
<tbody>
<tr>
<td>Case</td>
<td align="left">Phanteks Enthoo Pro</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="138.46">$138.46</td>
</tr>
<tr>
<td>CPU</td>
<td align="left">AMD Epyc 7302</td>
<td align="right" sdnum="1033;" sdval="2">2</td>
<td align="right" sdnum="1033;" sdval="699">$699.00</td>
</tr>
<tr>
<td>Motherboard</td>
<td align="left">Supermicro H11DSI (shipped with CPUs)</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="left">&nbsp;</td>
</tr>
<tr>
<td>RAM</td>
<td align="left">32GB eBay Special (shipped with CPUs)</td>
<td align="right" sdnum="1033;" sdval="4">4</td>
<td align="left">&nbsp;</td>
</tr>
<tr>
<td>Powersupply</td>
<td align="left">Corsair RM850x</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="134.99">$134.99</td>
</tr>
<tr>
<td>Boot Drives</td>
<td align="left">Samsung Evo 870 250GB</td>
<td align="right" sdnum="1033;" sdval="2">2</td>
<td align="right" sdnum="1033;" sdval="58.62">$58.62</td>
</tr>
<tr>
<td>Storage</td>
<td align="left">3.84TB Intel U.2 PCI-E 3.0</td>
<td align="right" sdnum="1033;" sdval="4">4</td>
<td align="right" sdnum="1033;" sdval="636.96">$636.96</td>
</tr>
<tr>
<td>Drive Enclosure</td>
<td align="left">IcyDock ToughArmor MB699VP-B</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="365.18">$365.18</td>
</tr>
<tr>
<td>RAID Controller</td>
<td align="left">Broadcom 9460-16i</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="499">$499.00</td>
</tr>
<tr>
<td>U.2 Cables</td>
<td align="left">Broadcom 05-50061-00 1m x8 SFF-8643 to 2 x4 SFF-864</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="243.31">$243.31</td>
</tr>
<tr>
<td>Cooling</td>
<td align="left">Noctua NF-A12</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="21.78">$21.78</td>
</tr>
<tr>
<td>Cooling</td>
<td align="left">Noctua NF-A14</td>
<td align="right" sdnum="1033;" sdval="4">4</td>
<td align="right" sdnum="1033;" sdval="119.75">$119.75</td>
</tr>
<tr>
<td>USB 3.2</td>
<td align="left">PCI-E to USB 3.2 Expansion Card</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="44.99">$44.99</td>
</tr>
<tr>
<td>Backup Storage</td>
<td align="left">QNAP TR-004 (w/ 4 4TB WD Red Drives)</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="499">$499</td>
</tr>
<tr>
<td>SATA Cables</td>
<td align="left">Cable Creation Mini SAS to 4 SATA</td>
<td align="right" sdnum="1033;" sdval="1">1</td>
<td align="right" sdnum="1033;" sdval="9.79">$9.79</td>
</tr>
<tr>
<td>&nbsp;</td>
<td align="left">&nbsp;</td>
<td align="left">&nbsp;</td>
<td align="right" sdnum="1033;" sdval="3470.83">$3470.83</td>
</tr>
</tbody>
</table><p>The post <a href="https://bioslevel.com/article/building-a-dualepyc-tower-server-for-a-homelab-or-office/">Building a Dual-Epyc Tower Server for a Homelab or Office</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/building-a-dualepyc-tower-server-for-a-homelab-or-office/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Intel Arc GPUs Working Out-of-the-Box on Ubuntu 23.04</title>
		<link>https://bioslevel.com/article/intel-arc-gpus-working-outofthebox-on-ubuntu-2304/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=intel-arc-gpus-working-outofthebox-on-ubuntu-2304</link>
					<comments>https://bioslevel.com/article/intel-arc-gpus-working-outofthebox-on-ubuntu-2304/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Sat, 27 May 2023 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/intel-arc-gpus-working-outofthebox-on-ubuntu-2304/</guid>

					<description><![CDATA[<p>Ten months after Intel released their first line of dedicated GPUs, out-of-the-box support with Linux has arrived with the release of Ubuntu 23.04.</p>
<p>The post <a href="https://bioslevel.com/article/intel-arc-gpus-working-outofthebox-on-ubuntu-2304/">Intel Arc GPUs Working Out-of-the-Box on Ubuntu 23.04</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>With the release of Ubuntu 23.04 &ldquo;Lubar Lobster&#39;&#39; on April 20th, we were able to test Intel&rsquo;s dedicated Arc GPUs on this latest Ubuntu release. Our <a href="/articles/2022/intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204">previous testing on 22.04, 22.10</a>, and the <a href="/intel-arc-on-ubuntu-2304-daily-builds">23.04 daily builds</a> showed limited support for the new GPUs on a fresh installation and required considerable amounts of extra configuration options and compiling bleeding-edge software packages.</p>
<p>Ubuntu 23.04 is the second major Linux distribution to ship with Kernel 6.2, following behind Arch 2023.03.01. Mesa 23.0 also ships with this latest iteration of Ubuntu, and in conjunction with the 6.2 kernel this provides most of the necessary components needed to support the Intel Arc GPUs.</p>
<h3 id="installation-initial-boot">Installation &amp; Initial Boot</h3>
<p>The Ubuntu installer was able to support the Intel Arc A380, A750, and A770, as the screen was able to automatically adjust to the monitor&rsquo;s native 1440p resolution, and even HDMI auto was working. There were no graphical issues during installation, and this set the tone for the remainder of our testing.</p>
<p>Following a successful installation, Ubuntu booted without a hitch and once again, the monitor automatically adjusted to the monitor&rsquo;s native resolution and audio over HDMI was working. While promising, further testing was still necessary to ensure the full capabilities of the GPUs were working properly.</p>
<h3 id="3d-acceleration-and-a-v-capabilities">3D Acceleration and A/V Capabilities</h3>
<p>Ubuntu 23.04 has shipped with Mesa 23.0.2, a version newer than what we even tested with Ubuntu 22.10 from a 3rd party PPA. Here&rsquo;s the OpenGL info:</p>
<pre class="doc">OpenGL vendor string: IntelOpenGL renderer string: Mesa Intel(R) Arc(tm) A380 Graphics (DG2)OpenGL core profile version string: 4.6 (Core Profile) Mesa 23.0.2OpenGL core profile shading language version string: 4.60OpenGL core profile context flags: (none)OpenGL core profile profile mask: core profileOpenGL core profile extensions:OpenGL version string: 4.6 (Compatibility Profile) Mesa 23.0.2OpenGL shading language version string: 4.60OpenGL context flags: (none)OpenGL profile mask: compatibility profileOpenGL extensions:OpenGL ES profile version string: OpenGL ES 3.2 Mesa 23.0.2OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20OpenGL ES profile extensions:</pre>
<p>Similarly, Vulkan is supported as well:</p>
<pre class="doc">Vulkan Instance Version: 1.3.239Instance Extensions: count = 21===============================VK_EXT_acquire_drm_display       : extension revision 1VK_EXT_acquire_xlib_display      : extension revision 1VK_EXT_debug_report          : extension revision 10VK_EXT_debug_utils           : extension revision 2VK_EXT_direct_mode_display       : extension revision 1VK_EXT_display_surface_counter     : extension revision 1VK_EXT_swapchain_colorspace      : extension revision 4VK_KHR_device_group_creation      : extension revision 1VK_KHR_display             : extension revision 23VK_KHR_external_fence_capabilities   : extension revision 1VK_KHR_external_memory_capabilities  : extension revision 1VK_KHR_external_semaphore_capabilities : extension revision 1VK_KHR_get_display_properties2     : extension revision 1VK_KHR_get_physical_device_properties2 : extension revision 2VK_KHR_get_surface_capabilities2    : extension revision 1VK_KHR_portability_enumeration     : extension revision 1VK_KHR_surface             : extension revision 25VK_KHR_surface_protected_capabilities : extension revision 1VK_KHR_wayland_surface         : extension revision 6VK_KHR_xcb_surface           : extension revision 6VK_KHR_xlib_surface          : extension revision 6</pre>
<p>No errors or issues are reported by vainfo, the out-of-box drivers work for the cards:</p>
<pre class="doc">libva info: VA-API version 1.17.0libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.solibva info: Found init function __vaDriverInit_1_17libva info: va_openDriver() returns 0vainfo: VA-API version: 1.17 (libva 2.12.0)vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.1.2 ()</pre>
<p>And support is shown for all the major video codecs, including MPEG2, H. 264, VP9, H. 265, and even AV1 (a feature heavily advertised for the Arc cards). Of course, software must also support these features &ndash; e.g., ffmpeg, OBS, etc. At the time of writing, Ubuntu 23.04 ships with ffmpeg 5.1.2, which is missing the Intel QSV AV1 codecs for hardware-accelerated AV1 encoding.</p>
<p>Hardware-accelerated AV1 encoding will be huge for content creators and streamers, as it utilizes much less bandwidth than many other current video codecs &ndash; for example, being able to stream in 4K while using similar bandwidth that non-AV1 1080p streaming may use. Ubuntu 23.10 might bring ffmpeg 6.x to the game, or there may be a 3rd-party PPA that pops up in the interim.</p>
<h3 id="benchmark-foreword">Benchmark Foreword</h3>
<p>The Arc A750 and A770 have already been shown to be competitive with the GeForce RTX 3060 on Windows, and at the time of writing, the A750 is one of the best budget GPUs for its current price-to-performance ratio. While we&rsquo;d normally anticipate similar results in Linux, full support for the Arc line of GPUs is still in the early stages.</p>
<p>As Vulkan is being heavily utilized by modern titles, as well as Steam to provide high-performance emulation for DirectX games, support is a must to provide a stable gaming experience. Unfortunately the Arc graphics are still tied to some of the original Intel i915 drivers, and due to this an important Vulkan feature is missing: sparse residency. Vulkan sparse residency manages certain memory buffers, and is often used for texturing purposes in games. Without this support, well, the graphics aren&rsquo;t exactly &ldquo;stable&rdquo; when the game manages to run.&nbsp;&nbsp;</p>
<p>Following a <a href="https://gitlab.freedesktop.org/mesa/mesa/-/issues/5003">ticket in Mesa&rsquo;s git repository</a>, it should only be a matter of months before this support is officially rolled out in the new Intel Xe driver. Early adopters will, of course, need to upgrade their system&rsquo;s Linux kernel and Mesa outside of regular releases, but hopefully the new driver hits mainline in time for Fall distro releases, such as Ubuntu 23.10.</p>
<p>Despite the lack of Vulkan sparse residency support, there are plenty of stable, playable games for Linux that the A750 and A770 will support.</p>
<p>Below is our test system:</p>
<table class="table table-striped table-bordered">
<tbody>
<tr>
<td>Motherboard</td>
<td colspan="2">MSI B550M PRO-VDH WIFI6</td>
</tr>
<tr>
<td>CPU</td>
<td colspan="2">AMD Ryzen 5 5600G</td>
</tr>
<tr>
<td>RAM</td>
<td colspan="2">32GB (4x8GB) G.Skill Trident Z DDR4 3200</td>
</tr>
<tr>
<td>Storage</td>
<td colspan="2">Crucial P3 500GB PCIe M.2 2280 SSD</td>
</tr>
<tr>
<td>GPU</td>
<td>ASRock Phantom Gaming Arc A770 8GB</td>
<td>Intel Arc A750 Limited Edition 8GB</td>
</tr>
</tbody>
</table>
<p>I&rsquo;ve intentionally left the Intel Arc A380 absent from our gaming benchmarks, as it simply doesn&rsquo;t compete as a gaming card.</p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B0B25LZGGW?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51iBb67GU9L._SL160_.jpg'/><p class='title'>Crucial P3 1TB PCIe Gen3 3D NAND NVMe M.2 SSD, up to 3500MB/s - CT1000P3SSD8</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B0B25LZGGW?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$56.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B01MTDEYHU?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51iuwMknHlL._SL160_.jpg'/><p class='title'>G.SKILL Trident Z RGB Series (Intel XMP) DDR4 RAM 16GB (2x8GB) 3200MT/s CL16-18-18-38 1.35V Desktop Computer Memory UDIMM (F4-3200C16D-16GTZR)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B01MTDEYHU?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$47.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B09J6FWSWB?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51N-blZRHJL._SL160_.jpg'/><p class='title'>MSI B550M PRO ProSeries Motherboard (Support 3rd Gen AMD Ryzen, AM4, DDR4, PCIe 4.0, SATA 6Gb/s, M.2, USB 3.2 Gen 1, HDMI/DP, Micro-ATX) (Renewed)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B09J6FWSWB?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$ at Amazon</a></div></div></div>
</div>
<h3 id="gaming-results">Gaming Results</h3>
<div class="row row-images">
<div class="col-md-12"><a data-gallery="article-gallery" data-toggle="lightbox" href="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-1.png"><img  decoding="async"  alt="Xonotic Intel Arc A770 A750"  class="d-block w-100"  loading="lazy"  src="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-1.png" > </a></div>
</div>
<p>While the best Open Source shooter isn&rsquo;t necessarily as graphic-intensive as the latest iteration of Call of Duty, it is action-packed, and Intel&rsquo;s Arc GPUs are highly competitive when it comes to performance.</p>
<div class="row row-images">
<div class="col-md-12"
><a data-gallery="article-gallery" data-toggle="lightbox" href="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-2.png"><img  decoding="async"  alt="Portal 2 Intel Arc A770 A750"  class="d-block w-100"  loading="lazy"  src="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-2.png" > </a></div>
</div>
<p>Moving on to a closed-source game, Intel&rsquo;s Arc GPUs remain competitive with the mid-range offerings from nVidia and AMD.</p>
<div class="row row-images">
<div class="col-md-12"><a data-gallery="article-gallery" data-toggle="lightbox" href="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-3.png"><img  decoding="async"  alt="Unigine Intel Arc A770 A750"  class="d-block w-100"  loading="lazy"  src="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-3.png" > </a></div>
</div>
<div class="row row-images">
<div class="col-md-12"><a data-gallery="article-gallery" data-toggle="lightbox" href="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-4.png"><img  decoding="async"  alt="Unigine Intel Arc A770 A750"  class="d-block w-100"  loading="lazy"  src="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-4.png" > </a></div>
</div>
<p>Even in these resource-intensive benchmarks, the Intel A770 and A750 prove they&rsquo;re capable of modern gaming demands.</p>
<div class="row row-images">
<div class="col-md-12"><a data-gallery="article-gallery" data-toggle="lightbox" href="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-5.png"><img  decoding="async"  alt="Left 4 Dead 2 Intel Arc A770 A750"  class="d-block w-100"  loading="lazy"  src="/wp-content/uploads/2024/06/reviews-arc-23.04-arc-benchmark-5.png" > </a></div>
</div>
<p>With the option to run Left 4 Dead 2 with a Vulkan renderer, the Intel Arc GPUs show their Linux drivers haven&rsquo;t yet been fully optimized for Vulkan support yet. This should change by the end of 2023 when the new Xe drivers are mainlined.</p>
<h3 id="conclusion">Conclusion</h3>
<p>At the time of writing, the Arc A750 and A770 have only been on the market for seven months, and are already competitive with similar offerings from AMD and nVidia &ndash; with the A770 even outperforming its direct competitors such as the RTX 3060 and RX 6600 XT. While the Arc A380 is certainly no gaming GPU, it has been providing a stable desktop experience on my workstation for nearly a month, and has given me less issues than any nVidia card I&rsquo;ve used for my workstation in the past.</p>
<p>The Intel Arc GPUs were released with mixed fanfare. Personally, I was excited for a third competitor in the GPU space, and knew there would be compatibility issues to be worked out with both Linux and Windows systems. Intel has supported Linux development for years, and their integrated GPU drivers for Linux have provided some of the most stable performance and compatibility when compared to the drivers from AMD and nVidia. This gives me hope that Intel&rsquo;s Arc GPUs could be the absolute best option for stability and performance on Linux systems in the next 12-24 months as the drivers continue to be developed.</p>
<p>Have the past few months changed your opinion of the Intel Arc GPUs?</p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B09QXZC4PM?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/517EF4e9u3L._SL160_.jpg'/><p class='title'>PNY GeForce RTX<img src="https://s.w.org/images/core/emoji/15.0.3/72x72/2122.png" alt="™" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 3060 12GB XLR8 Gaming Revel Epic-X RGB<img src="https://s.w.org/images/core/emoji/15.0.3/72x72/2122.png" alt="™" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Single Fan Graphics Card</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B09QXZC4PM?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$219.00 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B0BHKNK84Y?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51ua2tDWaGL._SL160_.jpg'/><p class='title'>ACER | Predator BiFrost Intel Arc A770 Overclocking Graphics Card | 16GB GDDR6 256-bit 18 Gbps | PCIe 4.0 | Dual Fan | Customize RGB Lighting Color & Effect | TPD 250W | 1xHDMI 2.1 & 3xDisplayPort 2.0</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B0BHKNK84Y?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$349.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B0B7872PZR?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41Zs+nz-M0L._SL160_.jpg'/><p class='title'>CyberpowerPC Gamer Xtreme VR Gaming PC, Intel Core i7-12700F 2.1GHz, GeForce RTX 3060 12GB, 16GB DDR4, 1TB NVMe SSD, WiFi & Win 11 Home (GXiVR8040A12), Black</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B0B7872PZR?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$999.99 at Amazon</a></div></div></div>
</div><p>The post <a href="https://bioslevel.com/article/intel-arc-gpus-working-outofthebox-on-ubuntu-2304/">Intel Arc GPUs Working Out-of-the-Box on Ubuntu 23.04</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/intel-arc-gpus-working-outofthebox-on-ubuntu-2304/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Intel Arc on Ubuntu 23.04 Daily Builds</title>
		<link>https://bioslevel.com/article/intel-arc-on-ubuntu-2304-daily-builds/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=intel-arc-on-ubuntu-2304-daily-builds</link>
					<comments>https://bioslevel.com/article/intel-arc-on-ubuntu-2304-daily-builds/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Sat, 04 Mar 2023 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/intel-arc-on-ubuntu-2304-daily-builds/</guid>

					<description><![CDATA[<p>Ubuntu 22.04 and 22.10 didn't provide an out-of-box experience for the new Intel Arc GPUs.  Is Lunar Lobster ready for the challenge?</p>
<p>The post <a href="https://bioslevel.com/article/intel-arc-on-ubuntu-2304-daily-builds/">Intel Arc on Ubuntu 23.04 Daily Builds</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<h3 id="introduction"><span>Introduction</span></h3>
<p><span>As per our previous article on getting Intel Arc GPUs functional on Ubuntu&rsquo;s current LTS, 22.04, out-of-the-box support is lacking. The Kubuntu 22.10 installer wouldn&rsquo;t even load with an Arc GPU installed in the system, and Intel&rsquo;s pre-packaged drivers for 22.04 weren&rsquo;t working for many of us. By installing a newer kernel and bleeding-edge packages from Intel and Mesa, the Arc GPUs were working, however not in a state for daily use.</span></p>
<p><span>With the release of Ubuntu 23.04 just shy of two months away, I wanted to see if support for the Arc GPUs had improved yet &ndash; and how much. Codenamed Lunar Lobster, the 23.04 release will see many packages upgraded from the 22.04 and 22.10 releases. Linux Kernel 5.15 shipped with 22.04, and based on our testing, we&rsquo;re hoping to see Linux Kernel 6.1 or 6.2 as the default in the Lunar Lobster release, as well as a minimum of Mesa 23.0.</span></p>
<h3 id="installation"><span>Installation</span></h3>
<p><span>Testing was done with a late-February build of Ubuntu 23.04. The installer image was placed on a thumbdrive and upon booting the system, the Ubuntu graphical installer came up without any issues or complaints. The installer wasn&rsquo;t able to resize itself to the native resolution of the monitor being used, but it was more than usable to get the base system installed. This is the first step in the right direction for 23.04, as the 22.10 installer would not even load with an Intel Arc GPU.</span></p>
<p><span>Installation went smoothly, and upon rebooting the system, the Ubuntu login screen appeared at the monitor&rsquo;s native resolution.</span></p>
<h3 id="welcome-to-lunar-lobster"><span>Welcome to Lunar Lobster</span></h3>
<p><span>Being as this version of 23.04 is not yet even a beta, many pieces of software are not yet the final version that will ship at release. Front and center is the Linux kernel: this daily build ships with Linux kernel 5.19, which is not going to provide the necessary support for a stable desktop running on an Intel Arc GPU. Thankfully Kernel 6.1 is available in 23.04&rsquo;s software sources directly from Ubuntu.</span></p>
<p><span>Firing up a terminal and running glxgears appeared to be working fine, however vainfo showed no hardware acceleration for video encoding and decoding, and the system couldn&rsquo;t find any audio devices. The version of Mesa that shipped with this daily build was also less than Mesa 23.0, so it doesn&rsquo;t appear the 23.04 daily builds are ready for Arc support just yet.</span></p>
<h3 id="conclusion"><span>Conclusion</span></h3>
<p><span>Following the instructions from our previous article and using Kernel 6.1 from Ubuntu&rsquo;s repositories, I was able to get the Intel Arc A380 running relatively more stable than in 22.04, however it isn&rsquo;t necessarily worth publishing these details for what isn&rsquo;t even a beta or release candidate for Lunar Lobster/23.04. As packages are finalized for the 23.04 release and beta or release candidate installers are made available, additional testing will be required.</span></p>
<p><span>If Ubuntu is able to ship 23.04 with Linux Kernel 6.1 or 6.2, as well as Mesa 23.0 or higher, then a stable out-of-box experience for Intel Arc GPUs may be coming soon.&nbsp;</span></p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B092L9GF5N?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41MlpsOgclL._SL160_.jpg'/><p class='title'>AMD Ryzen 5 5600G 6-Core 12-Thread Unlocked Desktop Processor with Radeon Graphics</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B092L9GF5N?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$133.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B089CZSQB4?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51pEWHtQQsL._SL160_.jpg'/><p class='title'>MSI B550-A PRO ProSeries Motherboard (AMD Ryzen 5000, AM4, DDR4, PCIe 4.0, SATA 6Gb/s, M.2, USB 3.2 Gen 2, HDMI/DP, ATX)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B089CZSQB4?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$109.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B0B7HVZNMB?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41tBZJ-87HL._SL160_.jpg'/><p class='title'>JSAUX Docking Station for Steam Deck/ROG Ally/Legion Go/MSI Claw, 6-in-1 Steam Deck Dock with HDMI 4K@60Hz, Gigabit Ethernet, 3 USB-A 3.0 and 100W Charge, Compatible with Steam Deck OLED-HB0603</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B0B7HVZNMB?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$39.99 at Amazon</a></div></div></div>
</div><p>The post <a href="https://bioslevel.com/article/intel-arc-on-ubuntu-2304-daily-builds/">Intel Arc on Ubuntu 23.04 Daily Builds</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/intel-arc-on-ubuntu-2304-daily-builds/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Backing up to a Remote Server with SSH and rsync</title>
		<link>https://bioslevel.com/article/backing-up-to-a-remote-server-with-ssh-and-rsync/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=backing-up-to-a-remote-server-with-ssh-and-rsync</link>
					<comments>https://bioslevel.com/article/backing-up-to-a-remote-server-with-ssh-and-rsync/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Mon, 16 Jan 2023 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/backing-up-to-a-remote-server-with-ssh-and-rsync/</guid>

					<description><![CDATA[<p>While I pay for multiple video streaming services, I never got on board with streaming music services such&#8230;</p>
<p>The post <a href="https://bioslevel.com/article/backing-up-to-a-remote-server-with-ssh-and-rsync/">Backing up to a Remote Server with SSH and rsync</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>While I pay for multiple video streaming services, I never got on board with streaming music services such as Amazon Prime Music or Spotify. I&rsquo;ve curated quite the collection of MP3s in the past twenty years, with a fair number of tracks that aren&rsquo;t available through streaming services. Since most phone manufactures have stolen our beloved SD card expansion slots, I&rsquo;ve had to rely on various services the past few years to enjoy my music on the go.&nbsp;</p>
<p>This started with Amazon Music, when there was an option to pay for a given amount of storage that you could upload your music collection to and enjoy through the Amazon Music app on your mobile devices. Then came Google Play Music with a similar service, but then Google did what Google does and killed that product in favor of Youtube Music. Ugh.</p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B087ZCBWFH?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src=''/><p class='title'>Synology 2 bay NAS DiskStation DS220+ (Diskless),Black</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B087ZCBWFH?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$378.11 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B07K4RC7X9?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/21Ym2qrbhHL._SL160_.jpg'/><p class='title'>QNAP TR-004 4 Bay USB Type-C Direct Attached Storage (DAS) with hardware RAID (Diskless)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B07K4RC7X9?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$219.00 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B08QBMD6P4?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/310ryuxlyiL._SL160_.jpg'/><p class='title'>SAMSUNG 870 EVO SATA SSD 500GB 2.5” Internal Solid State Drive, Upgrade PC or Laptop Memory and Storage for IT Pros, Creators, Everyday Users, MZ-77E500B/AM, Black</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B08QBMD6P4?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$54.00 at Amazon</a></div></div></div>
</div>
<p>I&rsquo;ve since moved on to hosting a Plex server on a Raspberry Pi in my home&rsquo;s network rack. Rather than loading my substantial music collection on the same SD card that the operating system runs on, I&rsquo;ve opted to connect a 2.5&rdquo; SSD with a bountiful amount of storage to the Raspberry Pi via USB. From here, I&rsquo;m able to stream my music anywhere I have an internet connection through the surprisingly great Plexamp app.</p>
<p>I&rsquo;ve got a bad habit of sometimes (almost always) only dropping new music onto the Plex server and skipping over my NAS, so I&rsquo;ve finally decided to sit down and back the music directory to my NAS. While working on this script, I realized there were a number of small devices and servers around my home that would also benefit from the occasional backup to help make my life easier in the event of hardware failure.</p>
<p>These aren&rsquo;t production servers in a corporate environment, so I don&rsquo;t need full snapshots of what I&rsquo;m backing up. I realistically only need the latest changes to a handful of directories to occasionally be backed up to my NAS, which rsync is perfect for. rsync will compare the modification times and sizes of files during a copy or synchronization process, ensuring much faster speeds than attempting to copy a full directory over any media type &mdash; only differences create the need for a CRUD operation.</p>
<h3 id="prerequisites">Prerequisites</h3>
<p>The local system, where this script will run, will require a few software packages in order for the script to run. rsync is obviously first and foremost, but the mailutils package is also needed for the &ldquo;mail&rdquo; command. OpenSSL comes installed by default with most distributions, but if not, this is required as well for setting up authentication from the local system to the remote server.</p>
<p>On Debian-based systems, all of these packages can be installed through apt:</p>
<pre class="cmd">apt-get install openssl mailutils rsync</pre>
<p>Chances are these packages are already installed.</p>
<h3 id="configuring-passwordless-ssh">Configuring Passwordless SSH</h3>
<p>While rsync can run over a network or mounted filesystem, I prefer to use it over SSH for the encryption and ability to easily swap out remote paths if I decided to back up to a server outside of my home or office. This script is going to run on a regular schedule through the system&rsquo;s crontab, so authentication will be automated with a public-private keypair rather than storing the remote system&rsquo;s password on the local system.</p>
<p>Chances are the local system already has a unique public key that can be used to this purpose in the local user&rsquo;s .ssh directory in their home folder, typically ~/.ssh/id_rsa.pub (and the private key, ~/.ssh/id_rsa</p>
<p>In the event this key doesn&rsquo;t exist, a new key can be quickly created using the ssh-keygen command and following the simple prompts:</p>
<pre class="cmd">ssh-keygen</pre>
<p>I&rsquo;ll leave the password fields blank, as again I don&rsquo;t want to store any credentials on the filesystem.</p>
<p>Next, the local system&rsquo;s public key needs to be copied to the remote server or NAS. The contents of the public key should be placed in the .ssh/authorized_keys file in the home directory of the remote user who will own the files being copied. In my case, I&rsquo;m copying the files to my <a href="/reviews/archive/ts-509-pro-turbo-nas">QNAP NAS</a>. OpenSSL provides a command that can do this in one fell swoop:</p>
<pre class="cmd">ssh-copy-id -i ~/.ssh/id_rsa.pub admin_user@remote.server.ip</pre>
<p>The local user should now be able to connect to the remote server via SSH without the need for a password. The simple test is:</p>
<pre class="cmd">ssh admin_user@remote.server.ip</pre>
<p>If this command is successful, then the key-based authentication has been configured correctly. Otherwise, the log file /var/log/secure on the remote server should provide an indication of what went wrong. In my experience, any issues are usually related to the ownership and permissions on the .ssh folder on one of the systems.</p>
<h3 id="creating-a-backup-script">Creating a Backup Script</h3>
<p>Realistically, the backup I needed can be done in a single line and easily placed in the local system&rsquo;s crontab:</p>
<pre class="cmd">rsync -avzP rogress /home/myuser/backup_this_folder/ remote_user@my.nas:/backups/</pre>
<p>The above command would make a carbon copy of /home/myuser/backup_this_folder on my NAS in the /backups/ folder.&nbsp;</p>
<p>The -avzP switches enable archive mode (a), verbose output (v), compressions (z), partial files, and shows progress (P).&nbsp; The verbose output and progress aren&rsquo;t necessary when running this script through crontab, but for testing purposes these switches are helpful. The output of the command could also be output to a log file if desired.</p>
<p>But what if I want to backup a handful of directories and perhaps get an e-mail notification in the event of a failure? One option would be to copy and paste the command above and make adjustments for each directory I want to back up, but&nbsp; a single script would make things simpler and easier to maintain moving forward.</p>
<pre class="code">#!/bin/bashREMOTE_USER=adminREMOTE_SERVER=&quot;192.168.1.xyz&quot;REMOTE_PATH=/share/storage/pi/LOCAL_DIRS=(/mnt/usb/ /home/pi/)EMAIL=&quot;sean@mydomain.com&quot;# copy each local directory to the remote pathfor LOCAL_DIR in &quot;${LOCAL_DIRS[@]}&quot;        do                rsync -avz --progress $LOCAL_DIR $REMOTE_USER@$REMOTE_SERVER:$REMOTE_PATH                if [ $? -ne 0 ]; then                        ERROR=1                fi        done# Only send an e-mail if it is setif [ -n &quot;$EMAIL&quot; ]; then        if [ $ERROR ]; then                mail -s &quot;rsync backup error for $REMOTE_PATH&quot; $EMAIL &lt;&lt;&lt; &#39;Failure&#39;        else                mail -s &quot;rsync backup complete for $REMOTE_ATH&quot; $EMAIL &lt;&lt;&lt; &#39;Success&#39;        fifi</pre>
<p>With this script, I can easily change out settings and use the script across multiple systems. REMOTE_USER, REMOTE_SERVER, and REMOTE_PATH can all be adjusted to where I want my backups to be stored, and LOCAL_DIRS will allow me to specify multiple directories to be backed up on the local system.</p>
<p>The EMAIL variable, if set, will trigger the sending of an e-mail from the local system alerting the recipient of a success or failure of the backup job. Again, per the prerequisites section, this is dependent on having a properly configured mail transfer agent on the local system.</p>
<h3 id="scheduling-the-script-with-crontab">Scheduling the Script with crontab</h3>
<p>Realistically I&rsquo;m only adding music to my collection once or twice a month, however some of the other directories I may choose to backup may benefit from daily backups or other even twice-daily backups depending on how often files may change. I&rsquo;ll set up the script in the crontab file of a user with access to all the directories being backed up:</p>
<pre class="cmd">$ crontab -e</
pre><p>Running the script every day at midnight fits my needs:</p><pre class="code">0 0 * * * /home/bioslevel/scripts/backups.sh</pre>
<p>Saving the changes will automatically reload the crontab and enable the job.</p>
<h3 id="conclusion">Conclusion</h3>
<p>This script gives me a very simple way to backup multiple directories on a given system to a remote system over SSH. SSH provides encrypted communications between the local system and remote server, which is particularly important if the backups are being performed on a public network or over the internet. The real star of the solution is rsync, which compares file sizes and modification times to determine what files need to be copied and provides compression to increase transfer rates.&nbsp;</p>
<p>rsync is capable of so much more than what it is being used for here, such as keeping directories in sync across multiple systems, but lends plenty of power to my backups. Even running on Raspberry Pi 4, backups are surprisingly fast from a solid state drive and gigabit connection.</p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B09B1GXM16?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/410UJPkRkLL._SL160_.jpg'/><p class='title'>SAMSUNG EVO Select Micro SD-Memory-Card + Adapter, 256GB microSDXC 130MB/s Full HD & 4K UHD, UHS-I, U3, A2, V30, Expanded Storage for Android Smartphones, Tablets, Nintendo-Switch (MB-ME256KA/AM)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B09B1GXM16?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$24.73 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B07H2RR55Q?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51ORZwcoByL._SL160_.jpg'/><p class='title'>Seagate BarraCuda 2TB Internal Hard Drive HDD – 3.5 Inch SATA 6Gb/s 7200 RPM 256MB Cache – Frustration Free Packaging (ST2000DM008/ST2000DMZ08)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B07H2RR55Q?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$64.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B015CH1PJU?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/31Tqh36fo2L._SL160_.jpg'/><p class='title'>SanDisk 128GB Ultra Flair USB 3.0 Flash Drive - SDCZ73-128G-G46, black</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B015CH1PJU?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$12.49 at Amazon</a></div></div></div>
</div><p>The post <a href="https://bioslevel.com/article/backing-up-to-a-remote-server-with-ssh-and-rsync/">Backing up to a Remote Server with SSH and rsync</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/backing-up-to-a-remote-server-with-ssh-and-rsync/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Intel Arc Dedicated GPUs, Linux Kernel 6.0, and latest Mesa on Ubuntu 22.04</title>
		<link>https://bioslevel.com/article/intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204</link>
					<comments>https://bioslevel.com/article/intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Mon, 24 Oct 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204/</guid>

					<description><![CDATA[<p>Intel Arc GPUs are fully functional with 3D acceleration, and hardware decoding and encoding are fully functional.</p>
<p>The post <a href="https://bioslevel.com/article/intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204/">Intel Arc Dedicated GPUs, Linux Kernel 6.0, and latest Mesa on Ubuntu 22.04</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>With the release of the 22.10 flavors of Ubuntu recently, I was hopeful this latest release would be ready for the (also recently released) dedicated Intel Arc GPUs. Unfortunately this wasn&rsquo;t the case, as attempting to load the Kubuntu 22.10 installer from USB resulted in a blank screen. I was then given hope by Intel&rsquo;s release of &ldquo;<a href="https://dgpu-docs.intel.com/installation-guides/ubuntu/ubuntu-jammy-arc.html">packaged drivers</a>&rdquo; for the Alchemist GPUs for the 22.04 flavors of Ubuntu, but these hopes were unfortunately dashed as well after multiple attempts on fresh installs of 22.04.</p>
<p>After reviewing what Intel&rsquo;s instructions were installing, I decided to try another fresh installation of 22.04, however fully deviating from their instructions and moving on to Linux Kernel 6.0 and the bleeding edge Mesa stack. Thankfully this process resulted in very little editing of configuration files, and only needing to manually compile one package.&nbsp; This process should also be repeatable on the 22.10 flavors of Ubuntu as well.</p>
<p>Before beginning, I&rsquo;d like to suggest leaving any integrated graphics enabled, as well as ensuring an SSH server is running in the event of a blank screen that could result from any number of reboots. After running through this process twice, I believe the following instructions should not result in a blank screen.</p>
<h3 id="resizable-bar">Resizable BAR</h3>
<p>The first step is to enable Resizable BAR in the motherboard&#39;s BIOS. This typically requires a newer motherboard and processor, such as a Ryzen 3000-series processor or 10th Genetation Intel Core processor, or newer. Secure Boot is not required for this to work, and resizable BAR isn&#39;t necessary required, but it greatly increases the performance of the GPUs.</p>
<h3 id="linux-kernel-6-0">Linux Kernel 6.0</h3>
<p>The next milestone of the Linux Kernel was released on October 2nd, and the Ubuntu-optimized version was released shortly thereafter. The necessary kernel packages can be downloaded from Ubuntu&rsquo;s kernel PPA:</p>
<pre class="cmd">wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.0/amd64/linux-headers-6.0.0-060000_6.0.0-060000.202210022231_all.deb</pre>
<pre class="cmd">wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.0/amd64/linux-headers-6.0.0-060000-generic_6.0.0-060000.202210022231_amd64.deb</pre>
<pre class="cmd">wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.0/amd64/linux-modules-6.0.0-060000-generic_6.0.0-060000.202210022231_amd64.deb</pre>
<pre class="cmd">wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.0/amd64/linux-image-unsigned-6.0.0-060000-generic_6.0.0-060000.202210022231_amd64.deb</pre>
<p>Then installed via apt:</p>
<pre class="cmd">sudo apt install ./linux-*.deb</pre>
<h3 id="linux-firmware-drivers">Linux Firmware Drivers</h3>
<p>The latest i915 drivers can be found at a Gitlab repository. The pre-built Ubuntu releases are sitting behind a Proton download, so downloading these is best done from a browser. They download link can be <a href="https://gitlab.com/q3aql/drivers-linux-firmware">found here</a>.</p>
<p>Once the file has been downloaded, installation once again is down through apt:</p>
<pre class="cmd">sudo apt install ./drivers-linux-firmware_20220818-1_all.deb</pre>
<h3 id="latest-mesa-stack">Latest Mesa Stack</h3>
<p>Unfortunately the 22.04 and 22.10 flavors of Ubuntu both ship with relatively older versions of Mesa, and Intel has been dropping updates to support their dedicated GPUs for the past several months, meaning the best support for their GPUs is only available in the latest releases of Mesa, specifically 22.2.x and greater. The oibaf PPA has made the latest Mesa stack available to Ubuntu users for several years, and their releases have nearly always been very stable.&nbsp;</p>
<pre class="cmd">sudo add-apt-repository ppa:oibaf/graphics-drivers -y</pre>
<pre class="cmd">sudo apt update</pre>
<pre class="cmd">sudo apt upgrade -y</pre>
<h3 id="hardware-decoding-and-encoding">Hardware Decoding and Encoding</h3>
<p>One of the highly anticipated features of the dedicated Intel GPUs are its hardware encoding and decoding capabilities for video. Whether streaming or video editing, the Alchemist series GPUs pack some powerful hardware capabilities. Unfortunately, as with everything else in this article, these features don&rsquo;t work out of the box. The Intel Media Driver will need to be manually compiled and installed.</p>
<p>First, let&rsquo;s enable HuC firmware, which is necessary for AVC/HEVC/VP9 low power encoding bitrate control. Presrently, HuC firmware support is disabled in Linux kernels by default.</p>
<pre class="cmd">sudo su</pre>
<pre class="cmd">echo &quot;options i915 enable_guc=2&quot; &gt; /etc/modprobe.d/i915.conf</pre>
<pre class="cmd">exit</pre>
<p>Next, install the required libraries and tools required to compile the driver:</p>
<pre class="cmd">sudo apt install autoconf libtool libdrm-dev xorg xorg-dev openbox libx11-dev libgl1-mesa-glx libgl1-mesa-dev cmake g++ build-essential libva-dev libigdgmm-dev</pre>
<p>Then clone the latest release of the driver code:</p>
<pre class="cmd">mkdir intel-driver</pre>
<pre class="cmd">cd intel-driver</pre>
<pre class="cmd">git clone <a href="https://github.com/intel/media-driver.git">https://github.com/intel/media-driver.git</a></pre>
<pre class="cmd">mkdir build_media</pre>
<pre class="cmd">cmake ../media-driver</pre>
<pre class="cmd">make -j&quot;$(nproc)&quot;</pre>
<pre class="cmd">sudo make install</pre>
<pre class="cmd">export LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri/</pre>
<pre class="cmd">export LIBVA_DRIVER_NAME=iHD</pre>
<h3 id="updating-grub">Updating GRUB</h3>
<p>The last step to get the Intel Arc GPUs working requires a change to GRUB&rsquo;s configuration. This is meant to force the correct Intel i915 graphics driver to be detected and loaded at boot based on the PCI ID of the card.</p>
<pre class="cmd">sudo nano use /etc/default/grub</pre>
<p>Inside this file, find the line that looks like: GRUB_CMDLINE_LINUX_DEFAULT=&quot;quiet splash&rdquo;</p>
<p>Then edit this line by adding &ldquo;i915.force_probe=56a5&rdquo; to the end:</p>
<pre>GRUB_CMDLINE_LINUX_DEFAULT=&quot;quiet splash i915.force_probe=56a5&quot;</pre>
<p>Save the file, then upgrade grub and reboot.</p>
<pre class="cmd">sudo update-grub</pre>
<pre class="cmd">sudo reboot</pre>
<h3 id="up-and-running">Up and Running</h3>
<p>After the above instructions have been completed and the system has been rebooted, the system should now be running Kernel 6.0, the latest Mesa drivers, and latest firmware. The dedicated Intel GPU should also now be fully working for 3D Acceleration. These steps can all be verified from the command line:</p>
<p>Kernel 6.0</p>
<pre class="cmd">uname -a</pre>
<pre class="code">Linux lighthouse 6.0.0-060000-generic #202210022231 SMP PREEMPT_DYNAMIC Sun Oct 2 22:35:09 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux</pre>
<p>Mesa / OpenGL (22.3.0 at the time of this writing)</p>
<pre class="cmd">glxinfo | grep -i &#39;opengl&#39;</pre>
<pre class="code">OpenGL vendor string: IntelOpenGL renderer string: Mesa Intel(R) Arc(tm) A770 Graphics (DG2)OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.3.0-devel (git-813d502 2022-10-23 jammy-oibaf-ppa)OpenGL core profile shading language version string: 4.60OpenGL core profile context flags: (none)OpenGL core profile profile mask: core profileOpenGL core profile extensions:OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.3.0-devel (git-813d502 2022-10-23 jammy-oibaf-ppa)OpenGL shading language version string: 4.60OpenGL context flags: (none)OpenGL profile mask: compatibility profileOpenGL extensions:OpenGL ES profile version string: OpenGL ES 3.2 Mesa 22.3.0-devel (git-813d502 2022-10-23 jammy-oibaf-ppa)OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20OpenGL ES profile extensions:</pre>
<p>Hardware Accelerated Video Encoding and Decoding:</p>
<pre class="cmd">vainfo</pre>
<pre class="code">libva info: VA-API version 1.15.0libva info: User environment variable requested driver &#39;iHD&#39;libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri//iHD_drv_video.solibva info: Found init function __vaDriverInit_1_15libva info: va_openDriver() returns 0vainfo: VA-API version: 1
.15 (libva 2.12.0)vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.6.1 (da1e0b6b9)</pre>
<h3 id="optional-steam-packages">(Optional) Steam Packages</h3>
<p>Some additional packages will need to be installed to support Steam on the system. Once these have been installed, the Steam executable itself should handle installing any remaining dependencies.</p>
<pre class="cmd">sudo dpkg --add-architecture i386&nbsp;</pre>
<pre class="cmd">sudo apt-get update</pre>
<pre class="cmd">sudo apt-get install&nbsp; -y udev mesa-va-drivers:i386 mesa-common-dev:i386 mesa-vulkan-drivers:i386 libd3dadapter9-mesa-dev:i386 libegl1-mesa:i386&nbsp; libegl1-mesa-dev:i386 &nbsp; libgbm-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev:i386 &nbsp; libgles2-mesa:i386 libgles2-mesa-dev:i386 libosmesa6:i386 &nbsp; libosmesa6-dev:i386 libwayland-egl1-mesa:i386&nbsp; libxatracker2:i386 libxatracker-dev:i386 mesa-vdpau-drivers:i386&nbsp; libva-x11-2:i386</pre>
<h3 id="final-thoughts-and-next-steps">Final Thoughts and Next Steps</h3>
<p>After completing these steps, I was able to load up games such as Borderlands 2 without any trouble from Steam. Performance seems reasonable at the moment, however I haven&rsquo;t fully benchmarked any of the GPUs I presently possess. I&rsquo;m sure there will be some problems and additional tweaks to get performance to the levels Intel has advertised, however the coming weeks will provide plenty of bugfixes and additional support for these GPUs.</p>
<p>Initially I thought hardware accelerated video encoding and decoding was broken, but I was able to resolve this by manually building the Intel Media Driver, per my instructions above. This truly makes the system fully usable now, and I&rsquo;ll be able to move on to benchmarking the Alchemist cards I currently have in my possession.</p>
<div class="row">
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B092L9GF5N?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41MlpsOgclL._SL160_.jpg'/><p class='title'>AMD Ryzen 5 5600G 6-Core 12-Thread Unlocked Desktop Processor with Radeon Graphics</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B092L9GF5N?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$133.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B089CZSQB4?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/51pEWHtQQsL._SL160_.jpg'/><p class='title'>MSI B550-A PRO ProSeries Motherboard (AMD Ryzen 5000, AM4, DDR4, PCIe 4.0, SATA 6Gb/s, M.2, USB 3.2 Gen 2, HDMI/DP, ATX)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B089CZSQB4?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$109.99 at Amazon</a></div></div></div>
<div class="col-md-4 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B0B7HVZNMB?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41tBZJ-87HL._SL160_.jpg'/><p class='title'>JSAUX Docking Station for Steam Deck/ROG Ally/Legion Go/MSI Claw, 6-in-1 Steam Deck Dock with HDMI 4K@60Hz, Gigabit Ethernet, 3 USB-A 3.0 and 100W Charge, Compatible with Steam Deck OLED-HB0603</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B0B7HVZNMB?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$39.99 at Amazon</a></div></div></div>
</div><p>The post <a href="https://bioslevel.com/article/intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204/">Intel Arc Dedicated GPUs, Linux Kernel 6.0, and latest Mesa on Ubuntu 22.04</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/intel-arc-dedicated-gpus-linux-kernel-60-and-latest-mesa-on-ubuntu-2204/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>CPU-X: Linux System Profiling and Monitoring</title>
		<link>https://bioslevel.com/article/cpux-linux-system-profiling-and-monitoring/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cpux-linux-system-profiling-and-monitoring</link>
					<comments>https://bioslevel.com/article/cpux-linux-system-profiling-and-monitoring/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Thu, 20 Oct 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/cpux-linux-system-profiling-and-monitoring/</guid>

					<description><![CDATA[<p>For those familiar with CPU-Z on Windows,CPU-X delivers a similar experience for Linux users.</p>
<p>The post <a href="https://bioslevel.com/article/cpux-linux-system-profiling-and-monitoring/">CPU-X: Linux System Profiling and Monitoring</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>For nearly twenty years, CPU-Z has been a staple for performance Windows users who want to see as much detailed information about their system as possible. Windows&rsquo; built-in device manager and resource monitor only provided so much information about the hardware in a computer, but finding certain settings or tweaks that may have been set in the system BIOS or UEFI may not be exposed. Applications such as CPU-Z have filled this gap for Windows users over the years, however Linux and BSD users have been without a single desktop GUI that gives the same information.</p>
<p>CPU-X was first released in 2014, and can be easily downloaded from their <a href="https://github.com/X0rg/CPU-X">Github repository</a>. Written in C, CPU-X can be run on the desktop with a GTK interface similar to that of CPU-Z, or from the command line using ncurses. It provides to Linux users essentially what CPU-Z provides to Windows users.</p>
<h3 id="installation">Installation</h3>
<p>The quickest way to install the latest version of CPU-X is by downloading the latest AppImage from their <a href="https://x0rg.github.io/CPU-X/">Github Repository</a>. Most modern Linux distributions now support AppImage, a method of packaging compiled programs with all the necessary dependencies, allowing them to run on nearly any compatible distribution, but there are repositories out there with distro-specific builds. Their Github page also documents building CPU-X from source if so desired.</p>
<pre class="cmd">$ wget https://github.com/X0rg/CPU-X/releases/download/v4.5.0/CPU-X-v4.5.0-x86_64.AppImage</pre>
<pre class="cmd">chmod +x CPU-X-v4.5.0-x86_64.AppImage</pre>
<pre class="cmd">./CPU-X-v4.5.0-x86_64.AppImageYour GPU user mode driver is unknown: 4.6.0 NVIDIA 470.141.03Failed to create Vulkan for device 1 (VK_ERROR_EXTENSION_NOT_PRESENT)VK_EXT_pci_bus_info is not supported for device 1, use only deviceID for matchingFailed to create Vulkan for device 3 (VK_ERROR_EXTENSION_NOT_PRESENT)VK_EXT_pci_bus_info is not supported for device 3, use only deviceID for matchingYour CPU socket is not present in the database ==&gt; AMD Ryzen 7 5800X 8-Core Processor , codename: Ryzen 7 (Warhol)</pre>
<h3 id="usage">Usage</h3>
<p>By default, the AppImage launches the desktop version of CPU-X.&nbsp; The interface is remarkably similar to that of CPU-Z, so users familiar with CPU-Z should feel right at home. The first tab lists all the CPU information, such as the model, core speed, support instruction sets, and more. The tab provides information on the CPU&rsquo;s caches.</p>
<div class='row row-images'><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x1.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x1.png' alt="CPU-X" ></a></div><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x2.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x2.png' alt="CPU-X" ></a></div></div>
<p>The third tab, &ldquo;Motherboard&rdquo; is specific to the system&rsquo;s motherboard, and even provides the firmware version currently flashed. A fourth tab, &ldquo;System&rdquo;, provides information about the operating system itself, as well as RAM and swap capacity and usage.</p>
<div class='row row-images'><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x3.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x3.png' alt="CPU-X" ></a></div><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x4.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x4.png' alt="CPU-X" ></a></div></div>
<p>The final profile tab is all about the GPU, or in same instances, GPUs. This tab will show temperature, usage, memory, and even the versions of OpenGL, OpenCL, and Vulkan that are available.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x5.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x5.png' alt="CPU-X" ></a></div></div>
<p>The &ldquo;Bench&rdquo; tab provides some basic benchmark utilities, while the final tab, &ldquo;About&rdquo;, gives a little bit information about the utility itself.</p>
<p>It&rsquo;s important to note that CPU-X is also available from the command line, so this utility can be just as useful for retrieving hardware information from headless or GUI-less servers and other remote systems. Adding&nbsp;the &ldquo;-N&rdquo; switch to the command will launch the ncurses version of CPU-X:</p>
<pre class="cmd">./CPU-X-v4.5.0-x86_64.AppImage -N</pre>
<div class='row row-images'><div class='col-md-3 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x6.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x6.png' alt="CPU-X" ></a></div><div class='col-md-3 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x7.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x7.png' alt="CPU-X" ></a></div><div class='col-md-3 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x8.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x8.png' alt="CPU-X" ></a></div><div class='col-md-3 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-cpu-x-x9.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-cpu-x-x9.png' alt="CPU-X" ></a></div></div>
<h3 id="final-thoughts">Final Thoughts</h3>
<p>CPU-Z was a staple of my arsenal of programs for years while testing and reviewing hardware in Windows. CPU-X, which is free and open source, brings a similar level of information about system hardware to Linux users in a very familiar user interface, and even makes that same information available through the command line when dealing with systems that may not have a desktop interface available. This brings a certain level of convenience to users, rather than trying to find <a href="https://bioslevel.com/articles/2022/how-to-find-your-motherboard-model-and-other-hardware-information-in-linux">motherboard information from a command line tool</a> that requires a certain level of technical expertise.</p>
<div class="row">
<div class="col-md-6 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B002CQU14A?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/41JS5w0+u8L._SL160_.jpg'/><p class='title'>Noctua NT-H1 3.5g, Pro-Grade Thermal Compound Paste (3.5g)</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B002CQU14A?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$12.99 at Amazon</a></div></div></div>
<div class="col-md-6 justify-content-center"><div class='product-ad'><a target='_blank' href='https://www.amazon.com/dp/B07MFZY2F2?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img class='img-fluid' src='https://m.media-amazon.com/images/I/31usPy56+KL._SL160_.jpg'/><p class='title'>SAMSUNG 970 EVO Plus SSD 1TB NVMe M.2 Internal Solid State Hard Drive, V-NAND Technology, Storage and Memory Expansion for Gaming, Graphics w/Heat Control, Max Speed, MZ-V7S1T0B/AM</p></a><div class='priceArea'><a target='_blank' href='https://www.amazon.com/dp/B07MFZY2F2?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-warning btn-sm'>$98.97 at Amazon</a></div></div></div>
</div><p>The post <a href="https://bioslevel.com/article/cpux-linux-system-profiling-and-monitoring/">CPU-X: Linux System Profiling and Monitoring</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/cpux-linux-system-profiling-and-monitoring/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to find your motherboard model and other hardware information in Linux</title>
		<link>https://bioslevel.com/article/check-motherboard-model-and-hardware-information-linux/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=check-motherboard-model-and-hardware-information-linux</link>
					<comments>https://bioslevel.com/article/check-motherboard-model-and-hardware-information-linux/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Wed, 05 Oct 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/check-motherboard-model-and-hardware-information-linux/</guid>

					<description><![CDATA[<p>Regardless of your motherboard’s manufacturer, a single command line tool makes it simple to find your hardware’s manufacturer, model, and more in Linux.</p>
<p>The post <a href="https://bioslevel.com/article/check-motherboard-model-and-hardware-information-linux/">How to find your motherboard model and other hardware information in Linux</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Compatibility is always a consideration when purchasing new hardware.  There have been numerous times I’ve had to find my motherboard’s manufacturer or model to see if a certain feature was available, or how many full PCI-Express x16 slots I had. Years ago, this resulted in me opening my computer and looking for the model on the motherboard with a flashlight.</p>
<p>While this situation at least gave me an excuse to clean the dust from my computer, there is a much, much easier method to find this information straight from the command line.</p>
<p>Enter dmidecode, a tool that reads information directly from sysfs (/sys/) and prints it out to screen in a human-readable format. The following is taken directly from the command’s man page:</p>
<blockquote><p>dmidecode is a tool for dumping a computer&#8217;s DMI (some say SMBIOS ) table contents in a human-readable format. This table contains a description of the system&#8217;s hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision. Thanks to this table, you can retrieve this information without having to probe for the actual hardware. While this is a good point in terms of report speed and safeness, this also makes the presented information possibly unreliable.</p>
<p>The DMI table doesn&#8217;t only describe what the system is currently made of, it also can report the possible evolutions (such as the fastest supported CPU or the maximal amount of memory supported).</p>
<p>SMBIOS stands for System Management BIOS , while DMI stands for Desktop Management Interface. Both standards are tightly related and developed by the DMTF (Desktop Management Task Force).</p>
<p>As you run it, dmidecode will try to locate the DMI table. If it succeeds, it will then parse this table and display a list of records like this one:</p>
<p>Handle 0x0002, DMI type 2, 8 bytes. Base Board Information Manufacturer: Intel<br />
Product Name: C440GX+<br />
Version: 727281-001<br />
Serial Number: INCY92700942</p>
<p>Each record has:</p>
<ul style="list-style-type: disc;">
<li>
<p role="presentation">A handle. This is a unique identifier, which allows records to reference each other. For example, processor records usually reference cache memory records using their handles.</p>
</li>
<li>
<p role="presentation">A type. The SMBIOS specification defines different types of elements a computer can be made of. In this example, the type is 2, which means that the record contains &#8220;Base Board Information&#8221;.</p>
</li>
<li>
<p role="presentation">A size. Each record has a 4-byte header (2 for the handle, 1 for the type, 1 for the size), the rest is used by the record data. This value doesn&#8217;t take text strings into account (these are placed at the end of the record), so the actual length of the record may be (and is often) greater than the displayed value.</p>
</li>
<li>
<p role="presentation">Decoded values. The information presented of course depends on the type of record. Here, we learn about the board&#8217;s manufacturer, model, version and serial number.</p>
</li>
</ul>
</blockquote>
<p role="presentation"><div class='product-ad'><div class='row'><div class='col-sm-12'><h5 id="find-it-on-amazon">Find it on Amazon</h5></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B0B29H7DJS?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/41lf6Gv5iAL._SL160_.jpg' alt="GIGABYTE Z690I AORUS ULTRA LITE (LGA 1700/ Intel Z690/ Mini-ITX/ DDR5/ Dual M.2/ PCIe 3.0/ USB 3.2 Gen2X2 Type-C/ Intel WiFi 6 AX201/ Intel 2.5 GbE LAN/ Gaming Motherboard)" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B0B29H7DJS?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>GIGABYTE Z690I AORUS ULTRA LITE (LGA 1700/ Intel Z690/ Mini-ITX/ DDR5/ Dual M.2/ PCIe 3.0/ USB 3.2 Gen2X2 Type-C/ Intel WiFi 6 AX201/ Intel 2.5 GbE LAN/ Gaming Motherboard)</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B0B29H7DJS?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$254.20 at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B0B58ZP67X?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/519HRPjCKsL._SL160_.jpg' alt="Micro Center AMD Ryzen 5 5600 Tray/OEM Desktop Processor(Heatsink and Cooler Not Included) 6-core 12-Thread with ASUS TUF Gaming B450M-PRO S Motherboard PCIe 3.0, Dual M.2, 10 DrMOS Power Stages" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B0B58ZP67X?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>Micro Center AMD Ryzen 5 5600 Tray/OEM Desktop Processor(Heatsink and Cooler Not Included) 6-core 12-Thread with ASUS TUF Gaming B450M-PRO S Motherboard PCIe 3.0, Dual M.2, 10 DrMOS Power Stages</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B0B58ZP67X?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$ at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B0BDTHQTJV?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/414hfCS3maL._SL160_.jpg' alt="ASUS ROG Strix X670E-E Gaming Socket AM5(LGA 1718) Ryzen 7000 ATX Motherboard(18+2 Power Stages,PCIe® 5.0, DDR,4xM.2 Slots,USB 3.2 Gen 2x2, WiFi 6E,PCIe Slot Q-Release, M.2 Q-Latch)" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B0BDTHQTJV?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>ASUS ROG Strix X670E-E Gaming Socket AM5(LGA 1718) Ryzen 7000 ATX Motherboard(18+2 Power Stages,PCIe® 5.0, DDR,4xM.2 Slots,USB 3.2 Gen 2x2, WiFi 6E,PCIe Slot Q-Release, M.2 Q-Latch)</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B0BDTHQTJV?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$439.99 at Amazon</a></div></div></div>
<p>As a quick forewarning, dmidecode does require root-level privileges to access the information it needs. Allowing any user to access hardware-specific information about a system would be a massive security risk!</p>
<p>dmidecode is typically pre-installed on most Linux distributions, but can certainly be installed through all the major repositories if happens not to be installed:</p>
<p>Ubuntu</p>
<pre class="cmd">sudo apt-get -y install dmidecode</pre>
<p>RHEL / Fedora</p>
<pre class="cmd">sudo dnf -y install dmidecode</pre>
<p>Arch / Manjaro</p>
<pre class="cmd">sudo pacman -S dmidecode</pre>
<p>Once installed, getting the system’s motherboard information can be done through the following command:</p>
<pre class="cmd">sudo dmidecode -t 2</pre>
<pre class="code"># dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.3.0 present.

Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
       Manufacturer: Gigabyte Technology Co., Ltd.
       Product Name: X570 AORUS ELITE
       Version: Default string
       Serial Number: Default string
       Asset Tag: Default string
       Features:
               Board is a hosting board
               Board is replaceable
       Location In Chassis: Default string
       Chassis Handle: 0x0003
       Type: Motherboard
       Contained Object Handles: 0</pre>
<p>This identifies my motherboard as a Gigabyte X570 Aorus Elite. There’s also some additional information listed such as the serial number, the asset tag, and even the location in the chassis, however none of these fields are being utilized in my case.</p>
<p>dmidecode isn’t just limited to motherboard information. By altering the argument (the “2”), information can be found on additional hardware:</p>
<table class="table table-striped table-bordered">
<colgroup>
<col />
<col />
<col />
<col /></colgroup>
<tbody>
<tr>
<td>Type</td>
<td>Information</td>
<td>Type</td>
<td>Information</td>
</tr>
<tr>
<td>0</td>
<td>BIOS</td>
<td>21</td>
<td>Built-in Pointing Device</td>
</tr>
<tr>
<td>1</td>
<td>System</td>
<td>22</td>
<td>Portable Battery</td>
</tr>
<tr>
<td>2</td>
<td>Base Board</td>
<td>23</td>
<td>System Reset</td>
</tr>
<tr>
<td>3</td>
<td>Chassis</td>
<td>24</td>
<td>Hardware Security</td>
</tr>
<tr>
<td>4</td>
<td>Processor</td>
<td>25</td>
<td>System Power Controls</td>
</tr>
<tr>
<td>5</td>
<td>Memory Controller</td>
<td>26</td>
<td>Voltage Probe</td>
</tr>
<tr>
<td>6</td>
<td>Memory Module</td>
<td>27</td>
<td>Cooling Device</td>
</tr>
<tr>
<td>7</td>
<td>Cache</td>
<td>28</td>
<td>Temperature Probe</td>
</tr>
<tr>
<td>8</td>
<td>Port Connector</td>
<td>29</td>
<td>Electrical Current Probe</td>
</tr>
<tr>
<td>9</td>
<td>System Slots</td>
<td>30</td>
<td>Out-of-band Remote Access</td>
</tr>
<tr>
<td>10</td>
<td>On-Board Devices</td>
<td>31</td>
<td>Boot Integrity Services</td>
</tr>
<tr>
<td>11</td>
<td>OEM Strings</td>
<td>32</td>
<td>System Boot</td>
</tr>
<tr>
<td>12</td>
<td>System Configuration Options</td>
<td>33</td>
<td>64-bit Memory Error</td>
</tr>
<tr>
<td>13</td>
<td>BIOS Language</td>
<td>34</td>
<td>Management Device</td>
</tr>
<tr>
<td>14</td>
<td>Group Associations</td>
<td>35</td>
<td>Management Device Component</td>
</tr>
<tr>
<td>15</td>
<td>System Event Log</td>
<td>36</td>
<td>Management Device Threshold Data</td>
</tr>
<tr>
<td>16</td>
<td>Physical Memory Array</td>
<td>37</td>
<td>Memory Channel</td>
</tr>
<tr>
<td>17</td>
<td>Memory Device</td>
<td>38</td>
<td>IPMI Device</td>
</tr>
<tr>
<td>18</td>
<td>32-bit Memory Error</td>
<td>39</td>
<td>Power Supply</td>
</tr>
<tr>
<td>19</td>
<td>Memory Array Mapped Address</td>
<td>40</td>
<td>Additional Information</td>
</tr>
<tr>
<td>20</td>
<td>Memory Device Mapped Address</td>
<td>41</td>
<td>On-board Device</td>
</tr>
</tbody>
</table>
<p>There are 256 total entries, however anything past 126 is typically disabled or only used in very specific use cases by OEMs.</p>
<p>For example, checking the “Physical Memory Array” (16) will return some basic information on the RAM controller, such as the maximum supported capacity, and whether or not the memory is Error-Correcting:</p>
<pre class="cmd">sudo dmidecode -t 16</pre>
<pre class="code"># dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.3.0 present.

Handle 0x000B, DMI type 16, 23 bytes
Physical Memory Array
       Location: System Board Or Motherboard
       Use: System Memory
       Error Correction Type: None
       Maximum Capacity: 128 GB
       Error Information Handle: 0x000A
       Number Of Devices: 4</pre>
<p>Per the output, the motherboard has four total slots and can support up to 128GB.</p>
<p>In addition to the specific entries from the table above, dmidecode also supports keyword arguments to retrieve information on “groups” of hardware. For a full readout of all motherboard information, the argument “baseboard” could be passed in place of “2” and dmidecode will report back on entries 2, 10, and 41. Not all the hardware types will be supported or return any useful information for all hardware, but dmidecode can still be a great way to quickly reference certains aspects of a system.</p><p>The post <a href="https://bioslevel.com/article/check-motherboard-model-and-hardware-information-linux/">How to find your motherboard model and other hardware information in Linux</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/check-motherboard-model-and-hardware-information-linux/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Controlling RGB Lighting on Linux with OpenRGB</title>
		<link>https://bioslevel.com/article/control-rgb-linux-openrgb/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=control-rgb-linux-openrgb</link>
					<comments>https://bioslevel.com/article/control-rgb-linux-openrgb/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Sat, 03 Sep 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/control-rgb-linux-openrgb/</guid>

					<description><![CDATA[<p>OpenRGB enables Linux users to harness the capabilities of the RGB controllers in their PC from a single application, regardless of brand. Manufacturers such as Asus Aura, Gigabyte Aorus Fusion, Corsair iCue, Razor Chroma are all supported.</p>
<p>The post <a href="https://bioslevel.com/article/control-rgb-linux-openrgb/">Controlling RGB Lighting on Linux with OpenRGB</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Gone are the days of mounting cold cathode tubes and UV-reactive accessories in computer cases.&nbsp; Modern computer cases, motherboards, GPUs, fans, and even NVMe drives now feature integrated lighting by means of LEDs.&nbsp; Through the use of primary-color LEDs &ndash; Red, Blue, and Green &ndash; these devices can create nearly any color combination to illuminate computer components.&nbsp; With the addition on an RGB controller, whether smart or &ldquo;dumb&rdquo;, each individual LED (or sometimes &ldquo;zone&rdquo; of LEDs) can be controlled to create incredible patterns and effects, bringing more life and entertainment to computer components than cold cathodes ever could.</p>
<h3 id="the-problems-with-rgb">The Problems with RGB</h3>
<p>The first problem with smart controllers is that every manufacturer has opted to implement their own protocol to control these RGB devices, often leading to incompatibilities between brands.&nbsp; One brand may offer the best software and lighting effects, but they may not offer accessories that fit every use case, leading to different lighting schemas that don&rsquo;t mix well.&nbsp; Other brands may release new controllers on an annual basis that end up breaking support with new software releases or leaving older hardware behind.</p>
<p>The second problem, as found with most PC hardware, is that Linux support is essentially non-existent from the hardware manufacturers. A number of open source projects have appeared over the years, but each of these projects focused on supporting a single brand of RGB, such as Razer Chroma or Asus Aura. This is exactly what using RGB on Windows looks like as well: a separate application for each brand&rsquo;s implementation of RGB, which often utilize large amounts of both RAM and CPU.</p>
<h3 id="the-solution-openrgb">The Solution: OpenRGB</h3>
<p>In 2019, Adam Honse released the first version of OpenRGB. It was still a work-in-progress, however it was to control Asus Aura devices on both Windows and Linux. Adam spoke of wanting to grow the project bigger and include more brands and devices:</p>
<blockquote class="default">
<p>&ldquo;This project was originally just to support Asus Aura motherboards and RAM, but I want to go bigger and support as much as possible from one app, both Linux and Windows, without any official/closed source software. I&#39;d like the community&#39;s help in supporting more devices and would be happy to help you with reverse engineering.&rdquo;</p>
</blockquote>
<p>And in true open source community fashion, OpenRGB has grown to support nearly every major manufacturer&rsquo;s RGB implementations, and then some. Even the Keychron mechanical keyboard this article is being typed on is supported. The OpenRGB wiki has a <a href="https://gitlab.com/CalcProgrammer1/OpenRGB/-/wikis/Supported-Devices">full list of devices supported</a>.</p>
<p>OpenRGB is now providing Linux users a way to control the RGB effects on the hardware they paid for, from a single application.&nbsp; Not only that, but the application is cross-platform, also granting the same ability to both Windows and MacOS users from the same user interface on each platform.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-openrgb-OpenRGB.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-openrgb-OpenRGB.png' alt="OpenRGB" ></a></div></div>
<h3 id="installing-openrgb">Installing OpenRGB</h3>
<p>The early days of OpenRGB didn&rsquo;t include packaged releases from Linux, so installation was done by downloading the source code and compiling it locally.&nbsp; Presently, the community has grown and is now able to offer packages for distributions compatible with Debian, Red Hat, and Raspbian, as well as an AppImage package. For those wanting to run the latest bleeding-edge version, compilation instructions are available on their <a href="https://gitlab.com/CalcProgrammer1/OpenRGB/-/wikis/home">wiki</a>.</p>
<p>It is important to note that OpenRGB is still considered to be in beta at the time of this writing, so note there is always a chance the software could damage or brick your hardware.&nbsp; That being said, I&rsquo;ve been a user since the first release and have had no issues across several different computers.</p>
<p>The latest release can be retrieved from their <a href="https://openrgb.org/releases.html">website</a>, and can then be installed either using the GUI or CLI depending on your preference.&nbsp; For example, on Debian-based systems from the command line:</p>
<pre class="cmd">sudo dpkg -i openrgb_0.7_amd64_buster_6128731.deb</pre>
<p>Installing from a package will also install some necessary udev rules for allowing non-root users to access and control the RGB hardware. Depending on the Linux distribution, some additional steps may be required in order to grant access to all the supported RGB hardware. All users will need to grant access to the SMBus:</p>
<pre class="cmd">sudo modprobe i2c-dev</pre>
<p>Users with Intel chipsets will then need to run:</p>
<pre class="cmd">sudo modprobe i2c-i801</pre>
<pre class="cmd">sudo modprobe i2c-nct6775</pre>
<p>Meanwhile, AMD users will run:</p>
<pre class="cmd">sudo modprobe i2c-piix4</pre>
<p>Attention should be paid to the OpenRGB wiki, as there are several noted exceptions to the instructions above where kernel batches or boot parameters may be necessary depending on the hardware in use. Once complete, running RGB will scan the system for supported devices and then load the primary interface.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-openrgb-rgb1.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-openrgb-rgb1.png' alt="OpenRGB" ></a></div></div>
<h3 id="using-openrgb">Using OpenRGB</h3>
<p>All the support hardware on the system appears in the left-hand side of the interface, while device-specific controls for each device are on the right-hand side. Depending on the RGB controller, OpenRGB will allow for LEDs to be controlled in zones, individually, or as a single device.&nbsp; Additionally, if the hardware on the system supports the same light effects, the selected configuration can be applied to all the RGB controllers with the click of a button.</p>
<div class='row row-images'><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-openrgb-rgb4.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-openrgb-rgb4.png' alt="OpenRGB" ></a></div><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-openrgb-rgb3.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-openrgb-rgb3.png' alt="OpenRGB" ></a></div></div>
<p>The lower half of the controls gives options for lighting effects, and control over those effects: speed, direction, brightness, etc.&nbsp;</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-openrgb-rgb2.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-openrgb-rgb2.png' alt="OpenRGB" ></a></div></div>
<p>One of the best features of OpenRGB is the ability to save and load multiple configurations. Lighting can be configured for different times of day, activities, or moods, and be saved and loaded at any point, automatically moving all the support devices to the saved configuration. Imagine trying to do that on Windows with three or more RGB applications.</p>
<h3 id="additional-features">Additional Features</h3>
<p>Aside from controlling onboard RGB hardware, OpenRGB provides a Software Development Kit (SDK) interface, allowing for other applications to integrate with OpenRGB over networks. This alone opens tons of additional opportunities for OpenRGB, such as allowing hardware creators to create remote RGB controllers that can interface with OpenRGB over wifi, Bluetooth, and more. One such implementation would be tying in with a plugin for OBS Studio that could change RGB settings based on events in a livestream.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-openrgb-rgb5.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-openrgb-rgb5.png' alt="OpenRGB" ></a></div></div>
<p>OpenRGB also allows pairing with network devices such as Nanoleaf, Philips Hue, Yeezlight, and more, further allowing users to fully customize their RGB setups from a single application and change lighting in seconds.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-openrgb-rgb6.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-openrgb-rgb6.png' alt="OpenRGB" ></a></div></div>
<p>Thanks to work on the OpenRGB community and open source community as a whole, it&rsquo;s also possible to build completely custom RGB implementations using hardware such as an Arduino as a controller, in conjunction with open source lighting protocols such as the <a href="https://github.com/Legion2/CorsairLightingProtocol">Corsair Lighting Protocol</a> on Github.</p>
<h3 id="conclusion">Conclusion</h3>
<p>While desktop lighting effects may not be a crucial part of computing, it is a<br />
n entertaining and neat feature built into many desktop components &ndash; from motherboards to GPUs, fans, power supplies, keyboards, mice, and more. Windows users have long had the advantage of being the only users able to control these elements, but OpenRGB has opened the door for Linux and even MacOS users to join the party.</p>
<div class='row '><div class='col-md-8 offset-md-2'><div class="embed-responsive embed-responsive-16by9"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/2UWFB4UHShI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div></div></div>
<p>Thanks to the efforts of Adam Honse, the community he&rsquo;s built around OpenRGB, as well as the other open source projects that have built applications for controlling these otherwise proprietary RGB controllers, Linux users can now control a vast majority of RGB hardware on the market from a single application.&nbsp; With the ability to save and load multiple profiles, users can easily switch between an unlimited number of lighting configurations with the click of a mouse.</p>
<p>Visit the <a href="https://openrgb.org/">OpenRGB homepage</a> to get started with OpenRGB, and if you&rsquo;re able, make a contribution to their Patreon to further support the project.</p>
<div class='product-ad'><div class='row'><div class='col-sm-12'><h5 id="find-it-on-amazon">Find it on Amazon</h5></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B07GVHSSWR?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/41Lgn1APpCL._SL160_.jpg' alt="NZXT AER RGB 2 - HF-28120-B1 - 120mm - Advanced Lighting Customizations - Winglet Tips - Fluid Dynamic Bearing - LED RGB PWM Fan for Hue 2 - Single (HUE2 Lighting Controller Not Included) , Black" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B07GVHSSWR?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>NZXT AER RGB 2 - HF-28120-B1 - 120mm - Advanced Lighting Customizations - Winglet Tips - Fluid Dynamic Bearing - LED RGB PWM Fan for Hue 2 - Single (HUE2 Lighting Controller Not Included) , Black</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B07GVHSSWR?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$42.89 at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B0B1M2JVTY?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/41fQ5xL7HiL._SL160_.jpg' alt="NZXT RGB & Fan Controller - AC-CRFR0-B1-6 RGB Lighting Channels - 3 Fan Channels - RGB Lighting Customization - Black" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B0B1M2JVTY?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>NZXT RGB & Fan Controller - AC-CRFR0-B1-6 RGB Lighting Channels - 3 Fan Channels - RGB Lighting Customization - Black</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B0B1M2JVTY?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$34.68 at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B089QWBHB3?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/51mtHmGXjQL._SL160_.jpg' alt="Corsair iCUE LT100 Smart Lighting Tower Starter Kit, Black" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B089QWBHB3?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>Corsair iCUE LT100 Smart Lighting Tower Starter Kit, Black</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B089QWBHB3?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$149.99 at Amazon</a></div></div></div><p>The post <a href="https://bioslevel.com/article/control-rgb-linux-openrgb/">Controlling RGB Lighting on Linux with OpenRGB</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/control-rgb-linux-openrgb/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Productivity on Linux: Yakuake</title>
		<link>https://bioslevel.com/article/productivity-on-linux-yakuake/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=productivity-on-linux-yakuake</link>
					<comments>https://bioslevel.com/article/productivity-on-linux-yakuake/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Mon, 29 Aug 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/productivity-on-linux-yakuake/</guid>

					<description><![CDATA[<p>The drop-down terminal emulator provides instant terminal access on the desktop and brings a touch of nostalgia from the early gaming days.</p>
<p>The post <a href="https://bioslevel.com/article/productivity-on-linux-yakuake/">Productivity on Linux: Yakuake</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<h3 id="introduction">Introduction</h3>
<p>Whether you refer to it as a command line interface, console, or terminal, the terminal is one of the most important tools available on Linux. To that extent, it is important to always have rapid access to the terminal, and a little style has never hurt anyone. Yakuake brings the console to the forefront of your desktop with the press of a key, allowing you to quickly perform your tasks with ease.</p>
<p>Of course, one of the greatest advantages of Linux and Open Source is the flexibility to build an environment that best suits the end user. Some will argue that tiling window managers provide quicker access to the terminal, but to each their own. KDE has been my desktop of choice since the 2.0 days, so Yakuake fits the bill for a fast-access terminal emulator &#8211; and it can for you, too.</p>
<p>Before we move on, how about trying to say &ldquo;yakuake&rdquo; five-times fast?</p>
<h3 id="installation">Installation</h3>
<p>Yakuake is in the repositories for nearly every one of the major distributions, but for those it isn&rsquo;t, the developers have made snaps available, and it can also be compiled from source. Debian-based distributions such as Ubuntu or Kubuntu can install it from their package managers, or the command line via:</p>
<pre class="cmd">sudo apt-get install yakuake</pre>
<p>Once installed, Yakuake can be started either by the system menu or by running &ldquo;yakuake&rdquo; in a terminal or run prompt. Initially, a notification will appear on screen with instructions on how to open Yakuake. By default, this key is F12. Because I paired an aluminum Apple keyboard with Linux for well over a decade, I typically re-map this to F11 as to not interfere with the ability to pop open an optical drive (does anyone have these anymore?).</p>
<h3 id="initial-presentation-and-usage">Initial Presentation and Usage</h3>
<p>Pressing the key for the first time will cause the terminal to dropdown from the active screen (if you&rsquo;re using multiple monitors). This behavior can be changed so it always opens on the same screen if desired. I keep it fixed on a monitor I have oriented vertically, allowing for a larger number of lines to be shown.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-yakuake-yak1.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-yakuake-yak1.png' alt="Yakuake" ></a></div></div>
<p>With hardware rendering available to the desktop environment, Yakuake&rsquo;s animations are clean, fast, and smooth. From a productivity perspective, the sliding up and down may be unnecessary, but the speed at which Yakuake performs these animations isn&rsquo;t drawn out. The dropdown opens and closes in well less than a second.</p>
<p>The initial console looks an awful lot like Konsole, KDE&rsquo;s default terminal emulator. This is because Yakuake has been built on Konsole&rsquo;s libraries, so it is very integrated with the KDE platform. In fact, any profiles that have been created in Konsole are available for Yakuake as well. This means the terminal can be styled to the user&rsquo;s liking: default shell, fonts, color schemes, and even background transparency.</p>
<div class='row row-images'><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-yakuake-yak2.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-yakuake-yak2.png' alt="Konsole" ></a></div><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-yakuake-yak3.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-yakuake-yak3.png' alt="Yakuake" ></a></div></div>
<p>The default size of the Yakuake dropdown can also be easily adjusted. The height of the window can be increased or decreased by clicking on the bottom edge of the dropdown and moving the mouse up or down. The width can be adjusted through the menu icon on the bottom-right. Similarly, the dropdown can be moved to the left or right of the screen, or take up the full length. Numerous presets are available in the settings dropdown menu for height, width, alignment, and more.</p>
<p>Like Konsole, one of my favorite features with Yakuake is the ability to have multiple tabs. This allows me to easily SSH to a number of different servers simultaneously, while running other processes in different tabs. Tabs can be easily navigated by pressing SHIFT and a left or right arrow based on which direction I want to go. New tabs can be opened with CTRL-SHIFT-N, and I can close the current tab with CTRL-SHIFT-W.</p>
<p>Similar to <a href="https://github.com/tmux/tmux/wiki" target="_blank" rel="noopener">tmux</a>, Yakuake also offers the ability to open a tab with multiple terminals. I personally use tmux when I need to have multiple terminals available simultaneously, but it may be much more beginner-friendly using the functionality Yakuake and Konsole offer.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-yakuake-yak4.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-yakuake-yak4.png' alt="Yakuake" ></a></div></div>
<h3 id="final-thoughts">Final Thoughts</h3>
<p>I&rsquo;ve been using Yakuake for well over a decade, and it has proven to be one of my most used tools both professionally and personally. The ability to have an open terminal available in a single key-press is a feature that can&rsquo;t be overlooked, and is critical to system administration and support roles. Konsole is an absolutely incredible terminal emulator, but Yakuake takes this a step further.</p>
<p>Whether using a single monitor or multiple, Yakuake can be adapted to individual preference and help the end-user greatly. For that instant-access feature, Yakuake can be configured (by default) to open on the active screen, so it will always open on top of the active window. Or, Yakuake can be configured to open on a specific screen so the user always knows where it will open.</p>
<p>Yakuake is still actively being developed and improved. Installation instructions and more information can be found at <a href="https://apps.kde.org/yakuake/" target="_blank" rel="noopener">apps.kde.org</a>. Let us know in the comments if you&rsquo;ve installed Yakuake or have been using it regularly!</p>
<div class='product-ad'><div class='row'><div class='col-sm-12'><h5 id="find-it-on-amazon">Find it on Amazon</h5></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B082Z1YYRK?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/41YueZNZswL._SL160_.jpg' alt="USB Type-C to A Cable 5pack 6ft Braided Fast Charging 3A Quick Charger Cord, 6 Foot Compatible iPhone 15,Samsung Galaxy S10 S9 S8 Plus, Note 10 9 8, LG V50 V40 G8 G7(Grey)" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B082Z1YYRK?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>USB Type-C to A Cable 5pack 6ft Braided Fast Charging 3A Quick Charger Cord, 6 Foot Compatible iPhone 15,Samsung Galaxy S10 S9 S8 Plus, Note 10 9 8, LG V50 V40 G8 G7(Grey)</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B082Z1YYRK?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$9.99 (0.33 / Foot) at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B07D9C8NP2?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/41kVDbwSkLL._SL160_.jpg' alt="Anker iPhone Charger Cable, (2-Pack) 6ft, Premium Nylon USB-A to Lightning Cable, MFi Certified Cable for iPhone SE/Xs/XS Max/XR/X/8 Plus/7/6 Plus, iPad, and More." ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B07D9C8NP2?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>Anker iPhone Charger Cable, (2-Pack) 6ft, Premium Nylon USB-A to Lightning Cable, MFi Certified Cable for iPhone SE/Xs/XS Max/XR/X/8 Plus/7/6 Plus, iPad, and More.</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B07D9C8NP2?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$21.99 at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B07GZH2WTV?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/41MvP-pIdEL._SL160_.jpg' alt="JSAUX 100W USB C to USB C Cable (2-Pack 6.6FT+6.6FT), 5A PD USBC Type-C Carplay Cable Fast Charging Cord Compatible with iPhone 15 Pro Max Samsung S24 S23 S22 Z-flip MacBook Pro/Air M3 iPad Pro Red" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B07GZH2WTV?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>JSAUX 100W USB C to USB C Cable (2-Pack 6.6FT+6.6FT), 5A PD USBC Type-C Carplay Cable Fast Charging Cord Compatible with iPhone 15 Pro Max Samsung S24 S23 S22 Z-flip MacBook Pro/Air M3 iPad Pro Red</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B07GZH2WTV?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$9.99 at Amazon</a></div></div></div><p>The post <a href="https://bioslevel.com/article/productivity-on-linux-yakuake/">Productivity on Linux: Yakuake</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/productivity-on-linux-yakuake/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Adding Multi-Factor Authentication (MFA, 2FA) To Ubiquiti Unifi VPN</title>
		<link>https://bioslevel.com/article/adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn</link>
					<comments>https://bioslevel.com/article/adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn/#respond</comments>
		
		<dc:creator><![CDATA[Sean Potter]]></dc:creator>
		<pubDate>Thu, 25 Aug 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<guid isPermaLink="false">https://bioslevel.com/uncategorized/adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn/</guid>

					<description><![CDATA[<p>Multi-factor authentication is a must in today's security. We're setting it up with Duo's Auth Proxy on a Unifi Security Gateway with the Unifi Client VPN.</p>
<p>The post <a href="https://bioslevel.com/article/adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn/">Adding Multi-Factor Authentication (MFA, 2FA) To Ubiquiti Unifi VPN</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Over the past several years, I’ve become a fan of Ubiquiti’s line of Unifi hardware and software.  The ability to see all the compatible network devices and configure them from a unified UX has become one of my favorite  aspects of their products.  However, one of the aspects I find them lagging behind is their options for client virtual private networks (VPN).</p>
<h2 id="why-should-i-use-multi-factor-authentication">Why Should I Use Multi-Factor Authentication?</h2>
<p>With ransomware always on the rise, it is more important than ever to add additional layers of security to your networks.  Even Linux and Mac are not as safe no longer being ignored by hackers, and <a href="https://www.csoonline.com/article/3662151/linux-malware-is-on-the-rise-6-types-of-attacks-to-look-for.html">new ransomware continues to add Linux to its sights</a>.  Adding multi-factor authentication (MFA) to logins has proven to be one of the best ways to safeguard systems and networks.</p>
<p>During the pandemic, VPNs became a standard for the ubiquitous work-at-home trend.  While neither VPNs nor working from home are new concepts, many companies that never implemented remote access for their employees had to quickly deploy these technologies to keep their businesses running and their employees safe.</p>
<p>While VPN traffic is encrypted by default, most implementations still require a username and password to authenticate the employee.  Weak password policies, default passwords, and shared credentials are amongst some of the largest reasons many networks fall to ransomware and hackers.  Adding an additional layer of security to a simple login will greatly reduce the chances of exploitation.</p>
<p>While Unifi has introduced “Unifi ID” and “Unifi Teleport” for secure VPN access, these options are only available on their latest and greatest consoles. For those of us running anything just a few years older, e.g. a Security Gateway (USG), we’re a little out-of-luck at having a contained solution for multi-factor authentication for client VPNs.</p>
<p>When creating a client VPN in the Unifi interface, you can assign any valid Remote Authentication Dial-In User Service (RADIUS) server to the VPN for authentication.  The Unifi Security Gateway line (including the “Pro” models), all have a RADIUS server running.  By itself, their implementation is very basic, only allowing the creation of usernames and passwords, so an additional service will be necessary to implement a second layer of security.</p>
<p>Enter <a href="https://duo.com">Duo</a>, a company specializing in Two-Factor Authentication and Data Protection. They have an authentication proxy that can be installed on your local network.  This proxy can act as a RADIUS server that can be assigned to a client VPN in the Unifi interface.  On the backend, the proxy can connect to another RADIUS server, or LDAP if Active Directory or Samba domains are available for authentication.</p>
<p>For multi-factor security, the proxy also integrates with Duo’s 2FA services and sends a push notification to users, so users must authenticate in the Duo mobile app after entering their credentials in order to establish a VPN connection.</p>
<p>For those of us in smaller office environments, or for home use, Active Directory or a RADIUS server for authentication may either not be available, or be overkill for our needs.  As I wrote earlier, there’s an internal RADIUS server on the Unifi Security Gateways which can be used in conjunction with the Duo’s Authentication Proxy.  Let’s look at setting this up.</p>
<div class='product-ad'><div class='row'><div class='col-sm-12'><h5 id="find-it-on-amazon">Find it on Amazon</h5></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B08ML5B6BT?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/21ddLCLCrxL._SL160_.jpg' alt="Ubiquiti Compact 5-Port Gigabit Switch" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B08ML5B6BT?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>Ubiquiti Compact 5-Port Gigabit Switch</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B08ML5B6BT?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$92.19 at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B086GNGL77?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/31EDLFc6jQL._SL160_.jpg' alt="UniFi Switch Flex Mini" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B086GNGL77?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>UniFi Switch Flex Mini</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B086GNGL77?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$38.31 at Amazon</a></div></div><div class='row'><div class='col-sm-3'><a class='align-middle' target='_blank' href='https://www.amazon.com/dp/B09MGCJT5Z?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'><img  class='img-fluid' src='https://m.media-amazon.com/images/I/11B9nQv8NXL._SL160_.jpg' alt="Ubiquiti UniFi 6 Pro Access Point | US Model, Wireless | PoE Adapter not Included (U6-Pro-US)" ></a></div><div class='col-sm-6 align-middle '><a class='card-text' href='https://www.amazon.com/dp/B09MGCJT5Z?tag=bioslevel-20&linkCode=ogi&th=1&psc=1'>Ubiquiti UniFi 6 Pro Access Point | US Model, Wireless | PoE Adapter not Included (U6-Pro-US)</a></div><div class='col-sm-3 align-middle '><a target='_blank' href='https://www.amazon.com/dp/B09MGCJT5Z?tag=bioslevel-20&linkCode=ogi&th=1&psc=1' class='btn btn-block btn-warning btn-sm'>$153.89 at Amazon</a></div></div></div>
<h2 id="set-up-a-duo-account-and-users">Set Up a Duo Account and Users</h2>
<p>Head over to <a href="https://duo.com">Duo</a> and set up an account.  Their pricing is very reasonable based on the number of users required, and they also have a free tier which will work fine for smaller office environments and/or home use.</p>
<p>Once you’ve set up and verified your Duo account, the next step is to add your users.  All that needs done in Duo is ensuring the usernames match the usernames that were created in the Unifi interface.  Provide each user’s e-mail address, and be sure to click the link to send their enrollment e-mail.</p>
<p>Finally, credentials for connecting the authentication proxy to Duo are needed, so an application needs to be set up under the “Applications” screen.  In the list of applications available, select “Partner Auth API”.  Take note of the integration key, secret key, and API hostname for later.</p>
<h2 id="install-and-configure-the-authentication-proxy">Install and Configure the Authentication Proxy</h2>
<p>The Authentication Proxy can be installed on either Windows or Linux.  Duo provides <a href="https://duo.com/docs/authproxy-reference">up-to-date instructions</a> for installing, updating, and maintaining the service.</p>
<p>Once the service has been installed, the default configuration file needs to be updated to work with the Unifi Client VPN.  For Linux systems, the configuration file can be found at /opt/duoauthproxy/conf/authproxy.cfg</p>
<pre class="doc">; Complete documentation about the Duo Auth Proxy can be found here:
; https://duo.com/docs/authproxy_reference

; NOTE: After any changes are made to this file the Duo Authentication Proxy
; must be restarted for those changes to take effect.

; MAIN: Include this section to specify global configuration options.
; Reference: https://duo.com/docs/authproxy_reference#main-section
;[main]


; CLIENTS: Include one or more of the following configuration sections.
; To configure more than one client configuration of the same type, append a
; number to the section name (e.g. [ad_client2])

[radius_client]
host=<em>IP address of Unifi Security Gateway</em>
port=1812
secret=<em>Password #1</em>

; SERVERS: Include one or more of the following configuration sections.
; To configure more than one server configuration of the same type, append a
; number to the section name (e.g. radius_server_auto1, radius_server_auto2)

[radius_server_auto]
ikey=<em>your Duo interface key</em>
skey=<em>your Duo secret key</em>
api_host=<em>your Duo API hostname</em>
radius_ip_1=<em>IP address of Unifi Security Gateway</em>
radius_secret_1=<em>Password #2</em>
failmode=safe
client=radius_client
port=1813</pre>
<p>Essentially, this configuration is setting the Unifi Security Gateway as a permitted RADIUS client (meaning non-listed IPs will not be able to communicate with the proxy).  This configuration also establishes the Unifi Security Gateway as RADIUS server that will be used for authenticating user credentials. Passwords #1 and #2 will be re-used when configuring the Unifi Client VPN, so be sure to keep these on hand.  Additionally, note that this configuration is using port 1813 (UDP) for authentication.</p>
<p>When an authentication request comes to the proxy, it will first reach out to the Unifi RADIUS server to authenticate the user’s username and password.  Upon success, the proxy will then send out an authentication request to Duo’s servers, triggering a push notification to the user’s mobile device(s). If the user successfully authenticates from the mobile device, the user will be authenticated to the VPN.</p>
<h2 id="configuring-unifi">Configuring Unifi</h2>
<p>From the Unifi dashboard, click on the “Gear” icon in the left-hand navigation to go to the Settings screen.  From here, go to “Profiles” and scroll down to “RADIUS”.  There should already be a “Default” profile here.  Go into this profile and ensure it is enabled, and enter Password #1 from the above section into the “Secret” field.</p>
<div class='row row-images'><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_123946.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_123946.png' alt="Unifi Settings" ></a></div><div class='col-md-6 col-sm-12'><a href="/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124018.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124018.png' alt="Unifi Settings" ></a></div></div>
<p>Back from the profiles screen, click on “Create New RADIUS Profile”.   “Name” is arbitrary, however for the sake of accura<br />
cy, “Duo Proxy” would be sufficient.  Under “Radius Settings”, “Authentication Server” will be the IP address of the server running the Duo Authentication Proxy, and the port will be 1813 based on the configuration from above.  “Shared Secret” will be password #2 from the configuration above.  Click “add”, then “Apply Changes”.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124049.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124049.png' alt="Add RADIUS Profile" ></a></div></div>
<p>Next, head over to the VPN settings.  Configuring the VPN itself is outside the scope of this article, but if this hasn’t been completed already, enable the VPN, set the protocol to “LT2P”, and create a pre-shared key.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124746.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124746.png' alt="Unifi VPN Settings" ></a></div></div>
<p>Again, if this hasn’t been done already, add your VPN users.  Remember that the usernames must match the usernames that were created in Duo.</p>
<p>Finally, under the “Advanced Configuration”, name the VPN and set the RADIUS Profile to the Duo Radius profile created in the steps above.</p>
<div class='row row-images'><div class='col-md-8 offset-md-2'><a href="/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124818.png" data-toggle='lightbox' data-gallery='article-gallery'><img  class='d-block w-100' src='/wp-content/uploads/2024/06/articles-unifi-mfa-Screenshot_20220821_124818.png' alt="Unifi Advanced VPN Settings" ></a></div></div>
<p>Click on “Apply Changes”, and the Unifi Client VPN should now be protected with MFA.  All client VPN connection attempts with a valid username and password will now trigger a push notification to user mobile devices through the Duo app.</p>
<h2 id="wrapping-up">Wrapping Up</h2>
<p>As far as troubleshooting goes, the Authentication Proxy logs to /opt/duoauthproxy/log/ by default.  If a firewall is active on the server running the proxy, an exception will need to be added for UDP port 1813 (per the configuration in this article) so external connections are allowed.  Since authentication is completed over UDP, the Unifi Security Gateway and Authentication Proxy will need to be on the same physical network.</p>
<p>Finally, it’s recommended that the Duo Authentication Proxy is started at boot.  Otherwise, you may lose remote access if the authentication server reboots from a power outage or other issue.  The installed installs a systemd script by default, so this is as easy as:</p>
<pre class="cmd">sudo systemctl enable --now duoauthproxy.service</pre>
<p>Now complete, remote access to your networks should be protected with more than a simple username and password.</p>
<p>With the Duo Authentication Proxy in place, multi-factor authentication could also be extended to additional services on your network such as Wifi, SSH, logins, and more.  For a more integrated solution, a RADIUS server such as FreeRADIUS could be implemented on the network to replace the very basic RADIUS features server available from the Unifi Security Gateway, allowing for enhanced password policies, user maintenance portals, and more.  If you’d like to read more about these possibilities, let us know in the comments.</p><p>The post <a href="https://bioslevel.com/article/adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn/">Adding Multi-Factor Authentication (MFA, 2FA) To Ubiquiti Unifi VPN</a> first appeared on <a href="https://bioslevel.com">BIOSLEVEL</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://bioslevel.com/article/adding-multifactor-authentication-mfa-to-ubiquiti-unifi-vpn/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
