<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.its-treason.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Timon</id>
	<title>Timon&#039;s Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.its-treason.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Timon"/>
	<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/wiki/Special:Contributions/Timon"/>
	<updated>2026-06-12T14:05:21Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=76</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=76"/>
		<updated>2025-10-05T15:57:57Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Timefall Farm&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (Lightweight: 800)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Weather Station&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Lightweight: 1000)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Junk Dealer&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Chiral Ladder&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Chiral Artist&#039;s Studio&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Chiral Boots&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Craftsman&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Hemantic Grenate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|Timefall Shelter&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 32 Chiral Crystal&lt;br /&gt;
* 400 Metal&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Memory Chips ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!#&lt;br /&gt;
!Tip&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|On the foundation of the white ball shaped building near the weather station.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|In a small cave left of Mama&#039;s lab (Under the highway sign).&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|On the hood of a truck at the Distribution Center Noth of Mountain Knot City.&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Near the beach lying on some rubble.&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|Inside a small cave slightly above the most nothern river.&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|On a rock next to the big cryptobiotes nest.&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|On the west pillar of the broken Bridge.&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|Inside the big Mule tent.&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|Inside the small Tent in the East of the Mule Camp.&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|On top the Timefall farmer House. Can easly be climbed from the back.&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|Lying on a elevated position at east of the Tower. Ladder or Gravity gloves needed for pickup.&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|At the bottom of the hill, inside a small cave.&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|Inside the broken down Barn, in a shelf on the Catwalk.&lt;br /&gt;
|-&lt;br /&gt;
|46&lt;br /&gt;
|Lying on the ground right next to a big black rock.&lt;br /&gt;
|-&lt;br /&gt;
|48&lt;br /&gt;
|At the bottom of the vog gas filled ravine. TODO: Strat&lt;br /&gt;
|-&lt;br /&gt;
|51&lt;br /&gt;
|On top of the Mountain, under the Torii.&lt;br /&gt;
|-&lt;br /&gt;
|55&lt;br /&gt;
|Under the Highway cossing next to a rusted pickup truck.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Abcde&amp;diff=75</id>
		<title>Abcde</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Abcde&amp;diff=75"/>
		<updated>2025-05-28T15:04:54Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:abcde}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;abcde&#039;&#039;&#039; (&#039;&#039;&#039;a&#039;&#039;&#039; &#039;&#039;&#039;b&#039;&#039;&#039;etter &#039;&#039;&#039;CD&#039;&#039;&#039; &#039;&#039;&#039;e&#039;&#039;&#039;ncoder) is a Linux terminal program for ripping CD&#039;s. It can automagically search for Music Metadata and encode the Music in various different formats.&lt;br /&gt;
&lt;br /&gt;
=== Install (Debian) ===&lt;br /&gt;
abcde is available in the official Repository. The &amp;lt;code&amp;gt;--no-install-recommends&amp;lt;/code&amp;gt; should be used, because x11 will otherwise be installed.&lt;br /&gt;
&lt;br /&gt;
A package for the target codec should also be installed&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;vorbis-tools&amp;lt;/code&amp;gt; for OGG. This is the default.&lt;br /&gt;
* &amp;lt;code&amp;gt;flac&amp;lt;/code&amp;gt; for FLAC files.&lt;br /&gt;
* &amp;lt;code&amp;gt;lame&amp;lt;/code&amp;gt; for MP3 files.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
apt install abcde flac --no-install-recommends&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
&lt;br /&gt;
==== Config ====&lt;br /&gt;
The config file for abcde is located under &amp;lt;code&amp;gt;~/.abcde.conf&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Example Config for FLAC. Extracted music will be used under &amp;lt;code&amp;gt;~/Music&amp;lt;/code&amp;gt; grouped by Album name.&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
OUTPUTTYPE=flac&lt;br /&gt;
OUTPUTFORMAT=&#039;./Music/${ALBUMFILE}/${ARTISTFILE} - ${TRACKFILE}&#039;&lt;br /&gt;
VAOUTPUTFORMAT=&#039;./Music/${ALBUMFILE}/${ARTISTFILE} - ${TRACKFILE}&#039;&lt;br /&gt;
FLACOPTS=&#039;-8&#039;&lt;br /&gt;
PADTRACKS=y&lt;br /&gt;
&lt;br /&gt;
# Eject CD after reading is complete&lt;br /&gt;
EJECTCD=y&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Ripping CD&#039;s ====&lt;br /&gt;
After the config file is created &amp;lt;code&amp;gt;abcde&amp;lt;/code&amp;gt; can be executed and will automatically start ripping the currently inserted Disk. abcde uses &amp;quot;CD Paranoia&amp;quot; to extract the Music and displaying the progress bar. You can see here: https://www.xiph.org/paranoia/faq.html#progbar what the different symbols mean.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;-N&amp;lt;/code&amp;gt; can be used to make the process non-interactive, abcde will always use the first option for Metadata information.&lt;br /&gt;
&lt;br /&gt;
==== Moving &amp;quot;cover.jpg&amp;quot; back into the extraction folder ====&lt;br /&gt;
If abcde found a Cover to the CD online, it will apply it to all extracted Tracks and will then create an &amp;quot;albumart_backup&amp;quot; folder inside the target folder. For Jellyfin and other Applications, it is useful to have the cover inside the target folder directly. This can be fixed with a script.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
# Set the base directory where your music albums are stored&lt;br /&gt;
MUSIC_DIR=&amp;quot;./Music&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Find all albumart_backup directories&lt;br /&gt;
find &amp;quot;$MUSIC_DIR&amp;quot; -type d -name &amp;quot;albumart_backup&amp;quot; | while read -r backup_dir; do&lt;br /&gt;
    # Get the parent album directory&lt;br /&gt;
    album_dir=$(dirname &amp;quot;$backup_dir&amp;quot;)&lt;br /&gt;
    &lt;br /&gt;
    # Check if cover.jpg exists in the backup directory&lt;br /&gt;
    if [ -f &amp;quot;$backup_dir/cover.jpg&amp;quot; ]; then&lt;br /&gt;
        echo &amp;quot;Moving cover from $backup_dir to $album_dir&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        # Move the cover.jpg to the album directory&lt;br /&gt;
        mv &amp;quot;$backup_dir/cover.jpg&amp;quot; &amp;quot;$album_dir/&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        # Check if the move was successful&lt;br /&gt;
        if [ $? -eq 0 ]; then&lt;br /&gt;
            echo &amp;quot;Successfully moved cover.jpg to $album_dir&amp;quot;&lt;br /&gt;
            &lt;br /&gt;
            # Remove the now-empty albumart_backup directory&lt;br /&gt;
            rm -rf &amp;quot;$backup_dir&amp;quot;&lt;br /&gt;
            echo &amp;quot;Removed $backup_dir&amp;quot;&lt;br /&gt;
        else&lt;br /&gt;
            echo &amp;quot;Failed to move cover.jpg from $backup_dir to $album_dir&amp;quot;&lt;br /&gt;
        fi&lt;br /&gt;
    else&lt;br /&gt;
        echo &amp;quot;No cover.jpg found in $backup_dir&amp;quot;&lt;br /&gt;
        # Remove the directory anyway if it&#039;s empty or doesn&#039;t have cover.jpg&lt;br /&gt;
        rm -rf &amp;quot;$backup_dir&amp;quot;&lt;br /&gt;
        echo &amp;quot;Removed $backup_dir&amp;quot;&lt;br /&gt;
    fi&lt;br /&gt;
    &lt;br /&gt;
    echo &amp;quot;-----------------------------------&amp;quot;&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;All album art processing completed.&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;{{DEFAULTSORT:abcde}}&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Abcde&amp;diff=73</id>
		<title>Abcde</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Abcde&amp;diff=73"/>
		<updated>2025-05-28T14:54:23Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;{{DISPLAYTITLE:abcde}}  &amp;#039;&amp;#039;&amp;#039;abcde&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;a&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;b&amp;#039;&amp;#039;&amp;#039;etter &amp;#039;&amp;#039;&amp;#039;CD&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;e&amp;#039;&amp;#039;&amp;#039;ncoder) is a Linux terminal program for ripping CD&amp;#039;s. It can automagically search for Music Metadata and encode the Music in various different formats.  === Install (Debian) === abcde is available in the official Repository. The &amp;lt;code&amp;gt;--no-install-recommends&amp;lt;/code&amp;gt; should be used, because x11 will otherwise be installed.  A package for the target codec should also be installed  * &amp;lt;code&amp;gt;vorbis-tools...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:abcde}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;abcde&#039;&#039;&#039; (&#039;&#039;&#039;a&#039;&#039;&#039; &#039;&#039;&#039;b&#039;&#039;&#039;etter &#039;&#039;&#039;CD&#039;&#039;&#039; &#039;&#039;&#039;e&#039;&#039;&#039;ncoder) is a Linux terminal program for ripping CD&#039;s. It can automagically search for Music Metadata and encode the Music in various different formats.&lt;br /&gt;
&lt;br /&gt;
=== Install (Debian) ===&lt;br /&gt;
abcde is available in the official Repository. The &amp;lt;code&amp;gt;--no-install-recommends&amp;lt;/code&amp;gt; should be used, because x11 will otherwise be installed.&lt;br /&gt;
&lt;br /&gt;
A package for the target codec should also be installed&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;vorbis-tools&amp;lt;/code&amp;gt; for OGG. This is the default.&lt;br /&gt;
* &amp;lt;code&amp;gt;flac&amp;lt;/code&amp;gt; for FLAC files.&lt;br /&gt;
* &amp;lt;code&amp;gt;lame&amp;lt;/code&amp;gt; for MP3 files.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
apt install abcde flac --no-install-recommends&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
&lt;br /&gt;
==== Config ====&lt;br /&gt;
The config file for abcde is located under &amp;lt;code&amp;gt;~/.abcde.conf&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Example Config for FLAC. Extracted music will be used under &amp;lt;code&amp;gt;~/Music&amp;lt;/code&amp;gt; grouped by Album name.&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
OUTPUTTYPE=flac&lt;br /&gt;
OUTPUTFORMAT=&#039;./Music/${ALBUMFILE}/${ARTISTFILE} - ${TRACKFILE}&#039;&lt;br /&gt;
VAOUTPUTFORMAT=&#039;./Music/${ALBUMFILE}/${ARTISTFILE} - ${TRACKFILE}&#039;&lt;br /&gt;
FLACOPTS=&#039;-8&#039;&lt;br /&gt;
PADTRACKS=y&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Ripping CD&#039;s ====&lt;br /&gt;
After the config file is created &amp;lt;code&amp;gt;abcde&amp;lt;/code&amp;gt; can be executed and will automatically start ripping the currently inserted Disk. abcde uses &amp;quot;CD Paranoia&amp;quot; to extract the Music and displaying the progress bar. You can see here: https://www.xiph.org/paranoia/faq.html#progbar what the different symbols mean.&lt;br /&gt;
&lt;br /&gt;
==== Moving &amp;quot;cover.jpg&amp;quot; back into the extraction folder ====&lt;br /&gt;
If abcde found a Cover to the CD online, it will apply it to all extracted Tracks and will then create an &amp;quot;albumart_backup&amp;quot; folder inside the target folder. For Jellyfin and other Applications, it is useful to have the cover inside the target folder directly. This can be fixed with a script.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
# Set the base directory where your music albums are stored&lt;br /&gt;
MUSIC_DIR=&amp;quot;./Music&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Find all albumart_backup directories&lt;br /&gt;
find &amp;quot;$MUSIC_DIR&amp;quot; -type d -name &amp;quot;albumart_backup&amp;quot; | while read -r backup_dir; do&lt;br /&gt;
    # Get the parent album directory&lt;br /&gt;
    album_dir=$(dirname &amp;quot;$backup_dir&amp;quot;)&lt;br /&gt;
    &lt;br /&gt;
    # Check if cover.jpg exists in the backup directory&lt;br /&gt;
    if [ -f &amp;quot;$backup_dir/cover.jpg&amp;quot; ]; then&lt;br /&gt;
        echo &amp;quot;Moving cover from $backup_dir to $album_dir&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        # Move the cover.jpg to the album directory&lt;br /&gt;
        mv &amp;quot;$backup_dir/cover.jpg&amp;quot; &amp;quot;$album_dir/&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        # Check if the move was successful&lt;br /&gt;
        if [ $? -eq 0 ]; then&lt;br /&gt;
            echo &amp;quot;Successfully moved cover.jpg to $album_dir&amp;quot;&lt;br /&gt;
            &lt;br /&gt;
            # Remove the now-empty albumart_backup directory&lt;br /&gt;
            rm -rf &amp;quot;$backup_dir&amp;quot;&lt;br /&gt;
            echo &amp;quot;Removed $backup_dir&amp;quot;&lt;br /&gt;
        else&lt;br /&gt;
            echo &amp;quot;Failed to move cover.jpg from $backup_dir to $album_dir&amp;quot;&lt;br /&gt;
        fi&lt;br /&gt;
    else&lt;br /&gt;
        echo &amp;quot;No cover.jpg found in $backup_dir&amp;quot;&lt;br /&gt;
        # Remove the directory anyway if it&#039;s empty or doesn&#039;t have cover.jpg&lt;br /&gt;
        rm -rf &amp;quot;$backup_dir&amp;quot;&lt;br /&gt;
        echo &amp;quot;Removed $backup_dir&amp;quot;&lt;br /&gt;
    fi&lt;br /&gt;
    &lt;br /&gt;
    echo &amp;quot;-----------------------------------&amp;quot;&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;All album art processing completed.&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;{{DEFAULTSORT:abcde}}&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=72</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=72"/>
		<updated>2025-05-11T02:49:29Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Timefall Farm&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (Lightweight: 800)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Weather Station&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Lightweight: 1000)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Junk Dealer&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Chiral Ladder&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Chiral Artist&#039;s Studio&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Chiral Boots&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Craftsman&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Hemantic Grenate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|Timefall Shelter&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 32 Chiral Crystal&lt;br /&gt;
