Loading...
 

No Food for Thought

Food is something you should provide to your brain long before coming to this blog. You will find no food recipes here, only raw, serious, non-fake news for mature minds.

Liberal Party of Canada responds to petition e-616

admin Saturday April 22, 2017

After the liberals announced they would break their promise to get rid of FPTP, some 130 452 Canadians protested by signing petition e-616 (thanks to the readers of this blog who have grown that number). Perhaps the fact that no other online petition to the Canadian government had gathered that many signatures compelled the government to respond.

Image
Unfortunately, it seems the government preferred a lengthy response to a concise and focused response. If "The Government of Canada is pleased to respond to this petition.", rather than listing over a page of measures supposed to "enhance public trust in the integrity of the electoral process", it would have helped to provide a more convincing apology than...

The Minister of Democratic Institutions wrote:
Furthermore, without a clear preference or a clear question, a referendum would not be in Canada’s interest.

…in particular since petition e-616 never asked for a referendum. E-616 merely requested to honor the party's promise:

Liberal Party of Canada wrote:
ensuring that 2015 will be the last federal election conducted under the first-past-the-post voting system.


In fact, the Minister's response has little to qualify it as an apology. While it may contain many excuses, it does not contain the words "apology", "apologize", "sorry", or really any terminology characteristic of apologies.

And as if this treason and this non-apology weren't enough, they didn't even take the time to fill the response form properly ("Prepare in English and French marking ‘Original Text’ or ‘Translation’" at the very top? Talk about adding insult to injury!)

TP-Link Archer C8 Wi-Fi router review

admin Sunday March 19, 2017
 Obsolete
This post is about hardware version 2 of TP-Link's Archer C8, which is obsolete.

As of 2018-05-26, TP-Link hasn't updated the firmware for v2 since 2016 and the Archer C8 is not supported by OpenWrt and will likely never be, due to its use of an undocumented Broadcom WLAN chipset. It is therefore unsafe to use this router and will probably always be.


I replaced my 6-year-old TP-Link TL-WR1043ND with a Gigabit Ethernet 802.11ac router bought for 105 CAD (shipping included) from Dell this week.

Wireless range seems to solve the connectivity problem of one of the clients I was experiencing with the previous router. For reasons I never understood well, at times the client would have huge packet loss and even disconnect, even though it is 1 decameter from the router, no other wireless device was active and other houses a several meters away from ours. With the Archer, the worst path has a 0.01% packet loss.

The interface is satisfying (although English-only until you install the May 2016 firmware update, since the router came with the 2015 firmware!). It is simple and the feature set includes most of what I need.

I accidentally pressed the reset button while relocating the router. As noted in this TechHive review, this button could easily cause an inadvertent reset, but I did not push it long enough for that.

I chose this router partly because of its comparatively long warranty (2 years rather than the usual 1 year). I am mostly surprised to find no specification of warranty in the box. The box contains 2 quick installation guides (1 multilingual, 1 English-only), 3 prints of the GNU General Public License (versions 1, 2 and 3), a copy of the GNU LGPL, a superfluous "Resource CD", but no mention of warranty.

Issues

There are a few issues with the firmware. In the first month of usage, I once lost access to the interface until I rebooted.
The firmware features "NAT Boost", which allows to collect bandwidth usage statistics for each device. While this is quite useful, it needs refinement (in particular, the total bytes column is unreliable due to a 32-bit overflow after 4 GiB of transfer).
While the firmware has some support for Dynamic DNS, it does not support my provider (DNSEXIT). After a few months, the interface got unusable again until I manually rebooted.

As of 2017-09-23, the firmware does not support standards-based dynamic DNS update (automatic DNS on a LAN).

Smart Indian mechanics nail profitable ways to slow down climate change...

admin Sunday March 12, 2017

...as well as many vehicles circulating in these streets of Bangalore. In fact, their solution completely stops many vehicles on the streets which benefit from their ecological treatment.

Unfortunately, due to the side effect nails on a road have on pedestrians and other self-propelling travelers, their plan is being fought by opposant Benedict Jebakumar and other nearby workers, frustrated by the environmental tax it also imposes on commuters like themselves whose tires are puncturing more frequently. But even with police getting involved and arresting innovator Ranganath and Chand Pasha, the fight continues, with police now closing repair shops.

