<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Linux on Michele Bologna</title>
    <link>https://www.michelebologna.net/categories/linux/</link>
    <description>Recent content in Linux on Michele Bologna</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Fri, 20 Nov 2020 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://www.michelebologna.net/categories/linux/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Encrypt an existing Linux installation with zero downtime (LUKS on LVM)</title>
      <link>https://www.michelebologna.net/2020/encrypt-an-existing-linux-installation-with-zero-downtime-luks-on-lvm/</link>
      <pubDate>Fri, 20 Nov 2020 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2020/encrypt-an-existing-linux-installation-with-zero-downtime-luks-on-lvm/</guid>
      <description>&lt;p&gt;During the bi-yearly review of my setup, I realized I was running a Linux machine without &lt;strong&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Disk_encryption#Full_disk_encryption&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;full disk encryption&lt;/a&gt;&lt;/strong&gt;. The encryption of the disk needed to be done ASAP, but I was not willing to reinstall the whole operating system to achieve that.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How a Terraform &#43; Salt &#43; Kubernetes GitOps infrastructure enabled a zero downtime hosting provider switch</title>
      <link>https://www.michelebologna.net/2020/how-a-terraform-salt-kubernetes-gitops-infrastructure-enabled-a-zero-downtime-hosting-provider-switch/</link>
      <pubDate>Sat, 25 Apr 2020 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2020/how-a-terraform-salt-kubernetes-gitops-infrastructure-enabled-a-zero-downtime-hosting-provider-switch/</guid>
      <description>&lt;h2 id=&#34;the-switch&#34;&gt;&#xA;  The switch&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#the-switch&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;It has been a busy weekend: I switched the hosting provider of my whole cloud infrastructure from &lt;a href=&#34;https://m.do.co/c/8d1614f882f8&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;DigitalOcean&lt;/strong&gt;&lt;/a&gt; to &lt;a href=&#34;https://hetzner.cloud/?ref=7UwSgYbEI1ef&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;Hetzner&lt;/strong&gt;&lt;/a&gt;. If you are reading this it means that the switch is completed and you are being served by the Hetzner cloud.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TLS-terminated Bitlbee with custom protocols</title>
      <link>https://www.michelebologna.net/2020/tls-terminated-bitlbee-with-custom-protocols/</link>
      <pubDate>Sat, 18 Apr 2020 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2020/tls-terminated-bitlbee-with-custom-protocols/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://github.com/mbologna/docker-bitlbee/commit/6695bafca40f285ad1794f500804ec2b14ebf114&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Five years ago&lt;/a&gt; I started a small GitHub project aimed to run &lt;a href=&#34;https://www.bitlbee.org&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;Bitlbee&lt;/strong&gt;&lt;/a&gt; seamlessly in a &lt;strong&gt;container&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Why Bitlbee?&lt;/p&gt;&#xA;&lt;p&gt;Back in the day, I was relying heavily on &lt;strong&gt;IRC&lt;/strong&gt; for my daily communications and the plethora of other protocols that were starting to get traction was too much: I wanted to have a bridge between my IRC client and the other protocols to be able to communicate only by using my IRC client without installing any resource consuming monster (enough said).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Startup order in Docker containers</title>
      <link>https://www.michelebologna.net/2019/startup-order-in-docker-containers/</link>
      <pubDate>Mon, 07 Oct 2019 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2019/startup-order-in-docker-containers/</guid>
      <description>&lt;h1 id=&#34;motivation&#34;&gt;&#xA;  Motivation&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#motivation&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;p&gt;I recently dealt with an application that is comprised of &lt;em&gt;multiple services&lt;/em&gt; running in containers. Even though every part of this application is correctly split into each separated microservice, the independence of each service is not enforced. This lack of independence has several drawbacks, one of which is that containers must be started by following a pre-defined startup order. Otherwise, some containers might be terminated due to an application error (the application breaks when an unexpected error occurs, e.g. it is relying on another linked service that is not ready to accept the connection).&lt;/p&gt;</description>
    </item>
    <item>
      <title>On servers timezone and tmux</title>
      <link>https://www.michelebologna.net/2019/on-servers-timezone-and-tmux/</link>
      <pubDate>Tue, 26 Mar 2019 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2019/on-servers-timezone-and-tmux/</guid>
      <description>&lt;p&gt;A while ago I was fighting with a timezone set on a server because of the &lt;a href=&#34;https://en.wikipedia.org/wiki/Daylight_saving_time&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;daylight saving time&lt;/a&gt; kicked in: during the &lt;em&gt;ghost hour&lt;/em&gt; I had troubles with finding automated jobs. Moreover, the &lt;a href=&#34;https://en.wikipedia.org/wiki/Daylight_saving_time_in_the_United_States&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;server was located overseas&lt;/a&gt; and depending on &lt;a href=&#34;https://en.wikipedia.org/wiki/Summer_Time_in_Europe#Italy,_San_Marino,_and_Vatican_City&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;when I was checking the remote date and time&lt;/a&gt;, I could get a different time delta.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Automatic (or unattended) upgrades in openSUSE, CentOS and Fedora, Debian and Ubuntu</title>
      <link>https://www.michelebologna.net/2019/automatic-or-unattended-upgrades-in-opensuse-centos-and-fedora-debian-and-ubuntu/</link>
      <pubDate>Tue, 05 Mar 2019 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2019/automatic-or-unattended-upgrades-in-opensuse-centos-and-fedora-debian-and-ubuntu/</guid>
      <description>&lt;p&gt;Each one of us is a system administrator: for at least your workstation (or notebook) you can decide when and how to administrate it. In the special case in which you are being elected to administer servers too, the matter becomes thorny: what is the workflow in terms of patching, time of reaction to security issues and, in general, when and how to install updates?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Send an email from a Docker container through an external MTA with ssmtp</title>
      <link>https://www.michelebologna.net/2019/send-an-email-from-a-docker-container/</link>
      <pubDate>Mon, 04 Feb 2019 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2019/send-an-email-from-a-docker-container/</guid>
      <description>&lt;p&gt;I packaged a standard application (think of it as a standard PHP or &lt;insert your preferred framework here&gt;) into a Docker container. So far, it was working flawlessly, but then a problem arose: &lt;em&gt;send an email from the Docker container&lt;/em&gt; (the event is triggered within the container).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux: using bind mount to move a subset of root subdirectories to another partion or disk</title>
      <link>https://www.michelebologna.net/2018/linux-using-bind-mount-to-move-a-subset-of-root-subdirectories-to-another-partion-or-disk/</link>
      <pubDate>Tue, 21 Aug 2018 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2018/linux-using-bind-mount-to-move-a-subset-of-root-subdirectories-to-another-partion-or-disk/</guid>
      <description>&lt;p&gt;I was in the situation dealing with a Linux box with two hard disks:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;/dev/sda&lt;/code&gt;: fast hard drive (SSD), small size (~200 GB)&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;/dev/sdb&lt;/code&gt;: very big hard drive (HDD), large size (~4 TB)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;The operating system was installed on &lt;code&gt;/dev/sda&lt;/code&gt;, so I had &lt;code&gt;/dev/sdb&lt;/code&gt; empty. I knew I could create a mount point (e.g. /storage) and mount it to &lt;code&gt;/dev/sdb&lt;/code&gt;, but after reading &lt;a href=&#34;https://www.debian.org/doc/manuals/securing-debian-manual/ch03s02.en.html#id-1.4.3.2&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Intelligent partitioning&lt;/a&gt; and the &lt;a href=&#34;https://www.debian.org/releases/jessie/amd64/apcs03.html.en&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;recommended Debian partitioning scheme&lt;/a&gt; I thought about moving:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Automatically add SSH keys to SSH agent with GNOME and macOS</title>
      <link>https://www.michelebologna.net/2018/automatically-add-ssh-keys-to-ssh-agent-running-in-gnome-and-macos/</link>
      <pubDate>Thu, 07 Jun 2018 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2018/automatically-add-ssh-keys-to-ssh-agent-running-in-gnome-and-macos/</guid>
      <description>&lt;p&gt;I am using &lt;a href=&#34;https://www.michelebologna.net/2009/come-impostare-ssh-in-modo-che-non-richieda-la-password-di-accesso-chiavi-asimmetriche-per-il-login/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;passwordless login via SSH&lt;/a&gt; on every box that I administer. Of course, my private SSH key is protected with a password that must be provided when accessing the key. Modern operating systems incorporate the usage of &lt;a href=&#34;https://en.wikipedia.org/wiki/Ssh-agent&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ssh-agent&lt;/a&gt; to &amp;ldquo;link&amp;rdquo; the user account to the SSH key(s), in order to unlock the SSH key as soon as the user is logged in. In this way, they avoid nagging the user asking for the SSH key password every time the key needs to be used. In my case, I am running &lt;em&gt;GNU/Linux with GNOME&lt;/em&gt; and &lt;em&gt;macOS&lt;/em&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Accessing remote libvirt on a non-standard SSH port via virt-manager</title>
      <link>https://www.michelebologna.net/2018/accessing-virt-manager-on-a-non-standard-ssh-port/</link>
      <pubDate>Tue, 15 May 2018 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2018/accessing-virt-manager-on-a-non-standard-ssh-port/</guid>
      <description>&lt;p&gt;Scenario: you are using a remote host as a virtualization host with libvirt and you want to manage it via ”Virtual machine manager” (&lt;code&gt;virt-manager&lt;/code&gt;) over SSH.&lt;/p&gt;&#xA;&lt;p&gt;But SSH is listening on a non-standard port, and &lt;code&gt;virt-manager&lt;/code&gt; does not offer you to connect to a remote libvirt instance on a non-standard port.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Automatically update your Docker base images with watchtower</title>
      <link>https://www.michelebologna.net/2018/automatically-update-your-docker-base-images-with-watchtower/</link>
      <pubDate>Fri, 09 Feb 2018 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2018/automatically-update-your-docker-base-images-with-watchtower/</guid>
      <description>&lt;p&gt;I’m an avid user of &lt;strong&gt;Docker&lt;/strong&gt; &lt;strong&gt;containers&lt;/strong&gt;, using base images pulled from the public registry &lt;strong&gt;DockedHub&lt;/strong&gt;. As you may know, Docker containers are based on Docked &lt;em&gt;base images&lt;/em&gt;, e.g. I run postgres containers that are based on Postgres base image.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Docker and containerd on openSUSE: reaching the limit for cgroup (and how to overcome it!)</title>
      <link>https://www.michelebologna.net/2017/docker-and-containerd-on-suseopensuse-reaching-the-limit-for-cgroup-and-how-to-overcome-it/</link>
      <pubDate>Thu, 08 Jun 2017 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2017/docker-and-containerd-on-suseopensuse-reaching-the-limit-for-cgroup-and-how-to-overcome-it/</guid>
      <description>&lt;p&gt;I recently encountered a limitation during an experiment I was conducting; after some trial and error, I recognized that the limitation was due to &lt;a href=&#34;https://en.wikipedia.org/wiki/Cgroups&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;cgroups&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;But let&amp;rsquo;s start from the beginning. I open sourced &lt;em&gt;&lt;a href=&#34;https://github.com/mbologna/docker-salt&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;docker-salt&lt;/a&gt;&lt;/em&gt;, a small pet project I had in mind in order to have a full blown setup for &lt;a href=&#34;https://saltstack.com/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;SaltStack&lt;/a&gt;: a master with an army of minions. Now for the fun part: what if I really start a hundred of minions on a server that has 16GB of RAM ready to be stressed with SaltStack?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Secure your SSH server against brute-force attacks with Fail2ban</title>
      <link>https://www.michelebologna.net/2017/secure-your-ssh-server-against-brute-force-attacks-with-fail2ban/</link>
      <pubDate>Mon, 05 Jun 2017 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2017/secure-your-ssh-server-against-brute-force-attacks-with-fail2ban/</guid>
      <description>&lt;h1 id=&#34;the-problem-ssh-can-be-brute-forced&#34;&gt;&#xA;  The problem: SSH can be brute-forced&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#the-problem-ssh-can-be-brute-forced&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;p&gt;I usually leave an SSH server on a dedicated port on every server I administer and, as you may recall, &lt;a href=&#34;https://www.michelebologna.net/2015/hardening-services-lets-review-our-config-files/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;I even linked two well-written guides to properly configure and harden SSH services&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenSUSE Leap 42.2: this is how I work (my setup)</title>
      <link>https://www.michelebologna.net/2017/opensuse-leap-42-2-this-is-how-i-work-my-setup/</link>
      <pubDate>Sat, 18 Mar 2017 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2017/opensuse-leap-42-2-this-is-how-i-work-my-setup/</guid>
      <description>&lt;h2 id=&#34;motivation&#34;&gt;&#xA;  Motivation&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#motivation&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;I switched my distribution of choice to OpenSUSE. There are a lot of motivations behind this choice:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;I wanted an enterprise-grade quality of software in terms of stability, package choice, and supportability&lt;/li&gt;&#xA;&lt;li&gt;Growing interest in software non-distribution specific and/or customized, e.g. &lt;a href=&#34;https://www.gnome.org/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Gnome&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Eating_your_own_dog_food&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Dogfooding&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;After nearly one year of usage, I can say that I am mostly satisfied with the setup I built.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenVPN with multiple configurations (TCP/UDP) on the same host (with systemd)</title>
      <link>https://www.michelebologna.net/2016/openvpn-with-multiple-configurations-on-the-same-host-with-systemd/</link>
      <pubDate>Sat, 09 Jul 2016 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2016/openvpn-with-multiple-configurations-on-the-same-host-with-systemd/</guid>
      <description>&lt;p&gt;As much more people are getting worried about their &lt;strong&gt;online privacy&lt;/strong&gt; (including me), &lt;a href=&#34;https://www.michelebologna.net/2015/12/workaround-for-openvpn-pam-authentication-broken-on-ubuntu-15-10/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;I started to use a server as a VPN termination (with OpenVPN)&lt;/a&gt; when I need to access the Internet via non-secure wired or wireless networks (e.g., hotel wireless network, airport Wi-Fi, etc.).&lt;/p&gt;</description>
    </item>
    <item>
      <title>PSA: this website now is TLS-enabled</title>
      <link>https://www.michelebologna.net/2016/psa-this-website-now-is-tls-enabled/</link>
      <pubDate>Sun, 01 May 2016 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2016/psa-this-website-now-is-tls-enabled/</guid>
      <description>&lt;p&gt;After some thinking, I decided to switch my current domain registrar and hoster: in fact, I stayed for 5 years with &lt;a href=&#34;http://netsons.org&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Netsons.org&lt;/a&gt; for domain registration and hosting. I had a very pleasant experience with them, I will recommend their hosting to everyone (it&amp;rsquo;s very cheap in the plethora of Italian super-expensive hosters).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Packaging software for Debian/Ubuntu: eclipse</title>
      <link>https://www.michelebologna.net/2016/packaging-software-for-debianubuntu-eclipse/</link>
      <pubDate>Wed, 20 Jan 2016 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2016/packaging-software-for-debianubuntu-eclipse/</guid>
      <description>&lt;p&gt;Eclipse is my (Java, Python, Ruby, XML, &amp;lt;insert any other text format here) editor of choice, and it has been for many years. One thing that bothers me is that &lt;a href=&#34;http://packages.ubuntu.com/wily/eclipse-jdt&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Eclipse package is outdated in Ubuntu&lt;/a&gt;: so, instead of using &lt;code&gt;apt&lt;/code&gt;, I should resort to download/unpack/copy/create links to install it. These days are finished, though.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Workaround for OpenVPN PAM authentication broken on Ubuntu 15.10</title>
      <link>https://www.michelebologna.net/2015/workaround-for-openvpn-pam-authentication-broken-on-ubuntu-15-10/</link>
      <pubDate>Sat, 05 Dec 2015 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2015/workaround-for-openvpn-pam-authentication-broken-on-ubuntu-15-10/</guid>
      <description>&lt;p&gt;After updating to Ubuntu 15.10 a box with an OpenVPN termination I am using to browse when I travel and use insecure networks, my VPN tunnel stops working. I am using, in this particular box, an OpenVPN server that relies on PAM plugin for authentication (and 2-step verification).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Getting started with cloud-init and CoreOS</title>
      <link>https://www.michelebologna.net/2015/getting-started-with-cloud-init-and-coreos/</link>
      <pubDate>Sun, 20 Sep 2015 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2015/getting-started-with-cloud-init-and-coreos/</guid>
      <description>&lt;p&gt;Lately I&amp;rsquo;ve been experimenting with &lt;a href=&#34;https://web.archive.org/web/20210209124335/https://coreos.com/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;CoreOS&lt;/strong&gt;&lt;/a&gt;, a Linux distribution that enforces containerization (I made some experiments with Docker and I&amp;rsquo;d say that this area is fun!). CoreOS layer of containerization &lt;strong&gt;was&lt;/strong&gt; based Docker, but now that they moved to &lt;a href=&#34;https://github.com/coreos/rkt&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Rocket&lt;/a&gt;. Not only Rocket, though: CoreOS brings some curious innovations to lightweight Linux distributions like &lt;em&gt;clusterization&lt;/em&gt; with &lt;a href=&#34;https://github.com/coreos/fleet&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;fleet&lt;/strong&gt;&lt;/a&gt; and &lt;em&gt;service discovery&lt;/em&gt; with &lt;a href=&#34;https://web.archive.org/web/20190531021446/https://coreos.com/etcd/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;etcd&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Playing with Docker: tips and tricks to write effective Dockerfiles</title>
      <link>https://www.michelebologna.net/2015/playing-with-docker-tips-and-tricks-to-write-effective-dockerfiles/</link>
      <pubDate>Wed, 01 Jul 2015 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2015/playing-with-docker-tips-and-tricks-to-write-effective-dockerfiles/</guid>
      <description>&lt;p&gt;Recently I have been playing with &lt;a href=&#34;https://www.docker.com/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Docker containers&lt;/a&gt;, and I am sure you already know what Docker is. In this post I will describe what I have learnt while using Docker containers and preparing Dockerfiles.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hardening services: let&#39;s review our config files</title>
      <link>https://www.michelebologna.net/2015/hardening-services-lets-review-our-config-files/</link>
      <pubDate>Sun, 28 Jun 2015 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2015/hardening-services-lets-review-our-config-files/</guid>
      <description>&lt;p&gt;It&amp;rsquo;s &lt;strong&gt;hardening&lt;/strong&gt; Sunday here: I reviewed the config files of my main daemons (&lt;em&gt;nginx, openvpn, tinc, sshd&lt;/em&gt;) with the help of two resources that I want to share with you, fellow readers.&lt;/p&gt;</description>
    </item>
    <item>
      <title>HP 6730b and fan at full speed after suspend (Fedora, Ubuntu, openSUSE)</title>
      <link>https://www.michelebologna.net/2015/hp-6730b-and-fan-at-full-speed-after-suspend-fedora-ubuntu-opensuse/</link>
      <pubDate>Thu, 25 Jun 2015 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2015/hp-6730b-and-fan-at-full-speed-after-suspend-fedora-ubuntu-opensuse/</guid>
      <description>&lt;p&gt;It seems that with kernels 3.9 onwards there are some issues with fan speed and the 6730b model of HP notebook. I tried with &lt;a href=&#34;https://bugzilla.redhat.com/show_bug.cgi?id=895276&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;Fedora 22 (my main distribution of choice)&lt;/strong&gt;&lt;/a&gt;, openSUSE Tumbleweed and &lt;a href=&#34;https://bugs.launchpad.net/ubuntu/&amp;#43;source/linux/&amp;#43;bug/1173997&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Ubuntu 15.04&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu rcS - variabili per modificare il comportamento degli script di boot</title>
      <link>https://www.michelebologna.net/2014/ubuntu-rcs-variabili-per-modificare-il-comportamento-degli-script-di-boot/</link>
      <pubDate>Mon, 01 Sep 2014 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2014/ubuntu-rcs-variabili-per-modificare-il-comportamento-degli-script-di-boot/</guid>
      <description>&lt;p&gt;Quando mi trovo a dover fare il setup di un nuovo server, cambio sempre una variabile nel file &lt;strong&gt;&lt;code&gt;/etc/default/rcS&lt;/code&gt;&lt;/strong&gt;, ovvero:&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;FSCKFIX=yes&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;che significa che, in caso di problemi durante il mount dei filesystem al boot, il sistema tenta &lt;em&gt;automaticamente&lt;/em&gt; di riparare il file-system, senza interrompere il processo di boot invocando la shell come avviene nel caso default (FCSFIX=no).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Xubuntu/XFCE: come avviare una sessione in VNC</title>
      <link>https://www.michelebologna.net/2014/xubuntuxfce-come-avviare-una-sessione-in-vnc/</link>
      <pubDate>Fri, 29 Aug 2014 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2014/xubuntuxfce-come-avviare-una-sessione-in-vnc/</guid>
      <description>&lt;p&gt;Di recente ho dovuto avviare una sessione VNC su una macchina remota; la mia preferenza per un &lt;a href=&#34;https://en.wikipedia.org/wiki/Desktop_environment&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;em&gt;desktop environment&lt;/em&gt;&lt;/a&gt; &amp;ldquo;light&amp;rdquo; ma al tempo stesso completo è andata su &lt;strong&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Xfce&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;XFCE&lt;/a&gt;&lt;/strong&gt; (installato di default su &lt;a href=&#34;https://xubuntu.org/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Xubuntu&lt;/a&gt;).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Installazione e configurazione di Logwatch su Ubuntu</title>
      <link>https://www.michelebologna.net/2013/installazione-e-configurazione-di-logwatch-su-ubuntu/</link>
      <pubDate>Wed, 08 May 2013 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2013/installazione-e-configurazione-di-logwatch-su-ubuntu/</guid>
      <description>&lt;p&gt;Nei server Linux che amministro ho recentemente installato un programma di monitoring dei logs: &lt;strong&gt;&lt;a href=&#34;https://sourceforge.net/projects/logwatch/files/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;logwatch&lt;/a&gt;&lt;/strong&gt;. Una questione importante ma abbastanza noiosa e per cui non si ha mai molto tempo è - appunto - quella dell&amp;rsquo;analisi dei log, una sorta di &amp;ldquo;diario&amp;rdquo; dell&amp;rsquo;attività svolta dal sistema. Spesso si ricerca nei logs solo quando insorge un problema: la proattività di logwatch, invece, ci permette di avere una sintesi di ciò che è successo e che merita la nostra attenzione direttamente via email.&lt;/p&gt;</description>
    </item>
    <item>
      <title>sshuttle: creiamo una VPN (via transparent proxy) con SSH</title>
      <link>https://www.michelebologna.net/2013/sshuttle-creiamo-una-vpn-via-transparent-proxy-con-ssh/</link>
      <pubDate>Sat, 23 Feb 2013 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2013/sshuttle-creiamo-una-vpn-via-transparent-proxy-con-ssh/</guid>
      <description>&lt;p&gt;In passato vi ho spiegato come creare &lt;a href=&#34;https://www.michelebologna.net/2008/09/come-creare-un-tunnel-ssh-dinamico-con-putty/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;un tunnel SSH per poter &amp;ldquo;tunnelizzare&amp;rdquo; il traffico Internet usando da tramite un server&lt;/a&gt; che esponeva il demone sshd. La &lt;em&gt;scomodità&lt;/em&gt; di questa soluzione risiede nell&amp;rsquo;ultimo passo: dobbiamo impostare un tunnel SOCKS per &lt;strong&gt;ogni&lt;/strong&gt; programma di cui vogliamo tunnelizzare il traffico. Ok, questo può non essere una scomodità vera e propria, tuttavia: per esempio, vogliamo tunnelizzare solo il traffico del browser [pensiamo di trovarci in una rete pubblica], mentre il traffico SSH [già cifrato] non ha bisogno di essere tunnelizzato.&lt;/p&gt;</description>
    </item>
    <item>
      <title>zsh: perché non utilizzo bash</title>
      <link>https://www.michelebologna.net/2012/zsh-perche-non-utilizzo-bash/</link>
      <pubDate>Sat, 08 Dec 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/zsh-perche-non-utilizzo-bash/</guid>
      <description>&lt;p&gt;Su tutte le macchine Linux e OSX che amministro non uso come shell di default la bash; uso invece &lt;strong&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Zsh&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;zsh&lt;/a&gt;&lt;/strong&gt;, perché:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;zsh si offre di completare anche le opzioni e i parametri dei programmi più usati;&lt;/li&gt;&#xA;&lt;li&gt;zsh fa spelling correction dei comandi digitati, chiedendo interattivamente se volete correggere il comando;&lt;/li&gt;&#xA;&lt;li&gt;zsh offre una customizzazione più spinta della bash (vedremo tra poco il mio prompt);&lt;/li&gt;&#xA;&lt;li&gt;zsh condivide la history tra più sessioni attive contemporaneamente;&lt;/li&gt;&#xA;&lt;li&gt;zsh è già installata, di default, su OSX (ed è nei repo di Ubuntu, percui basta un aptitude install zsh).&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Se questi vantaggi non dovrebbero bastare, ecco il mio prompt:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Installare ed utilizzare Mosh (mobile-shell) su Ubuntu e MacOSX</title>
      <link>https://www.michelebologna.net/2012/installare-ed-utilizzare-mosh-mobile-shell-su-ubuntu-e-macosx/</link>
      <pubDate>Fri, 08 Jun 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/installare-ed-utilizzare-mosh-mobile-shell-su-ubuntu-e-macosx/</guid>
      <description>&lt;p&gt;Per le sessioni semi-perpetue di ssh che contraddistinguono il mio setup, utilizzo una combinazione di &lt;em&gt;autossh&lt;/em&gt; e &lt;em&gt;tmux/screen&lt;/em&gt; (wrappato da &lt;em&gt;byobu&lt;/em&gt;). Ultimamente ho scoperto &lt;strong&gt;&lt;a href=&#34;https://mosh.org/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;mobile-shell&lt;/a&gt; (Mosh)&lt;/strong&gt;: proveniente dal MIT, si tratta di un ssh killer perché, a differenza di ssh:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Evitare riavvii e shutdown remoti su Ubuntu con molly-guard</title>
      <link>https://www.michelebologna.net/2012/evitare-riavvii-e-shutdown-remoti-su-ubuntu-con-molly-guard/</link>
      <pubDate>Sun, 27 May 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/evitare-riavvii-e-shutdown-remoti-su-ubuntu-con-molly-guard/</guid>
      <description>&lt;p&gt;Non mi è mai capitato ma potrebbe essere molto utile ai &lt;em&gt;sysadmin&lt;/em&gt; più distratti: &lt;strong&gt;molly-guard&lt;/strong&gt; è un pacchetto presente su Ubuntu/Debian che vi permette di evitare un riavvio/shutdown di una macchina remota a cui siete collegati tramite ssh.&lt;/p&gt;</description>
    </item>
    <item>
      <title>RescueTime: il modo migliore per visualizzare dove “spendiamo” il nostro tempo</title>
      <link>https://www.michelebologna.net/2012/rescuetime-il-modo-migliore-per-visualizzare-dove-spendiamo-il-nostro-tempo/</link>
      <pubDate>Mon, 23 Apr 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/rescuetime-il-modo-migliore-per-visualizzare-dove-spendiamo-il-nostro-tempo/</guid>
      <description>&lt;p&gt;Ricordarsi dove si &amp;ldquo;spende&amp;rdquo; la maggior parte del proprio tempo al computer è un&amp;rsquo;attività davvero difficile, soprattutto per chi con i computer ci lavora! Proprio per questo motivo ci viene in aiuto &lt;strong&gt;&lt;a href=&#34;https://www.rescuetime.com&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;RescueTime&lt;/a&gt;&lt;/strong&gt;: una volta installato vi verrà proposto di installare un programma che se ne starà in background e che monitorerà &lt;em&gt;non invasivamente&lt;/em&gt; quello che fate al vostro computer, per produrre poi un report delle attività che svolgete al vostro computer, contabilizzando le ore che spendete in ogni applicazione; il tutto, automaticamente!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Come mandare un segnale SIGINT (Ctrl-C) ad un programma che gira nella console di Eclipse</title>
      <link>https://www.michelebologna.net/2012/come-mandare-un-segnale-sigint-ctrl-c-ad-un-programma-che-gira-nella-console-di-eclipse/</link>
      <pubDate>Thu, 19 Apr 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/come-mandare-un-segnale-sigint-ctrl-c-ad-un-programma-che-gira-nella-console-di-eclipse/</guid>
      <description>&lt;p&gt;Quando si sviluppa un programma che deve girare ininterrottamente nella console, non ci sono problemi se si lancia il programma da console e lo si termina tramite la più classica delle combinazioni: Ctrl-C. Ma come si termina lo stesso programma se lo si è lanciato da Eclipse?&lt;/p&gt;</description>
    </item>
    <item>
      <title>proctools: (pgrep, pkill): gli strumenti per operare sui processi</title>
      <link>https://www.michelebologna.net/2012/proctools-pgrep-pkill-gli-strumenti-per-operare-sui-processi/</link>
      <pubDate>Wed, 11 Apr 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/proctools-pgrep-pkill-gli-strumenti-per-operare-sui-processi/</guid>
      <description>&lt;p&gt;Quando ci si trova davanti ad un terminale e si deve operare sui processi, si filtra l&amp;rsquo;output di &lt;code&gt;ps auxw&lt;/code&gt; con grep (ed eventualmente con kill). Ad esempio:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;michele@delta:~ % ps auxw | grep -i yes [ 6:20PM] michele 92888 8.7 0.0 2434788 372 s002 S+ 6:20PM 0:00.52 yes michele 92914 0.0 0.0 2425580 296 s005 R+ 6:20PM 0:00.00 grep -i yes&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ksplice: aggiornare il kernel di Ubuntu senza riavviare</title>
      <link>https://www.michelebologna.net/2012/ksplice-aggiornare-il-kernel-di-ubuntu-senza-riavviare/</link>
      <pubDate>Thu, 23 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/ksplice-aggiornare-il-kernel-di-ubuntu-senza-riavviare/</guid>
      <description>&lt;p&gt;Segnalo che con &lt;strong&gt;&lt;a href=&#34;https://www.ksplice.com/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Ksplice&lt;/a&gt;&lt;/strong&gt; (ora Oracle) è possibile applicare gli aggiornamenti di sicurezza (in particolare quelli del kernel) senza dover riavviare. Un&amp;rsquo;opportunità davvero interessante per tutti i server che devono mantenere un certo uptime e che, di conseguenza, non possono essere riavviati facilmente. Il servizio è disponibile a pagamento per le versioni di Ubuntu server, mentre è gratuito per le versioni desktop. Ecco come installarlo:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Munin e phpSysInfo: monitorare server remoti tramite un&amp;#8217;interfaccia web</title>
      <link>https://www.michelebologna.net/2012/munin-e-phpsysinfo-monitorare-server-remoti-tramite-uninterfaccia-web/</link>
      <pubDate>Mon, 30 Jan 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/munin-e-phpsysinfo-monitorare-server-remoti-tramite-uninterfaccia-web/</guid>
      <description>&lt;p&gt;Monitorare dei server remoti è un&amp;rsquo;attività che richiede tempo, capacità e gli strumenti corretti. Per monitorare quotidianamente alcuni server aziendali che amministro, ho recentemente scoperto due comodi strumenti a cui si accede tramite interfaccia web (e di conseguenza molto comodi): si tratta di &lt;a href=&#34;http://phpsysinfo.sourceforge.net/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;phpSysInfo&lt;/strong&gt;&lt;/a&gt; e di &lt;strong&gt;&lt;a href=&#34;http://munin-monitoring.org/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;munin&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu: esportare/importare la lista dei pacchetti installati</title>
      <link>https://www.michelebologna.net/2011/ubuntu-esportareimportare-la-lista-dei-pacchetti-installati/</link>
      <pubDate>Wed, 14 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/ubuntu-esportareimportare-la-lista-dei-pacchetti-installati/</guid>
      <description>&lt;p&gt;Il punto di forza di Ubuntu, è, tra gli altri, l&amp;rsquo;utilizzo del package manager di Debian: &lt;strong&gt;&lt;code&gt;apt-get&lt;/code&gt;&lt;/strong&gt; (e più in basso nello stack applicativo, di &lt;code&gt;dpkg&lt;/code&gt;); alcune volte realizzo un &lt;em&gt;setup&lt;/em&gt; (in termini di pacchetti) su una particolare box Ubuntu che vorrei poter esportare su un&amp;rsquo;altra box. In altre parole, vorrei generare una lista di tutti i pacchetti installati e installarli, automaticamente, su un&amp;rsquo;altra macchina.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu: avviare X senza uno schermo</title>
      <link>https://www.michelebologna.net/2011/ubuntu-avviare-x-senza-uno-schermo/</link>
      <pubDate>Mon, 16 May 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/ubuntu-avviare-x-senza-uno-schermo/</guid>
      <description>&lt;p&gt;Mi è capitato di dover gestire una macchina con Xubuntu (ma questa soluzione si applica a tutte le *Ubuntu) che doveva essere utilizzata da remoto (tramite TeamViewer) e senza uno schermo attaccato.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Creare un panorama &#34;incollando&#34; più foto tra di loro con Hugin</title>
      <link>https://www.michelebologna.net/2011/creare-un-panorama-incollando-piu-foto-tra-di-loro-con-hugin/</link>
      <pubDate>Tue, 10 May 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/creare-un-panorama-incollando-piu-foto-tra-di-loro-con-hugin/</guid>
      <description>&lt;p&gt;Le foto ad alta risoluzione ed incollate fra loro mi hanno sempre affascinato ed incuriosito: come possono essere prodotte con una semplice fotocamera tascabile? Ebbene, dopo varie ricerche ed aver provato diversi software, sono arrivato allo zen della composizione di foto. Innanzitutto, partiamo dal prodotto finale. Quella che vedete qui sotto è una vista panoramica di quello che si può ammirare dalla torre Eiffel, a Parigi: ho ottenuto questa vista incollando tra loro 6 fotografie, ottenute con una fotocamera digitale comune, senza un treppiede e senza apparecchiatura specialistica.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu: l&#39;aggiornamento a 11.04 corrompe grub. Ecco come risolvere</title>
      <link>https://www.michelebologna.net/2011/ubuntu-laggiornamento-a-11-04-corrompe-grub-ecco-come-risolvere/</link>
      <pubDate>Sat, 30 Apr 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/ubuntu-laggiornamento-a-11-04-corrompe-grub-ecco-come-risolvere/</guid>
      <description>&lt;p&gt;Il 28/04, incuriosito dalla nuova release di Ubuntu (11.04) ho subito aggiornato dalla versione 10.10 usando la funzionalità di aggiornamento integrata nel sistema.&lt;/p&gt;&#xA;&lt;p&gt;Tuttavia, con mia grande sorpresa, l&amp;rsquo;aggiornamento corrompe la configurazione di grub, lasciando il sistema in uno stato inavviabile (in particolare, il sistema si arresta sulla schermata di &lt;strong&gt;grub&lt;/strong&gt; prima del boot); e sembra che sia &lt;a href=&#34;https://ubuntuforums.org/showthread.php?t=1742975&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;un problema generalizzato&lt;/a&gt;! Non tutto è perduto: il problema deriva da un&amp;rsquo;errata configurazione di grub prodotta dalla procedura di aggiornamento, ma possiamo recuperare il sistema senza dover reinstallare. Per risolvere il problema, procediamo nel seguente modo:&lt;/p&gt;</description>
    </item>
    <item>
      <title>I componenti certificati per Ubuntu</title>
      <link>https://www.michelebologna.net/2011/i-componenti-certificati-per-ubuntu/</link>
      <pubDate>Thu, 14 Apr 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/i-componenti-certificati-per-ubuntu/</guid>
      <description>&lt;p&gt;Ora, anche per Ubuntu, esistono componenti hardware certificati:&lt;a href=&#34;https://www.michelebologna.net/images/2011/03/designed_for_ubuntu.jpg.png&#34; &gt;&lt;img src=&#34;https://www.michelebologna.net/images/2011/03/designed_for_ubuntu.jpg.png&#34; alt=&#34;&#34; title=&#34;designed_for_ubuntu.jpg&#34;&gt;&lt;/a&gt; li trovate nel catalogo &lt;a href=&#34;https://certification.ubuntu.com&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Ubuntu-certified hardware&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Prima di acquistare dei componenti per un nuovo PC, quindi, verificate sul catalogo. A quando i primi PC con lo sticker &amp;ldquo;Designed for Ubuntu&amp;rdquo;?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux: monitorare i consumi energetici</title>
      <link>https://www.michelebologna.net/2011/linux-monitorare-i-consumi-energetici/</link>
      <pubDate>Tue, 29 Mar 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/linux-monitorare-i-consumi-energetici/</guid>
      <description>&lt;p&gt;Dopo aver parlato dei &lt;a href=&#34;https://www.michelebologna.net/2010/06/windows-7-generare-un-report-dei-consumi-energetici/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;consumi energetici di Windows 7 e di come tenerli sotto controllo&lt;/a&gt;, vorrei oggi illustrarvi le potenzialità di &lt;strong&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/PowerTOP&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;PowerTOP&lt;/a&gt;&lt;/strong&gt;, un utility per Linux (e Solaris) per monitorare i consumi energetici della Linux box su cui è installato. PowerTOP, infatti, analizza i programmi in esecuzione, i drivers e altre variabili (es. il polling del CD-ROM) per identificare i problemi (programmi, opzioni del kernel e non, etc.) che causano un consumo energetico eccessivo (in particolare, un numero eccessivo di &lt;em&gt;wakeups&lt;/em&gt; della CPU che impediscono di entrare negli sleep states della CPU).&lt;/p&gt;</description>
    </item>
    <item>
      <title>VMWare Fusion e Ubuntu: risoluzione dello schermo fissa a 1280x720. Ecco come risolvere la situazione</title>
      <link>https://www.michelebologna.net/2011/vmware-fusion-e-ubuntu-risoluzione-dello-schermo-fissa-a-1280x720-ecco-come-risolvere-la-situazione/</link>
      <pubDate>Tue, 22 Mar 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/vmware-fusion-e-ubuntu-risoluzione-dello-schermo-fissa-a-1280x720-ecco-come-risolvere-la-situazione/</guid>
      <description>&lt;p&gt;Dopo aver aggiornato la macchina virtuale con Ubuntu 10.10 in VMWare Fusion, mi sono trovato impossibilitato a selezionare una risoluzione superiore a 1280x720.&lt;/p&gt;&#xA;&lt;p&gt;Anche dopo aver reinstallato i VMWare Tools, la risoluzione disponibile era sempre bloccata a 1280x720. Dopo aver fatto qualche ricerca nei log, ho trovato alcuni messaggi che evidenziavano il problema: &lt;code&gt;could not apply the stored configuration for monitors Xserver does not support size requested VESA(0): Unable to estimate virtual size VESA(0): Not using built-in mode &amp;quot;2048x1536&amp;quot; (no mode of this name) VESA(0): Not using built-in mode &amp;quot;1920x1440&amp;quot; (no mode of this name) VESA(0): No valid modes left. Trying less strict filter... VESA(0): : Using hsync range of 31.50-37.90 kHz VESA(0): : Using vrefresh range of 50.00-70.00 Hz VESA(0): Unable to estimate virtual size VESA(0): Not using built-in mode &amp;quot;2048x1536&amp;quot; (hsync out of range) VESA(0): Not using built-in mode &amp;quot;1920x1440&amp;quot; (hsync out of range) VESA(0): Virtual size is 1280x720 (pitch 1280)&lt;/code&gt; Il problema risiede nella configurazione e nel rilevamento della risoluzione dello schermo; il pacchetto incriminato è quindi &lt;strong&gt;xserver-xorg-video-vmware&lt;/strong&gt;. Per risolvere è sufficiente aprire un terminale e digitare:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Come mantenere attiva una sessione SSH (keepalive)</title>
      <link>https://www.michelebologna.net/2010/come-mantenere-attiva-una-sessione-ssh-keepalive/</link>
      <pubDate>Wed, 09 Jun 2010 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2010/come-mantenere-attiva-una-sessione-ssh-keepalive/</guid>
      <description>&lt;p&gt;Quando ci connettiamo tramite ssh ad un server remoto, nella maggior parte dei casi la connessione viene terminata dopo un periodo di inattività (&lt;strong&gt;idle&lt;/strong&gt;), e siamo quindi costretti a &lt;strong&gt;riconnetterci&lt;/strong&gt; al server.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu: come convertire il file-system ext3 in ext4 [non-root fs]</title>
      <link>https://www.michelebologna.net/2010/ubuntu-come-convertire-il-file-system-ext3-in-ext4-non-root-fs/</link>
      <pubDate>Mon, 31 May 2010 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2010/ubuntu-come-convertire-il-file-system-ext3-in-ext4-non-root-fs/</guid>
      <description>&lt;p&gt;Con l’uscita della nuova versione di &lt;strong&gt;Ubuntu&lt;/strong&gt; ho deciso di convertire i file-system che (ahimé) avevo ancora in ext3 a &lt;strong&gt;ext4&lt;/strong&gt;, per guadagnarne in &lt;a href=&#34;https://www.phoronix.com/scan.php?page=article&amp;amp;item=ext4_benchmarks&amp;amp;num=9&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;performance ed affidabilità&lt;/a&gt; senza però formattare la partizione (e perdere i miei dati).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Trenitalia e Viaggiatreno: come implementare un servizio &#34;fai da te&#34; per avere le informazioni dello stato di un treno via SMS</title>
      <link>https://www.michelebologna.net/2010/trenitalia-e-viaggiatreno-come-implementare-un-servizio-fai-da-te-per-avere-le-informazioni-dello-stato-di-un-treno-via-sms/</link>
      <pubDate>Fri, 21 May 2010 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2010/trenitalia-e-viaggiatreno-come-implementare-un-servizio-fai-da-te-per-avere-le-informazioni-dello-stato-di-un-treno-via-sms/</guid>
      <description>&lt;p&gt;Da quando sono diventato un pendolare (per lavoro), ho iniziato a (ri)frequentare assiduamente le stazioni &lt;strong&gt;ferroviarie&lt;/strong&gt; e i treni di &lt;strong&gt;Trenitalia&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.flickr.com/photos/23681443@N05/4611971337/&#34; title=&#34;station.&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://farm5.static.flickr.com/4051/4611971337_4d468f8f49_t.jpg&#34; alt=&#34;station.&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Dopo un paio di settimane passate sui treni, mi sono accorto di un servizio interessante: il sito &lt;strong&gt;&lt;a href=&#34;http://www.viaggiatreno.it&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Viaggiatreno&lt;/a&gt;: il sito contiene le informazioni sui treni (informazioni in tempo reale sullo stato di un treno come ritardo o anticipo, ora prevista di arrivo e fermate già effettuate).&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Cheese: un&#39;applicazione per fare fotografia con la webcam per Ubuntu [un clone di Photo Booth]</title>
      <link>https://www.michelebologna.net/2010/cheese-unapplicazione-per-fare-fotografia-con-la-webcam-per-ubuntu-un-clone-di-photo-booth/</link>
      <pubDate>Tue, 12 Jan 2010 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2010/cheese-unapplicazione-per-fare-fotografia-con-la-webcam-per-ubuntu-un-clone-di-photo-booth/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.michelebologna.net/images/2009/11/image.png&#34; &gt;&lt;img src=&#34;https://www.michelebologna.net/images/2009/11/image_thumb.png&#34; alt=&#34;image&#34; title=&#34;image&#34;&gt;&lt;/a&gt;Se state cercando un’alternativa a Photo Booth, il popolare software di Apple per scattare fotografie tramite la webcam del proprio computer, allora dovreste considerare &lt;a href=&#34;https://projects.gnome.org/cheese/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Cheese&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Si tratta di un programma molto semplice: una volta aperto, mostra l’immagine della webcam e vi permette di scattare una foto. Inoltre, è possibile applicare alcuni effetti “simpatici” [le foto sono degli sviluppatori di Gnome/Cheese].&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu: Apache2 con certificati self-signed e senza password all&amp;rsquo;avvio</title>
      <link>https://www.michelebologna.net/2009/ubuntu-apache2-con-certificati-self-signed-e-senza-password-allavvio/</link>
      <pubDate>Wed, 16 Dec 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/ubuntu-apache2-con-certificati-self-signed-e-senza-password-allavvio/</guid>
      <description>&lt;p&gt;Recentemente mi è capitato di dover installare apache [in particolare, apache2] su una macchina Ubuntu. In particolare, mi è stato chiesto di installare la versione con ssl, ovvero che implementa il protocollo cifrato &lt;strong&gt;https&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Come impostare ssh in modo che non richieda la password di accesso (chiavi asimmetriche per il login)</title>
      <link>https://www.michelebologna.net/2009/come-impostare-ssh-in-modo-che-non-richieda-la-password-di-accesso-chiavi-asimmetriche-per-il-login/</link>
      <pubDate>Tue, 24 Nov 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/come-impostare-ssh-in-modo-che-non-richieda-la-password-di-accesso-chiavi-asimmetriche-per-il-login/</guid>
      <description>&lt;p&gt;Alcuni client ssh permettono di definire &amp;ldquo;sessioni salvate&amp;rdquo; di connessioni in modo che username e password vengano salvati e non vengano richiesti ad ogni connessione verso un host. Trovo che permettere all&amp;rsquo;utente di poter salvare la password sia profondamente &lt;em&gt;sbagliato&lt;/em&gt; dal punto di vista della security, soprattutto se l&amp;rsquo;utente ha privilegi non indifferenti sulla macchina remota [ad esempio è nei sudoers].&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu e Debian: come aggiornare automaticamente i pacchetti installati (unattended-upgrades)</title>
      <link>https://www.michelebologna.net/2009/ubuntu-e-debian-come-aggiornare-automaticamente-i-pacchetti-installati-unattended-upgrades/</link>
      <pubDate>Wed, 07 Oct 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/ubuntu-e-debian-come-aggiornare-automaticamente-i-pacchetti-installati-unattended-upgrades/</guid>
      <description>&lt;p&gt;Nella vita di un sistemista esiste un task piuttosto ripetitivo: ovvero quello di aggiornare i pacchetti (= gli applicativi) installati sul proprio sistema (vuoi perché le versioni recenti dello stesso software &lt;a href=&#34;https://web.archive.org/web/20110508153324/http://www.microsoft.com/windows/windows-vista/default.aspx&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;em&gt;dovrebbero&lt;/em&gt;&lt;/a&gt; essere migliori, più performanti e al riparo dagli ultimi bug di security, etc.).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Come impostare il pinning (non aggiornare, ovvero mantenere la versione attuale) di un pacchetto su Ubuntu/Debian</title>
      <link>https://www.michelebologna.net/2009/come-impostare-il-pinning-non-aggiornare-ovvero-mantenere-la-versione-attuale-di-un-pacchetto-su-ubuntudebian/</link>
      <pubDate>Tue, 15 Sep 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/come-impostare-il-pinning-non-aggiornare-ovvero-mantenere-la-versione-attuale-di-un-pacchetto-su-ubuntudebian/</guid>
      <description>&lt;p&gt;A volte può capitare che su certe macchine Ubuntu (o Debian) alcuni pacchetti &lt;em&gt;importanti&lt;/em&gt; non debbano essere aggiornati dal gestore di pacchetti (apt-get o aptitude). Le ragioni possono essere le più svariate: incompatibilità, volontà di tenere la versione corrente (!), aggiornamento manuale, etc.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gentoo: creare una lista dei pacchetti e delle applicazioni installate</title>
      <link>https://www.michelebologna.net/2009/gentoo-creare-una-lista-dei-pacchetti-e-delle-applicazioni-installate/</link>
      <pubDate>Sun, 06 Sep 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/gentoo-creare-una-lista-dei-pacchetti-e-delle-applicazioni-installate/</guid>
      <description>&lt;p&gt;Per chi utilizza Gentoo Linux e vuole conoscere quali pacchetti (e quindi quali applicazioni) sono installate basta semplicemente installare &lt;strong&gt;gentoolkit&lt;/strong&gt; (emerge app-portage/gentoolkit) e poi utilizzare &lt;code&gt;**equery list**&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Come fare il resume di un trasferimento fatto con scp</title>
      <link>https://www.michelebologna.net/2009/come-fare-il-resume-di-un-trasferimento-fatto-con-scp/</link>
      <pubDate>Mon, 24 Aug 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/come-fare-il-resume-di-un-trasferimento-fatto-con-scp/</guid>
      <description>&lt;p&gt;Per quanto riguarda i trasferimenti di files tra servers UNIX, &lt;strong&gt;scp&lt;/strong&gt; è la soluzione ottimale: non richiede di aprire porte (ok, oltre a quella di ssh, ma chi non lo usa oggigiorno?), è sicuro e soprattutto è veloce.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
