Re: PATCH to support dotted base directory names

Rick Hohensee (humbubba@smarty.smart.net)
Fri, 9 Jul 1999 16:32:48 -0400 (EDT)


>
> On Fri, Jul 09, 1999 at 05:56:50AM -0400, Rick Hohensee wrote:
> > execve("/etc/init",argv_init,envp_init);
> > execve("/bin/init",argv_init,envp_init);
> > execve("/bin/sh",argv_init,envp_init);
> > - panic("No init found. Try passing init= option to kernel.");
> > + execve("/.sbi/init",argv_init,envp_init);
> > + execve("/.bi/bash",argv_init,envp_init);
> > + panic("No init or shell found. Try passing init=</path/to/command>"
> > + " to the kernel with your bootloader.");
>
> I don't see why we need this in the kernel. Your distribution can
> (as you evidently know) pass `init=/.sbi/init' to the kernel, so why
> do we need this? Is there actually a good reason we have /etc/init
> and /bin/init in there still? Has any distribution in the last 5
> years not put init in /sbin?

My "distribution" can't because I don't use a bootloader at install time.
Install versions of the kernel I use may well not have the

> > + panic("No init or shell found. Try passing
init=</path/to/command>"
> > + " to the kernel with your bootloader.");

This is *much* simpler than using a bootloader. Are bootloaders
multi-lingual? (Does lilo do Dvorak? I've been typing "local" in
cross-keymapping lately.) This is very trivial code. The capabilities it
adds to user-space are tremendous compared to the cost. For those who
equate complexity to validity, or sophistication, this allows an
install-time script to select a file hierarchy language. Some prefer unix.
I prefer English. You might prefer Multics or AmigaDos. This is the
simplest way to offer a choice. I don't think you're opposed to the code,
though. Surely not. I think you're opposed to the choice.

I have...

$ cLIeNUX0 /dev/tty1 r 15:47:46 /
$ls -F /
ABOUT README dev/ lost+found/ source/
ABOUT.ABOUT boot/ floppy/ mount/ subroutine/
ABOUT.kernel cLIeNUX.jpg help/ notes suite/
CD/ command/ kernel/ owner/ tmp/
COPYING configure/ log/ scratch/ user/
$ cLIeNUX0 /dev/tty1 r 16:10:51 /
$

tmp/ and notes above are extranaities I just happen to have in / at the
moment.
Where's the /sbin equivalent? /.sbi is a symlink to /command/background.

More simplicity; this is the converter to convert almost anything to this
dotted namespace.

$get /command/background/edin
#!/command/bash
## ed scripts to convert binaries, scripts and source to DSFH,
## Dotted Standard Filename Hierarchy

## ed exits on an error when scripted, so to to each test string
## independant of the others we do ed in echelon for each string.

## don't edin edin
if [ "$1" != "edin" ];

then
{

ed $1 <<HEREDOC
,s!/var/!/.va/!g
w
q
HEREDOC

ed $1 <<HEREDOC
,s!/lib/!/.li/!g
w
q
HEREDOC

ed $1 <<HEREDOC
,s!/bin/!/.bi/!g
w
q
HEREDOC

ed $1 <<HEREDOC
,s!/sbin/!/.sbi/!g
w
q
HEREDOC

ed $1 <<HEREDOC
,s!/etc/!/.et/!g
w
q
HEREDOC

ed $1 <<HEREDOC
,s!/root/!/.roo/!g
w
q
HEREDOC
ed $1 <<HEREDOC
,s!/proc/!/.pro/!g
w
q
HEREDOC

ed $1 <<HEREDOC
,s!/tmp/!/.tm/!g
w
q
HEREDOC

ed $1 <<HEREDOC
,s!/usr/!/.us/!g
w
q
HEREDOC

}
else
echo "You sure don't want to edin edin."
fi

>
> --
> Matthew Wilcox <willy@bofh.ai>
> "Windows and MacOS are products, contrived by engineers in the service of
> specific companies. Unix, by contrast, is not so much a product as it is a
> painstakingly compiled oral history of the hacker subculture." - N Stephenson

IN ONE LANGUAGE ONLY GODDAMNIT
:o)
>

Rick Hohensee
Why open the source with a closed mind?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/