2022-02-17

Three books

 One book about science, one book about spying and eentje over mensen.

Three books

I finished "Lost in Math" by Sabine Hossenfelder last month. It is a story of her interviewing scientists that try to find order in (mainly) the smallest of elements. The gist is that while there is a lot of (mathematical) beauty in science (think how nice the atoms are for example), that most scientists are distracted by beauty while there is a real possibility that breakthroughs are going to be ugly (e.g. the standard model of Fermions and Bosons).

 

I am late to the party for reading "Permanent Record" by Edward Snowden. He tells his life story, from his first connection to the Internet, to being a 'document manager' in the NSA. The first half of the book is predictable, the second half is exciting. I learned that he never meant to go to Russia, he just got stuck at the airport in Moscow because the USA had revoked his passport.

Strange world though, I grew up with Russian dissidents fleeing to the *free* West. Today Snowden (and Assange in a way) are making the reverse journey.


In het derde boek "De meeste mensen deugen" van Rutger Bregman zit ik nog maar aan blz 70, maar ik wou toch al een citaat meegeven; blz 28:

"Koningen en dictators, gouverneurs en generaals denken dat gewone mensen egoïstisch zijn, omdat ze dat zelf zo vaak zijn. Ze gebruiken grof geweld omdat ze iets willen voorkomen dat zich alleen in hun eigen fantasie afspeelt."

Yep, niet alle koningen uiteraard, maar ook heel wat managers, vrees ik.

EDIT: Dit boek is zeker de moeite om te lezen. Het geeft een originele kijk op een tiental zeer bekende psychologische experimenten. Helaas komt het allemaal wat sensationeel over; boeiend en leuk dus, maar misschien niet correct.

2021-10-24

Reading books

This post is meant to encourage me to read a bit more (paper books). By the way, I thought I was reading four books simultaneously, but when I put them next to each other it turned out to be seven.

Form left to right (writer-title(year) pages read-total pages):

Daniele Benedettelli - Creating Cool Mindstorms NXT Robots(2008) 24-575
Leo Tolstoj - Oorlog en Vrede(1869, NL translation 1973) 115-462
Dirk De Wachter - De kunst van het ongelukkig zijn(2019) 35-101
Allen/Fonagy/Bateman - Mentaliseren(2008/2019 edition) 30-368
LEGO and philosophy(2017) 56-226
Charlie Mackesy - The Boy, the mole, the fox and the horse(2019)
Michael Collins - Carrying the Fire(1974) - finished

Personal goal: finish at least three more of these before 2022.

I just finished Michael Collins - Carrying the Fire and it took me five weeks, which I consider a bit too long for a 470-ish pages book. It was a very good book though. If you're into space travel, then I would definitely recommend it. It also proves how the Sixties was vastly different to today, for example of the fourteen astronauts selected in 1963, four died during training. Two of the nine also died. Such numbers are unacceptable in 2021, even for 'dangerous' jobs.

The Daniele Benedettelli book is about programming Finite State Machines using Lego robots. I don't know much about programming, but this looks like fun. Thing is I need to build some Lego robots (like this one) to continue this book.

And I probably need to start from page 1 again in War and Peace because of the many characters that I forgot.

Some other books that I read the past three years are:

Celestin-Westreich/Celestin - Observeren en Rapporteren
Dick Swaab - Ons creatieve brein
Dirk De Wachter - Borderline Times
Dirk De Wachter - De wereld van De Wachter
Etienne Vermeersch - Over God
Etienne Vermeersch - Provencaalse gesprekken
Jan Van de Craats - Basisboek wiskunde
Jude Woodward - The US vs China
Paul Verhaeghe - Autoriteit
Paul Verhaeghe - Identiteit
Randall Munroe - Thing Explainer
Randall Munroe - What If
Rebecca Smethurst - Space, 10 things you should now
Robert Bly - De Wildeman
Terry Goodkind - Law of Nines
Terry Goodkind - Severed Souls
Terry Goodkind - The first Confessor
Terry Goodkind - The Omen Machine
Terry Goodkind - The Third Kingdom
Terry Goodkind - Warheart
Thomas D'ansembourg - Stop met aardig zijn

Most of it non-fiction apparently. I really enjoyed 'Borderline Times' and both books of Paul Verhaeghe and Dick Swaab. I couldn't really get into Robert Bly or Thomas D'Ansembourg (but collaborative communication gives me a lot of insight in people).