While the strategy is not new, it has not yet managed to make a hole in the inflating number of motorists. But this is at least one more proof of how the tenacious altruistic efforts of individuals can benefit an entire city, and, step by step, or puncture by puncture, perhaps eventually bring back more air for citizens of the whole world.

Disclaimer: having had at least 5 punctures on his bicycle last summer, the author of this sarcastic article has in fact much sympathy for the victims of this awful scheme.

Victory for the Liberals, Defeat for Governance; Disgust for Canadian Politics

admin Saturday February 4, 2017



During the last federal election, an unprecedented share of political parties favored electoral reform. In a bad position, with a mere 10% of the seats, Canada's most popular party - and therefore the one most favored by the flaws of First-past-the-post voting, the Liberal Party - made the unthinkable: an unequivocal promise to get rid of FPTP, by 2019 (presumably because they considered a majority victory equally unthinkable anyway).

Unfortunately, the 2015 elections doubled the popular vote of the Liberal Party, which brought the liberals back from the parties disadvantaged by FPTP to the parties advantaged by FPTP - so much so, that their 39% popular vote granted the liberals not only the government, but a majority government. Surely, at this point the liberals would break their promise.

But the hope survived. It might have been too selfish to break their main promise right after benefiting from the status quo, but instead of becoming silent on the issue, the government renewed its commitment to electoral reform in its December 2015 Speech from the Throne. Yours truly - despite all his knowledge of politics and cynicism - was still enthusiastically wondering what would happen in 2016. Even in June 2016, the liberals weren't ready to break their promise and constituted the ERRE special committee on electoral reform, and yours truly went to an ERRE hearing last autumn wondering if change could still happen; after all, a strong majority of voters chose a party promising electoral reform.

Unsurprisingly, the experts and the public urged the government to abandon FPTP. It wasn't before October that it became difficult to stay hopeful. After millions had been spent, the Minister of democratic institutions then criticized the committee she had formed and dismissed its recommendation to adopt a more proportional electoral system. The liberals then designed their own biased survey on electoral reform.

And only after that much more money was wasted were the liberals willing to admit no reform would take place under their government. This week, after the Minister of Democratic Institutions was changed, electoral reform was removed from the mandate of the new Minister.