* 400 Metal&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Memory Chips ==&lt;br /&gt;
&lt;br /&gt;
=== Central Region ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!#&lt;br /&gt;
!Tip&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|On the foundation of the white ball shaped building near the weather station.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|In a small cave left of Mama&#039;s lab (Under the highway sign).&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Near the beach lying on some rubble.&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|Inside a small cave slightly above the most nothern river.&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|On a rock next to the big cryptobiotes nest.&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|On the west pillar of the broken Bridge.&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|Inside the big Mule tent.&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|Inside the small Tent in the East of the Mule Camp.&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|On top the Timefall farmer House. Can easly be climbed from the back.&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|Lying on a elevated position at east of the Tower. Ladder or Gravity gloves needed for pickup.&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|At the bottom of the hill, inside a small cave.&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|Inside the broken down Barn. Inside a shelf on the Catwalk.&lt;br /&gt;
|-&lt;br /&gt;
|46&lt;br /&gt;
|Lying on the ground right next to a big black rock.&lt;br /&gt;
|-&lt;br /&gt;
|48&lt;br /&gt;
|At the bottom of the vog gas filled ravine. TODO: Strat&lt;br /&gt;
|-&lt;br /&gt;
|51&lt;br /&gt;
|On top of the Mountain, under the Torii.&lt;br /&gt;
|-&lt;br /&gt;
|55&lt;br /&gt;
|Under the Highway cossing next to a rusted pickup truck.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=71</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=71"/>
		<updated>2025-04-27T22:42:41Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Timefall Farm&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (Lightweight: 800)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Weather Station&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Lightweight: 1000)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Junk Dealer&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Chiral Ladder&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Chiral Artist&#039;s Studio&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Chiral Boots&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Craftsman&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Hemantic Grenate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|Timefall Shelter&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 32 Chiral Crystal&lt;br /&gt;
* 400 Metal&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Memory Chips ==&lt;br /&gt;
&lt;br /&gt;
=== Central Region ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!#&lt;br /&gt;
!Tip&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|On the foundation of the white ball shaped building near the weather station.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|In a small cave left of Mama&#039;s lab (Under the highway sign).&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Near the beach lying on some rubble.&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|On the west pillar of the broken Bridge.&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|Inside the small Tent in the East of the Mule Camp.&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|On top the Timefall farmer House. Can easly be climbed from the back.&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|Lying on a elevated position at east of the Tower. Ladder or Gravity gloves needed for pickup.&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|At the bottom of the hill, inside a small cave.&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|Inside the broken down Barn. Inside a shelf on the Catwalk.&lt;br /&gt;
|-&lt;br /&gt;
|46&lt;br /&gt;
|Lying on the ground right next to a big black rock.&lt;br /&gt;
|-&lt;br /&gt;
|51&lt;br /&gt;
|On top of the Mountain, under the Torii.&lt;br /&gt;
|-&lt;br /&gt;
|55&lt;br /&gt;
|Under the Highway cossing next to a rusted pickup truck.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=70</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=70"/>
		<updated>2025-04-27T21:42:49Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Timefall Farm&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (Lightweight: 800)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Weather Station&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Lightweight: 1000)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Junk Dealer&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Chiral Ladder&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Chiral Artist&#039;s Studio&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Chiral Boots&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Craftsman&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Hemantic Grenate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|Timefall Shelter&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 32 Chiral Crystal&lt;br /&gt;
* 400 Metal&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Memory Chips ==&lt;br /&gt;
&lt;br /&gt;
=== Central Region ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!#&lt;br /&gt;
!Tip&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|On the foundation of the white ball shaped building near the weather station.&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|On the west pillar of the broken Bridge.&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|Inside the small Tent in the East of the Mule Camp.&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|On top the Timefall farmer House. Can easly be climbed from the back.&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|At the bottom of the hill, inside a small cave.&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|Inside the broken down Barn. Inside a shelf on the Catwalk.&lt;br /&gt;
|-&lt;br /&gt;
|46&lt;br /&gt;
|Lying on the ground right next to a big black rock.&lt;br /&gt;
|-&lt;br /&gt;
|51&lt;br /&gt;
|On top of the Mountain, under the Torii.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=69</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=69"/>
		<updated>2025-04-27T20:55:00Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Timefall Farm&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (Lightweight: 800)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Weather Station&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Lightweight: 1000)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Junk Dealer&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Chiral Ladder&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Chiral Artist&#039;s Studio&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Chiral Boots&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Craftsman&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Hemantic Grenate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|Timefall Shelter&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 32 Chiral Crystal&lt;br /&gt;
* 400 Metal&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Data Chips ==&lt;br /&gt;
&lt;br /&gt;
=== Central Region ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!#&lt;br /&gt;
!Tip&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|Inside the small Tent in the East of the Mule Camp.&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|On top the Timefall farmer House. Can easly be climbed from the back.&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|Inside the broken down Barn. Inside a shelf on the Catwalk.&lt;br /&gt;
|-&lt;br /&gt;
|51&lt;br /&gt;
|On top of the Mountain, under the Torii.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=68</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=68"/>
		<updated>2025-04-27T02:19:20Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Timefall Farm&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (Lightweight: 800)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Weather Station&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Lightweight: 1000)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Junk Dealer&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Chiral Ladder&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Chiral Artist&#039;s Studio&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Chiral Boots&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Craftsman&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Custom Hemantic Grenate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|Timefall Shelter&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 32 Chiral Crystal&lt;br /&gt;
* 400 Metal&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=67</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=67"/>
		<updated>2025-04-26T20:53:31Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Timefall Farm&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (Lightweight: 800)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Weather Station&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Lightweight: 1000)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|Timefall Shelter&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 32 Chiral Crystal&lt;br /&gt;
* 400 Metal&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=66</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=66"/>
		<updated>2025-04-26T15:23:25Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Zip-Line&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 240 Chemicals&lt;br /&gt;
* 480 Special Alloys&lt;br /&gt;
|&lt;br /&gt;
* 300 Chiral Crystals&lt;br /&gt;
* 1440 Chemicals&lt;br /&gt;
* 1440 Special Alloys&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=65</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=65"/>
		<updated>2025-04-26T14:58:17Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Gratitude&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High-Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The Elder&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Resins (High-Density: 320)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=64</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=64"/>
		<updated>2025-04-26T14:47:55Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Appreciation&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Film Director&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Generator&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
|&lt;br /&gt;
* 400 Metals&lt;br /&gt;
* 100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=63</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=63"/>
		<updated>2025-04-26T14:46:45Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Appreciation&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Film Director&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Structures ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Level 1&lt;br /&gt;
!Level 2&lt;br /&gt;
!Level 3&lt;br /&gt;
|-&lt;br /&gt;
|Generator&lt;br /&gt;
|&lt;br /&gt;
|400 Metals&lt;br /&gt;
|400 Metals&lt;br /&gt;
100 Chiral Crystals&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=62</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=62"/>
		<updated>2025-04-26T14:19:14Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Appreciation&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Film Director&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (High Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=61</id>
		<title>Death Stranding</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Death_Stranding&amp;diff=61"/>
		<updated>2025-04-26T14:14:01Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;== Prepper Rewards == {| class=&amp;quot;wikitable&amp;quot; !Prepper !Initial !Ranks !&amp;#039;&amp;#039;&amp;#039;Token of Appreciation&amp;#039;&amp;#039;&amp;#039; |- |Film Director | | |Metals (Hight Density: 400) |- | | | | |- | | | | |}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prepper Rewards ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Prepper&lt;br /&gt;
!Initial&lt;br /&gt;
!Ranks&lt;br /&gt;
!&#039;&#039;&#039;Token of Appreciation&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Film Director&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Metals (Hight Density: 400)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=60</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=60"/>
		<updated>2025-04-06T11:51:29Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My Personal Wiki&lt;br /&gt;
&lt;br /&gt;
[[Special:Categories]]&lt;br /&gt;
&lt;br /&gt;
[[Special:AllPages]]&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=59</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=59"/>
		<updated>2025-02-23T14:22:51Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My Personal Wiki&lt;br /&gt;
&lt;br /&gt;
[[Special:Categories|Categories]]&lt;br /&gt;
&lt;br /&gt;
[[Special:AllPages]]&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Docker&amp;diff=58</id>
		<title>Docker</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Docker&amp;diff=58"/>
		<updated>2025-01-02T12:38:07Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Multi-arch Build ==&lt;br /&gt;
&lt;br /&gt;
=== Builder Setup ===&lt;br /&gt;
Install QEMOU to allow emulation of different arches. Using emulation is not the most efficient way to build an image. See [https://docs.docker.com/build/building/multi-platform/#qemu Docker docs] for more other ways.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker run --privileged --rm tonistiigi/binfmt --install all&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Creating the new builder:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker buildx create --name &amp;lt;Name&amp;gt; --bootstrap --use&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Replace &amp;lt;code&amp;gt;&amp;lt;Name&amp;gt;&amp;lt;/code&amp;gt; with a different name. The Flag &amp;lt;code&amp;gt;--use&amp;lt;/code&amp;gt; will automaticity select the builder as default. Running &amp;lt;code&amp;gt;docker buildx ls&amp;lt;/code&amp;gt; should show your new builder, with available platforms.&lt;br /&gt;
&lt;br /&gt;
=== Building an Image ===&lt;br /&gt;
Edit your Dockerfile to select the arch depending on the build argument.&amp;lt;syntaxhighlight lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
- FROM alpine:latest&lt;br /&gt;
+ ARG ARCH=&lt;br /&gt;
+ FROM ${ARCH}alpine:latest&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Now you can build your image using&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker buildx build --push --platform linux/arm64/v8,linux/amd64/v3 --tag OWNER/IMAGE:VERSION .&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This will build the image in the current directory for arm64 &amp;amp; amd64 and push it into the registry to &amp;lt;code&amp;gt;OWNER/IMAGE:VERSION&amp;lt;/code&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Docker&amp;diff=57</id>
		<title>Docker</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Docker&amp;diff=57"/>
		<updated>2024-10-27T17:19:28Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Multi-arch Build ==&lt;br /&gt;
&lt;br /&gt;
=== Builder Setup ===&lt;br /&gt;
Install QEMOU to allow emulation of different arches. Using emulation is not the most efficient way to build an image. See [https://docs.docker.com/build/building/multi-platform/#qemu Docker docs] for more other ways.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker run --privileged --rm tonistiigi/binfmt --install all&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Creating the new builder:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker buildx create --name &amp;lt;Name&amp;gt; --bootstrap --use&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Replace &amp;lt;code&amp;gt;&amp;lt;Name&amp;gt;&amp;lt;/code&amp;gt; with a different name. The Flag &amp;lt;code&amp;gt;--use&amp;lt;/code&amp;gt; will automaticity select the builder as default. Running &amp;lt;code&amp;gt;docker buildx ls&amp;lt;/code&amp;gt; should show your new builder with all kind of platforms available.&lt;br /&gt;
&lt;br /&gt;
=== Building an Image ===&lt;br /&gt;
Edit your Dockerfile to select the arch depending on the build argument.&amp;lt;syntaxhighlight lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
- FROM alpine:latest&lt;br /&gt;
+ ARG ARCH=&lt;br /&gt;
+ FROM ${ARCH}alpine:latest&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Now you can build your image using&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker buildx build --push --platform linux/arm64/v8,linux/amd64/v3 --tag OWNER/IMAGE:VERSION .&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This will build the image in the current directory for arm64 &amp;amp; amd64 and push it into the registry to &amp;lt;code&amp;gt;OWNER/IMAGE:VERSION&amp;lt;/code&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=56</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=56"/>
		<updated>2024-07-21T14:13:03Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My Personal Wiki.&lt;br /&gt;
&lt;br /&gt;
[[Special:Categories|Categories]]&lt;br /&gt;
&lt;br /&gt;
[[Special:AllPages]]&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=55</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=55"/>
		<updated>2024-07-21T14:12:56Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My Personal Wiki. Test&lt;br /&gt;
&lt;br /&gt;
[[Special:Categories|Categories]]&lt;br /&gt;
&lt;br /&gt;
[[Special:AllPages]]&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Fstab&amp;diff=54</id>
		<title>Fstab</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Fstab&amp;diff=54"/>
		<updated>2024-05-07T09:50:48Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Structure ==&lt;br /&gt;
Values are separated by one or more spaces.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Value&lt;br /&gt;
|-&lt;br /&gt;
|Filesystem&lt;br /&gt;
|The Filesystem / Partition to be mounted. &lt;br /&gt;
Can be a the path to a partition e.g. &amp;lt;code&amp;gt;/dev/sdb2&amp;lt;/code&amp;gt; or a UUID e.g. &amp;lt;code&amp;gt;PARTUUID=65561b67-2aee-4c48-8a67-2ea71f5f4ba&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Mount Point&lt;br /&gt;
|Path to the mountpoint. Should be an existing empty folder. Value &amp;lt;code&amp;gt;none&amp;lt;/code&amp;gt; can be used for Swap-Partitions&lt;br /&gt;
|-&lt;br /&gt;
|FS-Type&lt;br /&gt;
|Type of the file system e.g &amp;lt;code&amp;gt;ext4&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ntfs&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Options&lt;br /&gt;
|Mounting options. e.g. &amp;lt;code&amp;gt;defaults,nofail&amp;lt;/code&amp;gt; -&amp;gt; Default settings, allow booting when mounting the partition fails&lt;br /&gt;
|-&lt;br /&gt;
|Dump&lt;br /&gt;
|Weather to create a Dump before mounting. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; don&#039;t create dump. &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; create dump&lt;br /&gt;
|-&lt;br /&gt;
|Check Fsck&lt;br /&gt;
|Check file system before mounting them. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; don&#039;t check anything should be used for Windows / NTFS Partitions. &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; For root file system (Except if type is &amp;lt;code&amp;gt;btfs&amp;lt;/code&amp;gt;or &amp;lt;code&amp;gt;XFS&amp;lt;/code&amp;gt;). &amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt; Check the filesystem before mounting.&lt;br /&gt;
|}&lt;br /&gt;
Example &amp;lt;code&amp;gt;fstab&amp;lt;/code&amp;gt; file:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# This is the default fstab of a rpi with an external harddrive&lt;br /&gt;
proc            /proc           proc    defaults          0       0&lt;br /&gt;
PARTUUID=0a70b801-01  /boot           vfat    defaults,flush    0       2&lt;br /&gt;
PARTUUID=0a70b801-02  /               ext4    defaults,noatime  0       1&lt;br /&gt;
# a swapfile is not a swap partition, no line here&lt;br /&gt;
#   use  dphys-swapfile swap[on|off]  for that&lt;br /&gt;
&lt;br /&gt;
PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800dbc /data ext4 defaults,nofail 0 2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Options ==&lt;br /&gt;
For all list of all options, see: [https://man.archlinux.org/man/ext4.5#MOUNT_OPTIONS Ext file system options] and [https://man.archlinux.org/man/mount.8#FILESYSTEM-INDEPENDENT_MOUNT_OPTIONS File system independent Options]. Note that changing owner or permissions is only really needed for file system that don&#039;t support UNIX permissions, e.g &amp;lt;code&amp;gt;NTFS&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;ext4&amp;lt;/code&amp;gt; and others will save all permissions.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|defaults&lt;br /&gt;
|Commen Default settings. These include: &amp;lt;code&amp;gt;rw&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;suid&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;dev&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;exec&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;auto&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;nouser&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;async&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;realtime&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|ro&lt;br /&gt;
|Mount the file system in readonly mode&lt;br /&gt;
|-&lt;br /&gt;
|rw&lt;br /&gt;
|Mount the file system in Read-Write mode (In defaults)&lt;br /&gt;
|-&lt;br /&gt;
|nofail&lt;br /&gt;
|Skip the file system if it can&#039;t be found. Very usefull for thumb-drives. If this options is not set, the system will wait for the filesystem to be connected before booting&lt;br /&gt;
|-&lt;br /&gt;
|umask=PERMS&lt;br /&gt;
|Set the Permissions for all files and directories. Important: This is a umask so its disallows permissions e.g. &amp;lt;code&amp;gt;000&amp;lt;/code&amp;gt; becomes &amp;lt;code&amp;gt;777&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;022&amp;lt;/code&amp;gt;becomes&amp;lt;code&amp;gt;755&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|uid=UID&lt;br /&gt;
|Set the owner of all files. Can be the users UID or username.&lt;br /&gt;
|-&lt;br /&gt;
|gid=GID&lt;br /&gt;
|Set the owner group of all files. Can be the groups GID or groupname.&lt;br /&gt;
|-&lt;br /&gt;
|windows_names&lt;br /&gt;
|Only for NTFS: Prevent the creating of files with characters that are not allowed within Windows e.g. &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;quot; * &amp;lt; &amp;gt; / | \&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and some &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Determine file system types and UUID ==&lt;br /&gt;
To list all partitions with their UUID execute:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
sudo blkid -s UUID&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Validating fstab ==&lt;br /&gt;
Executing &amp;lt;code&amp;gt;mount -fav&amp;lt;/code&amp;gt; will try to mount all file systems without actually making a system call. &lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt; Try to auto mount everything inside &amp;lt;code&amp;gt;fstab&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;lt;code&amp;gt;-f&amp;lt;/code&amp;gt; Fake, don&#039;t make any system calls. &lt;br /&gt;
* &amp;lt;code&amp;gt;-v&amp;lt;/code&amp;gt; Verbose print more debug output.&lt;br /&gt;
&lt;br /&gt;
Alternative &amp;lt;code&amp;gt;findmnt --verify --verbose&amp;lt;/code&amp;gt; can print nice information and detailed error messages.&lt;br /&gt;
&lt;br /&gt;
Output without any errors:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# findmnt --verify --verbose&lt;br /&gt;
/proc&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] do not check proc source (pseudo/net)&lt;br /&gt;
   [ ] do not check proc FS type (pseudo/net)&lt;br /&gt;
/boot&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] FS options: flush&lt;br /&gt;
   [ ] PARTUUID=0a70b801-01 translated to /dev/mmcblk0p1&lt;br /&gt;
   [ ] source /dev/mmcblk0p1 exists&lt;br /&gt;
   [ ] FS type is vfat&lt;br /&gt;
/&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] VFS options: noatime&lt;br /&gt;
   [ ] PARTUUID=0a70b801-02 translated to /dev/mmcblk0p2&lt;br /&gt;
   [ ] source /dev/mmcblk0p2 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
/data&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] userspace options: nofail&lt;br /&gt;
   [ ] PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800dbc translated to /dev/sda1&lt;br /&gt;
   [ ] source /dev/sda1 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