2021-07-03

VRT radio streams en reklame

De VRT radio streams, zoals deze (http://icecast.vrtcdn.be/radio1-high.mp3) hebben sinds kort de neiging om reklame te spelen als je ze start. Niet altijd, maar wel regelmatig.

Zonet (21u en enkele seconden) wou ik naar het nieuws luisteren , maar er begon reklame te spelen. Ik laadde de stream opnieuw en de reklame begon opnieuw (terwijl het nieuws bezig was, maar dat kreeg ik dus niet).

Een paar dagen geleden had ik dat ook al met de Radio 1 stream, telkens reklame als je de stream start. Dit is irritant.

Tijd dus om het script aan te passen en de eerste 60 seconden van de stream te muten. De cronjob om het nieuws te spelen kan dan een minuut eerder starten.

 

UPDATE 2021-09-15: dit werkt

#!/bin/bash

export HOME=/var/www
pkill mplayer

mplayer -volume 0 -slave -input file=/var/www/master http://icecast.vrtcdn.be/radio1-high.mp3 &

sleep 60

echo volume 100 1 > /var/www/master
exit

2021-05-25

Vaccinated

Got my first Covid-19 vaccine shot today, and apparently also a new wireless device on my home network:




2021-05-19

Tide bestek (Deel 2)

Elf jaar geleden blogde ik over mijn Tide bestek. Bij deze een update.

Ik weet totaal niet waarom dit mij nu weer boeit, misschien omdat dit in de jaren 70 ons thuis bestek was? Toch zou ik graag de ontbrekende vleesvork, minivork en vismes hebben, wie wil ruilen?

Hier twee foto's van wat ik nu heb: (De inleg van de vleesvork, het kleinste vorkje en het vismes zijn copyright S.R.)

De geschiedenis van dit bestek: Het was te krijgen via premiebons die bij Tide waspoeder zaten in de jaren 1950 (en jaren 60?). Er bestaat een FB-groep voor Tide bestek, maar ik zit niet op FB. Veel kans hebben ze daar meer foto's en ruilmogelijkheden.

 

UPDATE 2021-05-20: Joepie 6 dessertvorkjes

UPDATE 2021-06-21: Danku Laura C. voor de vleesvork in uitstekende staat. Foto hieronder van deze grote Tide vork naast het grote mes (in mindere staat).


 

 

 

Nu enkel de vismesjes nog...

 

EDIT 2022-02-28: foto achterkant voor Hans


 

 

 

 

2020-06-07

tmux black

tmux upgrade from 2.8 to 3.0...

# invisible separators
set-option -g pane-border-fg black
set-option -g pane-border-bg black
set-option -g pane-active-border-fg black
set-option -g pane-active-border-bg black

becomes

set -g pane-border-style bg=black,fg=black
set -g pane-active-border-style bg=black,fg=black

as mentioned in the changelog.

2015-05-11

new data center

My new data center is under construction (two Raspberry Pi 2 and one Raspberry pi model B).


2015-04-24

Raspberry Pi case with Lego

In case you want to build a Raspberry Pi case out of Lego, here is mine.


2015-03-26

black beer

There is always room for beer (linky).







Inglorious Quad : excellent !
Oesterstout: excellent !
Embrasse: very good.
Zumbi: excellent !
Barbe Noire: very good.

2014-09-06

Vagrantfile (this is just a bookmark)

This is my (thank you Abel) current Vagrantfile to quickly create a number of servers with two extra disks and three extra network cards:

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
 config.vm.provider :virtualbox do |vb|
  vb.customize ["storagectl", :id, "--add", "sata", "--name", "SATA" , "--portcount", 2, "--hostiocache", "on"]
 end
 (1..3).each do |i|
  config.vm.define "server#{i}" do |node|
   node.vm.hostname = "server#{i}"
   node.vm.box = "hfm4/centos7"
   config.vm.box_check_update = true
   node.vm.network :public_network, ip: "10.1.1.#{i}", netmask: '255.255.255.0'
   node.vm.network :public_network, ip: "10.1.2.#{i}", netmask: '255.255.255.0'
   node.vm.network :public_network, ip: "10.1.3.#{i}", netmask: '255.255.255.0'
   config.vm.provider "virtualbox" do |v|
    v.name = "server#{i}"
    v.memory = 512
    v.cpus = 1
    v.customize ['createhd', '--filename', "server_#{i}a.vdi", '--size', 8192 ]
    v.customize ['createhd', '--filename', "server_#{i}b.vdi", '--size', 8192 ]
    v.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 1, '--device', 0, \
'--type', 'hdd', '--medium', "./server_#{i}a.vdi"]
    v.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 2, '--device', 0, \
