On 12/28/2016 05:40 PM, L A Walsh wrote:
Have you ever built your own kernel?
Not since I started using openSuse. Well, maybe. If you 'compile from source", the see above. if you mean buqqer around with mkinitrd to include and omit -- and its a LOT easier with Dracut! -- then yes.
As a start, look at output of: sudo lspci -k|grep kernel|cut -d: -f2|sort|uniq
That needs "grep -i"
That will show you modules that you should *likely* build into your kernel as they are drivers for _your_ machine's hardware, though not all of them are needed for boot. For example, probably don't need network to boot unless you boot from net.
Ah, "probably". If I'm not booting from the net then I cant see why I should. What exception are you thinking of? By the same reasoning, I should be able to eliminate RAID (md and dm), all of CRYPTO/LUKS, and all of USB. Perhaps the serial port can go too. This is only booting this specific machine, its not a generic, portable kernel such as we get on the DVD. What else don't I need? I'm reminded of the scene in book/movie "The Martian" where he's stripping the rocket down to reduce weight. oops, there goes the crash couch! its going to be a rough ride without that.
"lsmod", will show you what modules have been dynamically loaded, while "ls /sys/module" will show you all modules the kernel has builtin OR dynamically loaded.
Hmm. I (still) can't see where the ext[234] driver is, but I do note that BtrFS requires a few other modules like XOR and raid6_pq. More incentive to go for a ext4 RootFS, eh?
For example, I have everything except /boot and SWAP on LVM. That includes the ROOTFS. So the LVM modules needs to be included in initrd.
Yes, the initrd becomes bigger.
Yes, but I absolutely need LVM.
--- Do you need your rootfs to be LVM?
I am @#$$%$#@ sick and tired of having the RootFS grow and having to take down the disk and shuffle partitions around. I use the predecessor to LVM on an IBM AID years go and had great joy rearranging a DB@ database for balance and performance across 96 spindles! Oh, joy! oh. tabulations! Having /usr as part of the RootFS is ... not nice. It complicates provisioning.
FWIW, My 12G root is about half full.
I think if I could have /usr on a separate FS as of old and this whole stillness of where the binaries live sorted out, then yes my RootFS would be a LOT smaller. But I don't want to follow your approach; I want to have a system that follows an upgrade path as delivered.
I wanted to minimize software complexity involved in booting root. I also wanted to constrain it at the start of the disk to limit seeks for reading the root files, so it is the 1st partition with only the 1st half of the disk used for content (short-stroking), also to limit seek latency on 15K SAS disks.
I recall from the 1970s and 1980s a lot of papers about disk latency, rotational spacing when doing a MKFS, how the Berkeley Fast File System approached that, the idea of inverted FS so that inodes were groups adjacently on single RM02 drives with "/" and "usr" (in the days before we had "/home"). I remember experimenting with a DEC 8-drive controller (but only one data path at a time). It was all quite pointless. Every optimization was promptly outclassed by and advance in the disk technology. When I worked on optical storage, every advance in rewritable magneto-optical was matched by the same advance in plain magnetics. Now we have SSDs that are dirt cheap. My core system, that is without /home (and all my photographs) and the web stuff on /srv (not the least of which is ownCloud for my home WLAN and mobile devices) will fit on a 60G pci-e insert that I can get for less than router cost. Check eBay for example. If I omit /srv and the ~anton/Photographs and ~anton/Movies and ~anton/music then everything including /usr/share can fit, comfortably, on a 120G SSD. I might just do that some time next year. Santa didn't deliver on the SSD :-( So the kind of optimization you talk about becomes irrelevant. My home system has to live by the whim of my free time and what's left over after mortgage and food; you're in a commercial setting. You can probably make budget submission :-) Goodluck!
Well, there's
* what don't I need if all I'm doing is a regular boot?
--- My initial boot uses 'B'oot mode (i.e.: /etc/rc.d/boot.d, pre-SysD):
And in this day and age when openSuse ships with systemd, you have to maintain that by hand. Something I'm not willing to do. [Big snip about using stuff in /etc/rc.d etc etc which I grew up with and to be honest am glad is past. I much prefer systemd.] -- Man is fed with fables through life, and leaves it in the belief he knows something of what has been passing, when in truth he has known nothing but what has passed under his own eye. --Thomas Jefferson -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org