[svlug] LFS and learning Linux: was Problem compiling qtparted-0.5.0

Karen Shaeffer shaeffer at neuralscape.com
Thu Nov 26 20:38:06 PST 2015


On Thu, Nov 26, 2015 at 10:20:11PM -0500, Steve Litt wrote:
> On Thu, 26 Nov 2015 12:47:07 -0700
> Akkana Peck <akkana at shallowsky.com> wrote:
> 
> 
> > Michael, regarding your LFS problem: you mentioned that the reason
> > you're using LFS is to learn more about Linux. 
> 
> The thread has spread all over hither and yon, so I'm only giving my
> opinion of a single thing: Using LFS (Linux From Scratch) to learn more
> about Linux.
> 
> Learning Linux from LFS is something like learning calculus by writing
> a calculus text book. It's a buried shovel and a long trudge, and IMHO
> it's counter to the whole human learning process, which my wife, who
> was a teacher for years, identified as "from the familiar to the
> unknown."
> 
> There's little familiar about LFS to the person needing to learn
> substantially more about Linux. The person trying to  learn Linux from
> LFS will be pulled in a thousand different directions by a thousand
> different distractions, if what I've heard about LFS and seen in its
> documentation is true.
> 
> I've written two books on a process that I call "Rapid Learning", which
> is an extrapolation of what my wife told me. Here's the flowchart for
> Rapid Learning:
> 
> http://troubleshooters.com/bookstore/rl.htm#flowchart
> 
> Learning is fastest when it's incremental. So I'd recommend a process
> somewhat like this:
> 
> * Learn to use Ubuntu.
> * Learn Ubuntu's package manager.
> * Learn some Ubuntu apps.
> * Get some expertise with parted and gparted.
> 	(Do it in a VM so you won't wipe out your disk)
> * Dabble in one or more initramfs creation/modification tools
> 	(Do it in a VM)
> * Install Plop Linux in a VM
> 	* (https://www.plop.at/en/ploplinux/index.html)
> 	* Contemplate the process and reasons for a chroot install
> 	* Switch between Grub and Lilo
> 	* Substitute the Epoch init system for its native sysvinit
> 	* Substitute the Runit init system for its native sysvinit
> 	* Give it a do-nothing initramfs
> 	* Have the initramfs actually mount / and switch_root
> * Install Ubuntu in a VM
> 	* Install with drive encryption, examine everything.
> 		* Especially the initramfs and the installed drivers
> 	* Install with LVM, examine everything.
> 		* Especially the initramfs and the installed drivers
> 	* 
> 	* Use various mount strategies and study.
> * Reproduce your Ubuntu work in Plop
> 	(to the extent the drivers are available).
> * Install Void Linux in a VM
> 	* First, use the void-installer several times.
> 	* Then do a chroot install a few times til you understand.
> 	* Do all the same experiments you did in Plop.
> * Thoroughly learn systemd in a Ubuntu (or Arch or Centos) VM
> 	* Benefits
> 		1) You'll solve systemd problems better than others
> 		2) If you don't like systemd, you'll know exactly why
> * Build a few Gentoo systems, and learn about all the compile options.
> 
> * Now maybe, just maybe, it's time for LFS, and installing LFS will
>   be gratifying and informative, not merely frustrating.
> 
> 
> SteveT
> 
> Steve Litt 

Hi Steve,
+1, you are definitely giving excellent advice here. But even all that
won't be enough to enable Michael to realize his goal.

I have extensive experience with LFS. Its awesome, but its not intended for
folks like Michael to try to do what he wants to do. LFS not only doesn't
have a package manager -- it doesn't have an installer either. Nor does it
have a coherent security model for sustained, maintained, deployments.

Linux from scratch is for folks with extensive experience working with linux
systems engineering and expert low level knowledge of tool chains and complex
build processes. And, if you want to create a usable system, then you need to
deal with the lack of an installer and the lack of package management and
the lack of a coherent security model. These are not trivial problems to
resolve. I've actually done it. It's not a small project.

Adapt and thrive,
Karen
-- 
Karen Shaeffer                 Be aware: If you see an obstacle in your path,
Neuralscape Services           that obstacle is your path.        Zen proverb



More information about the svlug mailing list