'--type', 'hdd', '--medium', "./server_#{i}b.vdi"]
   end
  end
 end
end


2014-05-19

Reserved DNS TLD's .invalid ?

I (wrongly) assumed that using a .local domain would never bother the root dns servers. It does (about 1500 q/sec).

So I read the relevant rfc's (2606 and 6761) where it clearly states:

...caching DNS servers SHOULD, by
default, generate immediate negative responses for all such
queries.  This is to avoid unnecessary load on the root name
servers and other name servers...
 
So I did a small test with the most recent bind9 in Debian as a caching only server, and it turns out it sends .local .localhost .example and .invalid to the root name servers ?! Only .test has an immediate response.


root@debian7:~# tcpdump port 53 -l | grep NX &
[1] 5699
root@debian7:~# tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes

root@debian7:~# nslookup
> server 127.0.0.1
Default server: 127.0.0.1
Address: 127.0.0.1#53
> linux-training.local
09:22:15.932194 IP f.root-servers.net.domain > 10.0.2.15.46669: 49328 NXDomain*- 0/6/1 (656)
09:22:15.997731 IP j.root-servers.net.domain > 10.0.2.15.47262: 43556 NXDomain*- 0/6/1 (669)
Server:         127.0.0.1
Address:        127.0.0.1#53

** server can't find linux-training.local: NXDOMAIN
> linux-training.localhost
09:22:23.099452 IP e.root-servers.net.domain > 10.0.2.15.60696: 22464 NXDomain*- 0/6/1 (673)
Server:         127.0.0.1
Address:        127.0.0.1#53

** server can't find linux-training.localhost: NXDOMAIN
> linux-training.test
Server:         127.0.0.1
Address:        127.0.0.1#53

** server can't find linux-training.test: NXDOMAIN
> linux-training.example
09:22:42.124036 IP e.root-servers.net.domain > 10.0.2.15.7293: 8476 NXDomain*- 0/6/1 (661)
09:22:42.141847 IP e.root-servers.net.domain > 10.0.2.15.15481: 31139 NXDomain*- 0/6/1 (671)
Server:         127.0.0.1
Address:        127.0.0.1#53

** server can't find linux-training.example: NXDOMAIN
> linux-training.invalid
09:22:49.660427 IP e.root-servers.net.domain > 10.0.2.15.60321: 15655 NXDomain*- 0/6/1 (671)
09:22:49.753120 IP l.root-servers.net.domain > 10.0.2.15.63563: 48281 NXDomain*- 0/6/1 (671)
Server:         127.0.0.1
Address:        127.0.0.1#53

** server can't find linux-training.invalid: NXDOMAIN


So I visit the root dns server stats and notice the top queries (in queries/second):

1 .com 3500
2 .net 2500
3 .local 1400
4 . 1100
5 .home 1100
6. (.com base 64)
7 .org 400
8. .belkin 300

The top five queries for BRU01 (a Belgian root name server) are a surprise:

1 .home 240
2 .localhost 53
3 .local 50
4 .com 19
5 .ru 12

(.be is negligible with 0.4 queries/second)


cheers,
paul

2014-05-16

Coffee or Tea ? Yes!

When people ask me:
"Do you want coffee or tea?" (*)
Then I answer:
"Yes."

... and most assume that I want to be funny, but I don't. I just don't care which of the two (coffee or tea) you give me, I am happy with both.

Turns out I am a hacker.

(*) Do you want spaghetti or rice ? Yes!
(*) Leffe or Chimay ? Yes!
(*) Can I see you tonight or tomorrow ? Yes!


It gets worse when questions contain all possible actions:
(*) Should I stay or should I go?
(*) Can I keep the book or do you want it back ?
(*) With or without sugar ?
 You just gave me all possible options ?! What kind of trickery questions are these ?!

;-)

2014-04-19

Vagrant: Creating 10 vm's with 6 disks each

Hello lazyweb,

