عنوان هذا المقال يقرأ تقريبا مثل النقر الطعم, ولكن ليس هذا هو القصد. أريد فقط بل بدت مثل النقر الطعم من خرف أنه حقا.
Let me start by saying that I currently run 2 unix-based systems, لينكس القائم VPS (التي تدير هذا الموقع) 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…
أنا وضعت مؤخرا مربع pfsense كجهاز توجيه المنزل (as I wrote about on 21ش تشرين الثاني كانت وخجولة، تشرين). بعد 5 days of successful operation that web interface advised me that there was an update available from 2.4.1 إلى 2.4.2. There was an option to install the update from the web interface which I opted to use. استغرق التحديث حول 60 seconds to install and the system then announced it was rebooting and the web interface would refresh in 90 seconds. بعد 90 seconds the system was still not responsive, and despite my waiting about 20 دقائق كان لا يزال هناك استجابة من مربع. 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. كان يجري الآن متفائل جدا.
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. حاولت غوغلينغ (عبر هاتفي) 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, خطوط إرشاد, المشاركات, 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, فأنت إما أن تجد أي إجابة, أو تجد وظيفة فيها شخص آخر قد سأل وتم سخرت, أو (أفضل حالة!) 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.
وحتى الآن سيئة للغاية, 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, و (no surprise) أثبتت غوغلينغ مضيعة للوقت. 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) كانت هناك 2 خطوات إلى الوراء (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. ومع ذلك, 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, وثانيا كان أكثر 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 في ذلك الوقت أنه ل* لا شىء الآن, 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. أتمنى (ولكن لا تحمل الكثير من الأمل) 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, لأنه بدون هذا, 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.
في صحتك.
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.