#17193 closed enhancement (no change required)
System Recovery Environment
Reported by: | jt15s | Owned by: | nobody |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | - General | Version: | R1/beta3 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
There is currently no way to repair Haiku from within the OS itself, so if there are any issues with the OS one must have an ISO on hand and overwrite the installation somehow.
Additionally, Haiku has system snapshots but there is currently no way to restore the OS to certain system snapshots.
Thus, it is proposed that a lightweight system recovery environment separate from the OS be implemented, so even if the OS doesn't boot users can still recover from issues.
Presumably, the environment would lie in another partition, similar to how WindowsRE is partitioned so if the Haiku partition is corrupted the recovery tools are isolated. It would be accessed from a menu option in BootMan and would be an optional but recommended install option for Haiku (i.e. there would be a pre-ticked box in Installer to install this environment but users can opt out). The environment would be designed to be as simple, lightweight and fast as possible (probably a text-only implementation or a very lightweight graphical UI).
The environment would offer two options:
- Restoring the OS to a certain system snapshot
- If there are no system snapshots available, downloading and reinstalling Haiku system files from the Internet
I'm not too sure whether there should be other options such as being able to reset the OS or options for diagnostic and repair tools, but this is what I've thought of so far.
Thoughts?
Change History (11)
comment:1 by , 3 years ago
comment:2 by , 3 years ago
Ah, I didn't know about the tools to restore installs, is that documented in the User Guide somewhere?
The second option is basically an OS reinstallation option, it would download system files from the Internet and then reinstall the system files, so there would be no need to hold any OS files in the recovery partition.
comment:3 by , 3 years ago
Well, your first suggestion is to restore to a specific state, the bootloader does that already, is there something more needed? If you are in a working state you can make it more permanent afaik, but we could provide more gui tooling for this.
The second suggestion would be a net installer basically, we could do that. If you want to make this accessible from the boot loader I don't see a value in a second partition, does this provide any more protection?
comment:4 by , 3 years ago
Haiku does not need a recovery environment! It is a Haiku/BeOs feature!
Just reinstall the working system your /home folder will survive!
comment:5 by , 3 years ago
Well, your first suggestion is to restore to a specific state, the bootloader does that already, is there something more needed?
IMO it'd be very useful to have a way to permanently revert back to a specific state and not having to enter the boot options every time.
comment:6 by , 3 years ago
Normally I'd just install the revision I want from that working state again, do you propose a functionality to have the entire state restored to a specific one? that could be a good UI feature.
comment:7 by , 3 years ago
Yeah, I think having the functionality to restore the entire state to a specific one would be good. And yes, having more GUI tooling plus better documentation on this would help as well.
The net installation feature was inspired by the "cloud reset" function Windows has on their recovery environment, I guess we could bundle it with Bootman or with the OS.
follow-up: 10 comment:8 by , 3 years ago
Resolution: | → no change required |
---|---|
Status: | new → closed |
Things you can do from the boot menu:
- Failsafe mode
- Boot any previous state of your install
With the combination of these two you get all you need to repair your install. I don't understand what else you need.
As for documentation, this is covered in the user guide: https://www.haiku-os.org/docs/userguide/en/bootloader.html in the troobleshooting section.
If you have broken your install in a way that you can't boot it anymore, I don't understand how a GUI tool could be useful since you will be unable to run that. You will have to do with the bootloader menu, which is text mode, but is still an easy to navigate menu.
comment:10 by , 3 years ago
Replying to pulkomandy:
Things you can do from the boot menu:
- Failsafe mode
- Boot any previous state of your install
With the combination of these two you get all you need to repair your install. I don't understand what else you need.
What I haven't found out yet: Suppose I update Haiku and afterwards some change breaks, say, the intel_extreme driver. How can I revert back to the state before the breakage? Permanently, until I use SoftwareUpdater again, without having to enter the boot menu on every boot.
Also, if I have to manually load that specific last working state, I can't install any new app because that would create another state that comes after the last working state.
Am I missing something?
comment:11 by , 3 years ago
Yes, that part is not so easy to do yet. You would have to examine the activated-packages file and move files in and out of the states directories so that the default state matches the currently activated packages, I think.
Allowing to install new apps from this situation sounds like a bad idea to me, because you will end up with a tree of different states (with multiple branches) rather than a single linear history. Unless installing a new app automatically deletes all "future" states in another branch?
I think this is meant as an emergency/recovery tool only: to manage to boot some version of Haiku, and from there, do the necessary "repairs": delete the package that prevents booting, blacklist a driver, remove a corrupt config file, that kind of thing. And then reboot back to your normal install.
This seems way too complex, Haiku has severall tools available to restore installs, including the mentioned snapshots, which you can boot very easily. If sou reach a point where those things no longer work sou basically have an install so far gone that you need to reinstall the OS, which would mean the rescue partition would need to hold the os installation again or so.
I don't think this is needed tbh.