the Vagrantfile below works fine, but can probably be written simpler. I've been struggling to create variables like "servers=10" and "disks=6" to automate creation of 10 servers with 6 disks each.

Drop me a hint if you feel like creating those two loops.


paul@retinad:~/vagrant$ cat Vagrantfile
hosts = [ { name: 'server1', disk1: './server1disk1.vdi', disk2: 'server1disk2.vdi' },
          { name: 'server2', disk1: './server2disk1.vdi', disk2: 'server2disk2.vdi' },
          { name: 'server3', disk1: './server3disk1.vdi', disk2: 'server3disk2.vdi' }]

Vagrant.configure("2") do |config|

  config.vm.provider :virtualbox do |vb|
   vb.customize ["storagectl", :id, "--add", "sata", "--name", "SATA" , "--portcount", 2, "--hostiocache", "on"]
  end

  hosts.each do |host|

    config.vm.define host[:name] do |node|
      node.vm.hostname = host[:name]
      node.vm.box = "chef/centos-6.5"
      node.vm.network :public_network
      node.vm.synced_folder "/srv/data", "/data"
      node.vm.provider :virtualbox do |vb|
        vb.name = host[:name]
        vb.customize ['createhd', '--filename', host[:disk1], '--size', 2 * 1024]
        vb.customize ['createhd', '--filename', host[:disk2], '--size', 2 * 1024]
        vb.customize ['storageattach', :id, '--storagectl', "SATA", '--port', 1, '--device', 0, '--type', 'hdd', '--medium', host[:disk1] ]
        vb.customize ['storageattach', :id, '--storagectl', "SATA", '--port', 2, '--device', 0, '--type', 'hdd', '--medium', host[:disk2] ]
      end
    end

  end

end

2014-01-15

The grand Windows vs Linux fight

A lot of muggles are convinced there is some big battle going on between Microsoft and Linux. They are wrong.

Truth is that only a minority of very noisy wannabe-Linux users see this as a fight. I imagine this loud minority as people who once installed Ubuntu but actually spend most of their time playing games on Windows.

The reality is that most organizations use Microsoft on the Desktop and a lot of them also have one or more products like MS Active Directory, MS Exchange or MS Sharepoint.

But every other computer runs a form of Unix, very often this is Linux:
- the millions of servers from Facebook, Google, Twitter, ...
- millions of DSL modems
- more than a billion Android phones
- 98 percent of the 500 largest supercomputers in the world
- Lego robots
- space station laptops
- (in Belgium specifically stuff like the bbox and digibox etc)
- tablets, routers, firewalls, NAS devices (aka "external harddisks"), stock exchanges, radar control, gps navigation and much more

There was no battle, there is no fight, there will never be a Linux vs Windows. They are just different things, Microsoft is used for end user intranet, Linux for servers and all other devices.

(*) Sure there is also iPad, iPhone and Mac, I know that.

2013-11-04

nieuwe laptop kopen ?

Ik zou een nieuwe laptop willen kopen, graag advies:
- moet uiteraard Debian kunnen draaien zonder proprietary binary drivers (dus radeon hd?)
- liefst zonder Microsoft of Apple tax
- kleine harde schijf (ik gebruik amper 50GB)
- rond de 8GB ram
- snelle cpu i5 of i7
- maar wil vooral dus dat Debian er op werkt...
- us qwerty!

Ik was tevreden over de macbook pros die ik heb, maar vind online amper informatie over Debian op die retina Macbook Pro.

Heel wat laptops komen met Intel hd 4000 video, werkt die vlot onder Linux ?

Zou je vandaag nog Lenovo Thinkpad aanraden ? Zo ja welke ?


2013-08-04

Recovering lvm2 on degraded mdadm raid 1

An mdadm raid 1 had one disk crash, the other was moved to a new computer (/dev/sdb2).

Step 1: Does fdisk see the disk: yes

root@debian6~# fdisk -l /dev/sdb

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00060f19

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         254     2040254+  83  Linux
/dev/sdb2             255      121602   974722329   83  Linux 
 

Step 2: Gently look with fsck, yes it is part of mdadm
  
root@debian6~# fsck -n /dev/sdb2
fsck from util-linux-ng 2.17.2
fsck: fsck.linux_raid_member: not found
fsck: Error 2 while executing fsck.linux_raid_member for /dev/sdb2


Step 3: Let's see what mdadm says

