<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Tech Notes</title>
		<link>https://notes.apka.cc/</link>
		<description>Recent content on Tech Notes</description>
		<generator>Hugo</generator>
		<language>pl</language>
		
		
		
			<copyright>© 2024 Tech Notes. All rights reserved</copyright>
		
		
			<lastBuildDate>Fri, 30 Jan 2026 00:08:46 +0100</lastBuildDate>
		
			<atom:link href="https://notes.apka.cc/feed.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Switch</title>
				<link>https://notes.apka.cc/posts/switch/</link>
				<pubDate>Fri, 30 Jan 2026 00:08:46 +0100</pubDate>
				<guid>https://notes.apka.cc/posts/switch/</guid>
				<description>&lt;p&gt;Manual dostępny dla switch: &lt;a href=&#34;https://www.downloads.netgear.com/files/GDC/GS105EV2/WebManagedSwitches_UM_EN.pdf&#34;&gt;Netgear GS105Ev2&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;W celu konfigucji switch-a należy:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Ustawić lokalny adres na PC: 192.168.0.210/24&lt;/li&gt;&#xA;&lt;li&gt;Podłaczyć się do portu 5 na switch-u.&lt;/li&gt;&#xA;&lt;li&gt;W przeglądarce wpisać: http://192.168.0.239/&lt;/li&gt;&#xA;&lt;li&gt;Przejdź do &amp;lsquo;VLAN-&amp;gt;Advanced-&amp;gt;Vlan Membership&amp;rsquo;:&#xA;VLAN ID 1:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;porty Untagged (access port): 1, 5&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://notes.apka.cc/images/switch/switch-vlan1.png&#34; alt=&#34;vlan1&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VLAN ID 110:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;porty Untagged (access port): 2,3,4&lt;/li&gt;&#xA;&lt;li&gt;porty Tagged (trunk): 1&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://notes.apka.cc/images/switch/switch-vlan110.png&#34; alt=&#34;vlan110&#34;&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Utworzenie FreeBSD Jail z nullfs - proxies</title>
				<link>https://notes.apka.cc/posts/proxies-jail/</link>
				<pubDate>Sat, 03 Jan 2026 00:29:12 +0100</pubDate>
				<guid>https://notes.apka.cc/posts/proxies-jail/</guid>
				<description>&lt;ol&gt;&#xA;&lt;li&gt;Utworzenie ze z migawski (ang. snapshot) podstawowej struktury katalogów która może być zmieniania:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# zfs clone tank/jails/templates/15.0-RELEASE-skeleton@base tank/jails/containers/proxies&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;2&#34;&gt;&#xA;&lt;li&gt;Przygotowanie katalogu roboczego do którego będą montowane systemy plików:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# mkdir /usr/local/jails/proxies-nullfs-base/&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;3&#34;&gt;&#xA;&lt;li&gt;Przygotowanie konfiguracji &lt;code&gt;fstab&lt;/code&gt; wykorzystywanego w konfiguracji Jail:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# echo &amp;gt; /usr/local/jails/proxies-nullfs-base.fstab &amp;lt;&amp;lt; EOF&#xA;/usr/local/jails/templates/15.0-RELEASE-base  /usr/local/jails/proxies-nullfs-base/ nullfs ro 0 0&#xA;/usr/local/jails/containers/proxies /usr/local/jails/proxies-nullfs-base/skeleton nullfs rw 0 0&#xA;EOF&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;4&#34;&gt;&#xA;&lt;li&gt;Przygotowanie głównego pliku konfiguracyjnego dla &lt;code&gt;proxies&lt;/code&gt;:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# cat /etc/jail.conf.d/proxies.conf&#xA;proxies {&#xA;  # STARTUP/LOGGING&#xA;  exec.start = &amp;#34;/bin/sh /etc/rc&amp;#34;;&#xA;  exec.stop = &amp;#34;/bin/sh /etc/rc.shutdown&amp;#34;;&#xA;  exec.consolelog = &amp;#34;/var/log/jail_console_${name}.log&amp;#34;;&#xA;&#xA;  # PERMISSIONS&#xA;  exec.clean;&#xA;  mount.devfs;&#xA;&#xA;  # HOSTNAME/PATH&#xA;  host.hostname = &amp;#34;${name}&amp;#34;;&#xA;  path = &amp;#34;/usr/local/jails/${name}-nullfs-base&amp;#34;;&#xA;&#xA;  # NETWORK&#xA;  ip4 = inherit;&#xA;  interface = re0bridge;&#xA;&#xA;  # MOUNT&#xA;  mount.fstab = &amp;#34;/usr/local/jails/${name}-nullfs-base.fstab&amp;#34;;&#xA;}&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;5&#34;&gt;&#xA;&lt;li&gt;Uruchomienie Jail i weryfikacja działania:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# service jail start proxies&#xA;# jail -c proxies&#xA;jail: &amp;#34;proxies&amp;#34; already exist&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;6&#34;&gt;&#xA;&lt;li&gt;Instalacja pakietu &lt;code&gt;xcaddy&lt;/code&gt; do z budowania pakietu &lt;code&gt;caddy&lt;/code&gt;:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# pkg -j proxies install -y xcaddy&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;7&#34;&gt;&#xA;&lt;li&gt;Instalacja &lt;code&gt;caddy&lt;/code&gt; ze wsparciem dla &lt;code&gt;CloudFlare&lt;/code&gt;:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# jexec proxies&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Następnie w &lt;code&gt;proxies&lt;/code&gt; budowa &lt;code&gt;caddy&lt;/code&gt;:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Konfiguracja SMART we FreeBSD</title>
				<link>https://notes.apka.cc/posts/freebsd-smartd/</link>
				<pubDate>Sun, 13 Apr 2025 23:08:31 +0200</pubDate>
				<guid>https://notes.apka.cc/posts/freebsd-smartd/</guid>
				<description>&lt;ol&gt;&#xA;&lt;li&gt;Instalacja pakietu &lt;code&gt;smartmontools&lt;/code&gt;:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# pkg install -y smartmontools&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;2&#34;&gt;&#xA;&lt;li&gt;Sprawdzenie listy lokalnych dysków:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# smartctl --scan&#xA;/dev/ada0 -d atacam # /dev/ada0, ATA device&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;ol start=&#34;3&#34;&gt;&#xA;&lt;li&gt;Utworzenie pliku konfiguracyjnego dla SMART:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;/usr/local/etc/smartd.conf&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;/dev/ada0 -a -d atacam -m root@localhost -s S/../.././15&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;UWAGA:&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;S/../.././15&lt;/code&gt; oznacza: uruchamianie krótkiego testu (ang. Short) każdego dnia o 15:00.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;smartd&lt;/code&gt; nie jest uruchamiany za pomocą Cron a zamiast tego sam sprawdza co 30 minut.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;ol start=&#34;4&#34;&gt;&#xA;&lt;li&gt;Uruchomienie &lt;code&gt;smartd&lt;/code&gt; podczas startu systemu:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sysrc smartd_enable=YES&#xA;service smartd start&#xA;&lt;/code&gt;&lt;/pre&gt;</description>
			</item>
			<item>
				<title>Notyfikacja o nieodczytanych wiadomość lokalnych na FreeBSD</title>
				<link>https://notes.apka.cc/posts/freebsd-email-notifications/</link>
				<pubDate>Sun, 13 Apr 2025 23:03:04 +0200</pubDate>
				<guid>https://notes.apka.cc/posts/freebsd-email-notifications/</guid>
				<description>&lt;p&gt;Aby otrzymywać powiadomienia po zalogowaniu przez terminal o nieprzeczytanych wiadomościach e-mail w systemie lokalnym, utwórz plik w &lt;code&gt;/usr/local/etc/profile&lt;/code&gt; z następującą zawartością:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;unread_count=$(echo q | mailx -N | head -n2 | tail -n1 | cut -f4 -d&amp;#34; &amp;#34;)&#xA;if [ -n &amp;#34;$unread_count&amp;#34; ] &amp;amp;&amp;amp; [ &amp;#34;$unread_count&amp;#34; -gt 0 ]; then&#xA;    echo -e &amp;#34;\n\tYou have $unread_count unread mail message(s).\n&amp;#34;&#xA;fi&#xA;&lt;/code&gt;&lt;/pre&gt;</description>
			</item>
			<item>
				<title>Search</title>
				<link>https://notes.apka.cc/search/</link>
				<pubDate>Mon, 24 Mar 2025 23:00:00 -0300</pubDate>
				<guid>https://notes.apka.cc/search/</guid>
				<description>&lt;h1 id=&#34;search&#34;&gt;Search&lt;/h1&gt;&#xA;&lt;p&gt;Here you can search for indexable pages, like posts and alike. There&amp;rsquo;s also support for URL param &amp;ldquo;q&amp;rdquo; which then auto searches upon page load event.&lt;/p&gt;&#xA;&lt;p class=&#34;hidden&#34;&gt;It&amp;#39;s necessary to enable Javascript&lt;/p&gt;&#xA;&lt;p class=&#34;search-loading hidden&#34;&gt;Loading...&lt;/p&gt;&#xA;&#xA;&lt;form id=&#34;search-form&#34; class=&#34;search-form&#34; action=&#34;#&#34; method=&#34;post&#34; accept-charset=&#34;UTF-8&#34; role=&#34;search&#34;&gt;&#xA;  &lt;div class=&#34;search-bar&#34;&gt;&#xA;    &lt;label for=&#34;query&#34; class=&#34;hidden&#34;&gt;&lt;/label&gt;&#xA;    &lt;input id=&#34;query&#34; class=&#34;search-text&#34; type=&#34;text&#34; placeholder=&#34;Search...&#34;/&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/form&gt;&#xA;&#xA;&lt;div class=&#34;search-results&#34;&gt;&lt;/div&gt;&#xA;&#xA;&lt;template&gt;&#xA;  &lt;article class=&#34;search-result list-view&#34;&gt;&#xA;    &lt;header&gt;&#xA;      &lt;h2 class=&#34;title&#34;&gt;&lt;a href=&#34;#&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;      &lt;div class=&#34;submitted&#34;&gt;&#xA;        &lt;time class=&#34;created-date&#34;&gt;&lt;/time&gt;&#xA;      &lt;/div&gt;&#xA;    &lt;/header&gt;&#xA;    &lt;p class=&#34;content&#34;&gt;&lt;/p&gt;&#xA;  &lt;/article&gt;&#xA;&lt;/template&gt;</description>
			</item>
	</channel>
</rss>
