mstdn.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A general-purpose Mastodon server with a 500 character limit. All languages are welcome.

Administered by:

Server stats:

9.3K
active users

#MatthewFuller

0 posts0 participants0 posts today
Antranig Vartanian<p><strong>FreeBSD-Update and ~200 Jails</strong></p><p>Initially, when I heard about <code><a href="https://rustdate.over-yonder.net/" rel="nofollow noopener" target="_blank">freebsd-rustdate</a></code> I was very skeptical. I have a fear of “Written in &lt;new hip language&gt;”. I thought, however, I’ll wait, and when the time comes, I will try and see how it works.</p><p>For the last couple of days I’ve been updating hosts and jails for my customers and my company, and one of the best resources I found was the <a href="https://wiki.freebsd.org/FreeBSD_Update" rel="nofollow noopener" target="_blank">FreeBSD Update</a> page on FreeBSD’s Wiki, specially the “<a href="https://wiki.freebsd.org/FreeBSD_Update#freebsd-update_Reverse_Proxy_Cache" rel="nofollow noopener" target="_blank">freebsd-update Reverse Proxy Cache</a>” section. It has saved me hours when updating the hosts. For some hosts we even did an NFS mount of <code>/var/db/freebsd-update/files</code> directory.</p><p>But when it came to upgrading the jails, I realized that this is going to take a very long time. Each host has at least 15 jails, up to 50. There’s a host which has 100+ jails.</p><p>Upgrading all of them was going to take a <em>very, very long</em> time. So I ended up doing some research. Here were my options.</p><ul><li>Build FreeBSD once and run make install everywhere else using NFS and DESTDIR (I used to do this years ago)</li><li>Migrate to PkgBase (we’ve started doing this, but we’re not done yet, and it will take a while)</li><li>Nuke the Jails, start fresh, and just move the data (this could work, and I will do that in the future, but now I need to update ~200 jails in the coming 3 days)</li><li>Somehow, make <code>freebsd-update</code> run faster.</li></ul><p>As you have guessed, I went for the last option. Uncle <a href="https://people.freebsd.org/~dch/" rel="nofollow noopener" target="_blank">Dave</a> reminded me of <code>freebsd-rustdate</code> again, and I decided to give it a try. Even before starting, my good friend <a href="https://belltower.it/" rel="nofollow noopener" target="_blank">Daniel</a> wrote in our group chat:</p><blockquote><p>@dch my guy. You just saved me several hours per year of flipping back and forth between terminals waiting for the next part of a freebsd-update upgrades to finish running on a million systems.</p></blockquote><p>I arrived to my parent’s house, installed <code>freebsd-rustdate</code> on a host, and tested it on a single jail. Here is my initial reaction</p><blockquote><p>holy fuck freebsd-rustdate is fucking fast</p></blockquote><p>Like I said, I hate “rewrite in &lt;new hip language&gt;”, but clearly, this time it’s a winner.</p><p>And frankly speaking, my Jail manager, <a href="https://jailer.dev/" rel="nofollow noopener" target="_blank"><code>jailer</code></a>, does have the same problems that <code>freebsd-update</code> has. It’s much, much slower when you have to manage 100+ jails. I will, however, not rewrite it in another language (for now, and if I do, it will be in Oberon). Although I might end up spending some good amount of time optimizing it 🙂</p><p>Kudos to <a href="https://www.over-yonder.net/~fullermd/" rel="nofollow noopener" target="_blank">Matthew Fuller</a>, amazing work. And I have to mention, when I was thinking about moving to FreeBSD more than a decade ago, his rant <em>“<a href="https://www.over-yonder.net/~fullermd/rants/bsd4linux/01" rel="nofollow noopener" target="_blank">BSD for Linux Users</a>”</em> was the deciding factor for me, and I’ve been using FreeBSD ever since.</p><p><em>That’s all folks…</em></p><p>Reply via email.</p><p><a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://antranigv.am/tags/freebsd/" target="_blank">#FreeBSD</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://antranigv.am/tags/jailer/" target="_blank">#Jailer</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://antranigv.am/tags/matthew-fuller/" target="_blank">#MatthewFuller</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://antranigv.am/tags/oberon/" target="_blank">#Oberon</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://antranigv.am/tags/rust/" target="_blank">#Rust</a></p>
Thomas Dreher<p>I/O/D (Matthew Fuller, Colin Green, Simon Pope): Web Stalker, 1997, browser art (photo from the monitor, August 2000). More informations: Dreher, Thomas: History of Computer Art, chapter VI.3. Internet: <a href="http://iasl.uni-muenchen.de/links/GCA-VI.3e.html" target="_blank" rel="nofollow noopener" translate="no"><span class="invisible">http://</span><span class="ellipsis">iasl.uni-muenchen.de/links/GCA</span><span class="invisible">-VI.3e.html</span></a> <a href="https://mstdn.social/tags/MatthewFuller" class="mention hashtag" rel="tag">#<span>MatthewFuller</span></a> <a href="https://mstdn.social/tags/colingreen" class="mention hashtag" rel="tag">#<span>colingreen</span></a> <a href="https://mstdn.social/tags/simonpope" class="mention hashtag" rel="tag">#<span>simonpope</span></a> <a href="https://mstdn.social/tags/thomasdreher" class="mention hashtag" rel="tag">#<span>thomasdreher</span></a> <a href="https://mstdn.social/tags/webstalker" class="mention hashtag" rel="tag">#<span>webstalker</span></a> <a href="https://mstdn.social/tags/browserart" class="mention hashtag" rel="tag">#<span>browserart</span></a> <a href="https://mstdn.social/tags/netart" class="mention hashtag" rel="tag">#<span>netart</span></a> <a href="https://mstdn.social/tags/netartwork" class="mention hashtag" rel="tag">#<span>netartwork</span></a> <a href="https://mstdn.social/tags/digitalart" class="mention hashtag" rel="tag">#<span>digitalart</span></a> <a href="https://mstdn.social/tags/digitalartist" class="mention hashtag" rel="tag">#<span>digitalartist</span></a> <a href="https://mstdn.social/tags/digitalartists" class="mention hashtag" rel="tag">#<span>digitalartists</span></a> <a href="https://mstdn.social/tags/netartworks" class="mention hashtag" rel="tag">#<span>netartworks</span></a> <a href="https://mstdn.social/tags/netartprojects" class="mention hashtag" rel="tag">#<span>netartprojects</span></a> <a href="https://mstdn.social/tags/netartists" class="mention hashtag" rel="tag">#<span>netartists</span></a> <a href="https://mstdn.social/tags/webartist" class="mention hashtag" rel="tag">#<span>webartist</span></a> <a href="https://mstdn.social/tags/WebArtists" class="mention hashtag" rel="tag">#<span>WebArtists</span></a> <a href="https://mstdn.social/tags/computerart" class="mention hashtag" rel="tag">#<span>computerart</span></a> <a href="https://mstdn.social/tags/computerartist" class="mention hashtag" rel="tag">#<span>computerartist</span></a> <a href="https://mstdn.social/tags/computerartists" class="mention hashtag" rel="tag">#<span>computerartists</span></a> <a href="https://mstdn.social/tags/computerartwork" class="mention hashtag" rel="tag">#<span>computerartwork</span></a></p>