Welcome to the Linux Foundation Forum!
Minimal linux distro
Netbattler11
Posts: 13
in Small Talk
Hey, I have been looking for a linux distribution which uses very little RAM and CPU space and is easily installable on hard drive. I want to set up a computer so that it is primarily running this minimal OS, and then have multiple virtual machines on it which I can edit easily. I want the host OS to take up as little resources as possible so that the VMs can have almost as much as if they were just running natively. The only requirements for the host are that it needs to be able to use a wireless adapter to get on a network and it needs to be able to run Sun VirtualBox. Thanks in advance.
0
Comments
-
Any Linux based distro can run VirtulaBox. If you are looking for a lightweight OS, look into something like Slitaz or puppy linux, both are very light and don't require many resources, from there you can run virtualbox and all of your VMs.0
-
Hey I would also recommend Bohdi. It only takes supposedly a 400 Mhz processor and is similar to ubuntu. But honestly if you want the most speed I would recommend SliTaz as mfillpot said above. It's not the prettiest setup, but it's still pretty good.0
-
Netbattler11 wrote:
The above recommendations are excellent, but I would just add this: one of the many assets of Linux is that pretty much ANY distro can be considered "light-weight" (without getting into benchmark wars...) provided that it allows you to install a bare-bones system. If it doesn't, you can always go back and rip out the GUI/bloatware that you don't need/want - but it is far easier to start with a bare minimum and just install what you need as you go.Hey, I have been looking for a linux distribution which uses very little RAM and CPU space and is easily installable on hard drive. I want to set up a computer so that it is primarily running this minimal OS, and then have multiple virtual machines on it which I can edit easily. I want the host OS to take up as little resources as possible so that the VMs can have almost as much as if they were just running natively. The only requirements for the host are that it needs to be able to use a wireless adapter to get on a network and it needs to be able to run Sun VirtualBox. Thanks in advance.
For me, the bare minimum is pretty much: the Linux kernel, the GNU coreutils (ls, cd, mv, etc.), a shell (bash), some other basic GNU utils (grep, awk, sed, etc.), the OpenSSH suite (ssh, scp, sftp, etc.) and the distro package manager (rpm, yum, apt-get, etc.).
For example, with Fedora, I have a PXE (network-based) installer that creates an OS load just as described. Then if I want, I add to it X and Fluxbox. Or if I want Apache and NFS, or full-blown Gnome, then that's what I do - and the package manager handles all the deps. I have a similar setup for Ubuntu, but I don't use it nearly as much.
Yes, the "light-weight" distros were built with less-bloat and meager hardware resources in mind, so their GUIs will tax the CPU/RAM less when they are run. If I truly wanted a light-weight GUI Linux OS, I'd use Puppy, etc (okay, I'm lying - I'd use Fedora with X and Fluxbox, but only if my hardware could handle it). But in a GUI-less environment, I don't think the difference is significant enough for me to want to use it, when I could use a distro that I am already comfortable with (and that probably has more community experience with advanced things like multiple VM environments).
just a thought...0 -
All recommendations are great. I'll just add two more distros, debian and arch linux. Debian is what ubuntu is based and it uses very little system resources and uses .deb packages. Archlinux is a light weight distro that allows you to build it from the ground up. It installs the bare-minimum and from there you can customize it the way you want. Try also aniX.0
-
Thanks for all the suggestions. I will check up on the different distros and see which one works best.
EDIT:
Noob question: I didn't think it was possible to use a gui application like VirtualBox in a gui-less environment. Anyone mind explaining how that would work? That would be a very nice solution.Yes, the "light-weight" distros were built with less-bloat and meager hardware resources in mind, so their GUIs will tax the CPU/RAM less when they are run. If I truly wanted a light-weight GUI Linux OS, I'd use Puppy, etc (okay, I'm lying - I'd use Fedora with X and Fluxbox, but only if my hardware could handle it). But in a GUI-less environment, I don't think the difference is significant enough for me to want to use it, when I could use a distro that I am already comfortable with (and that probably has more community experience with advanced things like multiple VM environments).0 -
Netbattler11 wrote:
The are a couple simple ways to do this.Thanks for all the suggestions. I will check up on the different distros and see which one works best.
EDIT:
Noob question: I didn't think it was possible to use a gui application like VirtualBox in a gui-less environment. Anyone mind explaining how that would work? That would be a very nice solution.Yes, the "light-weight" distros were built with less-bloat and meager hardware resources in mind, so their GUIs will tax the CPU/RAM less when they are run. If I truly wanted a light-weight GUI Linux OS, I'd use Puppy, etc (okay, I'm lying - I'd use Fedora with X and Fluxbox, but only if my hardware could handle it). But in a GUI-less environment, I don't think the difference is significant enough for me to want to use it, when I could use a distro that I am already comfortable with (and that probably has more community experience with advanced things like multiple VM environments).
One way to do it is to install VNC server - some form of it comes with just about every major distro. VNC provides a tiny framebuffer X server which you can connect to using a VNC client from another machine running a GUI (be it Windows or Linux running Gnome, etc.). I do this all the time. You have to set up VNC once on the server, typically as a system service (this varies from distro to distro). You also have to set up a password for the VNC session. The last thing you need to do is define your X environment, i.e., do you want to run a light-weight desktop environment like Blackbox or Fluxbox, or do you want to run full-blown KDE or Gnome. As long as the software is installed, you can use it - but it makes sense in such a set up to use the light-weight variety. When the VNC server starts up, it will be defined with a display number, such as :1 or :2. Then you connect to this session on the server (let's say it's IP address is 192.168.1.2) via your VNC client from another machine like this:vncviewer 192.168.1.2:1
You enter your VNC password, and blam, you are on your server desktop with a little GUI environ. You can also use a web browser that has Java installed and bypass the use of the stand-alone client utility, too.
A second way to do this that is *much* simpler also requires the use of a second computer (make it Linux), that is running a GUI desktop. Just open a terminal on this second computer and use SSH to log in to your server, being sure to enable the trusted X11 forwarding, e.g.:ssh -Y user@192.168.1.2
Passing the -Y flag should have automatically set your DISPLAY variable on the server back to your Linux machine. Check the variable like this:echo $DISPLAY
It should say something like localhost:11.0 and in any event, should not be empty. Now you can just launch your graphical tool as normal, and it should appear on your GUI Linux machine as if the app was installed locally. The only drawback to this method is that you don't have a virtual graphical desktop, but if you're just interested in running some tool and being done with it, this might be the way to go.0 -
Nice explanations of headless virtual machines it gives information that I would have skipped.
Virtualbox is not only a GUI application, it has more command line options and functions than you can find in the GUI.
Rather than using vncviewer, virtualbox has a rdesktop extension in the extensions pack that allow you to setup run a GUI based virtual machine from the local machine or a remote machine using rdesktop. You can get more information at http://www.virtualbox.org/manual/ch07.html#idp7320032
You can modify properties and setup a headless (no gui window) virtual machine which you can interact with via rdesktop, vnc, ssh etc.. from local or remote machines. The information can be found at http://www.virtualbox.org/manual/ch08.html .
I have personally used headless virtual machines without any GUI installed via ssh to setup and test network services.
You can also used vboxsrv to manage virtual machines remotely, some information can be found at http://www.virtualbox.org/manual/ch09.html#vboxwebsrv-daemon
Since minimal video memory can be allocated to virtual machines my preference is to bypass GUIs in virtual machine all together and use headless installations whenever possible so they don't interfere with my primary work.
But to sum it all up, I highly recommend reading the entire virtualbox manual, you will find many very cool functions that you can use for a variety of uses.0 -
Thanks a lot, I had no idea VirtualBox was so versatile. I guess the lesson here is to read the documentation.0
-
Hi,
you could take a look at DSL (Damn Small Linux). It has a really small footprint (50MB ) and runs on just about anything.
take a look here:http://www.damnsmalllinux.org. It can be run as a LiveCD or installed and run on Physical or Virtual hardware:
I've run it successfully on Qemu, VMware Fusion, and LiveCD, all of these were great and reasonable fast.
Hope that helps
Matt0 -
Sorry! missed the Virtual environment requirements there. DSL prob not suitable unless running something like UML.0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 750 Linux Foundation IT Professional Programs
- 373 Cloud Engineer IT Professional Program
- 169 Advanced Cloud Engineer IT Professional Program
- 74 DevOps IT Professional Program - Discontinued
- 4 DevOps & GitOps IT Professional Program
- 99 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 1 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 3 Cloud & Containers Training
- 1 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 1 Networking Training
- 1 Open Source Best Practice Training
- 1 System Administration Training
- 1 System Engineering Training
- 1 Web & Application Development Training
- 792 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 87 Storage
- 769 Linux Distributions
- 81 Debian
- 68 Fedora
- 22 Linux Mint
- 13 Mageia
- 24 openSUSE
- 150 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 465 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 78 Network Management
- 101 System Management
- 46 Web Management
- 106 Mobile Computing
- 18 Android
- 73 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 392 Off Topic
- 121 Introductions
- 181 Small Talk
- 29 Study Material
- 955 Programming and Development
- 310 Kernel Development
- 627 Software Development
- 983 Software
- 375 Applications
- 182 Command Line
- 5 Compiling/Installing
- 68 Games
- 317 Installation
- Archived
- 2 LFD140 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)