Difference between revisions of "ICub PC104 Linux Image - Detailed info"

From Wiki for iCub and Friends
Jump to: navigation, search
(Network configuration)
Line 65: Line 65:
 
  allow-hotplug eth0
 
  allow-hotplug eth0
 
  iface eth0 inet static
 
  iface eth0 inet static
address 10.0.1.104
+
  address 10.0.1.104
netmask 255.255.255.0
+
  netmask 255.255.255.0
 
  auto eth0
 
  auto eth0
 
  # The secondary network interface (External network)
 
  # The secondary network interface (External network)
 
  allow-hotplug eth1
 
  allow-hotplug eth1
 
  iface eth1 inet static
 
  iface eth1 inet static
address 10.0.0.2
+
  address 10.0.0.2
netmask 255.255.255.0
+
  netmask 255.255.255.0
network 10.0.0.0
+
  network 10.0.0.0
broadcast 10.0.0.255
+
  broadcast 10.0.0.255
gateway 10.0.0.1
+
  gateway 10.0.0.1
dns-nameservers 10.0.0.1 8.8.8.8  
+
  dns-nameservers 10.0.0.1 8.8.8.8  
dns-domain icub.local
+
  dns-domain icub.local
dns-search icub.local
+
  dns-search icub.local
 
  auto eth1
 
  auto eth1
  

Revision as of 18:15, 13 November 2014

NOTE : this page is valid ONLY for the PC104 image with version 5.0 and above for older versions read this page

This page contains detailed information about the Linux distribution running inside the iCub's pc104 and keep track of important if all files and configurations which make this image different from a vanilla Debian GNU/Linux LIVE (at the time of writing Debian 7 wheezy)

Additional Packages

build-essential
sudo
gcc
g++
make
cmake
cmake-curses-gui
pkg-config
ssh
openssh-server
libtinyxml-dev
nfs-common
vim
less
ntpdate
libportaudio2
libace-dev
libgsl0-dev
libcv-dev
iperf
dnsutils
resolvconf
libpcap-dev
glade
libglademm-2.4-dev
libgtkmm-2.4-dev
libhighgui-dev
libcvaux-dev
libncurses5-dev
alsa-utils
subversion
git
bash-completion
meld
gedit
libraw1394-dev
libdc1394-22-dev
ethtool
usbutils
libpcap0.8
netcat-traditional
fxload
audacity
festival

The kernel

Customized files

README, VERSION and ChangeLog

iCub startup scripts

Kernel modules

Network configuration

The configuration is done via /etc/network/interfaces as follows

# The primary network interface (Motors network)
allow-hotplug eth0
iface eth0 inet static
  address 10.0.1.104
  netmask 255.255.255.0
auto eth0
# The secondary network interface (External network)
allow-hotplug eth1
iface eth1 inet static
  address 10.0.0.2
  netmask 255.255.255.0
  network 10.0.0.0
  broadcast 10.0.0.255
  gateway 10.0.0.1
  dns-nameservers 10.0.0.1 8.8.8.8 
  dns-domain icub.local
  dns-search icub.local
auto eth1

SSH configuration

NTP configuration

We use icub-srv (10.0.0.1) as NTP server.
The package ntp is installed but not executed, so we add the followng line to /etc/ntp.conf

server 10.0.0.1

and we change the file /etc/default/ntp as follows

STARTUP_DISABLED='yes'

NFS configuration

we mount the following two remote NFS shares from icub-srv

icubsrv:/exports/code /usr/local/src/robot nfs _netdev,auto,hard,intr
icubsrv:/exports/local_yarp /home/icub/.local/share/yarp nfs  _netdev,auto,hard,intr

So, the startup script is use to try to mount those shares, see /etc/rc_iCub.d/s90_mount-remote-fs.sh Moreover, inorder to mount the aboive share with the correct user rights, we add the following line to the file /etc/default/nfs-common

NEED_IDMAPD=yes

User Environment

Other improvements

Live-related customization

How the iCub LIVE image is built

The iCub live ISO image is built with a script based on the Debian LIVE tools (included in the package live-build).