1 |
On Tue, 18 Dec 2012 17:55:16 -0500, Michael Mol wrote: |
2 |
|
3 |
> > #2 already has a solution, it's called an init*. Other solutions exist |
4 |
> > but none are as elegant as a throwaway temporary filesystem in RAM. |
5 |
> |
6 |
> I find virtually nothing elegant about a temporary filesystem in RAM. |
7 |
> It duplicates code that already exists on the system, and it |
8 |
> represents and additional maintenance step in system upgrades. It |
9 |
> seems almost a given that if someone is keeping multiple kernel images |
10 |
> on a system, they're not updating the initr* for each when binaries |
11 |
> that would be found in each are upgraded or rebuilt. |
12 |
|
13 |
I don't use separate initr* files, the initramfs is built into the |
14 |
kernel, using the latest versions of the tools installed at the time the |
15 |
kernel was compiled. That gives a single bootable file that, if it works |
16 |
now, should always work. Most changes to the component packages do not |
17 |
affect the simple job they have to do to get a system ready to run init. |
18 |
|
19 |
> In Debian, Ubuntu and others, this is handled by a post-install hook |
20 |
> where the initr* image is rebuilt. To me, this honestly feels like a |
21 |
> hack. In something like Gentoo, I'd rather see package placement |
22 |
> driven by whether or not it will be needed to get all mount points |
23 |
> mounted. If that means i18n databases under something like /boot/data, |
24 |
> that seems reasonable. To me, the only cases where initr* feels like |
25 |
> the right solution are things like netboot or booting from read-only |
26 |
|
27 |
Or / on LVM, or / on an encrypted filesystem. or any other requirement |
28 |
for a filesystem that cannot be used without adding code to the kernel. |
29 |
|
30 |
|
31 |
-- |
32 |
Neil Bothwick |
33 |
|
34 |
WinErr 002: No Error - Yet |