O título deste artigo quase lê como click-isca, mas que não é a intenção. Eu tinha acabado de vez soou como click-isca que o discurso que ele realmente é.
Let me start by saying that I currently run 2 unix-based systems, a-linux baseado VPS (que corre neste site) and a BSD-based firewall box at home. I’ve written about both several times already. In both cases I run these *nix based systems as I believe in using the best tool for the job, but I was somewhat reluctant to start with and I still regularly find they reduce me to cursing. I teach teenagers for a real job, but I find the *nix based systems I operate cause me vastly more irritation and frustration. Let me elaborate with a recent example…
Recentemente criei uma caixa pfsense como um roteador em casa (as I wrote about on 21st November). Depois 5 days of successful operation that web interface advised me that there was an update available from 2.4.1 para 2.4.2. There was an option to install the update from the web interface which I opted to use. A atualização levou cerca 60 seconds to install and the system then announced it was rebooting and the web interface would refresh in 90 segundos. Depois 90 seconds the system was still not responsive, and despite my waiting about 20 minutos ainda não havia resposta da caixa. With considerable frustration I unplugged the box and moved it into the room where I have a monitor and keyboard, connected it up and powered up, expecting some issue with the IP address or with the allocation of the LAN ports. Eu estava sendo demasiado optimistas.
Instead I was greeted by the bootloader announcing that it was unable to find “loader.efi”. In fact there was a sequence of potentially useful information that I would normally associate with a drive failure or corruption, including “ZFS found no pools”, “no bootable partitions found”, “failed to read size of boot/loader.efi”, “failed to load loader.efi” and something I can’t remember precisely about a panic. Eu tentei googling (através do meu telefone) a series of these phrases but some came up with no results at all, and others came up with what appeared to be the open source code that outputs the errors, but nothing else.
This was the point at which I started to curse the system — the problem of “no help” is an infuriatingly common one with *nix systems — for some reason the attitude of many people seems to be that if you can’t solve it yourself you’re too dumb to be allowed to use their “superior” systems. By this I don’t mean the official developers, I mean the global community of users. Just try googling for a boot partition problem on a windows system and you will find 10’s of millions of articles, guias, mensagens, utilities and more all offering to help, and whilst it sometimes takes some wading through, there is normally something that works. With *nix you might as well not bother even googling, você vai ou não encontrar nenhuma resposta, ou você vai encontrar um post onde alguém pediu e foi zombado, ou (melhor caso!) you’ll find an answer so undecipherable that you have to spend another 3 days reading to learn how to understand the answer. This state of affairs is would be laughable if it wasn’t for the fact that you *nix based system is usually doing something important and you need to fix it PDQ, and consequently I think this situation is pathetic and contemptible.
Até agora tão ruim, but it doesn’t get better. I eventually gave up on “fixing” the problem and decided I’d just do a full reinstall to get things back up and running as quickly as possible before my wife started complaining about the total lack of Internet access. I discovered that it is possible to restore the settings file from a previous install during installation that I chose this option during installation. I was offered a choice of which partition I wanted to restore the file from. I didn’t know which partition it was located on, e (no surprise) googling provou ser um desperdício de tempo. I figured I’d just pick a partition and see what happened. The screen flashed very briefly and installation offered to continue. Unsure if the flash had revealed success or failure I decided to reboot the system and try again, only this time I used my phone to film the screen so that I could actually read the message. Having to do this in itself demonstrates yet more pathetic stupidity — what good is a message if it is displayed so briefly that no human can read it?
My phone trickery was successful and I was able to read the message. I had chosen the wrong partition, but the installer had searched all of the partitions and found the settings file anyway. This begs the question — what is the point in asking me to choose a partition if you’re then going to search all of them anyway? Yet more stupid behaviour, but at least the settings file was successfully located. I then proceeded with the installation which was successful and did restore the settings as hoped. The eventual upshot of all this was that after about 3 hours of frustration I was able to get back to a working system, but no thanks to any help from anyone else, and for every step forward from the developers (option to recover settings) havia 2 passos para trás (can’t read the message, had to select a partition which was then ignored).
The whole experience took me back to the bad old days of Windows 95 — which often failed for unexpected reasons, requiring reinstallation. No entanto, several things actually make this more excusable for Windows 95 — firstly there wasn’t really much in the way of a world wide web back in the mid 1990’s, e em segundo lugar que era mais 20 years ago and technology is supposed to have moved on since then! Most importantly — even without the web, help from other people was easier to come by for Windows 95 naquela época que é para * nix agora, a situation that it unforgivable.
To avoid this article being just a rant I have tried to include as many of the “google whack” phrases I encountered in the hope that it may help other people. I will endeavour to write up all of the problems I encounter and manage to solve with my *nix systems in a way that is as accessible as possible. Eu desejo (mas não muita esperança) that the ridiculousness of this sort of experience will gradually dawn on more of the *nix community and that in the future there will be more productive and supportive sharing of ideas and advice, porque sem esta, there is no way that *nix will ever achieve mainstream acceptance.
I know this is a somewhat old post, and while I.understand your frustration at the events that unfolded — I wouldn’t necessarily blame the OS entirely on not finding the boot partition upon reboot. While I’m sure it could very well happen to the best of us; such boxes can literally go weeks, months and some times years without needing to reboot and that partition could very well have been erased on accident (far fetched I know, but things happen) weeks before having another reboot and bam. EFI is gone.
It also could very well be a hardware issue (as an example), but *nix based OS ’s have proven solid for decades. Linux is still fairly young compared.
Anyhow… There are tons of info out there on repairing boot partitions, I guess people just need to think outside the box. OSX is a branch of BSD for example and such info can be used visa versa in many ways.
Seems strange that PFSense would need a full reboot of the system verses killing it then a.terminal refresh.
Felicidades.
Cheers for taking the time to share your thoughts! If a few more people did that in the *nix world things would be much better. Since this article I have had no further problems with my pfsense box, although there has only been 1 update since which I installed via the command line / SSH.