Page 1 of 1

Rolling your own linux

Posted: Wed Jan 02, 2008 9:47 pm
by Zacariaz
Well, i never really got into that osdev thingy, but ill try again at some point, but for now i'm more into linux, how it works and stuff.

I have been looking into what it takes to tailor you own kernel and core enviroment and it seems that, given enough time, even i can do it. However i have yet to figure out "where to start".

I'm sure many of you have played around with this and there for i ask your advice.

"Why?" You ask? Well, i bet it's a great way to learn, so i'll take a wack at it, but for now i have trouble even figuring out what to google for.

Anyway, thanks at least for reading this ;)

ok

Posted: Wed Jan 02, 2008 10:30 pm
by com1
ok so i am thinking that you are wanting to 'roll your own linux' just as you stated in your title. have you checked out LFS (Linux From Scratch) ? they have great resources for people wanting to learn about Linux internals, and if you follow the tutorial correctly, you end up with a Linux OS you made yourself. also, there are some online docs that you can find on the Linux website that describe Linux internals. if you are looking for in depth studying, may i recommend 'The Linux Kernel' (cant remember author hehe), i believe it is published by O'Reilly publishers. have fun.

Posted: Thu Jan 03, 2008 12:13 am
by Zacariaz
i actually had visited the lfs homepage, but i didnt really find any usefull information, however after i visited it again i figured out that it was just me being blind and confused over the navigation or something, anyway thanks.

Ill be sure to get back on this,

your welcome

Posted: Thu Jan 03, 2008 1:06 am
by com1
your welcome, good luck! i once tried LFS once on my Ubuntu box and actually got pretty far w/it

Posted: Thu Jan 03, 2008 2:03 pm
by lukem95
don't mean to sound at all rude, but with 500+ posts and you dont get osdev??

do i not understand?

Posted: Thu Jan 03, 2008 2:10 pm
by crazygray1
I think he means he didn't get really interested in in. :)

Posted: Thu Jan 03, 2008 4:03 pm
by Alboin
lukem_95 wrote:don't mean to sound at all rude, but with 500+ posts and you dont get osdev??

do i not understand?
This is not a strictly osdev related forum.

IIRC, most of his posts are in General Programming anyway.

Posted: Thu Jan 03, 2008 7:15 pm
by Zacariaz
Oh im interested allright, but i think i lag some skill in certain areas and i might not be dedicated enough.

And its true, most of my posts are is generel ramblings, i hope you dont mind, but this is a really great forum and i'd rather ask my questions here where im sure to get a useable answer.

Posted: Fri Jan 04, 2008 9:23 am
by binutils
wayttd?

i mean if you are good at c programming, try to see the kernel source code, and sources of base system utilities listed in lfs, for example, binutils, coreutils, findutils, grep, m4, bison, flex, grub etc.

else if you just want familiar with user-level linux base, just use it as your daily os, for example, web surfing, installing software, etc.

--
PS: use perl.

Creating ur Linux distro ..

Posted: Mon Jan 07, 2008 12:10 pm
by DeletedAccount
Hi ,
May be i can help you with creating your own linux distro ... The easiest way is to use busybox and UCLibc to build your own linux ... Compiling from sources is very frustrtating and takes a looong time ... The first thing you need is an empty partition preferablly formatted in ext fs ...
fdisk or cfdisk (whatever to create a partition);
the mke2fs part_name

now download the roofsxxxxx.ext2 from the uClibc , busbox ... extract this into the partition you just created ... and mount it ..
eg mount /dev/hdaxx my_directory
and then do a chroot
eg chroot my_directory ...
copy a recent version of linux kernel into the partion ..compile it and install lilo or grub for loading it ... you should now make modifications to essential files like fstab initab etc .. see how it is done in your host linux system ...
now compile and install the apps you really need ...Now you are done!!

Posted: Mon Jan 07, 2008 12:20 pm
by xyzzy
That's not creating your own linux, it's using a prebuilt set of binaries and libraries and building your own kernel. Plus, you still have to build from source to get apps you need, and if you want to, say, use it as a desktop OS, uClibc really isn't suitable. You'd be far better off with LFS, IMO.

Yes its using prebuilt binaries

Posted: Tue Jan 08, 2008 1:08 am
by DeletedAccount
Yes ,
You are correct ... But nothing is to be gained by building everything from scratch ( i have done this and wasted a lot of time .... ) There is no point in wasting a lot of time for this ... time i think is better spent in modifying an existing system like knoppix or debian ... This saves a lot of time and effort :) If you are that particular .. you can build uClibc and gcc toolchain etc from the source itself ... I just somehow assumed that original creator of the thread just wanted to create a simple linux distro for his purpose ..... LFS is good if you have lot of time and patience .....

Posted: Tue Jan 08, 2008 1:15 am
by xyzzy
Yes, well LFS is way better to learn from - the book is great at explaining how each individual part of a Linux system works, and how they link together. I learned a lot the first time I built LFS (wow, LFS 3.0... long time ago ;) ).

Posted: Tue Jan 08, 2008 2:23 am
by Zacariaz
I dont want to create a simple linux dist i want to create the PERFECT ONE! MUHAHAHA.

Anyway, its all about learning how things work.

Posted: Tue Jan 08, 2008 10:04 am
by Solar
Nope... making a distro (as in "distributing to others") is about having the know-how, manpower, and infrastructure to keep up with "upstream".

A new version of package X is released, fixing - among others - a critical security bug. You have to make this new package available to your users, but it breaks compatibility with package Y, so you have to make an update to that available too - if it exists yet, and if you catch the problem before you release the X update.

Otherwise, your users will have to figure out themselves, and won't be pleased with that.

Check out http://bugs.gentoo.org to see the amount of headaches this can result in - and I consider the Gentoo package handling / maintaining system to be the best in the field.