Full Debian Distribution 2009-03-09 (armel) This is a full linux root file system from the Debian (armel) distribution for EuroTech embedded computer systems. This distribution is intended to be used on our platforms for development of embedded applications. It includes compilers, debuggers, libraries, etc. Additionally, Debian provides many thousands of optional packages that can be downloaded, installed and configured with a simple command.
The following files are included in this release: debian-root.tar.gz - tar file containing the root filesystem snapshot.txt - output on debug port of a booting system README-install.txt - installation documentation debian_install.sh - installation shell script ramdisk.gz - used for a standalone installation (see README-install.txt) root_config_usb_install.txt - used to boot a standalone installation to USB disk root_config_ide_install.txt - used to boot a standalone installation to IDE disk cmdline.txt - Used to boot the full root filesystem on systems not using the u-boot bootloader cmdline_bitsyx.txt - Used to boot the full root filesystem on the BitsyX MD5SUMS - checksums of files in this release
Debian comes in three versions: 'stable', 'testing', and 'unstable'. This version is derived from Debian 'stable', and uses the 'armel' port, which is compiled to use the arm EABI.
EABI is a new application binary interface (ABI) for Linux that offers performance improvements over the old ABI through use of softfloat instructions for floating point arithmetic, a more efficient syscall convention, and the option to use VFP hardware if the CPU has it. See the EABI FAQ for details.
The shell script, debian_install.sh, can be run on a Linux system and will install a kernel and the root file system on a hard drive such as an Hitachi Microdrive (TM) an external USB drive, or an IDE drive. The script reformats the hard drive and creates three partitions:
- kernel and initial ramdisk
- swap space
- EXT3 root file system
Installation Download the files from the links above and follow the instructions in the README-install.txt file to install the image to a USB disk, microdrive, or IDE disk.
For systems such as the BitsyXb, BitsyG5, TurboXb, Sphere, VIX, Portal, and VGX, which use the u-boot bootloader, a set of u-boot configuration files is needed. See this topic for all the available files, download the appropriate files and copy them to a compact flash card. Note that you will need at a minimum start.txt, full root root_config.txt, and a tty_config.txt file for your system. A hw_config.txt file for your system's frame buffer is recommended for best performace of the X Window System.
For older systems that do not use the u-boot bootloader, a cmdline.txt file is needed. For the BitsyX, there is a cmdline_bitsyx.txt which should be used instead.
Also copy onto the card the kernel zImage file for the kernel you want to use. Note that you must use an EABI version of the kernel, such as the one provided here.
Review our FAQs regarding handling of Hitachi Microdrives (TM).
For additional information about using a USB hard drive or NFS, see our topic on running full Debian without a Microdrive.
Login The root password for the Debian distributions is 'rootme'. After installing the system, you should begin by logging is as 'root' on the serial port (debug port), and using the "passwd" command to change this password.
Normally, the serial (debug) port on EuroTech boards is also the system console. You can change this by changing the value of 'console=' on the kernel command line in the bootloader configuration file. See the appropriate bootloader manual for your board for more details.
There is an additional command line option, 'SERIALGETTY=', which controls which serial port is used for logins. This can be different from the 'console=' parameter, which controls which terminal recieves the kernel messages.
There is also an optional command line option, 'SERIALBAUD=', which controls the speed of the serial port used for logins.
Configuring the network interface By default, the Debian distribution will attempt to auto- configure the network interfaces using DHCP. If you do not have a DHCP server on your network or you do not wish to use DHCP, you can configure a static IP address by editing the file /etc/network/interfaces and changing the line iface eth0 inet dhcp
to read iface eth0 inet static address <IP address> netmask <netmask> broadcast <broadcast> gateway <gateway>
Where the addresses are in dotted-quad notation (aaa.bbb.ccc.ddd)
You should also change /etc/resolv.conf to list the proper nameservers for your network.
Using your system for native development The Debian distribution comes with native compilers, editors and debuggers so you can begin developing your application directly on your embedded computer system. In most cases, you could even attach a keyboard and begin working without needing any other systems. However, most people find the VGA screen on the development kit too small for serious program development.
You can use 'ssh' from a linux workstation to access your embedded system over the network. ssh X-forwarding is enabled by default - allowing X clients running on the embedded board to display on your workstation screen. Once you log in to your board via ssh, you should have a DISPLAY environment variable set by ssh - DO NOT CHANGE IT or X forwarding will stop working.
Starting an X program (xterm, etc.) from your SSH session should automatically display the program on your Linux workstation.
The SSH daemon is not started automatically. See the notes below on SSH for more details.
The Debian distribution comes with many common development libraries, including C, C++, x11 and gtk. See the section on 'Installing additional Debian Packages' for information on installing any development libraries you may need that are not included by default.
NOTE: Compiling a kernel or kernel modules natively on the system is not recommended. You should use the proper cross-compiler as listed in the 'Getting Started' section of the Linux support pages
Installing additional Debian packages Debian's 'apt-get' command allows you to easily install any of thousands of pre-compiled packages available for ARM. Before using apt, however, you must "update" it to ensure that it has access to the most recent list of packages.
By default, apt-get is configured to use the master Debian package repository for most packages, and suppliment this with a few EuroTech-specific packages from an package repository. While you can reconfigure apt to use a Debian mirror closer to you for better download speeds, we recommend that you leave the configuration for the EutoTech repository as-is so you can access sources and updates for EutoTech-specific packages.
A list of Debian's mirrors can be found at this URL: http://www.debian.org/mirror/list By default, the system is configured to use debian-archive.applieddata.net, which points to a suitable Debian mirror (currently archive.kernel.org).
After configuring apt, you should run apt-get update
to pull the latest package lists from your chosen mirror.
After updating, you can install a package with the command apt-get install <package name>
You can look at a list of thousands of Debian packages available for installation by visiting Debian's package site at http://packages.debian.org/
When searching or browsing the package list, you should select the 'testing' distribution. ('etch' is the code-name for the current 'testing' branch of Debian)
If you are going to downloading the same files from the debian site many times, you might consider setting up a proxy server like Squid on your server or workstation. Once you have squid working (you can test it with your browser), add a line like the following to the file /etc/apt/apt.conf for your server: Acquire::http::Proxy "http://192.168.1.1:3128";
Downloading package source Most packages included in this release are unmodified from those distributed with the stock Debian distribution. A few have been modified to work better on our hardware. The source code to each package included in this release is available via the 'apt-get' command. First configure apt as described above. To download and unpack the source to a package, use 'apt-get': apt-get source <package name>
The source will be unpacked into a subdirectory. To build the package, from source, you can also use 'apt-get' apt-get build-dep <package name> apt-get source -b <package name>
This will install any prerequisites for building the package, then download the source, unpack it, and build it. The result will be one or more '.deb' files, which you can install using dpkg: dpkg -i <package name<.deb
Using SSH/SCP/SFTP The Debian root filesystems now support ssh (and the companion SCP and SFTP protocols) for enhanced security for remote access. The ssh system has replaced telnet and ftp functionality with the more secure ssh and scp commands. Use 'man ssh' for more information. By default, the SSH server is not started but does allow root access. (This is a change from previous behaviour.) To start the ssh server, run '/etc/init.d/ssh start' from the command line. To make the system start SSH automatically at boot-time, create a symbolic link from /etc/rc3.d/S20ssh to /etc/init.d/ssh. This will start the ssh server automatically at runlevel 3 (runlevel 3 is the default).
The SSH daemon has been designed with security in mind, but no software can ever be 'bug-proof'. If you do not require network remote access, disable SSH by removing the ssh start files from the /etc/rc*.d directories.
Before you start the SSH server, please be sure you have at least changed the root password!
You should seek the advice of an experienced systems administrator or security professional before deploying a networked system.
Using FTP FTP is not enabled by default, as the inetd daemon does not run by default. To enable inetd and the ftp server, run '/etc/init.d/openbsd-inetd start' from the command line. To make the system start inetd automatically at boot-time, create a symbolic link from /etc/rc3.d/S20ooenbsd-inetd to /etc/init.d/openbsd-inetd. This will start the inetd server automatically at runlevel 3 (runlevel 3 is the default).
FTP is not a secure protocol! The authentication information (usernames, passwords) is sent over the wire in clear text! Wherever possible, users are encouraged to switch to SSH/SCP/SFTP.
When enabled, the FTP daemon allows anonymous upload to /usr/ftp/incoming. While an anonymous user can list the files uploaded there, the daemon's configuration prevents anonymous users from downloading from this directory.
If you need to enable non-anonymous FTP, you will need to edit the file /etc/vsftpd.conf (see the comments in that file). FTP access for the root user will still not be allowed; you should create a non-privileged user for FTP access.
Care and handling of disk drives The microdrive or USB disk is much like the disk drive on your workstation. You are probably careful to shutdown your workstation before powering it off. You should be equally careful with Debian on the microdrive - run the shutdown command and wait for it to complete before removing the power from your board. Also, the Microdrive is a very fragile piece of equipment. It is especially sensitive to pressure on the top and bottom (large flat areas) of the drive. When handling a Microdrive, always hold it by its edges! To remove a Microdrive from a PCMCIA slot adapter, use your thumbnails to push it out of the adapter from the front (where the pins connect to the drive) rather than pulling the drive out from the back.
Verification MD5SUMS provides MD5 checksums for all files in this release.
History This distribution is a Debian armel distribution for EuroTech embedded computer systems. It supercedes our previous 2008-10-24 Debian distribution. It is based on the Debian armel port, and is the first release in which the armel post is considered stable and ready for use.
|