maestro-os / maestro

Unix-like kernel written in Rust
https://blog.lenot.re
GNU Affero General Public License v3.0
2.93k stars 93 forks source link

bad filesystem/partition layout #8

Open mirabilos opened 9 months ago

mirabilos commented 9 months ago

After installing, I tried to mount the filesystems from the host in order to copy files over.

I could mount /boot but only after fixing tons of e2fsck errors, I could not mount / at all, and the disc now does not boot any more either (enters GRUB rescue mode).

I suspect that something does not honour the partition layout (and, arrrgh why do you use GPT?) correctly.

kpartx also says that one of the two GPT copies is corrupt.

I think this will lead to data loss.

(I just wanted to look whether my shell works. It’s more liberally licenced than GNU bash, leaner and faster. If you want, get the Debian package, extract usr/lib/i386-linux-musl/bin/mksh from the inside (it’s statically linked) and copy it over. Also put usr/share/doc/mksh/examples/dot.mkshrc as ~/.mkshrc.)

llenotre commented 9 months ago

Thank you for the bug report! Before trying to make fixes, I urgently need to refactor the codebase, this is absolutely necessary. So I will need some time.

I will take a look at your shell. For the support of Perl (referring to this), it will be coming at the same time as I start testing compilers, right after adding network support.

For the license, I have to admit I am not sure what to use. There is an ongoing war around the project about this very subject.

and, arrrgh why do you use GPT?

What is wrong exactly with GPT? What would you recommend using instead?

mirabilos commented 9 months ago

Luc Lenôtre dixit:

I will take a look at your shell.

Great ;-)

For the support of Perl (referring to […]), it will be coming at the same time as I start testing compilers, right after adding network support.

Should be fine.

Here, it’s used as testsuite runner. I should look into making it possible to run the testsuite with the shell itself, which is a bit bad because it has the chance to not catch things, but…

For the license, I have to admit I am not sure what to use. There is an ongoing war around the project about this very subject.

Let me speak in favour of the “copycentre” solution (as opposed to “copyright” and “copyleft”), being a BSD person. I particularily like https://mbsd.evolvis.org/MirOS-Licence.htm (having written that one myself), and it’s EU-focussed, not america-focussed.

and, arrrgh why do you use GPT?

What is wrong exactly with GPT? What would you use recommend using instead?

Just MBR? Much simpler, and sufficient for 32-bit OSes. I even use it on all GNU/Linux installations. I just was… surprised and not having tools at hand to debug it.

bye, //mirabilos -- I believe no one can invent an algorithm. One just happens to hit upon it when God enlightens him. Or only God invents algorithms, we merely copy them. If you don't believe in God, just consider God as Nature if you won't deny existence. -- Coywolf Qi Hunt

workingjubilee commented 9 months ago

People who write OS kernels are rarely non-ambitious people, however, and are unlikely to settle for 32-bit x86 support.

llenotre commented 9 months ago

People who write OS kernels are rarely non-ambitious people, however, and are unlikely to settle for 32-bit x86 support.

Indeed, 64 bits support is absolutely on my roadmap.