Success, no errors or warnings detected&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Output with wrong &amp;lt;code&amp;gt;PARTUUID&amp;lt;/code&amp;gt; value:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# findmnt --verify --verbose&lt;br /&gt;
/proc&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
...&lt;br /&gt;
   [ ] source /dev/mmcblk0p2 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
/data&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] userspace options: nofail&lt;br /&gt;
   [E] unreachable on boot required source: PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800db&lt;br /&gt;
&lt;br /&gt;
0 parse errors, 1 error, 0 warnings&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Docker&amp;diff=53</id>
		<title>Docker</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Docker&amp;diff=53"/>
		<updated>2024-01-24T00:22:51Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Multi-arch Build ==&lt;br /&gt;
&lt;br /&gt;
=== Builder Setup ===&lt;br /&gt;
Install QEMOU to allow emulation of different arches. Using emulation is not the most efficient way to build an image. See  [https://docs.docker.com/build/building/multi-platform/#qemu Docker docs] for more other ways.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker run --privileged --rm tonistiigi/binfmt --install all&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Creating the new builder:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker buildx create --name &amp;lt;Name&amp;gt; --bootstrap --use&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Replace &amp;lt;code&amp;gt;&amp;lt;Name&amp;gt;&amp;lt;/code&amp;gt; with a different name. The Flag &amp;lt;code&amp;gt;--use&amp;lt;/code&amp;gt; will automaticity select the builder as default. Running &amp;lt;code&amp;gt;docker buildx ls&amp;lt;/code&amp;gt; should show your new builder with all kind of platforms available.&lt;br /&gt;
&lt;br /&gt;
=== Building an Image ===&lt;br /&gt;
Edit your Dockerfile to select the arch depending on the build argument.&amp;lt;syntaxhighlight lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
- FROM alpine:latest&lt;br /&gt;
+ ARG ARCH=&lt;br /&gt;
+ FROM ${ARCH}alpine:latest&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Now you can build your image using&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker buildx build --push --platform linux/arm64/v8,linux/amd64/v3 --tag OWNER/IMAGE:VERSION .&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This will build the image in the current directory for arm64 &amp;amp; amd64 and push it into the registry to &amp;lt;code&amp;gt;OWNER/IMAGE:VERSION&amp;lt;/code&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Mise&amp;diff=52</id>
		<title>Mise</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Mise&amp;diff=52"/>
		<updated>2024-01-24T00:19:11Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mise (pronounced &amp;quot;meez&amp;quot;) is a development environment setup tool. It can install and manage dev tools/runtimes like node, python, or php.&lt;br /&gt;
&lt;br /&gt;
== Runtimes ==&lt;br /&gt;
&lt;br /&gt;
=== PHP ===&lt;br /&gt;
Debian dependencies&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
build-essentetials cpp unzip locate autoconf bison re2c pkg-config libxml2-dev libsqlite3-dev zlib1g-dev libcurl4-openssl-dev libgd-dev libonig-dev libpq-dev libreadline-dev libzip-dev&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Docker&amp;diff=51</id>
		<title>Docker</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Docker&amp;diff=51"/>
		<updated>2024-01-24T00:17:05Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;== Multi-arch Build ==  === Builder Setup === Install QEMOU to allow emulation of different arches. Using emulation is not the most efficient way to build an image. See  [https://docs.docker.com/build/building/multi-platform/#qemu Docker docs] for more other ways.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt; docker run --privileged --rm tonistiigi/binfmt --install all &amp;lt;/syntaxhighlight&amp;gt;Creating the new builder:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt; docker buildx create --name &amp;lt;Name&amp;gt; --bootstra...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Multi-arch Build ==&lt;br /&gt;
&lt;br /&gt;
=== Builder Setup ===&lt;br /&gt;
Install QEMOU to allow emulation of different arches. Using emulation is not the most efficient way to build an image. See  [https://docs.docker.com/build/building/multi-platform/#qemu Docker docs] for more other ways.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker run --privileged --rm tonistiigi/binfmt --install all&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Creating the new builder:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
docker buildx create --name &amp;lt;Name&amp;gt; --bootstrap --use&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Replace &amp;lt;code&amp;gt;&amp;lt;Name&amp;gt;&amp;lt;/code&amp;gt; with a different name. The Flag &amp;lt;code&amp;gt;--use&amp;lt;/code&amp;gt; will automaticity select the builder as default. Running &amp;lt;code&amp;gt;docker buildx ls&amp;lt;/code&amp;gt; should show your new builder with all kind of platforms available.&lt;br /&gt;
&lt;br /&gt;
=== Building an Image ===&lt;br /&gt;
Edit your Dockerfile to select the arch depending on the build argument.&amp;lt;syntaxhighlight lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
- FROM alpine:latest&lt;br /&gt;
+ ARG ARCH=&lt;br /&gt;
+ FROM ${ARCH}alpine:latest&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Now you can build your image using&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Mise&amp;diff=50</id>
		<title>Mise</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Mise&amp;diff=50"/>
		<updated>2024-01-05T00:07:19Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;Mise (pronounced &amp;quot;meez&amp;quot;) is a development environment setup tool. It can install and manage dev tools/runtimes like node, python, or php.  == Runtimes ==  === PHP === Debian dependencies&amp;lt;syntaxhighlight&amp;gt; build-essentetials cpp unzip locate autoconf bison re2c pkg-config libxml2-dev libsqlite3-dev zlib1g-dev libcurl4-openssl-dev libgd-dev libonig-dev libpq-dev libreadline-dev libzip-dev &amp;lt;/syntaxhighlight&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mise (pronounced &amp;quot;meez&amp;quot;) is a development environment setup tool. It can install and manage dev tools/runtimes like node, python, or php.&lt;br /&gt;
&lt;br /&gt;
== Runtimes ==&lt;br /&gt;
&lt;br /&gt;
=== PHP ===&lt;br /&gt;
Debian dependencies&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
build-essentetials cpp unzip locate autoconf bison re2c pkg-config libxml2-dev libsqlite3-dev zlib1g-dev libcurl4-openssl-dev libgd-dev libonig-dev libpq-dev libreadline-dev libzip-dev&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=File:Logo_senate_round.png&amp;diff=49</id>
		<title>File:Logo senate round.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=File:Logo_senate_round.png&amp;diff=49"/>
		<updated>2023-12-18T22:34:14Z</updated>

		<summary type="html">&lt;p&gt;Timon: Timon uploaded a new version of File:Logo senate round.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=File:Logo_senate_round.png&amp;diff=48</id>
		<title>File:Logo senate round.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=File:Logo_senate_round.png&amp;diff=48"/>
		<updated>2023-12-18T22:06:33Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Raspberry_Pi&amp;diff=47</id>
		<title>Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Raspberry_Pi&amp;diff=47"/>
		<updated>2023-07-23T20:47:35Z</updated>

		<summary type="html">&lt;p&gt;Timon: /* SSH-Key authorization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Watchdog setup ===&lt;br /&gt;
The Watchdog will ensure that the Raspberry Pi will restart in case it freezes.&lt;br /&gt;
&lt;br /&gt;
Ensure the watchdog is installed as a Kernel module: &amp;lt;code&amp;gt;ls -al /dev/watchdog*&amp;lt;/code&amp;gt; should show one or more files.&lt;br /&gt;
&lt;br /&gt;
The watchdog must then be enabled in &amp;lt;code&amp;gt;systemd&amp;lt;/code&amp;gt;. Edit the &amp;lt;code&amp;gt;/etc/systemd/system.conf&amp;lt;/code&amp;gt; config file. Under the &amp;lt;code&amp;gt;[Manager]&amp;lt;/code&amp;gt; section, add the following:&amp;lt;syntaxhighlight lang=&amp;quot;toml&amp;quot;&amp;gt;&lt;br /&gt;
RuntimeWatchdogSec=10&lt;br /&gt;
ShutdownWatchdogSec=10min&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Reboot the system to apply all changes. &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; should now log watchdog being started.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
$ dmesg | grep -i watchdog&lt;br /&gt;
[    0.596574] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer&lt;br /&gt;
[    2.336190] systemd[1]: Using hardware watchdog &#039;Broadcom BCM2835 Watchdog timer&#039;, version 0, device /dev/watchdog&lt;br /&gt;
[    2.336229] systemd[1]: Set hardware watchdog to 10s.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;To test the watchdog, you can start a fork bomb to freeze the system, the watchdog should detect the freeze and automatically reboot. This fork bomb can be executed inside your shell: &amp;lt;code&amp;gt;:(){ :|:&amp;amp; };:&amp;lt;/code&amp;gt; &#039;&#039;&#039;This will freeze your system! Make sure nothing important is running in the background. It can take a few minutes before reboot.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== SSH key authorization ===&lt;br /&gt;
By depositing the public key on the Raspberry Pi, you can connect using SSH without using a password.&lt;br /&gt;
&lt;br /&gt;
Ensure that you already created an SSH key, if not follow these instructions: [https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key Generation a new SSH key]. Execute &amp;lt;code&amp;gt;ssh-copy-id &amp;lt;username&amp;gt;@&amp;lt;host&amp;gt;&amp;lt;/code&amp;gt; this will collect your local SSH key and ask for a password. When the password was correct, the Public key will be copied to &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; and SSH will not ask for a password the next time connecting.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Raspberry_Pi&amp;diff=46</id>
		<title>Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Raspberry_Pi&amp;diff=46"/>
		<updated>2023-07-23T13:43:12Z</updated>

		<summary type="html">&lt;p&gt;Timon: Add ssh-key auth&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Watchdog setup ===&lt;br /&gt;
The Watchdog will ensure that the Raspberry Pi will restart in case it freezes.&lt;br /&gt;
&lt;br /&gt;
Ensure the watchdog is installed as a Kernel module: &amp;lt;code&amp;gt;ls -al /dev/watchdog*&amp;lt;/code&amp;gt; should show one or more files.&lt;br /&gt;
&lt;br /&gt;
The watchdog must then be enabled in &amp;lt;code&amp;gt;systemd&amp;lt;/code&amp;gt;. Edit the &amp;lt;code&amp;gt;/etc/systemd/system.conf&amp;lt;/code&amp;gt; config file. Under the &amp;lt;code&amp;gt;[Manager]&amp;lt;/code&amp;gt; section, add the following:&amp;lt;syntaxhighlight lang=&amp;quot;toml&amp;quot;&amp;gt;&lt;br /&gt;
RuntimeWatchdogSec=10&lt;br /&gt;
ShutdownWatchdogSec=10min&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Reboot the system to apply all changes. &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; should now log watchdog being started.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
$ dmesg | grep -i watchdog&lt;br /&gt;
[    0.596574] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer&lt;br /&gt;
[    2.336190] systemd[1]: Using hardware watchdog &#039;Broadcom BCM2835 Watchdog timer&#039;, version 0, device /dev/watchdog&lt;br /&gt;
[    2.336229] systemd[1]: Set hardware watchdog to 10s.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;To test the watchdog, you can start a fork bomb to freeze the system, the watchdog should detect the freeze and automatically reboot. This fork bomb can be executed inside your shell: &amp;lt;code&amp;gt;:(){ :|:&amp;amp; };:&amp;lt;/code&amp;gt; &#039;&#039;&#039;This will freeze your system! Make sure nothing important is running in the background. It can take a few minutes before reboot.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== SSH-Key authorization ===&lt;br /&gt;
By depositing the public key on the Raspberry Pi, you can connect using SSH without using a password.&lt;br /&gt;
&lt;br /&gt;
Ensure that you already created an SSH key, if not follow these instructions: [https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key Generation a new SSH key]. Execute &amp;lt;code&amp;gt;ssh-copy-id &amp;lt;username&amp;gt;@&amp;lt;host&amp;gt;&amp;lt;/code&amp;gt; this will collect your local SSH key and ask for a password. When the password was correct, the Public key will be copied to &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; and SSH will not ask for a password the next time connecting.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=45</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Main_Page&amp;diff=45"/>
		<updated>2023-05-31T12:54:24Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My Personal Wiki.&lt;br /&gt;
&lt;br /&gt;
[[Special:Categories|Categories]]&lt;br /&gt;
&lt;br /&gt;
[[Special:AllPages]]&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=WSL2&amp;diff=44</id>
		<title>WSL2</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=WSL2&amp;diff=44"/>
		<updated>2023-05-31T12:47:46Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;== Reclaiming disk space == All data of WSL2 Distros and Docker is stored in &amp;lt;code&amp;gt;.vhdx&amp;lt;/code&amp;gt; files under the current user&amp;#039;s “AppData” directory. The problem is that the virtual hard disk files size will not shrink when disk space in freed on the WSL2 distro. This issue has already been discussed on GitHub: https://github.com/microsoft/WSL/issues/4699 but currently the only solution is to manually optimize the virtual hard disk to reclaim disk space.  === Locating...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Reclaiming disk space ==&lt;br /&gt;
All data of WSL2 Distros and Docker is stored in &amp;lt;code&amp;gt;.vhdx&amp;lt;/code&amp;gt; files under the current user&#039;s “AppData” directory. The problem is that the virtual hard disk files size will not shrink when disk space in freed on the WSL2 distro. This issue has already been discussed on GitHub: https://github.com/microsoft/WSL/issues/4699 but currently the only solution is to manually optimize the virtual hard disk to reclaim disk space.&lt;br /&gt;
&lt;br /&gt;
=== Locating the virtual hard disk files ===&lt;br /&gt;
[[File:Windirstat virtual disk wsl2.png|thumb|Example with “DinDirStat” the two virtual hard disks are clearly visible in purple.]]&lt;br /&gt;
The easiest way to locate them is to use “WinDirStat” it will show the files clearly and allows copying and pasting the path.&lt;br /&gt;
&lt;br /&gt;
Without “WinDirStat” the files can be found under &amp;lt;code&amp;gt;C:\Users\&amp;lt;User&amp;gt;\AppData\Local\Docker\wsl\data\ext4.vhdx&amp;lt;/code&amp;gt; for docker and &amp;lt;code&amp;gt;C:\Users\&amp;lt;User&amp;gt;\AppData\Local\Packages\&amp;lt;Distro&amp;gt;\LocalState\ext4.vhdx&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Reclaiming space ===&lt;br /&gt;
First, be sure to shut down all WSL2 distros by running &amp;lt;code&amp;gt;wsl --shutdown&amp;lt;/code&amp;gt; inside a PowerShell. After that, executing &amp;lt;code&amp;gt;wsl --list --running&amp;lt;/code&amp;gt; should print out &amp;lt;code&amp;gt;There are no running distributions.&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
After shutting down all WSL2 distros, you can run &amp;lt;code&amp;gt;optimize-vhd -Path &amp;lt;Path&amp;gt; -Mode full&amp;lt;/code&amp;gt; in a PowerShell with administrator privileges. The optimization process will take a few minutes to complete.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=File:Windirstat_virtual_disk_wsl2.png&amp;diff=43</id>
		<title>File:Windirstat virtual disk wsl2.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=File:Windirstat_virtual_disk_wsl2.png&amp;diff=43"/>
		<updated>2023-05-31T12:31:50Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of “WinDirStat” with clearly visible virtual disks.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=42</id>
		<title>Debian Packaging</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=42"/>
		<updated>2023-05-24T20:54:04Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Debian folder==&lt;br /&gt;
The &amp;quot;debian&amp;quot;-Folder should be in the root of the project. It contains all Metadata and scripts for creating the final package.&lt;br /&gt;
&lt;br /&gt;
===Required Files===&lt;br /&gt;
These files are the bare minimum to create a Debian package&lt;br /&gt;
&lt;br /&gt;
==== control ====&lt;br /&gt;
The &amp;quot;control&amp;quot; file contains metadata about the package like version and dependencies, mostly used by package managers like apt. Full specification at: https://www.debian.org/doc/debian-policy/ch-controlfields.html&lt;br /&gt;
&lt;br /&gt;
==Building the package==&lt;br /&gt;
&lt;br /&gt;
==Backports==&lt;br /&gt;
Packages are typical first build for &amp;quot;sid&amp;quot; (&amp;quot;unstable&amp;quot;) and after a few days also released for the current testing distribution (Currently code name &amp;quot;bookworm&amp;quot;). Older Stable distributions only get package updates for bug fixes. New features are only distributed with &amp;quot;backports&amp;quot;. Backports are packages original build for a newer distribution, e.g. sid and are rebuilt for older distributions to provide new features.&lt;br /&gt;
&lt;br /&gt;
===Naming===&lt;br /&gt;
The Version of a backported package should end with &amp;lt;code&amp;gt;~bpoDISTRO+BACKPORT_REVISION&amp;lt;/code&amp;gt; with &amp;quot;DISTRO&amp;quot; being replaces with the target distribution number, e.g. 10 for &amp;quot;buster&amp;quot; and &amp;quot;BACKPORT_REVISION&amp;quot; is the package revision number starting at 1. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;dch --bpo&amp;lt;/code&amp;gt; will automatically create the correct changelog entry for the backport.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Distribution list with Examples&lt;br /&gt;
!Codename&lt;br /&gt;
!Number&lt;br /&gt;
!Example&lt;br /&gt;
|-&lt;br /&gt;
|Bullseye&lt;br /&gt;
|11&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo11+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Buster&lt;br /&gt;
|10&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo10+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Jammy&lt;br /&gt;
|22.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo22.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Focal&lt;br /&gt;
|20.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo20.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
Packages are only backported to the last 2 Distributions.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=41</id>
		<title>Debian Packaging</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=41"/>
		<updated>2023-05-03T21:33:03Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Debian folder==&lt;br /&gt;
The &amp;quot;debian&amp;quot;-Folder should be in the root of the project. It contains all Metadata and scripts for creating the final package.&lt;br /&gt;
&lt;br /&gt;
===Required Files===&lt;br /&gt;
These files are the bare minimum to create a Debian package&lt;br /&gt;
&lt;br /&gt;
==== control ====&lt;br /&gt;
The &amp;quot;control&amp;quot; file contains metadata about the package like version and dependencies, mostly used by package managers like apt. Full specification at: https://www.debian.org/doc/debian-policy/ch-controlfields.html&lt;br /&gt;
&lt;br /&gt;
==Building the package==&lt;br /&gt;
&lt;br /&gt;
==Backports==&lt;br /&gt;
Packages are typical first build for &amp;quot;sid&amp;quot; (&amp;quot;unstable&amp;quot;) and after a few days also released for the current testing distribution (Currently code name &amp;quot;bookworm&amp;quot;). Older Stable distributions only get package updates for bug fixes. New features are only distributed with &amp;quot;backports&amp;quot;. Backports are packages original build for a newer distribution, e.g. sid and are rebuilt for older distributions to provide new features.&lt;br /&gt;
&lt;br /&gt;
===Naming===&lt;br /&gt;
The Version of a backported package should end with &amp;lt;code&amp;gt;~bpoDISTRO+BACKPORT_REVISION&amp;lt;/code&amp;gt; with &amp;quot;DISTRO&amp;quot; being replaces with the target distribution number, e.g. 10 for &amp;quot;buster&amp;quot; and &amp;quot;BACKPORT_REVISION&amp;quot; is the package revision number starting at 1. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;dch --bpo&amp;lt;/code&amp;gt; will automatically create the correct changelog entry for the backport.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Distribution list with Examples&lt;br /&gt;
!Codename&lt;br /&gt;
!Number&lt;br /&gt;
!Example&lt;br /&gt;
|-&lt;br /&gt;
|Bullseye&lt;br /&gt;
|11&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo11+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Buster&lt;br /&gt;
|10&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo10+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Focal&lt;br /&gt;
|22.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo22.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Bionic&lt;br /&gt;
|20.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo20.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
Packages are only backported to the last 2 Distributions.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=40</id>
		<title>Debian Packaging</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=40"/>
		<updated>2023-05-03T12:49:55Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Debian folder==&lt;br /&gt;
The &amp;quot;debian&amp;quot;-Folder should be in the root of the project. It contains all Metadata and scripts for creating the final package.&lt;br /&gt;
&lt;br /&gt;
===Required Files===&lt;br /&gt;
These files are the bare minimum to create a Debian package&lt;br /&gt;
&lt;br /&gt;
==Building the package==&lt;br /&gt;
&lt;br /&gt;
==Backports==&lt;br /&gt;
Packages are typical first build for &amp;quot;sid&amp;quot; (&amp;quot;unstable&amp;quot;) and after a few days also released for the current testing distribution (Currently code name &amp;quot;bookworm&amp;quot;). Older Stable distributions only get package updates for bug fixes. New features are only distributed with &amp;quot;backports&amp;quot;. Backports are packages original build for a newer distribution, e.g. sid and are rebuilt for older distributions to provide new features.&lt;br /&gt;
&lt;br /&gt;
===Naming===&lt;br /&gt;
The Version of a backported package should end with &amp;lt;code&amp;gt;~bpoDISTRO+BACKPORT_REVISION&amp;lt;/code&amp;gt; with &amp;quot;DISTRO&amp;quot; being replaces with the target distribution number, e.g. 10 for &amp;quot;buster&amp;quot; and &amp;quot;BACKPORT_REVISION&amp;quot; is the package revision number starting at 1. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;dch --bpo&amp;lt;/code&amp;gt; will automatically create the correct changelog entry for the backport.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Distribution list with Examples&lt;br /&gt;
!Codename&lt;br /&gt;
!Number&lt;br /&gt;
!Example&lt;br /&gt;
|-&lt;br /&gt;
|Bullseye&lt;br /&gt;
|11&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo11+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Buster&lt;br /&gt;
|10&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo10+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Focal&lt;br /&gt;
|22.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo22.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Bionic&lt;br /&gt;
|20.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo20.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
Packages are only backported to the last 2 Distributions.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=39</id>
		<title>Debian Packaging</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=39"/>
		<updated>2023-05-03T12:46:02Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Debian folder==&lt;br /&gt;
The &amp;quot;debian&amp;quot;-Folder should be in the root of the project. It contains all Metadata and scripts for creating the final package.&lt;br /&gt;
&lt;br /&gt;
===Required Files===&lt;br /&gt;
These files are the bare minimum to create a Debian package&lt;br /&gt;
&lt;br /&gt;
==Building the package==&lt;br /&gt;
&lt;br /&gt;
==Backports==&lt;br /&gt;
Packages are typical first build for &amp;quot;sid&amp;quot; (&amp;quot;unstable&amp;quot;) and after a few days also released for the current testing distribution (Currently code name &amp;quot;bookworm&amp;quot;). Older Stable distributions only get updated packages for bug fixes. New features are only distributed with &amp;quot;backports&amp;quot;. Backports are packages original build for a newer distribution, e.g. sid and are rebuilt for older distributions to provide new features.&lt;br /&gt;
&lt;br /&gt;
===Naming===&lt;br /&gt;
The Version of a backported package should end with &amp;lt;code&amp;gt;~bpoDISTRO+BACKPORT_REVISION&amp;lt;/code&amp;gt; with &amp;quot;DISTRO&amp;quot; being replaces with the target distribution number, e.g. 10 for &amp;quot;buster&amp;quot; and &amp;quot;BACKPORT_REVISION&amp;quot; is the package revision number starting at 1.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Distribution list with Examples&lt;br /&gt;
!Codename&lt;br /&gt;
!Number&lt;br /&gt;
!Example&lt;br /&gt;
|-&lt;br /&gt;
|Bullseye&lt;br /&gt;
|11&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo11+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Buster&lt;br /&gt;
|10&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo10+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Focal&lt;br /&gt;
|22.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo22.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Bionic&lt;br /&gt;
|20.04&lt;br /&gt;
|&amp;lt;code&amp;gt;1.2.3-4~bpo20.04+1&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=38</id>
		<title>Debian Packaging</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Debian_Packaging&amp;diff=38"/>
		<updated>2023-05-03T11:49:07Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created blank page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Fstab&amp;diff=37</id>
		<title>Fstab</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Fstab&amp;diff=37"/>
		<updated>2023-03-18T16:12:51Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Structure ==&lt;br /&gt;
Values are separated by one or more spaces.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Value&lt;br /&gt;
|-&lt;br /&gt;
|Filesystem&lt;br /&gt;
|The Filesystem / Partition to be mounted. &lt;br /&gt;
Can be a the path to a partition e.g. &amp;lt;code&amp;gt;/dev/sdb2&amp;lt;/code&amp;gt; or a UUID e.g. &amp;lt;code&amp;gt;PARTUUID=65561b67-2aee-4c48-8a67-2ea71f5f4ba&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Mount Point&lt;br /&gt;
|Path to the mountpoint. Should be an existing empty folder. Value &amp;lt;code&amp;gt;none&amp;lt;/code&amp;gt; can be used for Swap-Partitions&lt;br /&gt;
|-&lt;br /&gt;
|FS-Type&lt;br /&gt;
|Type of the file system e.g &amp;lt;code&amp;gt;ext4&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ntfs&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Options&lt;br /&gt;
|Mounting options. e.g. &amp;lt;code&amp;gt;defaults,nofail&amp;lt;/code&amp;gt; -&amp;gt; Default settings, allow booting when mounting the partition fails&lt;br /&gt;
|-&lt;br /&gt;
|Dump&lt;br /&gt;
|Weather to create a Dump before mounting. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; don&#039;t create dump. &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; create dump&lt;br /&gt;
|-&lt;br /&gt;
|Check Fsck&lt;br /&gt;
|Check file system before mounting them. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; don&#039;t check anything should be used for Windows / NTFS Partitions. &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; For root file system (Except if type is &amp;lt;code&amp;gt;btfs&amp;lt;/code&amp;gt;or &amp;lt;code&amp;gt;XFS&amp;lt;/code&amp;gt;). &amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt; Check the filesystem before mounting.&lt;br /&gt;
|}&lt;br /&gt;
Example &amp;lt;code&amp;gt;fstab&amp;lt;/code&amp;gt; file:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# This is the default fstab of a rpi with an external harddrive&lt;br /&gt;
proc            /proc           proc    defaults          0       0&lt;br /&gt;
PARTUUID=0a70b801-01  /boot           vfat    defaults,flush    0       2&lt;br /&gt;
PARTUUID=0a70b801-02  /               ext4    defaults,noatime  0       1&lt;br /&gt;
# a swapfile is not a swap partition, no line here&lt;br /&gt;
#   use  dphys-swapfile swap[on|off]  for that&lt;br /&gt;
&lt;br /&gt;
PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800dbc /data ext4 defaults,nofail 0 2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Options ==&lt;br /&gt;
For all list of all options, see: [https://man.archlinux.org/man/ext4.5#MOUNT_OPTIONS Ext file system options] and [https://man.archlinux.org/man/mount.8#FILESYSTEM-INDEPENDENT_MOUNT_OPTIONS File system independent Options]. Note that changing owner or permissions is only really needed for file system that don&#039;t support UNIX permissions, e.g &amp;lt;code&amp;gt;NTFS&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;ext4&amp;lt;/code&amp;gt; and others will save all permissions.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|defaults&lt;br /&gt;
|Commen Default settings. These include: &amp;lt;code&amp;gt;rw&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;suid&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;dev&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;exec&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;auto&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;nouser&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;async&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;realtime&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|ro&lt;br /&gt;
|Mount the file system in readonly mode&lt;br /&gt;
|-&lt;br /&gt;
|rw&lt;br /&gt;
|Mount the file system in Read-Write mode (In defaults)&lt;br /&gt;
|-&lt;br /&gt;
|nofail&lt;br /&gt;
|Skip the file system if it can&#039;t be found. Very usefull for thumb-drives. If this options is not set, the system will wait for the filesystem to be connected before booting&lt;br /&gt;
|-&lt;br /&gt;
|umask=PERMS&lt;br /&gt;
|Set the Permissions for all files and directories. Important: This is a umask so its disallows permissions e.g. &amp;lt;code&amp;gt;000&amp;lt;/code&amp;gt; becomes &amp;lt;code&amp;gt;777&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;022&amp;lt;/code&amp;gt;becomes&amp;lt;code&amp;gt;755&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|uid=UID&lt;br /&gt;
|Set the owner of all files. Can be the users UID or username.&lt;br /&gt;
|-&lt;br /&gt;
|gid=GID&lt;br /&gt;
|Set the owner group of all files. Can be the groups GID or groupname.&lt;br /&gt;
|-&lt;br /&gt;
|windows_names&lt;br /&gt;
|Only for NTFS: Prevent the creating of files with characters that are not allowed within Windows e.g. &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;quot; * &amp;lt; &amp;gt; / | \&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and some &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Determine file system types and UUID ==&lt;br /&gt;
&lt;br /&gt;
== Validating fstab ==&lt;br /&gt;
Executing &amp;lt;code&amp;gt;mount -fav&amp;lt;/code&amp;gt; will try to mount all file systems without actually making a system call. &lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt; Try to auto mount everything inside &amp;lt;code&amp;gt;fstab&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;lt;code&amp;gt;-f&amp;lt;/code&amp;gt; Fake, don&#039;t make any system calls. &lt;br /&gt;
* &amp;lt;code&amp;gt;-v&amp;lt;/code&amp;gt; Verbose print more debug output.&lt;br /&gt;
&lt;br /&gt;
Alternative &amp;lt;code&amp;gt;findmnt --verify --verbose&amp;lt;/code&amp;gt; can print nice information and detailed error messages.&lt;br /&gt;
&lt;br /&gt;
Output without any errors:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# findmnt --verify --verbose&lt;br /&gt;
/proc&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] do not check proc source (pseudo/net)&lt;br /&gt;
   [ ] do not check proc FS type (pseudo/net)&lt;br /&gt;
/boot&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] FS options: flush&lt;br /&gt;
   [ ] PARTUUID=0a70b801-01 translated to /dev/mmcblk0p1&lt;br /&gt;
   [ ] source /dev/mmcblk0p1 exists&lt;br /&gt;
   [ ] FS type is vfat&lt;br /&gt;
/&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] VFS options: noatime&lt;br /&gt;
   [ ] PARTUUID=0a70b801-02 translated to /dev/mmcblk0p2&lt;br /&gt;
   [ ] source /dev/mmcblk0p2 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
/data&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] userspace options: nofail&lt;br /&gt;
   [ ] PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800dbc translated to /dev/sda1&lt;br /&gt;
   [ ] source /dev/sda1 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
Success, no errors or warnings detected&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Output with wrong &amp;lt;code&amp;gt;PARTUUID&amp;lt;/code&amp;gt; value:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# findmnt --verify --verbose&lt;br /&gt;
/proc&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
...&lt;br /&gt;
   [ ] source /dev/mmcblk0p2 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
/data&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] userspace options: nofail&lt;br /&gt;
   [E] unreachable on boot required source: PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800db&lt;br /&gt;
&lt;br /&gt;
0 parse errors, 1 error, 0 warnings&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Raspberry_Pi&amp;diff=35</id>
		<title>Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Raspberry_Pi&amp;diff=35"/>
		<updated>2023-03-18T13:20:46Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;=== Watchdog setup === Be sure the watchdog is installed as a Kernel module: &amp;lt;code&amp;gt;ls -al /dev/watchdog*&amp;lt;/code&amp;gt; should show one or more files.  The watchdog must then be enabled in &amp;lt;code&amp;gt;systemd&amp;lt;/code&amp;gt;. Edit the &amp;lt;code&amp;gt;/etc/systemd/system.conf&amp;lt;/code&amp;gt; config file. Under the &amp;lt;code&amp;gt;[Manager]&amp;lt;/code&amp;gt; section, add the following:&amp;lt;syntaxhighlight lang=&amp;quot;toml&amp;quot;&amp;gt; RuntimeWatchdogSec=10 ShutdownWatchdogSec=10min &amp;lt;/syntaxhighlight&amp;gt;Reboot the system to apply all changes. &amp;lt;code&amp;gt;dmesg&amp;lt;/cod...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Watchdog setup ===&lt;br /&gt;
Be sure the watchdog is installed as a Kernel module: &amp;lt;code&amp;gt;ls -al /dev/watchdog*&amp;lt;/code&amp;gt; should show one or more files.&lt;br /&gt;
&lt;br /&gt;
The watchdog must then be enabled in &amp;lt;code&amp;gt;systemd&amp;lt;/code&amp;gt;. Edit the &amp;lt;code&amp;gt;/etc/systemd/system.conf&amp;lt;/code&amp;gt; config file. Under the &amp;lt;code&amp;gt;[Manager]&amp;lt;/code&amp;gt; section, add the following:&amp;lt;syntaxhighlight lang=&amp;quot;toml&amp;quot;&amp;gt;&lt;br /&gt;
RuntimeWatchdogSec=10&lt;br /&gt;
ShutdownWatchdogSec=10min&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Reboot the system to apply all changes. &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; should now log watchdog being started.&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
$ dmesg | grep -i watchdog&lt;br /&gt;
[    0.596574] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer&lt;br /&gt;
[    2.336190] systemd[1]: Using hardware watchdog &#039;Broadcom BCM2835 Watchdog timer&#039;, version 0, device /dev/watchdog&lt;br /&gt;
[    2.336229] systemd[1]: Set hardware watchdog to 10s.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;To test the watchdog, you can start a fork bomb to freeze the system, the watchdog should detect the freeze and automatically reboot. This fork bomb can be executed inside your shell: &amp;lt;code&amp;gt;:(){ :|:&amp;amp; };:&amp;lt;/code&amp;gt; &#039;&#039;&#039;This will freeze your system! Make sure nothing important is running in the background. It can take a few minutes before reboot.&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Fstab&amp;diff=33</id>
		<title>Fstab</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Fstab&amp;diff=33"/>
		<updated>2023-03-18T12:29:43Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;== Structure == Values are separated by one or more spaces. {| class=&amp;quot;wikitable&amp;quot; |+ !Name !Value |- |Filesystem |The Filesystem / Partition to be mounted.  Can be a the path to a partition e.g. &amp;lt;code&amp;gt;/dev/sdb2&amp;lt;/code&amp;gt; or a UUID e.g. &amp;lt;code&amp;gt;PARTUUID=65561b67-2aee-4c48-8a67-2ea71f5f4ba&amp;lt;/code&amp;gt; |- |Mount Point |Path to the mountpoint. Should be an existing empty folder. Value &amp;lt;code&amp;gt;none&amp;lt;/code&amp;gt; can be used for Swap-Partitions |- |FS-Type |Type of the file system e.g &amp;lt;code&amp;gt;ext4&amp;lt;...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Structure ==&lt;br /&gt;
Values are separated by one or more spaces.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Value&lt;br /&gt;
|-&lt;br /&gt;
|Filesystem&lt;br /&gt;
|The Filesystem / Partition to be mounted. &lt;br /&gt;
Can be a the path to a partition e.g. &amp;lt;code&amp;gt;/dev/sdb2&amp;lt;/code&amp;gt; or a UUID e.g. &amp;lt;code&amp;gt;PARTUUID=65561b67-2aee-4c48-8a67-2ea71f5f4ba&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Mount Point&lt;br /&gt;
|Path to the mountpoint. Should be an existing empty folder. Value &amp;lt;code&amp;gt;none&amp;lt;/code&amp;gt; can be used for Swap-Partitions&lt;br /&gt;
|-&lt;br /&gt;
|FS-Type&lt;br /&gt;
|Type of the file system e.g &amp;lt;code&amp;gt;ext4&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ntfs&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Options&lt;br /&gt;
|Mounting options. e.g. &amp;lt;code&amp;gt;defaults,nofail&amp;lt;/code&amp;gt; -&amp;gt; Default settings, allow booting when mounting the partition fails&lt;br /&gt;
|-&lt;br /&gt;
|Dump&lt;br /&gt;
|Weather to create a Dump before mounting. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; don&#039;t create dump. &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; create dump&lt;br /&gt;
|-&lt;br /&gt;
|Check Fsck&lt;br /&gt;
|Check file system before mounting them. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; don&#039;t check anything should be used for Windows / NTFS Partitions. &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; For root file system (Except if type is &amp;lt;code&amp;gt;btfs&amp;lt;/code&amp;gt;or &amp;lt;code&amp;gt;XFS&amp;lt;/code&amp;gt;). &amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt; Check the filesystem before mounting.&lt;br /&gt;
|}&lt;br /&gt;
Example &amp;lt;code&amp;gt;fstab&amp;lt;/code&amp;gt; file:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# This is the default fstab of a rpi with an external harddrive&lt;br /&gt;
proc            /proc           proc    defaults          0       0&lt;br /&gt;
PARTUUID=0a70b801-01  /boot           vfat    defaults,flush    0       2&lt;br /&gt;
PARTUUID=0a70b801-02  /               ext4    defaults,noatime  0       1&lt;br /&gt;
# a swapfile is not a swap partition, no line here&lt;br /&gt;
#   use  dphys-swapfile swap[on|off]  for that&lt;br /&gt;
&lt;br /&gt;
PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800dbc /data ext4 defaults,nofail 0 2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Options ==&lt;br /&gt;
For all list of all options, see: [https://man.archlinux.org/man/ext4.5#MOUNT_OPTIONS Ext file system options] and [https://man.archlinux.org/man/mount.8#FILESYSTEM-INDEPENDENT_MOUNT_OPTIONS File system independent Options]. Note that changing owner or permissions is only really needed for file system that don&#039;t support UNIX permissions, e.g &amp;lt;code&amp;gt;NTFS&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;ext4&amp;lt;/code&amp;gt; and others will save all permissions.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|defaults&lt;br /&gt;
|Commen Default settings. These include: &amp;lt;code&amp;gt;rw&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;suid&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;dev&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;exec&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;auto&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;nouser&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;async&amp;lt;/code&amp;gt;,&amp;lt;code&amp;gt;realtime&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|ro&lt;br /&gt;
|Mount the file system in readonly mode&lt;br /&gt;
|-&lt;br /&gt;
|rw&lt;br /&gt;
|Mount the file system in Read-Write mode (In defaults)&lt;br /&gt;
|-&lt;br /&gt;
|nofail&lt;br /&gt;
|Skip the file system if it can&#039;t be found. Very usefull for thumb-drives. If this options is not set, the system will wait for the filesystem to be connected before booting&lt;br /&gt;
|-&lt;br /&gt;
|umask=PERMS&lt;br /&gt;
|Set the Permissions for all files and directories. Important: This is a umask so its disallows permissions e.g. &amp;lt;code&amp;gt;000&amp;lt;/code&amp;gt; becomes &amp;lt;code&amp;gt;777&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;022&amp;lt;/code&amp;gt;becomes&amp;lt;code&amp;gt;755&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|uid=UID&lt;br /&gt;
|Set the owner of all files. Can be the users UID or username.&lt;br /&gt;
|-&lt;br /&gt;
|gid=GID&lt;br /&gt;
|Set the owner group of all files. Can be the groups GID or groupname.&lt;br /&gt;
|-&lt;br /&gt;
|windows_names&lt;br /&gt;
|Only for NTFS: Prevent the creating of files with characters that are not allowed within Windows e.g. &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;quot; * &amp;lt; &amp;gt; / | \&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and some &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Determine file system types and UUID ==&lt;br /&gt;
&lt;br /&gt;
== Validating fstab ==&lt;br /&gt;
Executing &amp;lt;code&amp;gt;mount -fav&amp;lt;/code&amp;gt; will try to mount all file systems without actually making a system call. &lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt; Try to auto mount everything inside &amp;lt;code&amp;gt;fstab&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;lt;code&amp;gt;-f&amp;lt;/code&amp;gt; Fake, don&#039;t make any system calls. &lt;br /&gt;
* &amp;lt;code&amp;gt;-v&amp;lt;/code&amp;gt; Verbose print more debug output.&lt;br /&gt;
&lt;br /&gt;
Alternative &amp;lt;code&amp;gt;findmnt --verify --verbose&amp;lt;/code&amp;gt; can print nice information and detailed error messages.&lt;br /&gt;
&lt;br /&gt;
Output without any errors:&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# findmnt --verify --verbose&lt;br /&gt;
/proc&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] do not check proc source (pseudo/net)&lt;br /&gt;
   [ ] do not check proc FS type (pseudo/net)&lt;br /&gt;
/boot&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] FS options: flush&lt;br /&gt;
   [ ] PARTUUID=0a70b801-01 translated to /dev/mmcblk0p1&lt;br /&gt;
   [ ] source /dev/mmcblk0p1 exists&lt;br /&gt;
   [ ] FS type is vfat&lt;br /&gt;
/&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] VFS options: noatime&lt;br /&gt;
   [ ] PARTUUID=0a70b801-02 translated to /dev/mmcblk0p2&lt;br /&gt;
   [ ] source /dev/mmcblk0p2 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
/data&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] userspace options: nofail&lt;br /&gt;
   [ ] PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800dbc translated to /dev/sda1&lt;br /&gt;
   [ ] source /dev/sda1 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
Success, no errors or warnings detected&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Output with wrong &amp;lt;code&amp;gt;PARTUUID&amp;lt;/code&amp;gt; value:&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
# findmnt --verify --verbose&lt;br /&gt;
/proc&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
...&lt;br /&gt;
   [ ] source /dev/mmcblk0p2 exists&lt;br /&gt;
   [ ] FS type is ext4&lt;br /&gt;
/data&lt;br /&gt;
   [ ] target exists&lt;br /&gt;
   [ ] userspace options: nofail&lt;br /&gt;
   [E] unreachable on boot required source: PARTUUID=6b8fd307-ae27-4222-b81c-926eaa800db&lt;br /&gt;
&lt;br /&gt;
0 parse errors, 1 error, 0 warnings&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=32</id>
		<title>Certbot</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=32"/>
		<updated>2023-01-29T15:06:48Z</updated>

		<summary type="html">&lt;p&gt;Timon: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Certbot is used the issue LetsEncrypt SSL-Certificates.&lt;br /&gt;
&lt;br /&gt;
== Install ==&lt;br /&gt;
&lt;br /&gt;
=== Snap Store ===&lt;br /&gt;
This is the install method advised by LetsEncrypt.&lt;br /&gt;
&lt;br /&gt;
Make sure the certbot is not installed using Apt: &amp;lt;code&amp;gt;sudo apt remove certbot&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ensure the latest Snap version is installed: &amp;lt;code&amp;gt;sudo snap install core; sudo snap refresh core&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Install the Certbot, make sure to use the &amp;lt;code&amp;gt;--classic&amp;lt;/code&amp;gt; flag: &amp;lt;code&amp;gt;sudo snap install --classic certbot&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Link the certbot binary to a path thats in the $PATH variabel: &amp;lt;code&amp;gt;sudo ln -s /snap/bin/certbot /usr/bin/certbot&amp;lt;/code&amp;gt;. Depending on your environment this might not be necessary.&lt;br /&gt;
&lt;br /&gt;
=== Apt &amp;amp; Apk ===&lt;br /&gt;
The certbot is also available in the officiall Debian, Ubuntu &amp;amp; Alpine repositories, but the version might be outdated.&lt;br /&gt;
&lt;br /&gt;
* Ubuntu &amp;amp; Debian: &amp;lt;code&amp;gt;apt install certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
* Alpine: &amp;lt;code&amp;gt;apk install certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Retrieving a Certificate ==&lt;br /&gt;
To create an Certificate for &amp;lt;code&amp;gt;example.com&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot certonly --nginx --agree-tos -n -d example.com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use Local installed nginx for the Authentication-Challange, see Challanges for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Domain to create the Certificate for&lt;br /&gt;
&lt;br /&gt;
The Certificate will be saved under:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/fullchain.pem&amp;lt;/code&amp;gt;: Certificate&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/privkey.pem&amp;lt;/code&amp;gt;: Private key&lt;br /&gt;
&lt;br /&gt;
== Renewing Certificates ==&lt;br /&gt;
To renew all Certificates use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot renew --nginx --agree-tos -n&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use a locally installed nginx for the authentication challange. See [[Certbot#Challenges|Challenges]] for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Optional, Domain to renew the Certificate for&lt;br /&gt;
&lt;br /&gt;
Certificates will be updated if there expire in less than 30 days&lt;br /&gt;
&lt;br /&gt;
== Challenges ==&lt;br /&gt;
To validate that you own a Domain you must complete a challange using one of the following method:&lt;br /&gt;
&lt;br /&gt;
=== Nginx ===&lt;br /&gt;
If a Nginx is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt; option and certbot will use Nginx for the Challange and should complete it without stopping the Nginx.&lt;br /&gt;
&lt;br /&gt;
=== Apache ===&lt;br /&gt;
If a Apache is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--apache&amp;lt;/code&amp;gt; option and certbot will use Apache for the Challange and should complete it without stopping the Apache server.&lt;br /&gt;
&lt;br /&gt;
=== Standalone ===&lt;br /&gt;
Certbot will start a Webserver on Port 80 and will try to serve a file containg a verification code. If the Certbot can find that file, the challange will be completed.&lt;br /&gt;
&lt;br /&gt;
=== Webroot ===&lt;br /&gt;
Using the &amp;lt;code&amp;gt;--webroot &amp;lt;Path&amp;gt;&amp;lt;/code&amp;gt; the Certbot will put files under the given directory und the given directory and try to access them.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=31</id>
		<title>Certbot</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=31"/>
		<updated>2023-01-29T15:06:25Z</updated>

		<summary type="html">&lt;p&gt;Timon: Add Apt &amp;amp; Apk install and also fix spelling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Certbot is used the issue LetsEncrypt SSL-Certificates.&lt;br /&gt;
&lt;br /&gt;
== Install ==&lt;br /&gt;
&lt;br /&gt;
=== Snap-Store ===&lt;br /&gt;
This is the install method advised by LetsEncrypt.&lt;br /&gt;
&lt;br /&gt;
Make sure the certbot is not installed using Apt: &amp;lt;code&amp;gt;sudo apt remove certbot&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ensure the latest Snap version is installed: &amp;lt;code&amp;gt;sudo snap install core; sudo snap refresh core&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Install the Certbot, make sure to use the &amp;lt;code&amp;gt;--classic&amp;lt;/code&amp;gt; flag: &amp;lt;code&amp;gt;sudo snap install --classic certbot&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Link the certbot binary to a path thats in the $PATH variabel: &amp;lt;code&amp;gt;sudo ln -s /snap/bin/certbot /usr/bin/certbot&amp;lt;/code&amp;gt;. Depending on your environment this might not be necessary.&lt;br /&gt;
&lt;br /&gt;
=== Apt &amp;amp; Apk ===&lt;br /&gt;
The certbot is also available in the officiall Debian, Ubuntu &amp;amp; Alpine repositories, but the version might be outdated.&lt;br /&gt;
&lt;br /&gt;
* Ubuntu &amp;amp; Debian: &amp;lt;code&amp;gt;apt install certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
* Alpine: &amp;lt;code&amp;gt;apk install certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Retrieving a Certificate ==&lt;br /&gt;
To create an Certificate for &amp;lt;code&amp;gt;example.com&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot certonly --nginx --agree-tos -n -d example.com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use Local installed nginx for the Authentication-Challange, see Challanges for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Domain to create the Certificate for&lt;br /&gt;
&lt;br /&gt;
The Certificate will be saved under:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/fullchain.pem&amp;lt;/code&amp;gt;: Certificate&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/privkey.pem&amp;lt;/code&amp;gt;: Private key&lt;br /&gt;
&lt;br /&gt;
== Renewing Certificates ==&lt;br /&gt;
To renew all Certificates use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot renew --nginx --agree-tos -n&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use a locally installed nginx for the authentication challange. See [[Certbot#Challenges|Challenges]] for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Optional, Domain to renew the Certificate for&lt;br /&gt;
&lt;br /&gt;
Certificates will be updated if there expire in less than 30 days&lt;br /&gt;
&lt;br /&gt;
== Challenges ==&lt;br /&gt;
To validate that you own a Domain you must complete a challange using one of the following method:&lt;br /&gt;
&lt;br /&gt;
=== Nginx ===&lt;br /&gt;
If a Nginx is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt; option and certbot will use Nginx for the Challange and should complete it without stopping the Nginx.&lt;br /&gt;
&lt;br /&gt;
=== Apache ===&lt;br /&gt;
If a Apache is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--apache&amp;lt;/code&amp;gt; option and certbot will use Apache for the Challange and should complete it without stopping the Apache server.&lt;br /&gt;
&lt;br /&gt;
=== Standalone ===&lt;br /&gt;
Certbot will start a Webserver on Port 80 and will try to serve a file containg a verification code. If the Certbot can find that file, the challange will be completed.&lt;br /&gt;
&lt;br /&gt;
=== Webroot ===&lt;br /&gt;
Using the &amp;lt;code&amp;gt;--webroot &amp;lt;Path&amp;gt;&amp;lt;/code&amp;gt; the Certbot will put files under the given directory und the given directory and try to access them.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=File:UML-Anwendungsfalldiagramm_beispiel.png&amp;diff=21</id>
		<title>File:UML-Anwendungsfalldiagramm beispiel.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=File:UML-Anwendungsfalldiagramm_beispiel.png&amp;diff=21"/>
		<updated>2022-02-23T19:11:43Z</updated>

		<summary type="html">&lt;p&gt;Timon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Beispiel vom UML-Anwendungsfalldiagramm erstellt mit Excalidraw&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Traefik&amp;diff=19</id>
		<title>Traefik</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Traefik&amp;diff=19"/>
		<updated>2022-02-07T22:40:37Z</updated>

		<summary type="html">&lt;p&gt;Timon: /* Example Configuration File (YML) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Traefik is a reverse Proxy that manages routing of services on a Server.&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
Traefik is preferable used inside a Docker container. &lt;br /&gt;
&lt;br /&gt;
Traefik docker-compose file:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
version: &#039;3.9&#039;&lt;br /&gt;
&lt;br /&gt;
services:&lt;br /&gt;
  reverse-proxy:&lt;br /&gt;
    image: traefik:v2.6&lt;br /&gt;
    restart: &amp;quot;always&amp;quot;&lt;br /&gt;
    # In this example traefik is configured with CLI options.&lt;br /&gt;
    # &amp;quot;--providers.docker=true&amp;quot;: Enable Docker as a provider&lt;br /&gt;
    # &amp;quot;--providers.docker.network=&amp;quot;traefik&amp;quot;&amp;quot; specify the docker network &amp;quot;traefik&amp;quot; as the network for traefik. This is option must be used when a container has two or more networks attached to it&lt;br /&gt;
    # &amp;quot;--api.insecure=true&amp;quot;: enables traefiks dashboard&lt;br /&gt;
    command: --providers.docker=true --providers.docker.network=&amp;quot;traefik&amp;quot; --api.insecure=true&lt;br /&gt;
    ports:&lt;br /&gt;
      # Open Port 80 &amp;amp; 443 for traefik&lt;br /&gt;
      - &amp;quot;80:80&amp;quot;&lt;br /&gt;
      - &amp;quot;443:443&amp;quot;&lt;br /&gt;
      # Open Port 8080 for traefiks webinterface&lt;br /&gt;
      - &amp;quot;8080:8080&amp;quot;&lt;br /&gt;
    volumes:&lt;br /&gt;
      # mount the docker socket, so that Traefik can listen to the Docker events&lt;br /&gt;
      - /var/run/docker.sock:/var/run/docker.sock&lt;br /&gt;
    networks:&lt;br /&gt;
      - traefik&lt;br /&gt;
&lt;br /&gt;
networks:&lt;br /&gt;
  traefik:&lt;br /&gt;
    driver: &amp;quot;bridge&amp;quot;&lt;br /&gt;
    name: traefik&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webserver docker-compose file:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
version: &#039;3.9&#039;&lt;br /&gt;
 &lt;br /&gt;
services:&lt;br /&gt;
  webserver:&lt;br /&gt;
    image: httpd:2.4.52-alpine&lt;br /&gt;
    restart: &amp;quot;always&amp;quot;&lt;br /&gt;
    expose:&lt;br /&gt;
      # If only one port is exposed traefik, will detect and use it&lt;br /&gt;
      - 80&lt;br /&gt;
    labels:&lt;br /&gt;
       # Rules for routing can be defined with labels. &amp;quot;traefik.http.routers.&amp;lt;Container name&amp;gt;.rule&amp;quot; tells traefik when to route to this container&lt;br /&gt;
      # In this case traefik will route to this webserver when the requested host is &amp;quot;example.com&amp;quot;&lt;br /&gt;
      - traefik.http.routers.webserver.rule=Host(`example.com`)&lt;br /&gt;
    networks:&lt;br /&gt;
      # Make sure to add this service to the same network as traefik&lt;br /&gt;
      - traefik&lt;br /&gt;
 &lt;br /&gt;
networks:&lt;br /&gt;
  traefik:&lt;br /&gt;
    external: true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Configuration===&lt;br /&gt;
Traefik can be configured by either commandline options or a config file. A config file must be created under &amp;lt;code&amp;gt;/etc/traefik/traefik.yml&amp;lt;/code&amp;gt;. This file can also be in TOML format. Also note that all config options and values are &#039;&#039;&#039;case sensitive&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Docker ====&lt;br /&gt;
Full documentation about this topic: [https://doc.traefik.io/traefik/providers/docker/ Docker]&lt;br /&gt;
&lt;br /&gt;
===== providers.docker.exposedByDefault =====&lt;br /&gt;
Default value: &#039;&#039;true&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If set to false all containers are ignored by default and must use the &amp;lt;code&amp;gt;traefik.enable=true&amp;lt;/code&amp;gt; label to be not ignored by traefik. This is usefull if you have a lot of containers not exposing any ports.&lt;br /&gt;
&lt;br /&gt;
===== providers.docker.network =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This defines the docker network that should be used by traefik to connect to other containers. If a container uses more than the traefik network this option should be used. This can also be applied per-container with the &amp;lt;code&amp;gt;traefik.docker.network&amp;lt;/code&amp;gt; label.&lt;br /&gt;
&lt;br /&gt;
==== Logging ====&lt;br /&gt;
Full documentation about this topic: [https://doc.traefik.io/traefik/observability/access-logs/ Access Logs] &amp;amp; [https://doc.traefik.io/traefik/observability/logs/ Logs]&lt;br /&gt;
&lt;br /&gt;
===== accessLog.filePath =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defines the file to write access logs. If this option is not used the access logs are written to standard output (StdOut).&lt;br /&gt;
&lt;br /&gt;
===== accessLog.format =====&lt;br /&gt;
Default value: &#039;&#039;&amp;quot;CLF&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Access logs written in the &amp;quot;Common Log Format&amp;quot; (CLF) by default. It is also possable to write access logs as JSON, by setting the format to &amp;lt;code&amp;gt;json&amp;lt;/code&amp;gt;. Note the access log file is not written as a valid JSON file but instead is written in [https://jsonlines.org/ JSON-Lines]. If an Invalid format is provided traefik willl fallback to &amp;lt;code&amp;gt;CLF&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===== log.filePath =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defines the file to write logs. If this option is not used the logs are written to standard output (StdOut).&lt;br /&gt;
&lt;br /&gt;
===== log.format =====&lt;br /&gt;
Default value: &#039;&#039;&amp;quot;CLF&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Logs written in the &amp;quot;Common Log Format&amp;quot; (CLF) by default. It is also possable to write logs as JSON, by setting the format to &amp;lt;code&amp;gt;json&amp;lt;/code&amp;gt;. Note the log file not in written as valid JSON file but instead is written in [https://jsonlines.org/ JSON-Lines]. If an Invalid format is provided traefik willl fallback to &amp;lt;code&amp;gt;CLF&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===== log.level =====&lt;br /&gt;
Default value: &amp;quot;&#039;&#039;ERROR&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This options sets the verbosity of the traefik logs. Valid values are: &amp;lt;code&amp;gt;DEBUG&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;INFO&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WARN&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ERROR&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;FATAL&amp;lt;/code&amp;gt; &amp;amp; &amp;lt;code&amp;gt;PANIC&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Example Configuration File (YML) ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
api:&lt;br /&gt;
  dashboard: true&lt;br /&gt;
  insecure: true&lt;br /&gt;
&lt;br /&gt;
entryPoints:&lt;br /&gt;
  web:&lt;br /&gt;
    address: &amp;quot;:80&amp;quot;&lt;br /&gt;
  websecure:&lt;br /&gt;
    address: &amp;quot;:443&amp;quot;&lt;br /&gt;
&lt;br /&gt;
providers:&lt;br /&gt;
  docker:&lt;br /&gt;
    network: &amp;quot;traefik&amp;quot;&lt;br /&gt;
&lt;br /&gt;
accesslog:&lt;br /&gt;
  filepath: &amp;quot;/opt/access.log&amp;quot;&lt;br /&gt;
&lt;br /&gt;
log:&lt;br /&gt;
  filepath: &amp;quot;/opt/traefik.log&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Traefik&amp;diff=18</id>
		<title>Traefik</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Traefik&amp;diff=18"/>
		<updated>2022-02-07T22:40:18Z</updated>

		<summary type="html">&lt;p&gt;Timon: /* Getting started */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Traefik is a reverse Proxy that manages routing of services on a Server.&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
Traefik is preferable used inside a Docker container. &lt;br /&gt;
&lt;br /&gt;
Traefik docker-compose file:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
version: &#039;3.9&#039;&lt;br /&gt;
&lt;br /&gt;
services:&lt;br /&gt;
  reverse-proxy:&lt;br /&gt;
    image: traefik:v2.6&lt;br /&gt;
    restart: &amp;quot;always&amp;quot;&lt;br /&gt;
    # In this example traefik is configured with CLI options.&lt;br /&gt;
    # &amp;quot;--providers.docker=true&amp;quot;: Enable Docker as a provider&lt;br /&gt;
    # &amp;quot;--providers.docker.network=&amp;quot;traefik&amp;quot;&amp;quot; specify the docker network &amp;quot;traefik&amp;quot; as the network for traefik. This is option must be used when a container has two or more networks attached to it&lt;br /&gt;
    # &amp;quot;--api.insecure=true&amp;quot;: enables traefiks dashboard&lt;br /&gt;
    command: --providers.docker=true --providers.docker.network=&amp;quot;traefik&amp;quot; --api.insecure=true&lt;br /&gt;
    ports:&lt;br /&gt;
      # Open Port 80 &amp;amp; 443 for traefik&lt;br /&gt;
      - &amp;quot;80:80&amp;quot;&lt;br /&gt;
      - &amp;quot;443:443&amp;quot;&lt;br /&gt;
      # Open Port 8080 for traefiks webinterface&lt;br /&gt;
      - &amp;quot;8080:8080&amp;quot;&lt;br /&gt;
    volumes:&lt;br /&gt;
      # mount the docker socket, so that Traefik can listen to the Docker events&lt;br /&gt;
      - /var/run/docker.sock:/var/run/docker.sock&lt;br /&gt;
    networks:&lt;br /&gt;
      - traefik&lt;br /&gt;
&lt;br /&gt;
networks:&lt;br /&gt;
  traefik:&lt;br /&gt;
    driver: &amp;quot;bridge&amp;quot;&lt;br /&gt;
    name: traefik&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webserver docker-compose file:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
version: &#039;3.9&#039;&lt;br /&gt;
 &lt;br /&gt;
services:&lt;br /&gt;
  webserver:&lt;br /&gt;
    image: httpd:2.4.52-alpine&lt;br /&gt;
    restart: &amp;quot;always&amp;quot;&lt;br /&gt;
    expose:&lt;br /&gt;
      # If only one port is exposed traefik, will detect and use it&lt;br /&gt;
      - 80&lt;br /&gt;
    labels:&lt;br /&gt;
       # Rules for routing can be defined with labels. &amp;quot;traefik.http.routers.&amp;lt;Container name&amp;gt;.rule&amp;quot; tells traefik when to route to this container&lt;br /&gt;
      # In this case traefik will route to this webserver when the requested host is &amp;quot;example.com&amp;quot;&lt;br /&gt;
      - traefik.http.routers.webserver.rule=Host(`example.com`)&lt;br /&gt;
    networks:&lt;br /&gt;
      # Make sure to add this service to the same network as traefik&lt;br /&gt;
      - traefik&lt;br /&gt;
 &lt;br /&gt;
networks:&lt;br /&gt;
  traefik:&lt;br /&gt;
    external: true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Configuration===&lt;br /&gt;
Traefik can be configured by either commandline options or a config file. A config file must be created under &amp;lt;code&amp;gt;/etc/traefik/traefik.yml&amp;lt;/code&amp;gt;. This file can also be in TOML format. Also note that all config options and values are &#039;&#039;&#039;case sensitive&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Docker ====&lt;br /&gt;
Full documentation about this topic: [https://doc.traefik.io/traefik/providers/docker/ Docker]&lt;br /&gt;
&lt;br /&gt;
===== providers.docker.exposedByDefault =====&lt;br /&gt;
Default value: &#039;&#039;true&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If set to false all containers are ignored by default and must use the &amp;lt;code&amp;gt;traefik.enable=true&amp;lt;/code&amp;gt; label to be not ignored by traefik. This is usefull if you have a lot of containers not exposing any ports.&lt;br /&gt;
&lt;br /&gt;
===== providers.docker.network =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This defines the docker network that should be used by traefik to connect to other containers. If a container uses more than the traefik network this option should be used. This can also be applied per-container with the &amp;lt;code&amp;gt;traefik.docker.network&amp;lt;/code&amp;gt; label.&lt;br /&gt;
&lt;br /&gt;
==== Logging ====&lt;br /&gt;
Full documentation about this topic: [https://doc.traefik.io/traefik/observability/access-logs/ Access Logs] &amp;amp; [https://doc.traefik.io/traefik/observability/logs/ Logs]&lt;br /&gt;
&lt;br /&gt;
===== accessLog.filePath =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defines the file to write access logs. If this option is not used the access logs are written to standard output (StdOut).&lt;br /&gt;
&lt;br /&gt;
===== accessLog.format =====&lt;br /&gt;
Default value: &#039;&#039;&amp;quot;CLF&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Access logs written in the &amp;quot;Common Log Format&amp;quot; (CLF) by default. It is also possable to write access logs as JSON, by setting the format to &amp;lt;code&amp;gt;json&amp;lt;/code&amp;gt;. Note the access log file is not written as a valid JSON file but instead is written in [https://jsonlines.org/ JSON-Lines]. If an Invalid format is provided traefik willl fallback to &amp;lt;code&amp;gt;CLF&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===== log.filePath =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defines the file to write logs. If this option is not used the logs are written to standard output (StdOut).&lt;br /&gt;
&lt;br /&gt;
===== log.format =====&lt;br /&gt;
Default value: &#039;&#039;&amp;quot;CLF&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Logs written in the &amp;quot;Common Log Format&amp;quot; (CLF) by default. It is also possable to write logs as JSON, by setting the format to &amp;lt;code&amp;gt;json&amp;lt;/code&amp;gt;. Note the log file not in written as valid JSON file but instead is written in [https://jsonlines.org/ JSON-Lines]. If an Invalid format is provided traefik willl fallback to &amp;lt;code&amp;gt;CLF&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===== log.level =====&lt;br /&gt;
Default value: &amp;quot;&#039;&#039;ERROR&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This options sets the verbosity of the traefik logs. Valid values are: &amp;lt;code&amp;gt;DEBUG&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;INFO&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WARN&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ERROR&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;FATAL&amp;lt;/code&amp;gt; &amp;amp; &amp;lt;code&amp;gt;PANIC&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Example Configuration File (YML) ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
api:&lt;br /&gt;
  dashboard: true&lt;br /&gt;
  insecure: true&lt;br /&gt;
&lt;br /&gt;
entryPoints:&lt;br /&gt;
  web:&lt;br /&gt;
    address: &amp;quot;:80&amp;quot;&lt;br /&gt;
  websecure:&lt;br /&gt;
    address: &amp;quot;:443&amp;quot;&lt;br /&gt;
&lt;br /&gt;
providers:&lt;br /&gt;
  docker:&lt;br /&gt;
    network: &amp;quot;traefik&amp;quot;&lt;br /&gt;
&lt;br /&gt;
accesslog:&lt;br /&gt;
  filepath: &amp;quot;/opt/access.log&amp;quot;&lt;br /&gt;
&lt;br /&gt;
log:&lt;br /&gt;
  filepath: &amp;quot;/opt/traefik.log&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Traefik&amp;diff=17</id>
		<title>Traefik</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Traefik&amp;diff=17"/>
		<updated>2022-01-29T02:29:54Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;Traefik is a reverse Proxy that manages routing of services on a Server.  ===Getting started=== Traefik is preferable used inside a Docker container.   Traefik docker-compose file: &amp;lt;pre&amp;gt; version: &amp;#039;3.9&amp;#039;  services:   reverse-proxy:     image: traefik:v2.6     restart: &amp;quot;always&amp;quot;     # In this example traefik is configured with CLI options.     # &amp;quot;--providers.docker=true&amp;quot;: Enable Docker as a provider     # &amp;quot;--providers.docker.network=&amp;quot;traefik&amp;quot;&amp;quot; specify the docker network &amp;quot;tra...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Traefik is a reverse Proxy that manages routing of services on a Server.&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
Traefik is preferable used inside a Docker container. &lt;br /&gt;
&lt;br /&gt;
Traefik docker-compose file:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version: &#039;3.9&#039;&lt;br /&gt;
&lt;br /&gt;
services:&lt;br /&gt;
  reverse-proxy:&lt;br /&gt;
    image: traefik:v2.6&lt;br /&gt;
    restart: &amp;quot;always&amp;quot;&lt;br /&gt;
    # In this example traefik is configured with CLI options.&lt;br /&gt;
    # &amp;quot;--providers.docker=true&amp;quot;: Enable Docker as a provider&lt;br /&gt;
    # &amp;quot;--providers.docker.network=&amp;quot;traefik&amp;quot;&amp;quot; specify the docker network &amp;quot;traefik&amp;quot; as the network for traefik. This is option must be used when a container has two or more networks attached to it&lt;br /&gt;
    # &amp;quot;--api.insecure=true&amp;quot;: enables traefiks dashboard&lt;br /&gt;
    command: --providers.docker=true --providers.docker.network=&amp;quot;traefik&amp;quot; --api.insecure=true&lt;br /&gt;
    ports:&lt;br /&gt;
      # Open Port 80 &amp;amp; 443 for traefik&lt;br /&gt;
      - &amp;quot;80:80&amp;quot;&lt;br /&gt;
      - &amp;quot;443:443&amp;quot;&lt;br /&gt;
      # Open Port 8080 for traefiks webinterface&lt;br /&gt;
      - &amp;quot;8080:8080&amp;quot;&lt;br /&gt;
    volumes:&lt;br /&gt;
      # mount the docker socket, so that Traefik can listen to the Docker events&lt;br /&gt;
      - /var/run/docker.sock:/var/run/docker.sock&lt;br /&gt;
    networks:&lt;br /&gt;
      - traefik&lt;br /&gt;
&lt;br /&gt;
networks:&lt;br /&gt;
  traefik:&lt;br /&gt;
    driver: &amp;quot;bridge&amp;quot;&lt;br /&gt;
    name: traefik&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webserver docker-compose file:&lt;br /&gt;
 version: &#039;3.9&#039;&lt;br /&gt;
 &lt;br /&gt;
 services:&lt;br /&gt;
   webserver:&lt;br /&gt;
     image: httpd:2.4.52-alpine&lt;br /&gt;
     restart: &amp;quot;always&amp;quot;&lt;br /&gt;
     expose:&lt;br /&gt;
       # If only one port is exposed traefik, will detect and use it&lt;br /&gt;
       - 80&lt;br /&gt;
     labels:&lt;br /&gt;
       # Rules for routing can be defined with labels. &amp;quot;traefik.http.routers.&amp;lt;Container name&amp;gt;.rule&amp;quot; tells traefik when to route to this container&lt;br /&gt;
       # In this case traefik will route to this webserver when the requested host is &amp;quot;example.com&amp;quot;&lt;br /&gt;
       - traefik.http.routers.webserver.rule=Host(`example.com`)&lt;br /&gt;
     networks:&lt;br /&gt;
       # Make sure to add this service to the same network as traefik&lt;br /&gt;
       - traefik&lt;br /&gt;
 &lt;br /&gt;
 networks:&lt;br /&gt;
   traefik:&lt;br /&gt;
     external: true&lt;br /&gt;
&lt;br /&gt;
===Configuration===&lt;br /&gt;
Traefik can be configured by either commandline options or a config file. A config file must be created under &amp;lt;code&amp;gt;/etc/traefik/traefik.yml&amp;lt;/code&amp;gt;. This file can also be in TOML format. Also note that all config options and values are &#039;&#039;&#039;case sensitive&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Docker ====&lt;br /&gt;
Full documentation about this topic: [https://doc.traefik.io/traefik/providers/docker/ Docker]&lt;br /&gt;
&lt;br /&gt;
===== providers.docker.exposedByDefault =====&lt;br /&gt;
Default value: &#039;&#039;true&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If set to false all containers are ignored by default and must use the &amp;lt;code&amp;gt;traefik.enable=true&amp;lt;/code&amp;gt; label to be not ignored by traefik. This is usefull if you have a lot of containers not exposing any ports.&lt;br /&gt;
&lt;br /&gt;
===== providers.docker.network =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This defines the docker network that should be used by traefik to connect to other containers. If a container uses more than the traefik network this option should be used. This can also be applied per-container with the &amp;lt;code&amp;gt;traefik.docker.network&amp;lt;/code&amp;gt; label.&lt;br /&gt;
&lt;br /&gt;
==== Logging ====&lt;br /&gt;
Full documentation about this topic: [https://doc.traefik.io/traefik/observability/access-logs/ Access Logs] &amp;amp; [https://doc.traefik.io/traefik/observability/logs/ Logs]&lt;br /&gt;
&lt;br /&gt;
===== accessLog.filePath =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defines the file to write access logs. If this option is not used the access logs are written to standard output (StdOut).&lt;br /&gt;
&lt;br /&gt;
===== accessLog.format =====&lt;br /&gt;
Default value: &#039;&#039;&amp;quot;CLF&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Access logs written in the &amp;quot;Common Log Format&amp;quot; (CLF) by default. It is also possable to write access logs as JSON, by setting the format to &amp;lt;code&amp;gt;json&amp;lt;/code&amp;gt;. Note the access log file is not written as a valid JSON file but instead is written in [https://jsonlines.org/ JSON-Lines]. If an Invalid format is provided traefik willl fallback to &amp;lt;code&amp;gt;CLF&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===== log.filePath =====&lt;br /&gt;
Default value: &#039;&#039;&amp;lt;None&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defines the file to write logs. If this option is not used the logs are written to standard output (StdOut).&lt;br /&gt;
&lt;br /&gt;
===== log.format =====&lt;br /&gt;
Default value: &#039;&#039;&amp;quot;CLF&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Logs written in the &amp;quot;Common Log Format&amp;quot; (CLF) by default. It is also possable to write logs as JSON, by setting the format to &amp;lt;code&amp;gt;json&amp;lt;/code&amp;gt;. Note the log file not in written as valid JSON file but instead is written in [https://jsonlines.org/ JSON-Lines]. If an Invalid format is provided traefik willl fallback to &amp;lt;code&amp;gt;CLF&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===== log.level =====&lt;br /&gt;
Default value: &amp;quot;&#039;&#039;ERROR&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This options sets the verbosity of the traefik logs. Valid values are: &amp;lt;code&amp;gt;DEBUG&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;INFO&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WARN&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ERROR&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;FATAL&amp;lt;/code&amp;gt; &amp;amp; &amp;lt;code&amp;gt;PANIC&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Example Configuration File (YML) ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
api:&lt;br /&gt;
  dashboard: true&lt;br /&gt;
  insecure: true&lt;br /&gt;
&lt;br /&gt;
entryPoints:&lt;br /&gt;
  web:&lt;br /&gt;
    address: &amp;quot;:80&amp;quot;&lt;br /&gt;
  websecure:&lt;br /&gt;
    address: &amp;quot;:443&amp;quot;&lt;br /&gt;
&lt;br /&gt;
providers:&lt;br /&gt;
  docker:&lt;br /&gt;
    network: &amp;quot;traefik&amp;quot;&lt;br /&gt;
&lt;br /&gt;
accesslog:&lt;br /&gt;
  filepath: &amp;quot;/opt/access.log&amp;quot;&lt;br /&gt;
&lt;br /&gt;
log:&lt;br /&gt;
  filepath: &amp;quot;/opt/traefik.log&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=10</id>
		<title>Certbot</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=10"/>
		<updated>2021-12-06T20:53:18Z</updated>

		<summary type="html">&lt;p&gt;Timon: /* Retriving a Certificate */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Certbot is used the issue LetsEncrypt SSL-Certificates&lt;br /&gt;
&lt;br /&gt;
== Install ==&lt;br /&gt;
Certbot &#039;&#039;&#039;must&#039;&#039;&#039; installed using the Snap-Store.&lt;br /&gt;
&lt;br /&gt;
Make sure the certbot is not installed using Apt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt remove certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ensure the latest Snap version is installed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo snap install core; sudo snap refresh core&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install the Certbot, make sure to use the &amp;lt;code&amp;gt;--classic&amp;lt;/code&amp;gt; flag&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo snap install --classic certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Link the certbot binary to a path thats in the $PATH variabel&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo ln -s /snap/bin/certbot /usr/bin/certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Retrieving a Certificate ==&lt;br /&gt;
To create an Certificate for &amp;lt;code&amp;gt;example.com&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot certonly --nginx --agree-tos -n -d example.com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use Local installed nginx for the Authentication-Challange, see Challanges for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Domain to create the Certificate for&lt;br /&gt;
&lt;br /&gt;
The Certificate will be saved under:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/fullchain.pem&amp;lt;/code&amp;gt;: Certificate&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/privkey.pem&amp;lt;/code&amp;gt;: Private key&lt;br /&gt;
&lt;br /&gt;
== Renewing Certificates ==&lt;br /&gt;
To renew all Certificates use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot renew --nginx --agree-tos -n&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use Local installed nginx for the Authentication-Challange, see Challanges for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Optional, Domain to renew the Certificate for&lt;br /&gt;
&lt;br /&gt;
Certificates will be updated if there expire in less than 30 days&lt;br /&gt;
&lt;br /&gt;
== Challanges ==&lt;br /&gt;
To validate that you own a Domain you must complete a Challange using one of the following method&lt;br /&gt;
&lt;br /&gt;
=== Nginx ===&lt;br /&gt;
If a Nginx is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt; option and certbot will use Nginx for the Challange and should complete it without stopping the Nginx.&lt;br /&gt;
&lt;br /&gt;
=== Apache ===&lt;br /&gt;
If a Apache is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--apache&amp;lt;/code&amp;gt; option and certbot will use Apache for the Challange and should complete it without stopping the Apache server.&lt;br /&gt;
&lt;br /&gt;
=== Standalone ===&lt;br /&gt;
Certbot will start a Webserver on Port 80 and will try to serve a file containg a verification code. If the Certbot can find that file, the challange will be completed.&lt;br /&gt;
&lt;br /&gt;
=== Webroot ===&lt;br /&gt;
Using the &amp;lt;code&amp;gt;--webroot &amp;lt;Path&amp;gt;&amp;lt;/code&amp;gt; the Certbot will put files under the given directory und the given directory and try to access them.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=9</id>
		<title>Certbot</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Certbot&amp;diff=9"/>
		<updated>2021-12-06T20:52:58Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;The Certbot is used the issue LetsEncrypt SSL-Certificates  == Install == Certbot &amp;#039;&amp;#039;&amp;#039;must&amp;#039;&amp;#039;&amp;#039; installed using the Snap-Store.  Make sure the certbot is not installed using Apt:  &amp;lt;code&amp;gt;sudo apt remove certbot&amp;lt;/code&amp;gt;  Ensure the latest Snap version is installed:  &amp;lt;code&amp;gt;sudo snap install core; sudo snap refresh core&amp;lt;/code&amp;gt;  Install the Certbot, make sure to use the &amp;lt;code&amp;gt;--classic&amp;lt;/code&amp;gt; flag  &amp;lt;code&amp;gt;sudo snap install --classic certbot&amp;lt;/code&amp;gt;  Link the certbot binary to a pat...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Certbot is used the issue LetsEncrypt SSL-Certificates&lt;br /&gt;
&lt;br /&gt;
== Install ==&lt;br /&gt;
Certbot &#039;&#039;&#039;must&#039;&#039;&#039; installed using the Snap-Store.&lt;br /&gt;
&lt;br /&gt;
Make sure the certbot is not installed using Apt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt remove certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ensure the latest Snap version is installed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo snap install core; sudo snap refresh core&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install the Certbot, make sure to use the &amp;lt;code&amp;gt;--classic&amp;lt;/code&amp;gt; flag&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo snap install --classic certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Link the certbot binary to a path thats in the $PATH variabel&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo ln -s /snap/bin/certbot /usr/bin/certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Retriving a Certificate ==&lt;br /&gt;
To create an Certificate for &amp;lt;code&amp;gt;example.com&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot certonly --nginx --agree-tos -n -d example.com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use Local installed nginx for the Authentication-Challange, see Challanges for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Domain to create the Certificate for&lt;br /&gt;
&lt;br /&gt;
The Certificate will be saved under:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/fullchain.pem&amp;lt;/code&amp;gt;: Certificate&lt;br /&gt;
* &amp;lt;code&amp;gt;/etc/letsencrypt/live/&amp;lt;DOMAIN&amp;gt;/privkey.pem&amp;lt;/code&amp;gt;: Private key&lt;br /&gt;
&lt;br /&gt;
== Renewing Certificates ==&lt;br /&gt;
To renew all Certificates use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo certbot renew --nginx --agree-tos -n&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt;: Use Local installed nginx for the Authentication-Challange, see Challanges for other ways to authenticate&lt;br /&gt;
* &amp;lt;code&amp;gt;--agree-tos&amp;lt;/code&amp;gt;: Agree to the Terms of Service, the Command will not work without this option&lt;br /&gt;
* &amp;lt;code&amp;gt;-n&amp;lt;/code&amp;gt;: Non-Interactive, do not prompt for anything&lt;br /&gt;
* &amp;lt;code&amp;gt;-d &amp;lt;DOMAIN&amp;gt;&amp;lt;/code&amp;gt;: Optional, Domain to renew the Certificate for&lt;br /&gt;
&lt;br /&gt;
Certificates will be updated if there expire in less than 30 days&lt;br /&gt;
&lt;br /&gt;
== Challanges ==&lt;br /&gt;
To validate that you own a Domain you must complete a Challange using one of the following method&lt;br /&gt;
&lt;br /&gt;
=== Nginx ===&lt;br /&gt;
If a Nginx is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--nginx&amp;lt;/code&amp;gt; option and certbot will use Nginx for the Challange and should complete it without stopping the Nginx.&lt;br /&gt;
&lt;br /&gt;
=== Apache ===&lt;br /&gt;
If a Apache is running localy and serving for your domain you can simply use the &amp;lt;code&amp;gt;--apache&amp;lt;/code&amp;gt; option and certbot will use Apache for the Challange and should complete it without stopping the Apache server.&lt;br /&gt;
&lt;br /&gt;
=== Standalone ===&lt;br /&gt;
Certbot will start a Webserver on Port 80 and will try to serve a file containg a verification code. If the Certbot can find that file, the challange will be completed.&lt;br /&gt;
&lt;br /&gt;
=== Webroot ===&lt;br /&gt;
Using the &amp;lt;code&amp;gt;--webroot &amp;lt;Path&amp;gt;&amp;lt;/code&amp;gt; the Certbot will put files under the given directory und the given directory and try to access them.&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
	<entry>
		<id>https://wiki.its-treason.com/index.php?title=Category:Schule&amp;diff=8</id>
		<title>Category:Schule</title>
		<link rel="alternate" type="text/html" href="https://wiki.its-treason.com/index.php?title=Category:Schule&amp;diff=8"/>
		<updated>2021-12-06T16:54:34Z</updated>

		<summary type="html">&lt;p&gt;Timon: Created page with &amp;quot;&amp;lt;categorytree&amp;gt; &amp;lt;/categorytree&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;categorytree&amp;gt;&lt;br /&gt;
&amp;lt;/categorytree&amp;gt;&lt;/div&gt;</summary>
		<author><name>Timon</name></author>
	</entry>
</feed>