Linux Distribution From Scratch - Build Env P1

preview_player
Показать описание
Hi and welcome to the low level devel channel's Building your own linux distribution from scratch series.

The key goals of this series are as follows:
* To give you a deeper understanding of linux based OSs and how they are put together
* Learn the key software package and libraries that are part of every linux distribution
* Learn a good amount of bash shell scripting
* Learn how to do linux system programming in C
* Learn how to put together your own linux OS distribution.

If you aren't familiar with LFS, that's not a problem, but I would encourage you to go through that site as well
and read through the materials they provide, it's a great learning experience. I will use that web site through much
of these videos and as a basis for most of our build packages that we will create, but I won't read all of the details on the
page for each of the packages for you, so if you want to learn more in depth on each of the packages, I would recomment
reading that info from the site.

The first set of videos will be focused on creating a build environment to start building the packages for your linux based OS.
This is an important first step because you want to have a build environment that you can easily re-create and modify when needed and
you don't want your OS to have any dependencies on the host system that you will be developing it on. You will want to be able to build
the packages for your distribution on any host system once it is created.

Speaking of host systems, I will be using Ubuntu 20.04, but you can really use any distribution of linux for this, you just have to ensure
that you have the necessary software packages installed in order to create your build environment.

Github:

Linux From Scratch:

Рекомендации по теме
Комментарии
Автор

Interesting series idea. I do have read couple of books of the subject, but still rarely bothered to actually write software for Linux. Especially what libraries are part of all Linux systems and how they are interfaced sounds interesting. That sort of information sounds useful for understanding how to make program dependencies work reliably.

sakari_n
Автор

Always wanted to do something like this, I'm really looking forward to this series!

kevinescobedo
Автор

Awesome! In 16:04, to avoid "cat abuse" in prepare.sh, you could use

while read line
do
echo "$line"
done < "myfile"

or, in one line,

while read line; do echo "$line"; done < "myfile"

Thanks.

fuscatube
Автор

Great video, This is the kind of series a was searching for.
Thank you very much for making this videos and keep going.

beshralghalil
Автор

this is very helpful! you just earned a new subscriber

bottlerat
Автор

I am getting an error with the export distroot and lfs commands as after running it, it still shows errors even though i exported it to my repo directory and the build root directory.
PLS HELP

UnproCodes
Автор

Great Video! Another alternative is Physix Project, but to each their own. Cheers!

physixprojectlinux
Автор

if im not wrong can we add this feels line for not need to export every time the path,
DIST_ROOT=$(dirname "$(pwd)")
LFS=${DIST_ROOT}/build_root
if [ "$(basename "$(pwd)")" != "build_env" ]; then
echo must be execute in build_env
exit 1
fi
echo "Dist Root: ${DIST_ROOT}"
echo "LFS: ${LFS}"

ripbrain
Автор

Is there something I am doing wrong at 37:04 I am doing the chown command and when I do it his way of Sudo chown -R user:distbuild OsName I found that only the user can make and remove files but if you do it the other way so distbuild:user then distbuild can make and remove files but the user can’t. Why is this happening and how can I fix it?

ginoantenucci
Автор

I get an error saying:
Chown: invalid user: ‘lld:distbuild’

wafflebell
Автор

Better if your videos for LFS numbered in sequence cause your naming for those files is not easy to know which comes first.
Example: 01-Linux Distribution From Scratch - xyz p1
02- Linux Distribution From Scratch - xyz p2

Also there is no play list for each topic in your channel

nbsalemyt
Автор

11:06 basically
export DIST_ROOT=$(pwd) or DIST_ROOT=$(pwd)../
export LFS=$DIST_ROOT/build_root

just look git and it not anywhere set those how can someone know what to do xD
and why scripts have to be so complicated when can do then easy

allready can do kernel+busybox (easy way no hassles just buildlol)
just want kernel+bash and all nessessary boot (this is not it yet) i have read LFS and instructions are...
and yes not want create any partition just build all files lol

JarppaGuru