In more than a year, the liberals could not find better than an insulting bunch of misleading and pitiful excuses (served just one week after a certain candidate was elected president of a certain neighbor of Canada despite the will of its citizens, thanks to that country's broken electoral system).

I would like to thank those who contributed to this battle, despite the difficulty and high risk of failure, notably Fair Vote Canada (in particular Anita Nickerson and Executive Director Kelly Carmichael), which is outraged by this abandonment, as well as Quebec's MDN, which is also denouncing and calling for protests.

It is hard to accept defeat when a victory seemed so much more likely than ever. Although I signed petition e-616, I consider this battle lost. But if advocates of decent governance have lost one battle, the war is far from over. As for the liberals, they may have won another election, but they permanently lost any credibility (the one thing won permanently being a place in a certain activist's Political Party Blacklist).

See also
Why we broke our electoral reform promise. Signed, a Liberal MP.

Losing your cool with Lenovo's Ideapad Flex? Get rid of Yoga Mode Control

admin Saturday December 31, 2016

I gave a new laptop with Microsoft Windows to my parents in October. Unfortunately, the best deal I found, Lenovo's Ideapad Flex 4, was not a Signature Edition. But it was my first time buying Lenovo, and I thought they may not be so bad.

Things went rather smoothly initially, but I did not realize there were sometimes processes monopolizing a whole CPU core. This became hard to ignore the day there were 4 such rundll32.exe processes running simultaneously, each using up 25% of the CPU, causing fans to spin at maximum speed and incredible unresponsiveness.

Sometimes, Windows 10 even refused to let any user "login" because there was a lack of unspecified resources. Windows says it won't let you open new sessions until you free resources. The only issue being that even the sessions already opened cannot be used, so you cannot go investigate the problem, and are only left able to restart Windows.

This unspecific symptom was difficult to research. I uninstalled several useless pre-installed Lenovo packages unsuccessfully. We endured this problem for more than a month on a fully up-to-date system, even following Lenovo's upgrade recommendations, without obtaining a solution. I then uninstalled every pre-installed Lenovo package, again without solving the issue. I was about to reformat this morning when I found this Lenovo forum thread reporting the issue, at the last minute. The culprit is ymc.exe, Lenovo's "Yoga Mode Control", which manages the switch between classic laptop usage and tablet usage. I had noticed a "Yoga Mode Control" running, and since my parents have not practiced yoga in decades, had considered the possibility it was malware which had infected Windows, but I had verified it was just a strangely-named Lenovo application which was not supposed to be harmful.

The proposed workaround works. Apparently, the only downside of disabling ymc is that the visual keyboard is no longer managed automatically, which is not a problem if you do not use the Ideapad as a tablet. Disabling the service seems to kill the processes, but they apparently reappear right away. You need to make the service Manual and restart Windows to really get rid of the processes.

Congratulations, Lenovo, for leaving software you pre-install go out of control for months. Next time you want to keep your computers and their users in a cool mode, try fixing your serious bugs before deploying Yoga Mode Control.

ManageEngine NetFlow Analyzer on Debian 8

admin Monday December 19, 2016

ManageEngine's NetFlow Analyzer is probably the best NetFlow analysis software. It supports GNU/Linux and is even free for a maximum of 2 network interfaces.

NetFlow Analyzer 12.1 can be installed on Debian 8, but that does not mean there are no issues. The software is heavyweight. Once the service was started with # /etc/init.d/OpManagerServer start; you still need to give a some time before the service is usable.

The init scripts unfortunately lack LSB headers. While that apparently does not prevent proper functioning nor even pollute logs in general, it seems to cause much confusion when dpkg has to upgrade a service. Therefore, upgrading Samba brought a pretty scary output:

Préconfiguration des paquets... (Lecture de la base de données... 83617 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../libnss-winbind_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de libnss-winbind:i386 (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../libpam-winbind_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de libpam-winbind:i386 (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../samba-vfs-modules_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de samba-vfs-modules (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../samba-dsdb-modules_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de samba-dsdb-modules (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../python-samba_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de python-samba (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../libwbclient0_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de libwbclient0:i386 (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../winbind_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de winbind (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../smbclient_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de smbclient (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../libsmbclient_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de libsmbclient:i386 (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../samba-libs_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de samba-libs:i386 (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../samba_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de samba (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../samba-common-bin_2%3a4.2.14+dfsg-0+deb8u2_i386.deb ... Dépaquetage de samba-common-bin (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Préparation du dépaquetage de .../samba-common_2%3a4.2.14+dfsg-0+deb8u2_all.deb ... Dépaquetage de samba-common (2:4.2.14+dfsg-0+deb8u2) sur (2:4.2.10+dfsg-0+deb8u3) ... Traitement des actions différées (« triggers ») pour man-db (2.7.0.2-5) ... Traitement des actions différées (« triggers ») pour systemd (215-17+deb8u5) ... Paramétrage de samba-common (2:4.2.14+dfsg-0+deb8u2) ... debconf: Impossible d'initialiser l'interface : Gnome debconf: (Can't locate Gtk2.pm in @INC (you may need to install the Gtk2 module) (@INC contains: /etc/perl /usr/local/lib/i386-linux-gnu/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/i386-linux-gnu/perl5/5.20 /usr/share/perl5 /usr/lib/i386-linux-gnu/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl .) at /usr/share/perl5/Debconf/FrontEnd/Gnome.pm line 91.) debconf: Utilisation de l'interface Dialog en remplacement Paramétrage de libwbclient0:i386 (2:4.2.14+dfsg-0+deb8u2) ... Paramétrage de samba-libs:i386 (2:4.2.14+dfsg-0+deb8u2) ... Paramétrage de python-samba (2:4.2.14+dfsg-0+deb8u2) ... Paramétrage de samba-common-bin (2:4.2.14+dfsg-0+deb8u2) ... Paramétrage de samba-dsdb-modules (2:4.2.14+dfsg-0+deb8u2) ... Paramétrage de samba (2:4.2.14+dfsg-0+deb8u2) ... insserv: warning: script 'K98OpManagerServer' missing LSB tags and overrides insserv: warning: script 'OpManagerServer' missing LSB tags and overrides insserv: There is a loop at service rmnologin if started insserv: There is a loop between service OpManagerServer and mountnfs if started insserv: loop involving service mountnfs at depth 10 insserv: loop involving service nfs-common at depth 9 insserv: There is a loop between service OpManagerServer and networking if started insserv: loop involving service networking at depth 7 insserv: loop involving service urandom at depth 6 insserv: loop involving service mountnfs-bootclean at depth 12 insserv: loop involving service rpcbind at depth 9 insserv: There is a loop between service OpManagerServer and mountall-bootclean if started insserv: loop involving service mountall-bootclean at depth 6 insserv: loop involving service mountall at depth 5 insserv: There is a loop between service rmnologin and checkroot if started insserv: loop involving service checkroot at depth 3 insserv: loop involving service keyboard-setup at depth 2 insserv: loop involving service hwclock at depth 3 insserv: There is a loop between service rmnologin and udev if started insserv: loop involving service udev at depth 1 insserv: loop involving service checkfs at depth 5 insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Max recursions depth 99 reached insserv: loop involving service irqbalance at depth 2 insserv: There is a loop at service OpManagerServer if started insserv: loop involving service rsyslog at depth 13 insserv: loop involving service OpManagerServer at depth 1 insserv: loop involving service mountkernfs at depth 1 insserv: exiting now without changing boot order! update-rc.d: error: insserv rejected the script header dpkg: erreur de traitement du paquet samba (--configure) : le sous-processus script post-installation installé a retourné une erreur de sortie d'état 1 dpkg: des problèmes de dépendances empêchent la configuration de winbind : winbind dépend de samba (= 2:4.2.14+dfsg-0+deb8u2) ; cependant : Le paquet samba n'est pas encore configuré. dpkg: erreur de traitement du paquet winbind (--configure) : problèmes de dépendances - laissé non configuré dpkg: des problèmes de dépendances empêchent la configuration de libnss-winbind:i386 : libnss-winbind:i386 dépend de winbind (= 2:4.2.14+dfsg-0+deb8u2) ; cependant : Le paquet winbind n'est pas encore configuré. dpkg: erreur de traitement du paquet libnss-winbind:i386 (--configure) : problèmes de dépendances - laissé non configuré dpkg: des problèmes de dépendances empêchent la configuration de libpam-winbind:i386 : libpam-winbind:i386 dépend de winbind (= 2:4.2.14+dfsg-0+deb8u2) ; cependant : Le paquet winbind n'est pas encore configuré. dpkg: erreur de traitement du paquet libpam-winbind:i386 (--configure) : problèmes de dépendances - laissé non configuré Paramétrage de samba-vfs-modules (2:4.2.14+dfsg-0+deb8u2) ... Paramétrage de libsmbclient:i386 (2:4.2.14+dfsg-0+deb8u2) ... Paramétrage de smbclient (2:4.2.14+dfsg-0+deb8u2) ... Traitement des actions différées (« triggers ») pour libc-bin (2.19-18+deb8u6) ... Des erreurs ont été rencontrées pendant l'exécution : samba winbind libnss-winbind:i386 libpam-winbind:i386 E: Sub-process /usr/bin/dpkg returned an error code (1) Échec de l'installation d'un paquet. Tentative de récupération : Paramétrage de samba (2:4.2.14+dfsg-0+deb8u2) ... insserv: warning: script 'K98OpManagerServer' missing LSB tags and overrides insserv: warning: script 'OpManagerServer' missing LSB tags and overrides insserv: There is a loop at service rmnologin if started insserv: There is a loop between service OpManagerServer and mountnfs if started insserv: loop involving service mountnfs at depth 10 insserv: loop involving service nfs-common at depth 9 insserv: There is a loop between service OpManagerServer and networking if started insserv: loop involving service networking at depth 7 insserv: loop involving service urandom at depth 6 insserv: loop involving service mountnfs-bootclean at depth 12 insserv: loop involving service rpcbind at depth 9 insserv: There is a loop between service OpManagerServer and mountall-bootclean if started insserv: loop involving service mountall-bootclean at depth 6 insserv: loop involving service mountall at depth 5 insserv: There is a loop between service rmnologin and checkroot if started insserv: loop involving service checkroot at depth 3 insserv: loop involving service keyboard-setup at depth 2 insserv: loop involving service hwclock at depth 3 insserv: There is a loop between service rmnologin and udev if started insserv: loop involving service udev at depth 1 insserv: loop involving service checkfs at depth 5 insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Starting OpManagerServer depends on rmnologin and therefore on system facility `$all' which can not be true! insserv: Max recursions depth 99 reached insserv: loop involving service irqbalance at depth 2 insserv: There is a loop at service OpManagerServer if started insserv: loop involving service rsyslog at depth 13 insserv: loop involving service OpManagerServer at depth 1 insserv: loop involving service mountkernfs at depth 1 insserv: exiting now without changing boot order! update-rc.d: error: insserv rejected the script header dpkg: erreur de traitement du paquet samba (--configure) : le sous-processus script post-installation installé a retourné une erreur de sortie d'état 1 dpkg: des problèmes de dépendances empêchent la configuration de winbind : winbind dépend de samba (= 2:4.2.14+dfsg-0+deb8u2) ; cependant : Le paquet samba n'est pas encore configuré. dpkg: erreur de traitement du paquet winbind (--configure) : problèmes de dépendances - laissé non configuré dpkg: des problèmes de dépendances empêchent la configuration de libpam-winbind:i386 : libpam-winbind:i386 dépend de winbind (= 2:4.2.14+dfsg-0+deb8u2) ; cependant : Le paquet winbind n'est pas encore configuré. dpkg: erreur de traitement du paquet libpam-winbind:i386 (--configure) : problèmes de dépendances - laissé non configuré dpkg: des problèmes de dépendances empêchent la configuration de libnss-winbind:i386 : libnss-winbind:i386 dépend de winbind (= 2:4.2.14+dfsg-0+deb8u2) ; cependant : Le paquet winbind n'est pas encore configuré. dpkg: erreur de traitement du paquet libnss-winbind:i386 (--configure) : problèmes de dépendances - laissé non configuré Des erreurs ont été rencontrées pendant l'exécution : samba winbind libpam-winbind:i386 libnss-winbind:i386


Thankfully, Samba and everything other than dpkg seemed to work perfectly, but to get rid of this nastiness, I had to add a dummy LSB header to /etc/init.d/OpManagerServer:

### BEGIN INIT INFO # Dummy LSB header # Required-Start: $remote_fs # Required-Stop: $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start or stop ManageEngine NetFlow Analyzer ### END INIT INFO

And then run

# insserv /etc/init.d/OpManagerServer


This is apparently the result of Debian bug #587587.

Unintentionally coined terms

admin Wednesday December 14, 2016

This week our network was hit by the Osiris ransomware. Ransomware is a huge waste of time, but perhaps not as much as the term I unintentionally coined today: randomware.

I still have to reflect on whether randomware can include hardware and settle on a precise definition. Typos in source code are usually a source of bugs and a perceived higher randomness. Rarely do typos provide such an opportunity. I cannot believe that an anti-randomware activist became the person who would coin the term "randomware" coincidentally. I take this apparent chance very seriously and will carefully craft the best definition possible before making it official; no coin-flipping involved in this historical task.

Windows Firewall: a threat waiting for any occasion to strike

admin Saturday September 17, 2016

Just 4 days after writing Windows Firewall dangers - Is your Windows [8] PC's networking broken after you joined a domain?, I did my first major Windows upgrade (from Windows 7). And noticed that Windows Firewall had been completely re-enabled, as well as the warnings telling you that Windows Firewall is disabled.

Not even a year later, that same PC was hit by Windows 10 Anniversary Update, which caused the very same issues. But I finally understood what happened this time. When Windows upgrades, it assumes it knows better than the administrator and re-enables warnings about the Windows Firewall being disabled, which causes a notification to appear in the notification pane. The administrator who does not know by heart how to re-disable warnings might click that notification hoping to be offered to get rid of these. Unfortunately, the only visible effect of clicking that notification is that the notification disappears. But that is not the only effect. When that notification receives a single click, Windows re-enables the firewall, without providing any feedback to that effect. Brilliant deceptiveness!

Oh, Microsoft. How could we earn such a direct ticket to Heaven if it wasn't for enduring you and your silly tricks? I'll refrain from explaining how pitiful the upgrade to Windows 10 and then Windows 10 Anniversary Update was until I find an answer to that question.

DEWALT Multi-Bit Ratcheting Screwdriver: Avoid

admin Monday September 5, 2016

When I got my hands on the DEWALT Ratcheting Screwdriver, it took me 5 minutes to tell whether I would use it as a multi-bit screwdriver. The weird mountable rack it came with made me wonder if it could store all of its bits inside the handle. After I decided to try it, I opened the package and put the bits in the internal bit storage. After putting 1 or 2 bits, I struggled to put the next in place. At first, I thought there must have been a manufacturing defect. But after trying more slots and bits, and considering the mountable rack, I started to smell a design error.

And indeed, the online reviews are poor. This review of a variant of mine says it all. Visibly, Dewalt didn't intend to have internal storage initially and rushed a broken solution. Or, it tried to patch its faulty internal storage with the mountable rack.

In any case, if you are looking for a multi-bit screwdriver, do the world a favor and do not encourage DEWALT by buying its ratcheting screwdriver.

SQL Anywhere and Interactive SQL quietly losing transactions in default configurations

admin Wednesday July 20, 2016

SAP SQL Anywhere and its GUI Sybase Central (now SQL Central) have been part of my 5 most important tools for 4 years now. A few times, I noticed some oddities, but it wasn't until yesterday that I realized what was going on.

First, Interactive SQL starts transactions which are not automatically committed. By default, commits happen when closing or disconnecting (see the SQL Anywhere tab in Options). There is no warning to that effect. Second, the default SQL Anywhere isolation level for database transactions (at least in versions 11 to 17) is 0, "read uncommitted": http://dcx.sap.com/index.html#sqla170/en/html/3bf0ef526c5f1014b372935839b121fc.html
Which means that the changes from uncommitted transactions are all visible, from different sessions and even from different users. Which is why I did not realize how Interactive SQL behaved before now.

So far, this may be surprising, but perhaps nothing incorrect. Unfortunately, this comes with a ultimate surprise. When you execute a query in Interactive SQL in these default configurations, the transaction started is not committed. And after some time, it appears that the transaction is quietly cancelled, automatically. I reproduced this at the first attempt. If the abortion was indeed triggered by a timeout, I do not know how long the delay is, but it is inferior to 16 hours. The Interactive SQL window was still open, there was no popup, nor any indication that the transaction had expired. The Interactive SQL closed normally, without indicating that the transaction had timed out.

This happened with Sybase Central 16 and SQL Anywhere 11. Commit after every statement will workaround this, but will not cause automatic commits when modifying with the results table (either modifying cells or deleting rows).

Transactions are great, but when implemented properly. Thinking about all the manipulations which we must have lost due to this bug leaves a taste which is quite bitter, and certainly not ACID.

Fully Free

Kune ni povos is seriously freethough not completely humor-free:

  • Free to read,
  • free to copy,
  • free to republish;
  • freely licensed.
  • Free from influenceOriginal content on Kune ni povos is created independently. KNP is entirely funded by its freethinker-in-chief and author, and does not receive any more funding from any corporation, government or think tank, or any other entity, whether private or public., advertisement-free
  • Calorie-free*But also recipe-free
  • Disinformation-free, stupidity-free
  • Bias-free, opinion-free*OK, feel free to disagree on the latter.
  • Powered by a free CMS...
  • ...running on a free OS...
  • ...hosted on a server sharedby a great friend for free