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

<channel>
	<title>Alt om ingenting og litt i mellom &#187; Teknologi</title>
	<atom:link href="http://hovenko.no/blog/category/teknologi/feed/" rel="self" type="application/rss+xml" />
	<link>https://hovenko.no/blog</link>
	<description>En blogg av Knut-Olav</description>
	<lastBuildDate>Mon, 10 Mar 2025 19:25:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>AI-generert bilde av hestehov tråkket ned av en hestehov</title>
		<link>https://hovenko.no/blog/2025/03/10/ai-generert-bilde-av-hestehov-trakket-ned-av-en-hestehov/</link>
		<comments>https://hovenko.no/blog/2025/03/10/ai-generert-bilde-av-hestehov-trakket-ned-av-en-hestehov/#comments</comments>
		<pubDate>Mon, 10 Mar 2025 19:19:29 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[Teknologi]]></category>
		<category><![CDATA[Ukategorisert]]></category>

		<guid isPermaLink="false">https://hovenko.no/blog/?p=1031</guid>
		<description><![CDATA[Siden etternavnet mitt er Hoven, så tenkte jeg å lage et bilde som bruker ordspill opp mot både hestens hov og blomsten hestehov. ChatGPT med DALL-E genererte dette bildet for meg: Jeg er ganske fornøyd med resultatet. Det tok noen iterasjoner å komme fram til dette bildet. Her er min side av prompten med ChatGPT: [...]]]></description>
			<content:encoded><![CDATA[<p>Siden etternavnet mitt er Hoven, så tenkte jeg å lage et bilde som bruker ordspill opp mot både hestens hov og blomsten hestehov.</p>
<p>ChatGPT med DALL-E genererte dette bildet for meg:</p>
<p><a href="https://hovenko.no/blog/wp-content/uploads/2025/03/DALL·E-2025-03-03-20.14.03-A-stylized-artistic-logo-featuring-a-horses-hoof-stepping-on-a-yellow-coltsfoot-flower-hestehov.-The-design-is-minimalistic-with-clean-lines-focu.png"><img src="https://hovenko.no/blog/wp-content/uploads/2025/03/DALL·E-2025-03-03-20.14.03-A-stylized-artistic-logo-featuring-a-horses-hoof-stepping-on-a-yellow-coltsfoot-flower-hestehov.-The-design-is-minimalistic-with-clean-lines-focu-300x300.png" alt="" title="DALL·E 2025-03-03 20.14.03 - A stylized, artistic logo featuring a horse&#039;s hoof stepping on a yellow coltsfoot flower (hestehov). The design is minimalistic with clean lines, focu" width="300" height="300" class="aligncenter size-medium wp-image-1032" /></a></p>
<p>Jeg er ganske fornøyd med resultatet.</p>
<p>Det tok noen iterasjoner å komme fram til dette bildet. Her er min side av prompten med ChatGPT:</p>
<blockquote><p>
1. Lag et bilde av en hestehov som er tråkket ned av hoven til en hest</p>
<p>2. Kan du lage bilder med Dall-E?</p>
<p>3. Kan du lage dette bildet nå?</p>
<p>4. Den blomsten er vel ikke en hestehov. Hestehov har gule blader</p>
<p>5. Nå har du tegnet inn en støvel på en menneskefot. Det skal være en hest sin hestehov som tråkker ned hestehov-blomsten. Lag den litt artistisk/kunstneristisk. Som en logo.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2025/03/10/ai-generert-bilde-av-hestehov-trakket-ned-av-en-hestehov/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>convmv for å fikse latin1-filnavn i Linux</title>
		<link>https://hovenko.no/blog/2024/04/16/convmv-for-a-fikse-latin1-filnavn-i-linux/</link>
		<comments>https://hovenko.no/blog/2024/04/16/convmv-for-a-fikse-latin1-filnavn-i-linux/#comments</comments>
		<pubDate>Tue, 16 Apr 2024 09:25:38 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Teknologi]]></category>

		<guid isPermaLink="false">https://hovenko.no/blog/?p=1019</guid>
		<description><![CDATA[Jeg hadde noen filer på en harddisk, som antakeligvis har vært brukt med en Samba-server for nettverkslagring fra Windows, hvor tegnsettet ikke ble vist skikkelig i Linux. Slik så filene ut med ls: hovenko: /mnt/Innskannet$ ls -l totalt 182748 -rw------- 1 hovenko users 16310600 okt. 12 2013 '1981-08 Lizzie s'$'\370''la.tif' -rw------- 1 hovenko users 16373000 [...]]]></description>
			<content:encoded><![CDATA[<p>Jeg hadde noen filer på en harddisk, som antakeligvis har vært brukt med en Samba-server for nettverkslagring fra Windows, hvor tegnsettet ikke ble vist skikkelig i Linux.</p>
<p>Slik så filene ut med <tt>ls</tt>:<br />
<code>
<pre>
hovenko: /mnt/Innskannet$ ls -l
totalt 182748
-rw------- 1 hovenko users 16310600 okt.  12  2013 '1981-08 Lizzie s'$'\370''la.tif'
-rw------- 1 hovenko users 16373000 okt.  12  2013 '1981-08 Lizzie.tif'
-rw------- 1 hovenko users 18903752 okt.  12  2013 '1981 Bonzo og Ditho.tif'
-rw------- 1 hovenko users  6497864 okt.  12  2013 '1984-07 Bonzo og Ditho.tif'
-rw------- 1 hovenko users 27627336 okt.  12  2013 '1986-08-23 Elisabeth og Carro.tif'
-rw------- 1 hovenko users  3685982 okt.  12  2013 '1994 Scott i skog.jpg'
-rw------- 1 hovenko users  2917307 okt.  12  2013 '1994 Scott.jpg'
-rw------- 1 hovenko users  6406824 okt.  12  2013 '1999 Lady p'$'\345'' hytta med ball.tif'
-rw------- 1 hovenko users  6449736 okt.  12  2013 '2000 Bonzo.tif'
-rw------- 1 hovenko users  6449736 okt.  12  2013 '2000 Rex og Oliver.tif'
-rw------- 1 hovenko users 25834760 okt.  12  2013 '2000 Rex.tif'
-rw------- 1 hovenko users  6485128 okt.  12  2013 '2001-05 Lady og Rex.tif'
-rw------- 1 hovenko users  6497736 okt.  12  2013 '2001-07 Rex.tif'
-rw------- 1 hovenko users 25683208 okt.  12  2013 '2002-05-22 Lady.tif'
-rw------- 1 hovenko users   182923 okt.  12  2013 '2005 Bonzo.jpg'
-rw------- 1 hovenko users   106015 okt.  12  2013 '2005 Bonzo ligger i kratt.jpg'
-rw------- 1 hovenko users  4910601 okt.  12  2013 '2011 Buster p'$'\345'' '$'\330''deg'$'\345''rdsodden.jpg'
-rw------- 1 hovenko users  5434227 okt.  12  2013 '2012 Spot p'$'\345'' hytta.jpg'
-rw------- 1 hovenko users    53760 okt.  12  2013  Thumbs.db
</pre>
<p></code></p>
<p>I filbehandleren Dolphin ble spesialtegnene vist med <tt>?</tt>, og det var ikke mulig å åpne filene derfra eller døpe de om.</p>
<p>Jeg hadde en del flere filer enn disse som hadde feil tegnsett, så manuell omdøping av alle filene var ikke gjennomførbart.</p>
<p>Løsningen ble <tt>convmv</tt>.</p>
<p>Først en &#8220;dryrun&#8221;:<br />
<code>
<pre>
$ convmv -f latin1 -t utf-8 *
Starting a dry run without changes...
mv "./1981-08 Lizzie s�la.tif"  "./1981-08 Lizzie søla.tif"
mv "./1999 Lady p� hytta med ball.tif"  "./1999 Lady på hytta med ball.tif"
mv "./2011 Buster p� �deg�rdsodden.jpg" "./2011 Buster på Ødegårdsodden.jpg"
mv "./2012 Spot p� hytta.jpg"   "./2012 Spot på hytta.jpg"
No changes to your files done. Would have converted 4 files in 0 seconds.
Use --notest to finally rename the files.
</pre>
<p></code></p>
<p>Og så endringen:<br />
<code>
<pre>
$ convmv -f latin1 -t utf-8 --notest *
mv "./1981-08 Lizzie s�la.tif"  "./1981-08 Lizzie søla.tif"
mv "./1999 Lady p� hytta med ball.tif"  "./1999 Lady på hytta med ball.tif"
mv "./2011 Buster p� �deg�rdsodden.jpg" "./2011 Buster på Ødegårdsodden.jpg"
mv "./2012 Spot p� hytta.jpg"   "./2012 Spot på hytta.jpg"
Ready! I converted 4 files in 0 seconds.
</pre>
<p></code></p>
<p>Med opsjon <tt>-r</tt> så går den rekursivt igjennom underkatalogene.</p>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2024/04/16/convmv-for-a-fikse-latin1-filnavn-i-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installasjon av Debian i XEN krever 1GB minne i Xen-konfigurasjon</title>
		<link>https://hovenko.no/blog/2023/09/17/installasjon-av-debian-i-xen-krever-1gb-minne-i-xen-konfigurasjon/</link>
		<comments>https://hovenko.no/blog/2023/09/17/installasjon-av-debian-i-xen-krever-1gb-minne-i-xen-konfigurasjon/#comments</comments>
		<pubDate>Sun, 17 Sep 2023 20:35:29 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Teknologi]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=992</guid>
		<description><![CDATA[Jeg skulle installere Debian i Xen-node og fulgte oppskriften på https://wiki.xenproject.org/wiki/Debian_Guest_Installation_Using_Debian_Installer. Jeg forsøkte netinst og cdrom via pygrub, men ingen av metodene fungerte. Jeg fikk feilmeldinger ala: [ 2.957523] steal-ctty[125]: segfault at 0 ip 00007fbce02c4160 sp 00007ffe4dde3830 error 4 in libc.so.6[7fbce021f000+148000] [ 2.957551] Code: 8b e8 74 36 04 00 0f 1f 40 00 55 [...]]]></description>
			<content:encoded><![CDATA[<p>Jeg skulle installere Debian i Xen-node og fulgte oppskriften på <a href="https://wiki.xenproject.org/wiki/Debian_Guest_Installation_Using_Debian_Installer">https://wiki.xenproject.org/wiki/Debian_Guest_Installation_Using_Debian_Installer</a>.<br />
Jeg forsøkte netinst og cdrom via pygrub, men ingen av metodene fungerte.</p>
<p>Jeg fikk feilmeldinger ala:</p>
<pre><code>[    2.957523] steal-ctty[125]: segfault at 0 ip 00007fbce02c4160 sp
00007ffe4dde3830 error 4 in libc.so.6[7fbce021f000+148000]
[    2.957551] Code: 8b e8 74 36 04 00 0f 1f 40 00 55 48 89 e5 41 57 41 56 41 55 41
54 53 48 83 ec 48 64 48 8b 04 25 28 00 00 00 48 89 45 c8 31 c0 &lt;80> 3f 00 0f 84
47 01 00 00 49 89 f4 be 2f 00 00 00 48 89 fb 49 89
Segmentation fault
cat: can't open '/var/log/reopen-console': No such file or directory
rm: can't remove '/var/log/reopen-console': No such file or directory
touch: /var/run/brltty-Xorg: No such file or directory
</code></pre>
<p>Tok ikke vare på mine eksakte feilmeldinger, men jeg fant mailingliste-tråden <a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=932149">https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=932149</a> om problemet, og med løsningen.</p>
<p>Selv om Debian er ganske gjærrig på CPU- og minnebruk, så viste det seg at jeg måtte sette &#8220;memory=1024M&#8221; i Xen-konfigurasjonen til den nye virtuelle serveren. Det holdt ikke med 512M.</p>
<p>Jeg endte opp med å installere fra CDROM-image med kernel og initrd fra <a href="https://deb.debian.org/debian/dists/Debian12.1/main/installer-amd64/current/images/cdrom/xen/">https://deb.debian.org/debian/dists/Debian12.1/main/installer-amd64/current/images/cdrom/xen/</a>.<br />
Og med følgende XEN-node-konfigurasjon i <tt>/etc/xen/vm_srv-2023-1</tt>:</p>
<pre><code>name = "srv-DEBIAN"

kernel  = "/xen/install-media/Debian12.1-installer-amd64-cdrom-xen/vmlinuz"
ramdisk = "/xen/install-media/Debian12.1-installer-amd64-cdrom-xen/initrd.gz"
extra   = "debian-installer/exit/always_halt=true -- console=hvc0 xencons=tty"

vcpus  = 1
memory = 1024

vif = [ 'mac=00:11:22:33:44:55,bridge=xenbr0' ]

disk = [
    'file:/xen/install-media/debian-12.1.0-amd64-netinst.iso,xvdd:cdrom,r',
    'phy:/dev/vg-data/xen-srv-DEBIAN-root,xvda,w',
    'phy:/dev/vg-data/xen-srv-DEBIAN-swap,xvdb,w'
]

on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'
</code></pre>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2023/09/17/installasjon-av-debian-i-xen-krever-1gb-minne-i-xen-konfigurasjon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hvordan fikse dobbel-klikk-problem i Logitech Darkfield Performance MX</title>
		<link>https://hovenko.no/blog/2022/02/20/hvordan-fikse-dobbel-klikk-problem-i-logitech-darkfield-performance-mx/</link>
		<comments>https://hovenko.no/blog/2022/02/20/hvordan-fikse-dobbel-klikk-problem-i-logitech-darkfield-performance-mx/#comments</comments>
		<pubDate>Sun, 20 Feb 2022 19:02:10 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[Hardware]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=986</guid>
		<description><![CDATA[Jeg har opplevd den siste tida at min Logitech Darkfield Performance MX ofte dobbeltklikker automatisk når jeg klikker på venstreknappen. Jeg trodde musa begynte å bli ødelagt, men etter litt søk på Internett, så fant jeg en løsningen. Og utrolig nok så fungerer dette, som forklart på ifixit.com: Press the right click button and hold-it, [...]]]></description>
			<content:encoded><![CDATA[<p>Jeg har opplevd den siste tida at min <a rel="nofollow" href="https://www.techspot.com/products/mice/logitech-performance-mx.45413/">Logitech Darkfield Performance MX</a> ofte dobbeltklikker automatisk når jeg klikker på venstreknappen. Jeg trodde musa begynte å bli ødelagt, men etter litt søk på Internett, så fant jeg en løsningen.</p>
<p>Og utrolig nok så fungerer dette, som <a rel="nofollow" href="https://www.ifixit.com/Answers/View/345177/Double+click+when+single+left+click+function+is+used#answer502557">forklart på ifixit.com</a>:</p>
<blockquote><p>
Press the right click button and hold-it,<br />
turn the mouse off and on,<br />
leave the right mouse button pressed while clicking on the left click button 5 times.<br />
Quit pressing the right click button and turn the mouse off.<br />
Click and hold the right mouse button, turn the mouse on and finally release the right mouse button.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2022/02/20/hvordan-fikse-dobbel-klikk-problem-i-logitech-darkfield-performance-mx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Surround over HDMI med mpv i Linux</title>
		<link>https://hovenko.no/blog/2021/03/16/surround-over-hdmi-med-mpv-i-linux/</link>
		<comments>https://hovenko.no/blog/2021/03/16/surround-over-hdmi-med-mpv-i-linux/#comments</comments>
		<pubDate>Tue, 16 Mar 2021 22:48:50 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=946</guid>
		<description><![CDATA[Dette er en &#8220;note to self&#8221;, etter å ha søkt litt rundt på Internett etter løsning på hvordan å få surround-lyd over HDMI med mpv, og ikke bare stereo. $ mpv \ --audio-channels=5.1,stereo \ --audio-spdif=ac3,eac3,dts-hd,truehd \ --audio-device=alsa/hdmi:CARD=PCH,DEV=0 \ audiofile.mp4 Fant tipset på https://forum.manjaro.org/t/how-do-i-enable-surround-sound-in-pulseaudio/56394. Oppdatering 27.09.2023 Jeg støtte i dag på et tilfelle med en videofil [...]]]></description>
			<content:encoded><![CDATA[<p>Dette er en &#8220;note to self&#8221;, etter å ha søkt litt rundt på Internett etter løsning på hvordan å få surround-lyd over HDMI med mpv, og ikke bare stereo.</p>
<p><code>
<pre>
$ mpv \
  --audio-channels=5.1,stereo \
  --audio-spdif=ac3,eac3,dts-hd,truehd \
  --audio-device=alsa/hdmi:CARD=PCH,DEV=0 \
  audiofile.mp4
</pre>
<p></code></p>
<p>Fant tipset på <a href="https://forum.manjaro.org/t/how-do-i-enable-surround-sound-in-pulseaudio/56394">https://forum.manjaro.org/t/how-do-i-enable-surround-sound-in-pulseaudio/56394</a>.</p>
<h2>Oppdatering 27.09.2023</h2>
<p>Jeg støtte i dag på et tilfelle med en videofil med 6-kanals lyd, men hvor avspilling med kommandoen ovenfor ikke ga noen lyd over HDMI.</p>
<p>Uttrekk fra ffprobe gir meg:<br />
<code>
<pre>
Input #0, matroska,webm, from ...
  Metadata:
    encoder         : libebml v1.4.2 + libmatroska v1.6.4
[...]
    Stream #0:1(eng): Audio: eac3, 48000 Hz, 6 channels, fltp
    Metadata:
      title           : English
      BPS             : 384000
      DURATION        : 02:49:17
      NUMBER_OF_FRAMES: 317427
      NUMBER_OF_BYTES : 487567872
</pre>
<p></code><br />
mpv-avspilling rapporterte 2-kanals lyd: <code>AO: [alsa] 48000Hz stereo 2ch spdif-ac3</code>.</p>
<h3>MPV AD-parameter (Audio Decoder)</h3>
<p>Jeg fikk surround-lyd med AD-parameteren (Audio Decoder):<br />
<code>--ad=spdif:ac3,spdif:dts,</code></p>
<p>mpv rapporterte <code>AO: [alsa] 48000Hz 5.1 6ch s32</code> og receiveren min viste MULTI-CHANNEL lyd-input.</p>
<h3>MPV AF-parameter (Audio Filters)</h3>
<p>Jeg prøvde også med noen AF-parametere (Audio Filters):<br />
<code>
<pre>
  --af=lavcac3enc
  --af=scaletempo,lavcac3enc=yes:640:3
</pre>
<p></code>, men i begge tilfeller rapporterte mpv om <code>AO: [alsa] 48000Hz stereo 2ch spdif-ac3</code>, selv om receiveren min identifiserte det som Dolby Digital. Også i kombinasjon med <code>--ad</code>-parameteren. Jeg gjorde ingen test på om det faktisk ble ekte surround-lyd fra receiveren.</p>
<h3>Kilder</h3>
<p>Fant tipsene fra:<br />
1) <a href="https://bbs.archlinux.org/viewtopic.php?id=195332">Does anyone has realtime ac3 or dts encoding running? (Archlinux)</a><br />
2) <a href="https://www.reddit.com/r/mpv/comments/12r8ajn/new_to_mpv_trouble_with_eac3_6_channel_audio/">New To MPV. Trouble with EAC3 6 channel audio. (Reddit)</a></p>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2021/03/16/surround-over-hdmi-med-mpv-i-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A feature request to Google for Google Maps</title>
		<link>https://hovenko.no/blog/2020/08/06/a-feature-request-to-google-for-google-maps/</link>
		<comments>https://hovenko.no/blog/2020/08/06/a-feature-request-to-google-for-google-maps/#comments</comments>
		<pubDate>Thu, 06 Aug 2020 18:37:04 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[English-posts]]></category>
		<category><![CDATA[Teknologi]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=939</guid>
		<description><![CDATA[Today I sent a feedback to Google about Google Maps, requesting a new feature. I have a wish for a new feature that I didn&#8217;t know I wanted until I moved to Oslo. I would like to set a different &#8220;Home&#8221; address for my car than my appartment. My home address is not the same [...]]]></description>
			<content:encoded><![CDATA[<p>Today I sent a feedback to Google about Google Maps, requesting a new feature.</p>
<blockquote><p>I have a wish for a new feature that I didn&#8217;t know I wanted until I moved to Oslo. I would like to set a different &#8220;Home&#8221; address for my car than my appartment. My home address is not the same address where I park my car. The entry to my parking garage is on a different street, and GMaps often chooses completely different routes around/through Oslo depending on which address I set as destination.</p>
<p>For instance, getting directions from Drammen to &#8220;Home&#8221;, then GMaps often routes me on to &#8220;Ring 3&#8243; near Lysaker. But when choosing destination of my parking it mostly takes me through the tunnels under Oslo on the highway E18.</p></blockquote>
<p>I guess this might be an edge-case feature for the few, but at least it would make my life a tiny bit simpler.</p>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2020/08/06/a-feature-request-to-google-for-google-maps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Deduplisering av filer over nettverk</title>
		<link>https://hovenko.no/blog/2019/06/18/deduplisering-av-filer-over-nettverk/</link>
		<comments>https://hovenko.no/blog/2019/06/18/deduplisering-av-filer-over-nettverk/#comments</comments>
		<pubDate>Tue, 18 Jun 2019 20:20:24 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Teknologi]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=906</guid>
		<description><![CDATA[Jeg har en god del bilder liggende på laptopen min, både lastet inn fra minnebrikke fra kamera og lastet ned fra Dropbox-kameraopplastinger fra telefonen. Disse bildene kopierer jeg over til en server av og til, slik at jeg har et sted å nå de også når jeg trenger å rense opp litt plass på laptopen. [...]]]></description>
			<content:encoded><![CDATA[<p>Jeg har en god del bilder liggende på laptopen min, både lastet inn fra minnebrikke fra kamera og lastet ned fra Dropbox-kameraopplastinger fra telefonen.</p>
<p>Disse bildene kopierer jeg over til en server av og til, slik at jeg har et sted å nå de også når jeg trenger å rense opp litt plass på laptopen.</p>
<p>Av og til har jeg behov for å reorganisere bildene mine i nye kataloger. For eksempel var det blitt så mange bilder fra Dropbox-opplastingene fra telefonen at det var vanskelig å bla igjennom de, så da flyttet jeg de til nye kataloger per år. Scriptet jeg har for å kopiere over bilder er ikke smartere enn at den tolker disse bildene som nå ligger i nye kataloger, som nye bilder. Og alt tar plutselig dobbelt så mye lagringsplass. I tillegg ligger nå bildene på flere steder slik at man mister litt oversikten, men akkurat det får bli et tema til en annen gang.</p>
<p>For å unngå at duplikate filer tar dobbelt med plass så kjørte jeg deduplisering. Serveren var gammel nok til å ikke ha noe godt dedupliseringsverktøy som jeg kunne installere fra pakkesystemet. Løsningen ble å montere opp nettverksstasjonen med NFS/CIFS og kjøre deduplisering fra laptopen.</p>
<p>Verktøyet jeg brukte heter <strong><a href="http://jak-linux.org/projects/hardlink/">hardlink</a></strong>.</p>
<p><code>
<pre>
$ mount /server         # forutsetter at denne er definert i /etc/fstab
$ cd /server/Bilder
$ hardlink -v -t .

Mode:     real
Files:    13999
Linked:   5850 files
Compared: 0 xattrs
Compared: 5863 files
Saved:    19.07 GiB
Duration: 1761.81 seconds
</pre>
<p></code></p>
<p>Opsjon <strong>-v</strong> skrur på verbose.<br />
Opsjon <strong>-t</strong> ignorerer endringstid på filene når verktøyet sammenligner filene. Dette er nødvendig for at den nye kopien av bildet skal kunne tolkes likt som det gamle bildet på den gamle lokasjonen.</p>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2019/06/18/deduplisering-av-filer-over-nettverk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modulbasert utvikling og arkitektur</title>
		<link>https://hovenko.no/blog/2018/01/30/modulbasert-utvikling-og-arkitektur/</link>
		<comments>https://hovenko.no/blog/2018/01/30/modulbasert-utvikling-og-arkitektur/#comments</comments>
		<pubDate>Tue, 30 Jan 2018 19:24:13 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[Arkitektur]]></category>
		<category><![CDATA[Jobb]]></category>
		<category><![CDATA[Teknologi]]></category>
		<category><![CDATA[arkitektur]]></category>
		<category><![CDATA[Programmering]]></category>
		<category><![CDATA[teknologi]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=621</guid>
		<description><![CDATA[IT-prosjekter handler ofte om å flytte og konvertere data mellom IT-systemer, i forskjellige presentasjonsformer og koble data fra flere datakilder. Når man kjører flere slike prosjekter samtidig og over lengre tid med betydelig antall ressurser blir det aktuelt å tenke litt større og legge en strategi for hvordan informasjon skal flyte og behandles på tvers [...]]]></description>
			<content:encoded><![CDATA[<p>IT-prosjekter handler ofte om å flytte og konvertere data mellom IT-systemer, i forskjellige presentasjonsformer og koble data fra flere datakilder.</p>
<p>Når man kjører flere slike prosjekter samtidig og over lengre tid med betydelig antall ressurser blir det aktuelt å tenke litt større og legge en strategi for hvordan informasjon skal flyte og behandles på tvers av organisasjonen.</p>
<p>Med modulbasert utvikling kan man utføre prosjekter med mange personer, gjerne delt i flere grupper. Det kan gjerne sees på som et bestiller- og leverandør-forhold, eller &#8220;klient og tjener&#8221;, hvor klienten definerer hva som forventes av den andre modulen å ta i mot og returnere av data og på hvilke formater utvekslingen skal foregå.</p>
<p>Moduler kan integreres i systemer via kompilatorlenking mot definerte grensesnitt, som funksjonssignaturer i et &#8220;interface&#8221; fra objektorientert programmering eller en &#8220;header&#8221;-fil, eller med meldinger som sendes på en meldingsbuss. Å binde seg til et definert grensesnitt har fordeler med at man kan få en kompilator til å sjekke gyldigheten av kontrakten, at man snakkes felles språk, men det gjør det vanskeligere dersom en av partene har andre behov og trenger å endre en funksjonssignatur.</p>
<p>Meldingsbasert integrasjon defineres på et høyere nivå enn ved funksjonssignaturer, for eksempel at grensesnittet bare definerer hvordan meldingen kan sendes og hvordan svaret kan mottas. Ulempen med meldingsbasert kommunikasjon er at det stiller høyere krav til validering, versjonering og bakoverkompatiblitet, siden en av partene kan oppgraderes til nyere versjon mens det finnes andre systemer som fremdeles <em>snakker det gamle språket</em>. Ved meldingsbasert kommunikasjon bør det skrives en spesifikasjon for formatet på meldingene, for eksempel i form av et XSD-skjemadokument dersom kommunikasjonen pakkes som XML-meldinger, eller Protocol Buffers hvis meldingene er mindre og tydelig definerte.</p>
<p>For enklere systemer holder det kanskje med et format på forespørsler ala: <tt>customer search 'ola normann'</tt> hvor &#8220;customer&#8221; kan være navnet på modulen, &#8220;search&#8221; kan være funksjonen i modulens grensesnitt og &#8220;ola normann&#8221; er parameteren til funksjonen. Responsen kan for eksempel være kolonne- og radbasert, som et regneark.<br />
Mange muligheter!</p>
<p>Internett kan sees på som et modulbasert system. Veldig forenklet så kan nettleseren, altså klienten i vårt tilfelle, sende en forespørsel mot en adresse eller filsti til en webserver, altså tjeneren, som kan svare med et HTML-dokument. Det ligger en kontrakt til grunn om et felles grensesnitt som gjør at denne kommunikasjonen fungerer, og en slik kontrakt er HTTP-spesifikasjonen. Det er mulig å basere internkommunikasjon i sitt modulbaserte system over HTTP med for eksempel SOAP, Corba, REST, Thrift, for å nevne noen teknikker. Denne type meldingsbasert kommunikasjon har noen svakheter, blant annet krever det ekstra dataprosessering for å oversette objekter og datastrukturer til og fra meldinger som kan sendes over HTTP. Dette er også dens store fordel, da modulene kan lager i forskjellige programmeringsspråk og kjøre på forskjellige plattformer.</p>
<p>For å oppnå en smidig integrasjon mellom modulene trengs det presis og hyppig koordinering på tvers av utviklingsgruppene. Man må ta et steg tilbake for å få et overblikk over systemet som helhet.</p>
<p><em>Dette er i hovedsak en liten rant jeg skrev i 2011, og jeg mener den fortsatt holder vann – men ta den gjerne med en klype salt…</em></p>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2018/01/30/modulbasert-utvikling-og-arkitektur/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Logitech Media Server on skinny Debian Jessie</title>
		<link>https://hovenko.no/blog/2016/08/29/logitech-media-server-on-skinny-debian-jessie/</link>
		<comments>https://hovenko.no/blog/2016/08/29/logitech-media-server-on-skinny-debian-jessie/#comments</comments>
		<pubDate>Mon, 29 Aug 2016 21:11:33 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[English-posts]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Teknologi]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Squeezebox]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=895</guid>
		<description><![CDATA[WAV/PCM files were not played by Logitech Media Server, with zero logging in /var/log/squeezeboxserver/server.log, on a tiny installation of Debian Jessie. I tried to tune log levels and found some tools lacking, such as &#8220;flac&#8221; and &#8220;lame&#8221;, but none of them fixed my problem, and still no explanation in the log files. But I found [...]]]></description>
			<content:encoded><![CDATA[<p>WAV/PCM files were not played by Logitech Media Server, with zero logging in <tt>/var/log/squeezeboxserver/server.log</tt>, on a tiny installation of Debian Jessie.</p>
<p>I tried to tune log levels and found some tools lacking, such as &#8220;flac&#8221; and &#8220;lame&#8221;, but none of them fixed my problem, and still no explanation in the log files.</p>
<p>But I found something in the logs that led me in the right direction:<br />
<code>
<pre>
[16-08-29 23:03:04.3358] Slim::Player::TranscodingHelper::enabledFormat (209) Checking to see if wav-flc-*-* is enabled
[16-08-29 23:03:04.3360] Slim::Player::TranscodingHelper::checkBin (250)    enabled
[16-08-29 23:03:04.3362] Slim::Player::TranscodingHelper::checkBin (252)   Found command: [flac] -cs --totally-silent --compression-level-0 $START$ $END$ -- $FILE$ | [sox] -q -t flac - -t flac -C 0 $RESAMPLE$ -
[16-08-29 23:03:04.3364] Slim::Player::TranscodingHelper::getConvertCommand2 (446) Matched: wav->flc via: [flac] -cs --totally-silent --compression-level-0 $START$ $END$ -- $FILE$ | [sox] -q -t flac - -t flac -C 0 $RESAMPLE$ -
</pre>
<p></code></p>
<p>I was missing the &#8220;sox&#8221; tool!<br />
So, I installed &#8220;sox&#8221;, and now the media server is properly encoding WAV/PCM audio files to FLAC (or something).</p>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2016/08/29/logitech-media-server-on-skinny-debian-jessie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Enter BIOS on Lenovo E31-70</title>
		<link>https://hovenko.no/blog/2016/02/03/enter-bios-on-lenovo-e31-70/</link>
		<comments>https://hovenko.no/blog/2016/02/03/enter-bios-on-lenovo-e31-70/#comments</comments>
		<pubDate>Wed, 03 Feb 2016 10:48:30 +0000</pubDate>
		<dc:creator>Knut-Olav</dc:creator>
				<category><![CDATA[English-posts]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Teknologi]]></category>
		<category><![CDATA[BIOS]]></category>
		<category><![CDATA[Lenovo]]></category>

		<guid isPermaLink="false">http://hovenko.no/blog/?p=893</guid>
		<description><![CDATA[To enter BIOS on a Lenovo E31-70, press down and hold Fn+F2 (because some time someone in the IT industry decided that nobody uses the F-buttons, so lets hide them behind a Fn-button combination&#8230; Ok, enough with the rant for this time). The first time I entered BIOS I was presented with some debug configuration [...]]]></description>
			<content:encoded><![CDATA[<p>To enter BIOS on a <a href="http://shop.lenovo.com/gb/en/laptops/lenovo/e-series/e31/">Lenovo E31-70</a>, press down and hold <strong>Fn+F2</strong> (because some time someone in the IT industry decided that nobody uses the F-buttons, so lets hide them behind a Fn-button combination&#8230; Ok, enough with the rant for this time).</p>
<p>The first time I entered BIOS I was presented with some debug configuration options, a DEBUG-section and other advanced features, but every time I enter the BIOS now I just get the standard options&#8230; I have absolutely NO IDEA WHAT-SO-EVER how I can get to those advanced options back!</p>
<p>Another thing, booting from a USB stick doesn&#8217;t seem to work, even after I disabled <a href="https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface">UEFI Secure Boot</a>. Might be the form factor of the USB stick, which has a contact that is a bit thinner than normal contacts, but it works on other computers I have. End-of-rant.</p>
]]></content:encoded>
			<wfw:commentRss>https://hovenko.no/blog/2016/02/03/enter-bios-on-lenovo-e31-70/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
