From Lunar Linux
Jump to: navigation, search

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 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.


      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
      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
      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
      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
      Example: /etc/init.d/network restart
      Good luck and please remember that you have to to be able to ping f.e. '' to install any
      other packages or update your system!


      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
      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
      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
      Core Components
      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.
          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 or report the error to the Lunar Linux mailinglist.
      However, you will have to subscribe to the list at
      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!


          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
          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
      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  <>
      Terry Chan    <>
      Moritz Heiber <>

Moritz Heiber 2005-03-09 lfirsttime(8)

Personal tools
Wiki Navigation
Project Sites