Well, that's all for today. I think so. You can never be sure.
One project I've worked on at Nebula is a Python module for remote configuration of server hardware. You can find it here, but there's a few caveats:
So I started migrating some of my LXCs to Jessie, to test the
migration in advance. The upgrade itself was easy (the LXC is
mostly empty and only runs radicale), but after the upgrade I
couldn't login anymore (using lxc-console since I don't have
lxc-attach, the host is on Wheezy). So this is mostly a note to
self.
auth.log was showing:
Mar 25 22:10:13 lxc-sync login[1033]: pam_loginuid(login:session): Cannot open /proc/self/loginuid: Read-only file system Mar 25 22:10:13 lxc-sync login[1033]: pam_loginuid(login:session): set_loginuid failed Mar 25 22:10:13 lxc-sync login[1033]: pam_unix(login:session): session opened for user root by LOGIN(uid=0) Mar 25 22:10:13 lxc-sync login[1033]: Cannot make/remove an entry for the specified sessionThe last message isn't too useful, but the first one gave the answer. Since LXC isn't really ready for security stuff, I have some hardening on top of that, and one measure is to not have rw access to /proc. I don't really need pam_loginuid there, so I just disabled that. I just need to remember to do that after each LXC upgrade. Other than that, I have to boot using SystemV init, since apparently systemd doesn't cope too well with the various restrictions I enforce on my LXCs:
lxc-start -n sync Failed to mount sysfs at /sys: Operation not permitted(which is expected, since I drop CAP_SYS_ADMIN from my LXCs). I didn't yet investigate how to stop systemd doing that, so for now I'm falling back to SystemV init until I find the correct customization:
lxc-start -n sync /lib/sysvinit/init INIT: version 2.88 booting [info] Using makefile-style concurrent boot in runlevel S. hostname: you must be root to change the host name mount: permission denied mount: permission denied [FAIL] udev requires a mounted sysfs, not started ... failed! failed! mount: permission denied [info] Setting the system clock. hwclock: Cannot access the Hardware Clock via any known method. hwclock: Use the --debug option to see the details of our search for an access method. [warn] Unable to set System Clock to: Wed Mar 25 21:21:43 UTC 2015 ... (warning). [ ok ] Activating swap...done. mount: permission denied mount: permission denied mount: permission denied mount: permission denied [ ok ] Activating lvm and md swap...done. [....] Checking file systems...fsck from util-linux 2.25.2 done. [ ok ] Cleaning up temporary files... /tmp. [ ok ] Mounting local filesystems...done. [ ok ] Activating swapfile swap...done. mount: permission denied mount: permission denied [ ok ] Cleaning up temporary files.... [ ok ] Setting kernel variables ...done. [....] Configuring network interfaces...RTNETLINK answers: Operation not permitted Failed to bring up lo. done. [ ok ] Cleaning up temporary files.... [FAIL] startpar: service(s) returned failure: hostname.sh udev ... failed! INIT: Entering runlevel: 2 [info] Using makefile-style concurrent boot in runlevel 2. dmesg: read kernel buffer failed: Operation not permitted [ ok ] Starting Radicale CalDAV server : radicale.
https://www.google.com/calendar/ical/person%40gmail.com/private-12341234123412341234123412341234/basic.ics
After doing that, I noticed that the fan in my laptop was on more often than
usual, and I noticed that akonadi-server and postgres were running very often,
and doing quite a lot of processing.
The evil
I investigated and realised that Google
seems to be doing everything they can to make their ical feeds hard to sync
against efficiently. This is the list of what I have observed Gmail doing to an
unchanged ical feed:
Date: headers in HTTP replies are always nowIf-Modified-Since: is not supportedDTSTAMP of each element is always nowVTIMEZONE entries appear in random orderORGANIZER CN entries randomly change between full name and plus.google.com
user IDATTENDEE entries randomly change between having a CN or not having itTRIGGER entries change spontaneouslyCREATED entries change spontaneously.ics feed has actually changed.
Have a look at the script:
I consider it far from trivial, since it needs to do a partial parsing of the
.ics feed to throw away all the nondeterminism that Google pollutes it with.
The setup
The script needs to be run periodically, and I used it as an opportunity to
try
systemd
user
timers:
$ cat ~/.config/systemd/user/update-ical-feeds.timer
[Unit]
Description=Updates ical feeds every hour
# Only run when on AC power
ConditionACPower=yes
[Timer]
# Run every hour
OnActiveSec=1h
# Run a minute after boot
OnBootSec=1m
Unit=update-ical-feeds.service
$ cat ~/.config/systemd/user/update-ical-feeds.service
[Unit]
Description=Update ICal feeds
[Service]
# Use oneshot to prevent two updates being run in case the previous one
# runs for more time than the timer interval
Type=oneshot
ExecStart=/home/enrico/tmp/calendars/update
$ systemctl --user start update-ical-feeds.timer
$ systemctl --user list-timers
NEXT LEFT LAST PASSED UNIT ACTIVATES
Wed 2015-03-25 22:19:54 CET 59min left Wed 2015-03-25 21:19:54 CET 2s ago update-ical-feeds.timer update-ical-feeds.service
1 timers listed.
Pass --all to see loaded but inactive timers, too.
To reload the configuration after editing: systemctl --user daemon-reload.
Further investigation
I wonder if ConditionACPower needs to be in the .timer or in the
.service, since there is a [Unit] section is in both. Update: I have
been told it can be in the .timer.
I also wonder if there is a way to have the timer trigger only when online.
There is a network-online.target and I do not know if it is applicable. I
also do not know how to ask systemd if all the preconditions are currently met
for a .service/.timer to run.
Finally, I especially wonder if it is worth hoping that Google will ever make
their .ics feeds play nicely with calendar clients.
We are very pleased to announce that HP has committed support of DebConf15 as Platinum sponsor.
"The hLinux team is pleased to continue HP's long tradition of
supporting Debian and DebConf," said Steve Geary, Senior Director at
Hewlett-Packard.
Hewlett-Packard is one of the largest computer companies in the
world, providing a wide range of products and services, such as
servers, PCs, printers, storage products, network equipment, software,
cloud computing solutions, etc.
Hewlett-Packard has been a long-term development partner of Debian, and provides hardware for port development, Debian mirrors, and other Debian services
(HP hardware donations are listed in the Debian machines page).
With this additional commitment as Platinum Sponsor, HP contributes to make possible our annual conference,
and directly supports the progress of Debian and Free Software, helping to strengthen the community who continue to collaborate on their
Debian projects throughout the rest of the year.
Thank you very much, Hewlett-Packard, for your support of DebConf15!
Become a sponsor too!
DebConf15 is still accepting sponsors. Interested companies and organizations may contact the DebConf team through sponsors@debconf.org, and
visit the DebConf15 website at http://debconf15.debconf.org.
I follow a few blog aggregators (or "planets") and it's always a struggle to
keep up with the amount of posts that some of these get. The best strategy I
have found so far to is to filter them so that I remove the blogs I am not
interested in, which is why I wrote
PlanetFilter.
So I started by looking for
another approach and by asking people around me how they dealt with the
firehoses that are Planet Debian and
Planet Mozilla.
It seems like a lot of people choose to "randomly sample" planet feeds and
only read a fraction of the posts that are sent through there. Personally
however, I find there are a lot of authors whose posts I never want to
miss so this option doesn't work for me.
A better option that other people have suggested is to avoid
subscribing to the planet feeds, but rather to subscribe to each of the
author feeds separately and prune them as you go. Unfortunately, this
whitelist approach is a high maintenance one since planets constantly add
and remove feeds. I decided that I wanted to follow a blacklist approach
instead.
/etc/planetfilter.d/ and
outputs filtered feeds in /var/cache/planetfilter/.
You can either:
file:///var/cache/planetfilter/planetname.xml to your local feed readerhttp://localhost/planetname.xml) using a
webserver, or[feed]
url = http://planet.debian.org/atom.xml
[blacklist]
[blacklist]
authors =
Alice Jones
John Doe
and the other one is by title:
[blacklist]
titles =
This week in review
Wednesday meeting for
In both cases, if a blog entry contains one of the blacklisted authors or
titles, it will be discarded from the generated feed.
/etc/polipo/config:
proxyAddress = "127.0.0.1"
proxyPort = 8008
allowedClients = 127.0.0.1
allowedPorts = 1-65535
proxyName = "localhost"
cacheIsShared = false
socksParentProxy = "localhost:9050"
socksProxyType = socks5
chunkHighMark = 67108864
diskCacheRoot = ""
localDocumentRoot = ""
disableLocalInterface = true
disableConfiguration = true
dnsQueryIPv6 = no
dnsUseGethostbyname = yes
disableVia = true
censoredHeaders = from,accept-language,x-pad,link
censorReferer = maybe
/etc/default/planetfilter:
export http_proxy="localhost:8008"
export https_proxy="localhost:8008"
| Toshiba Z30-B | 1.2-1.34kg | 16GB | 13.3 | 1920 1080 |
| Fujitsu Lifebook S935 | 1.24-1.36kg | 12GB | 13.3 | 1920 1080 |
| HP EliteBook 820 G2 | 1.34-1.52kg | 16GB | 12.5 | 1920 1080 |
| Dell Latitude E7250 | 1.25kg | 8/16GB? | 12.5 | 1366 768 |
| Lenovo X250 | 1.42kg | 8GB | 12.5 | 1366 768 |
~ gem update ctioga2The website has also been decently improved, with now a search box for finding images in the gallery
The Debian Project will celebrate its 22nd birthday during DebConf15 in Heidelberg in August 2015.
At this age, it s unsurprising that children of Debian contributors have attended our
developer conference for several years.
Going with the times, we would like to work further towards making DebConf15 a
child-friendly (parents-friendly) conference. The conference venue is far away
from traffic, self-contained, and there is a dedicated children s play room.
There are green areas around, and the Heidelberg Zoo
is literally within sight of the venue. We haven t yet discussed deals with
them, but we could.
In short: if you d like to attend DebConf, but you are yet unsure what to do
with your children bring your kids along!
The hostel has a number of 3 and 4 bed-rooms with en-suite bathrooms, plus a
good supply of cots available for the very little ones. We will allocate such
rooms to families exclusively for your privacy (subject to availability, so
please register
yourself ASAP, and include a note about your kids).
We are maintaining answers to
commonly-asked questions on the wiki. Please let us know if anything is
missing, and feel free to update the page yourself.
We would also like to explore additional possibilities to make it easier for
parents to participate in the conference. At the moment, we re still scouting
for ideas and there are already a number of promising leads.
To help us figure out what we d best offer, we need to know about the demand.
If you are planning to bring your children, or if you re thinking about it,
please drop a short note with number and ages and any other relevant
information to kids@debconf.org.
Your mail will be read by a few parents involved in the organisation of
DebConf15 and we will obviously keep your data private.
We also created a (publicly archived) mailing list to discuss options and keep
people updated on our plans. Please subscribe yourself to the
list, if interested, and feel free to write to debconf-kids@lists.debian.org
with any questions or ideas you might have.
| Author: | David Lochbaum |
| Author: | Edwin Lyman |
| Author: | Susan Q. Stranahan |
| Author: | Union of Concerned Scientists |
| Publisher: | The New Press |
| Copyright: | 2014 |
| ISBN: | 1-59558-927-9 |
| Format: | Kindle |
| Pages: | 320 |
Unverified backups are useless, every sysadmins know that. But manually verifying a backup means wasting time and resources. Moreover it s boring. You should automatize it!
Backup Checker is a command line software developed in Python 3.4 on GitHub (stars appreciated :) ) allowing users to verify the integrity of archives (tar, gz, bz2, lzma, zip, tree of files) and the state of the files inside an archive in order to find corruptions or intentional of accidental changes of states or removal of files inside an archive.
The new feature of the latest version 1.4 is the control of outdated archives with the new outdated parameter. Lots of data are outdated quite fast, because they are dependent of other data, or because they are only useful in a specific context.
Hey, this database dump is 6 months old, it s useless today!Backup Checker now controls the expiration duration and triggers a warning if the given duration starting from the last modification of the archive (mtime) is expired. Short examples of the warning: WARNING:root:/backups/backups-12022015.tar.gz is outdated. Was good until 01/03/15 00:00:00 now 22/03/15 21:38:20 You won t be surprized any more by outdated useless data in your backups. Backup Checker also offers lots of other controls. Check the features list! Installing Backup Checker Backup Checker is available from PyPI using the following command:
# pip3.4 install backupcheckerIt s also available for your Debian Squeeze or Debian Wheezy. Check how to get it for your specific distributions.
What about you? How and what for do you use Backup Checker? We would be happy to get your feedbacks. The project cares about our users and the outdated feature was a awesome idea in a feature request by one of the Backup Checker user, thanks Laurent!
I haven't blogged anything in months and figured that now might be a good time to get around that. Here it goes:
While evaluating the cross-platform accessibility of Qt5, I stumbled
across this deficiency:
#include <QApplication>
#include <QTextEdit>
int main(int argv, char **args)
QApplication app(argv, args);
QTextEdit textEdit;
textEdit.setText(u8"\u28FF");
textEdit.show();
return app.exec();
Now I'm back to Linux on the Desktop for my dayjob, I was slightly
nervous about checking out the state of the art for Linux music players;
an area I've never felt the Linux desktop was very strong on.
However for the time being I've largely side-stepped the issue by
listening to BBC 6 Music for most of the
day. For better or worse, I scrobble, and
somebody has written a neat web app for scrobbling along to radio
stations. When I want to listen to
something different for a change, I've been trying out a trial of
Google Play Music, for
which somebody has written a Chrome extension to
scrobble. On the rare occasions I listen to
local music, I'm using VLC.
Google Play Music seems pretty good, but I'm not getting a lot from my
trial because 6 Music is generally fantastic.
Scrobbling 6 Music has revealed a bit of a disconnect for how I use
last.fm, and how website thinks you should use it. Within a day or two,
my "music compability" with 6 Music was (predictably) "SUPER". Looking
at my "Top artists", right near the top are 6 Music's current playlist
favourites Courtney Barnett and Nadine Shah, who I can (at least) recall
the songs that have been played; just below them are Young Fathers, who
I cannot. A little lower are Hot Chip and Slaves: both artists who have
current singles out which I enjoyed for a while, but the relentless BBC
playlist policy is overdoing them and I'm inclined to switch over when
they come on now. If I listen to a whole album in a given week, then the
artist will likely (and rightly) be sat at the top of "last 7 days"; if
I don't, then it could be something I can't even remember listening to.
Today early in the morning my monitoring system notified me about unusual high outgoing traffic on my hosting plattform. I traced the problem down the webserver which is also hosting this abondened website.
Looking into this with iptraf revealed that this traffic is coming only from one IP. At first I thought anybody might grabbing my Debian packages from ftp.cyconet.org. But no, it was targeting my highly sophisticated blogging plattform.
It makes me really sad to see, that dictionary attacks are smashing with such a high power these days, even without evaluating the 404 response.$ grep 46.235.43.146 /var/log/nginx/vhosts/access_logs/blog.waja.info-access.log tail -2 46.235.43.146 - - [23/Mar/2015:08:20:12 +0100] "POST /wp-login.php HTTP/1.0" 404 22106 "-" "-" 46.235.43.146 - - [23/Mar/2015:08:20:12 +0100] "POST /wp-login.php HTTP/1.0" 404 22106 "-" "-" $ grep 46.235.43.146 /var/log/nginx/vhosts/access_logs/blog.waja.info-access.log wc -l 83676 $ grep 46.235.43.146 /var/log/nginx/vhosts/access_logs/blog.waja.info-access.log wc -l 83782 $ grep 46.235.43.146 /var/log/nginx/vhosts/access_logs/blog.waja.info-access.log grep -v wp-login.php wc -l 0
Friday the 13th was my day. In so many different ways. I received a package which was addressed to Rhonda D'Vinewith a special hoodie in it. The person at the post office desk asked me whether it was for my partner, my response was a (cowardly) "no, it's my pseudonym" but that settled any further questions and I got my package. Later I received an email which made me hyper happy (but which I can't share right now, potentially later). In the evening there was the WortMacht FemSlam (
WordMight FemSlam) poetry slam to which the host asked me to attend just the day before. I was hyper nervous about it. The room was fully packed, there were even quite some people who didn't have a place to sit and were standing at the side. I presented Mermaids because I wasn't able to write anything new on the topic. One would think I am attached enough to the poem by now to not be nervous about it, but it was the environment that made my legs shake like hell while presenting. Gladly I hope it wasn't possible to see it enough under my skirt, but given that it was the first time that I presented it in my home town instead of the "anonymous" internet made me extra anxious. In the end I ended up in place 5 of 7 attendees, which I consider a success given that it was the only text presented in English and not in typical poetry slam style.
I know you, I've seen you at the FemSlam!. That was extra sweet. :)) I'm happy that I was notified about the FemSlam on such short notice, it was a great experience. So today's entry goes out to the host of that event. This is about Yasmo. One can just be envious about what she already accomplished in her still young life. And she is definitely someone to watch out for in the years to come. I have to excuse to my readers who don't understand German yet again, but I'll get back to something English next time, I promise. :)
Wie kann es sein, dass es immer noch diesen Jolly-Buntstift gibt, der "Hautfarbe" hei t?"(
How is it possible that there is still this jolly crayon called "colour of the skin"?)
I have just released version 1.9 of Obnam, my backup program. See the
website at http://obnam.org for details. The new version is
available from git (see http://git.liw.fi) and as Debian packages
from http://code.liw.fi/debian. Due to the freeze of Debian for the
jessie release, I've not uploaded this version to Debian yet (not
experimental and not backports).
This is the first Obnam release since May 13, 2014, 313 days ago.
That's a long time. I make no excuses: Obnam is a hobby project, which
I work on when I have the time and energy. The past year has been very
/interesting/ year for me, in all sorts of stressful ways: I've
changed jobs, moved to another country, and dealt with the loss of a
close relative. Because of this, I've not been able to spend as much
time on Obnam as I'd like.
The NEWS file extract below gives the highlights of what has happened
to Obnam during this time. There's been a lot of things, actually.
My plans for Obnam next are mainly centered around performance. This
will require developing a new repository format, to allow things that
are not possible with the current format. For example, the current
format stores each data chunk in its own file in the repository, and
that is quite wasteful when live data files (and therefore their
chunks) are quite small.
As preparation for this work, the silly-looking "simple" format has
been added, mostly to make sure the internal code infrastructure is
ready to support multiple repository formats in the same Obnam
version.
Those interested in discussing ways to make Obnam fast should join the
obnam-dev mailing list.
Version 1.9, released 2015-03-22
New features:
--include option to Obnam, allowing one to
include files that would otherwise be excluded (see --exclude).obnam fsck to remove unused chunks, if the
--fsck-fix or --fsck-rm-unused settings are used. He also made
it not check for unused chunks when it's useless to do so, because
of various --fsck-skip settings are used.obnam kdirstat, which
makes the KDE k4dirstat utility be able to show graphically which
parts of a backup generation use most space.simple repository format, which is for
demonstration only. It is much too simplistic to be used for real.obnam --help are now clearer that the --root
setting and command line arguments to obnam backup can be SFTP
URLs. Thanks to Simone Piccardi for reporting the issue.assertRaises as a context manager).obnam mount) when
fusermount is available, rather than checking for membership in
the group fuse. The latter is a Debianism (fixed in Debian
jessie).obnam verify didn't notice that a
file had new data, when the modification time was the same. Obnam
now notices this.stat fields as None. Fixed to change those to be 0 instead.
Every year, Debian organizes a DPL election. Around end of March, one waits for the beginning of the DPL campaign. Everyone can ask questions to nominated candidates on debian-vote. This year, and for the first time, I nominated myself as a candidate for the 2015 DPL election. You can read my platform here.Next.