root@debian6~# mdadm --examine /dev/sdb2
/dev/sdb2:
          Magic : a92b4efc
        Version : 1.0
    Feature Map : 0x0
     Array UUID : e8221214:354aaaf1:e9e15d78:075bfc18
           Name : storage:1
  Creation Time : Thu May  6 20:00:16 2010
     Raid Level : raid1
   Raid Devices : 2

 Avail Dev Size : 1949444384 (929.57 GiB 998.12 GB)
     Array Size : 1949444384 (929.57 GiB 998.12 GB)
   Super Offset : 1949444640 sectors
          State : clean
    Device UUID : 0c265a25:cc3f2ddd:ae7a1511:f447c74e

    Update Time : Tue May  1 23:09:11 2012
       Checksum : 498b9bd4 - correct
         Events : 33039098


   Device Role : Active device 0
   Array State : A. ('A' == active, '.' == missing) 


Step 4: Let's fix the md device

root@debian6~# mdadm --assemble --scan
mdadm: /dev/md/storage:1 has been started with 1 drive (out of 2).
mdadm: /dev/md/0_0 has been started with 1 drive (out of 2).

root@debian6~# cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md126 : active (auto-read-only) raid1 sdb1[0]
      2040128 blocks [2/1] [U_]
      
md127 : active (auto-read-only) raid1 sdb2[0]
      974722192 blocks super 1.0 [2/1] [U_]
      
unused devices:  

root@debian6~# fdisk -l
....
Disk /dev/md127: 998.1 GB, 998115524608 bytes
2 heads, 4 sectors/track, 243680548 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/md127 doesn't contain a valid partition table 


Step 5: Gently look with mount and lvs/pvs

root@debian6~# mount /dev/md127 /mnt
mount: unknown filesystem type 'LVM2_member'

root@debian6~# lvs
  No volume groups found
root@debian6~# pvs


Step 6: Fix the lvm2 device

root@debian6~# vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "md1_vg" using metadata type lvm2

root@debian6~# vgs
  VG     #PV #LV #SN Attr   VSize   VFree
  md1_vg   1   1   0 wz--n- 929.57g    0 
root@debian6~# pvs
  PV         VG     Fmt  Attr PSize   PFree
  /dev/md127 md1_vg lvm2 a-   929.57g    0 
root@debian6~# lvs
  LV      VG     Attr   LSize   Origin Snap%  Move Log Copy%  Convert
  md1vol1 md1_vg -wi--- 929.57g 
 
 
Step 7: The lvm2 device is not activated, yet


root@debian6~# lvdisplay 
  --- Logical volume ---
  LV Name                /dev/md1_vg/md1vol1
  VG Name                md1_vg
  LV UUID                qSpslc-nO70-8jjX-5lBl-ge20-fFdR-dSEnWk
  LV Write Access        read/write
  LV Status              NOT available
  LV Size                929.57 GiB
  Current LE             475938
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto 
 
 
Step 8: Activate lvm2 device and mount


root@debian6~# vgchange -a y
  1 logical volume(s) in volume group "md1_vg" now active

root@debian6~# mount /dev/md1_vg/md1vol1 /mnt

root@debian6~# mount | grep mnt
/dev/mapper/md1_vg-md1vol1 on /mnt type xfs (rw) 
 
 

2013-07-31

regex

I needed a regex to append \index{foo} to any occurrence of **foo** so i wrote
's/\*\*\([^*]*\)\*\*/\*\*\1\*\*\\index{\1}/g'
and it worked the very first time! Yes I feel nerdy today :-) :-)

2013-06-27

Looking for one SunFire v210

Dear Lazyweb,

I've got three SunFire V210 machines and want to set them up for a school.

But, I don't have the ALOM password and I don't have the Solaris root password. Either one of those would allow me to reset the other.

So I am looking for someone who can lend me either a bootable disk that fits in these servers, or a SunFire V210 with admin password for ALOM.

Yes, they will run Debian once I get access to the ALOM.

2013-05-29

MS Exchange on Samba4 ;-)

One of my students tried to install Microsoft Exchange 2010 on Samba 4.
The error is hilarious:
"The operating system version of the domain controller is 4.0.6. The minimum version required is 5.2"

2013-04-01

kassa niet geopend bij nmbs.be ??

Ja het is 1 april, maar toch. ...dan maar zonder kaartje de trein op.