WARNING: Here be Dragons!
The 1.6.5 ISO is now almost two years old, and there have been major updates of the kernel, gcc, glibc, and a host of other key modules. The development team is currently in the middle of the switch from sysvinit to systemd in preparation for the next ISO image. In addition, the single project repository is being split to provide improved system integrity and cohesion, and re-hosted at github, so you might find that your favourite utility is not yet available in the new configuration.
If you can't wait a couple of months for the new ISO, and really do want to install 1.6.5, please make sure that you connect to #Lunar on Freenode.net and ask for the latest guide to installation. This temporary guide from 2012-09-23 may quickly become outdated. Be warned: you may break your box!
This page may not be in synchronization with the man pages available on a Lunar-Linux system.
The initial version was a cut'n'paste from the man command, which produces weird wiki formatting.
lfirsttime(8) Lunar Linux for the first time lfirsttime(8)
lfirsttime - or 'What to do after a successful installation?'
This manual page has been written in order to ease the life of the system administrator after the installation part of Lunar Linux.
DO NOT PANIC!
These are the suggested tasks you should accomplish immediately after the first boot of a newly installed Lunar box.
All of the lunar related commands mentioned below either feature a whole manpage or at least a very useful helpscreen. If you need immediate assistance regarding any of those commands, issue:
man 'command' or 'command' --help
at your console.
The operations described below follow a strict logic and they should be executed in sequence.
Please remember that the Lunar Install/Rescue ISO is not a full featured system.
This step is crucial to your future success with Lunar Linux. If you haven't set up your network card yet try it with lnet. Remember, you need to know about your current network card's driver and have the kernel build the appropriate modules for it.
Check your network settings
Once you've set up your network card correctly, try to ping out.
Example: ping google.com
If it doesn't work you may be having a name resolution problem, try pinging to the IP address instead of the name.
Example: ping 188.8.131.52
If pinging to IP is working but pinging to name fails, check the /etc/resolv.conf file and see if the nameserver entries are there. You may also want to check the man page, man resolv.conf if you are not familiar with the entries which should be in that file.
Check the network device
If pinging the IP address fails, check to see if your network interface is up and running. You may use the command ifconfig to see the interface's status. You must be able to see the details of your network interface in the output of ifconfig.
If you cannot, then check if your NIC (network interface card) module is loaded (assuming you are using a modular kernel); use the command lsmod to see the already loaded modules and see wether the module for your network card is already loaded.
If you do not know for sure what type of network card you have try executing the command: cat /proc/pci|grep Ethernet or lspci. This should give the manufacturer and model name of your ethernet card.
If your NIC module is there but your interface is not up, reconfigure the interface with lnet and test again. If your NIC module is still not listed in the output of lsmod, the chances are you have miscon- figured the kernel or misconfigured your network. To check the kernel modules, try ls -l /lib/mod- ules/`uname -r`/kernel/drivers/net to see the network modules available with the current kernel. If the your NIC's kernel module doesn't show up you probably have to reconfigure and recompile your current kernel to include the appropriate module(s).
lnet or manual configuration
Your network setting can be configured completely using lnet; just make sure you set up your interface correctly as needed. If you encounter problems after having configured your network with lnet you prob- ably want to adjust the configuration manually.
The network configuration file for your Lunar installation may be found in /etc/config.d/net- work/'interface' (f.e. 'eth0' -> /etc/config.d/network/eth0). Any time you adjust your interface's con- figuration manually or through lnet you will have to restart the network to make use of any changes that have been done in the meantime. The init script used to start/stop/restart network is /etc/init.d/network.
Example: /etc/init.d/network restart
Good luck and please remember that you have to to be able to ping f.e. 'google.com' to install any other packages or update your system!
CORE UPDATES AND SETUP
Since Lunar Linux is a source based distribution, some of the binaries and/or modules on the CD may have been upgraded to newer versions already. Here are the first steps you should take to get an up-to-date, smoothly running and fast system:
Update your coretools
You need to get the most recent version of the available coretools. The coretools are the heart of every Lunar Linux system. They provide you with all the necessary commands to maintain a working installation thus it's always recommended to have the latest version installed. There are two different choices:
lunar or theedge
lunar is the stable branch of the lunar coretools. It's meant to run with stable production environ- ments. theedge is the unstable branch. It might occasionally contain bugs, however it's generally used to test out new features and bugfixes before they're migrated to the stable branch. If you'd like to help out with the lunar development or you discovered a bug in lunar you might want to give theedge a try.
Since the ISO ships with theedge preinstalled you have to update theedge before you do anything else -- even if you're planning to use lunar later on!
Execute: lin theedge
If you want to keep Lunar Linux as stable as possible you need to install the stable coretools branch now by running
Execute: lin lunar
A very brief explanation of the most important coretool components. For further information regarding the referenced parts please refer to their manpages (i.e. man <part>):
lin; usage: lin <module> Install a package/module.
lvu; usage: lvu <options> <module> Gather information about a package/module.
lrm; usage: lrm <module> Remove a package/module.
lunar; usage: lunar <options> Lunar configuration utility
Update your moonbase
The package repository from where the coretools gather their package information is called moonbase. Also, packages are usually referred to as modules. Since the moonbase on your installation is probably outdated it's strongly recommended to update your moonbase right after your coretools.
Execute: lin moonbase
Set your preferences
Lunar Linux can easily be customized and is highly configurable. For changing the options that affect your system you may use the menu driven lunar configuration utility. It's based upon ncurses which means you can even run it in the console of your choice. You need to become root to use it.
Optimizations Set the right optimizations for your computer. Be aware that changing your optimizations to the wrong values might actually break your whole installation so be really careful about what you're choosing. The ISO has been built with a minimum of available optimizations to ensure the highest amount of flexibility. To see whether or not your processor supports a certain feature try a cat /proc/cpu. It usually shows the available settings that suit your machine.
Integrity checking Lunar is performing a range of security checks on tarballs and installed packages to prevent faulty tarballs and possible intruders from taking over your system. It also ensures that none of your currently installed packages is broken.
You may select the amount of checks from the Integrity checking submenu at the Options menu. It's generally recommended to at least chose FIND_CHECK and LDD_CHECK.
Feature menu As mentioned before, Lunar is highly configurable. Thus you have a whole menu to select its fea- tures from. It's strongly advised to at least take a look at it and get used to them. Explanations are usually displayed as soon as you select an item.
Apart from that Take a look at the lunar configuration tool. It can be a powerful companion while achieving the goal of setting up your system.
Right now you're set to update your whole system. Before you do that make sure you have the most recent coretools and moonbase installed.
The next step can be omitted -- however, it is highly recommended that you rebuild the following mod- ules in the right order to ensure that your system is working right.
Here we go:
Execute: lin -cr gcc glibc gcc bash coreutils tar wget
lin is obviously used to install a module. It also accepts multiple modules in a row. The '-cr' switch means 'compile (c)' and 'reconfigure (r)'. They're explained at the manpage. One needs to update gcc thus the first gcc statement. Right after that one should recompile glibc to ensure that it's working well with the latest compiled gcc. And finally gcc again to make use of the newly compiled glibc. The modules right afterwards are used by Lunar Linux itself thus they need to be up-to-date and compiled against the latest available gcc and glibc.
A complete update
Now, to update your whole system you need to issue the following
Execute: lunar update
It's going to compare your system's installed modules against the moonbases' definitions and update the installed modules accordingly. It's going to give you a list of modules that are going to be updated. If you're not sure wether you want a certain module to be updated remove it from the list. Once you're done the coretools are going to start the update which usually is going to take a very long time on a freshly installed system since most of its components will probably be outdated. So grab a coffee and/or a book and wait for it to finish ;-)
Once it is done it is going to present you with a summary about how many module where successfully updated and which of them failed. lvu ('lvu activity') is going to show you which of them failed and usually why. lvu ('lvu compile <module>') is also going to show you the compilation's logfile which should clearly point you to the error that led to the failure of the module's compilation.
The first thing to do would be to 're'lin' (i.e. execute lin -c once more. It is always advised to use the -c and the -r switch in case a module fails to compile) all the failed modules by hand. If you think you will not be able to resolve the matter on your own you can still file a bugreport at the Lunar Linux bugtracker http://bugs.lunar-linux.org or report the error to the Lunar Linux mailinglist. However, you will have to subscribe to the list at http://foo-projects.org/mailman/listinfo/lunar before being able to post any mail to it.
Once the update has been completed successfully you may go ahead and customize your installation to suit your own needs. Well done!
TAB-completion All of the coretools are able to do tab-completion. Say, you want to install the module 'xfce4-panel' just go ahead and type 'lin xfce4-p<TAB>' and lin is going to append the rest of the module's name to the command. Once there are too few characters to resolve the name into one single module you just need to hit TAB twice to get a list of all the modules starting with the characters you just typed i.e. 'lin xfce<TAB><TAB>' is going to give you a list of all modules starting with 'xfce'.
Leftovers In case of a compilation failure the sources of the failed module are left in $BUILD_DIRECTORY (usually /usr/src/). Moreover, a few tracking files lunar creates to monitor the running installa- tion process might be left in /tmp. Make sure you tidy up these two locations from time to time.
CAUTION: Directories like 'linux-2.x' are kernel source directories and _must_ be left intact. Oth- erwise your system is going to break! Only delete them if you're absolutely sure that they don't belong to your currently running kernel.
Running coretools processes If you're interrupting a module installation process (f.e. by pressing 'CTRL-C) you should check if there are any running coretools processes running in the background as another try to install the module might fail because of them. Have a closer look at ps aux and kill/killall all the remaining coretools instances of a failed installation attempt.
CAUTION: Lunar allows you to run multiple installations independently. Be sure about the processes' purpose you're terminating!
IRC channel The fastest help you get is by chatting with the developers directly. Join the Lunar Linux IRC channel at freenode
This is merely an introduction to what should be done to get a ready-to-go Lunar system. Please consult the documentation at the Lunar website for more information.
Documentation at the Lunar Linux website at http://lunar-linux.org
lunar(8), moonbase(1), lin(8), lvu(1), lget(8), lrm(8), lnet(8)
The information and examples given here are for illustrative purposes. If you encounter any inaccura- cies please send an email to the authors.
This document is originally Copyrighted Kagan Kongar 2002.
Portions of this document Copyrighted (C) 2003-2004 Terry Chan
It has been almost completely rewritten by Moritz Heiber for the Lunar Linux development team under the Creative Commons License, (C) 2005
Kagan Kongar <firstname.lastname@example.org>
Terry Chan <email@example.com>
Moritz Heiber <firstname.lastname@example.org>
Moritz Heiber 2005-03-09 lfirsttime(8)