Root Main Page
LEM: a small Embedded Linux distribution
LEM LEM is a small i386 linux distribution -8 Mo- which provides full network and X Server.
What is LEM ? , Download , Installation , Known bugs , History , Todo , Mailing List
Submit your article
LEM an Embedded version of Linux that can fit on less than 8 Meg Disk Partition (Base + Xfree) or any other support like Flash disk IDE and the like.
It is based on Mandrake 6.1 (GLIBC 2.1) and easily scalable to suit your need.
The base version includes all the basics shells command needed to run and administrate a linux system for embedded hardware. Xfree SVGA can also be added to expand the capabilities of your system, it supports all the major SVGA video cards up to 32 bits colors with high resolution, ideal for LCD displays. It is network ready with TCP/IP built in.
The major changes since version 0.3 are:
- Based on GLIBC 2.1
- Now using BusyBox and Tinylogin for the basics shell command.
- Entirely binaries compatible with Redhat 6.X and Mandrake 6.X.
- Xfree version 3.3.5, Server SVGA altough can be changed to any other
OK, LEM isn't the smallest linux stuff ever made: Others are smaller like hal91, trinux, mulinux... see LINKS. LEM may be used when an X11R6 Server is needed.
LEM V0.6 is made from two files:
||XFree 3.3.5, GLIBC 2.1, Tinylogin now used for login process
||More tools, Downsizing
In this version, LEM is a tar.gz archive and is not yet self-installable. you will have some work to do... Sorry.
||FTP Server bug fix, Downsizing
So first you need an already installed linux like debian, mandrake, redhat, slack, suse... in alphabetic order : ) wich will permits you to transfer and configure lem for your target hardware. Your target harddrive, diskonchip or other will first be considered as an additional harddrive to your system.
|Network / Id
||- hostname: default is lem
echo "myhostname" > /yourtarget/etc/config/hostname
- IP Address: default is 126.96.36.199
echo "xxx.xxx.xxx.xxx" > /ytg/etc/config/ipaddr
- Netmask: default is 255.255.255.0
echo "xxx.xxx.xxx.xxx" > /ytg/etc/config/netmask
- Network: default is 188.8.131.52
echo "xxx.xxx.xxx.xxx" > /ytg/etc/config/network
- Broadcast: default is 184.108.40.206
echo "xxx.xxx.xxx.xxx" > /ytg/etc/config/broadcast
- Gateway if needed: default is 220.127.116.11
echo "xxx.xxx.xxx.xxx" > /ytg/etc/config/gateway
& edit /ytg/etc/init.d/network to uncomment gateway related line.
|Kernel & Modules
||LEM comes with no kernel. It may not match your needs ;). Put a new kernel in /ytg/boot and add your needed modules in /ytg/lib/modules.
All needed modules must be listed in /ytg/etc/modules, one per line, params and carrier return after each.
||Edit /ytg/etc/fstab to match your hardware.
and other /ytg/etc well known files if needed...
Add /ytg/dev/something if needed...
||LEM comes with xfree86 for svga (XF86_SVGA) 3.3.5 . You may change / replace X server in
/ytg/usr/X11R6/bin. Some X servers requires more libs. Check it with ldd: ldd yourXserver and add needed libs in /ytg/usr/X11R6/lib. It is better to run config after booting under your new target.
||Check your application by ldd it. Add necessary libs. run ldconfig.
If your application isn't loaded more than one at a time consider linking libs statically if you need to save space.
||See lilo man page...
||Run ldconfig to update the ld cache
- Guest anonymous access only with ftp / telnet server. Put a newline at the end of /etc/shells. Thanks to
- Xterm does not work: libutempter.so.0.5 must be added in /usr/lib, then add ln -s links named libutempter.so.0 and libutempter.so. Thanks to to have corrected this bug
- LEM does not reboot: relink /sbin/reboot to halt instead of /bin/busybox
- /proc mounted twice: in rcS.d relink S10checkroot to init.d/chekroot and S30checkfs to init.d/checkfs
- Installation script
- Package Managment
- LEM Mailing list may be found there.
- Embedded Linux mailing list here.
© 1998-2000 ,
last update April 18, 2000.
Linux is a registred trademark of Dr Linus Torvalds