SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I followed instructions on http://small-slackware.blogspot.com/ to make minimum slackware installation and i managed to cut off even more by erasing man files and files in /usr/doc. is there anything else i can erase to make it even smaller?
That really is a very good howto with very close to the minimum you can install and still have a runnable and extendable system.
The big question is what do you want to be able to do with your installation?
I see a very few packages there which migt be dispensed with:
man & groff (since you don't want man-pages)
cxxlibs (these are libs for programs written in C++ none of the base porgrams use them)
If you can do without udev and use static device files, then you can get rid of udev and device-mapper
You can also get rid of findutils, sed, grep and gawk but you may need them later if you start adding other things...
You can get rid of bzip2 until you need it.
And you can get rid of utempter -it is only needed for xterm.
You can get rid of all the network packages or replace them without whaever is appropriate for your setup.
You can even do without sysklogd if you don't need system logging.
You can leave out less.
The biggest savings you can make out of all that is to get rid of the kernel modules and the huge kernel, by compiling a custom kernel which includes all the features you need hard-linked into the kernel. You can then get rid of module-init-tools as well Saves about 20MB removing these three! Or, since the huge kernel already includes nearly eveyrthing essential, juts use it and leave the modules and module-init-tools out.
You can leave out aaa_elflibs as it contains lots of libraries not needed for your tiny system, but you'd need to install a couple of extra packages separately like ncurses and maybe others.
Everything else is aboslutely essential to boot the system -except for tar, pkgtools and gzip which you will need in order to add any packages. Also lilo could be left out, assuming you have installed lilo during installation and never need to change the configuration, or are using the bootloader from some other installation.
If the following short list won't boot, then leave in aaa_elflibs and find out what is needed from it and substitute it with the real package for that.
That leaves you with:
A packages:
sysvinit
sysvinit-scripts
etc
aaa_base
aaa_terminfo
bash
glibc-solibs
coreutils
kbd (you can leave this out if you have a US keayboard)
shadow
devs
util-linux
e2fsprogs
pkgtools
getty
shadow
tar
gzip
lilo
kernel-huge
L packages:
ncurses
HMMM, I swore I'd never try to create a list like this again, but I've just gotten up and am still sleepy, so my resistance was low...
And you can get rid of utempter -it is only needed for xterm.
Just to note that utempter is neeed by every terminal emulator, not just xterm, including GNU screen.
Also i dont like such HOW-TOs cause users have defferent needs they cant be covered in such articles, furthermore if they dont explain why a package isnt needed or when its needed, kinda like gnashley did above.
If you want a "small Slackware" you better make your own HOW-TO.
That's why I had sworn not to attempt such lists any more -as soon as you accomodate someone with a well-though-out list, they usually come back and say something like -but I want compiz to be included and *all* the video codecs :-)
sahko, you are correct about utempter -that is unless one compiles the terminal emulators without utempter support. It was obviouls out of place in this list becasue the list doesn't inlcude X.
One other note, after thinking about it, you could probably leave out aaa_terminfo as long as ncurses is included.
It's good to take away more and more, bit by bit, until it stops to work.
At first I installed full Slackware installation and I was lost in so many packages. I used maybe 20% of them or of course more by not knowing it. Now to start from minimum, it gives me the feeling that i can still have everything under control. I also like old cars where i can repair stuff by myself. My favorite was Fiat 126. Slackware would be maybe Saab 900.
If physical size is also important, then maybe rebuilding the kernel with unionfs an squashfs, and then compressing the operating system, you can get upto 1/3 the size.
Fotoguy, now that is something that interests me - to use a compressed writable file system in such ascetic environments. Correct me if i am wrong, but unionfs an squashfs are read-only? I was trying to squeeze everything using FuseCompress http://miio.net/fusecompress/ i wanted to have a complete system compressed with it, but that needs a bit more effort and knowledge.
Fotoguy, now that is something that interests me - to use a compressed writable file system in such ascetic environments. Correct me if i am wrong, but unionfs an squashfs are read-only? I was trying to squeeze everything using FuseCompress http://miio.net/fusecompress/ i wanted to have a complete system compressed with it, but that needs a bit more effort and knowledge.
Yeah they are read-only systems, the way around this is to create a branch through unionfs. Unionfs uses 2 branches, a read-only, and a read-write branch, the read-write is usually created in your ram, basically creating a little hard drive from some of the space in your ram, while leaving enough of the ram left for the operating system to function, I have a live DvD project which is used in this way
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.