Target Hardware Edit

  • IO-DATA LANDISK Series
    This project's goal is to turn the IO-Data Network Attached Storage device into an freely accessible Linux box. The device is available in several configurations:
  • Specification
    • Processor: SH4 266MHz(SH7751R)
    • Interface: 2 channels USB 2.0
    • Storage Capacity: HDD 160GB (HDL-160U), 250GB, 300GB, 400GB
    • Network Interface: 100BASE-TX/10BASE-T

    The device comes with a Linux 2.4 inside. There is the possibility to update to 2.6 and it is also possible to install Debian in a different partition. This gives you the choice at startup to either boot as original or as a Debian system. In case of booting Debian, you will not have the original functions, like user accounts, NAS, FTP, etc, but instead a lot of other functions as you can install the software packages.

Linux Kernel Edit

The original OS is linux-sh-2.4.21 . A new version linux-sh-2.6.22 is available from the linuxSH homepage.
The sourcecode for LANDISK target available here.

debian26 userland for SH4 Edit

  • What is debian26
    We are calling this userland debian26 in locals.
    • debian etch at Nov 2005
    • compiled by gcc-4.0.2
    • The linuxSH kernel 2.6 image is included.
    • Xorg-X11 with USB2VGAs Support for connecting VGA display.
    • About 1900 debian packages compiled for SH4 can be used.

ArchiveRemarks
base(etch) base26-sh4-20070709-etch.tgzlinux-2.6.22-landisk.0.0 & landisk-tools-20070612 included
kernel sourcelinux-2.6.22-landisklinux-2.6.22 + landisk-custum
  • base26-sh4-xxxxxxxx-etch.tgz archive contains the following.
    Desired=Unknown/Install/Remove/Purge/Hold
    | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
    |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
    ||/ Name                Version             Description
    +++-===================-===================-======================================================
    ii  adduser             3.77                Add and remove users and groups
    ii  apt                 0.6.42.1            Advanced front-end for dpkg
    ii  apt-utils           0.6.42.1            APT utility programs
    ii  aptitude            0.2.15.9-7          terminal-based apt frontend
    ii  at                  3.1.9               Delayed job execution and batch processing
    ii  base-config         2.73                Debian base system configurator
    ii  base-files          3.1.9               Debian base system miscellaneous files
    ii  base-passwd         3.5.10              Debian base system master password and group files
    ii  bash                3.0-17              The GNU Bourne Again SHell
    ii  bsdmainutils        6.1.2               collection of more utilities from FreeBSD
    ii  bsdutils            2.12p-8             Basic utilities from 4.4BSD-Lite
    ii  console-common      0.7.54              Basic infrastructure for text console configuration
    ii  console-data        2002.12.04dbs-49    Keymaps, fonts, charset maps, fallback tables for cons
    ii  console-tools       0.2.3dbs-57         Linux console and font utilities
    ii  coreutils           5.2.1-2.1           The GNU core utilities
    ii  cpio                2.6-9               GNU cpio -- a program to manage archives of files
    ii  cron                3.0pl1-91           management of regular background processing
    ii  debconf             1.4.58              Debian configuration management system
    ii  debconf-i18n        1.4.58              full internationalization support for debconf
    ii  debianutils         2.15                Miscellaneous utilities specific to Debian
    ii  dhcp-client         2.0pl5-19.1         DHCP Client
    ii  diff                2.8.1-11            File comparison utilities
    ii  dpkg                1.13.11             package maintenance system for Debian
    ii  dselect             1.13.11             user tool to manage Debian packages
    ii  e2fslibs            1.38-2              ext2 filesystem libraries
    ii  e2fsprogs           1.38-2              ext2 file system utilities and libraries
    ii  ed                  0.2-20              The classic unix line editor
    ii  exim4               4.54-1              metapackage to ease exim MTA (v4) installation
    ii  exim4-base          4.54-1              support files for all exim MTA (v4) packages
    ii  exim4-config        4.54-1              configuration for the exim MTA (v4)
    ii  exim4-daemon-light  4.54-1              lightweight exim MTA (v4) daemon
    ii  findutils           4.2.25-1            utilities for finding files--find, xargs, and locate
    ii  gcc-4.0-base        4.0.2-2             The GNU Compiler Collection (base package)
    ii  gettext-base        0.14.5-2            GNU Internationalization utilities for the base system
    ii  gnupg               1.4.1-1             GNU privacy guard - a free PGP replacement
    ii  grep                2.5.1.ds2-2         GNU grep, egrep and fgrep
    ii  groff-base          1.18.1.1-10         GNU troff text-formatting system (base system componen
    ii  gzip                1.3.5-12            The GNU compression utility
    ii  hostname            2.91                utility to set/show the host name or domain name
    ii  ifupdown            0.6.7               high level tools to configure network interfaces
    ii  info                4.8-1               Standalone GNU Info documentation browser
    ii  initscripts         2.86.ds1-4          Standard scripts needed for booting and shutting down
    ii  iptables            1.3.3-2             Linux kernel 2.4+ iptables administration tools
    ii  iputils-ping        20020927-3          Tools to test the reachability of network hosts
    ii  kernel-image-2.6.22 custom.0.0          Linux kernel binary image for version 2.6.22-landisk
    ii  kexec-tools         1.101-2sh           kexec tool
    ii  klogd               1.4.1-17            Kernel Logging Daemon
    ii  laptop-detect       0.12.1              attempt to detect a laptop
    ii  libacl1             2.2.32-1            Access control list shared library
    ii  libattr1            2.4.25-1            Extended attribute shared library
    ii  libblkid1           1.38-2              block device id library
    ii  libbz2-1.0          1.0.2-10            high-quality block-sorting file compressor library - r
    ii  libc6               2.3.5-8             GNU C Library: Shared libraries and Timezone data
    ii  libcap1             1.10-14             support for getting/setting POSIX.1e capabilities
    ii  libcomerr2          1.38-2              common error description library
    ii  libconsole          0.2.3dbs-57         Shared libraries for Linux console and font manipulati
    ii  libdb2              2.7.7.0-10          The Berkeley database routines (run-time files)
    ii  libdb3              3.2.9-22            Berkeley v3 Database Libraries [runtime]
    ii  libdb4.2            4.2.52-18           Berkeley v4.2 Database Libraries [runtime]
    ii  libdb4.3            4.3.28-2            Berkeley v4.3 Database Libraries [runtime]
    ii  libgcc1             4.0.2-2             GCC support library
    ii  libgcrypt11         1.2.2-1             LGPL Crypto library - runtime library
    ii  libgdbm3            1.8.3-2             GNU dbm database routines (runtime version)
    ii  libgnutls11         1.0.16-14           GNU TLS library - runtime library
    ii  libgpg-error0       1.1-4               library for common error values and messages in GnuPG 
    ii  libident            0.22-3              simple RFC1413 client library - runtime
    ii  libkrb53            1.3.6-5             MIT Kerberos runtime libraries
    ii  libldap2            2.1.30-12           OpenLDAP libraries
    ii  liblocale-gettext-p 1.05-1              Using libc functions for internationalization in Perl
    ii  liblockfile1        1.06                NFS-safe locking library, includes dotlockfile program
    ii  liblzo1             1.08-2              data compression library
    ii  libncurses5         5.4-9               Shared libraries for terminal handling
    ii  libncursesw5        5.4-9               Shared libraries for terminal handling (wide character
    ii  libnewt0.51         0.51.6-31           Not Erik's Windowing Toolkit - text mode windowing wit
    ii  libopencdk8         0.5.7-2             Open Crypto Development Kit (OpenCDK) (runtime)
    ii  libpam-modules      0.79-3              Pluggable Authentication Modules for PAM
    ii  libpam-runtime      0.79-3              Runtime support for the PAM library
    ii  libpam0g            0.79-3              Pluggable Authentication Modules library
    ii  libpcre3            6.4-1               Perl 5 Compatible Regular Expression Library - runtime
    ii  libpopt0            1.7-5               lib for parsing cmdline parameters
    ii  libreadline5        5.0-11              GNU readline and history libraries, run-time libraries
    ii  libsasl2            2.1.19-1.7          Authentication abstraction library
    ii  libsasl2-modules    2.1.19-1.7          Pluggable Authentication Modules for SASL
    ii  libselinux1         1.30.28-1           SELinux shared libraries
    ii  libsepol1           1.12.26-2           Security Enhanced Linux policy library for changing po
    ii  libsigc++-1.2-5c2   1.2.5-5             type-safe Signal Framework for C++ - runtime
    ii  libslang2           2.0.4-7             The S-Lang programming library - runtime version
    ii  libss2              1.38-2              command-line interface parsing library
    ii  libssl0.9.7         0.9.7g-5            SSL shared libraries
    ii  libssl0.9.8         0.9.8a-3            SSL shared libraries
    ii  libstdc++6          4.0.2-2             The GNU Standard C++ Library v3
    ii  libtasn1-2          0.2.13-1            Manage ASN.1 structures (runtime)
    ii  libtext-charwidth-p 0.04-3              get display widths of characters on the terminal
    ii  libtext-iconv-perl  1.4-2               converts between character sets in Perl
    ii  libtext-wrapi18n-pe 0.06-4              internationalized substitute of Text::Wrap
    ii  libtextwrap1        0.1-3               text-wrapping library with i18n - runtime
    ii  libusb-0.1-4        0.1.10a-21          userspace USB programming library
    ii  libuuid1            1.38-2              universally unique id library
    ii  libvolume-id0       0.105-4             libvolume_id shared library
    ii  libwrap0            7.6.dbs-8           Wietse Venema's TCP wrappers library
    ii  login               4.0.13-1            system login tools
    ii  logrotate           3.7.1-2             Log rotation utility
    ii  lsb-base            3.0-11              Linux Standard Base 3.0 init script functionality
    ii  mailx               8.1.2-0.20050715cvs A simple mail user agent
    ii  makedev             2.3.1-83            creates device files in /dev
    ii  man-db              2.4.3-3             The on-line manual pager
    ii  manpages            2.02-2              Manual pages about using a GNU/Linux system
    ii  mawk                1.3.3-11            a pattern scanning and text processing language
    ii  module-init-tools   3.3-pre4-2          tools for managing Linux kernel modules
    ii  modutils            2.4.27.0-3          Linux module utilities
    ii  mount               2.12p-8             Tools for mounting and manipulating filesystems
    ii  nano                1.3.8-2             free Pico clone with some new features
    ii  ncurses-base        5.4-9               Descriptions of common terminal types
    ii  ncurses-bin         5.4-9               Terminal-related programs and man pages
    ii  net-tools           1.60-16             The NET-3 networking toolkit
    ii  netbase             4.23                Basic TCP/IP networking system
    ii  netkit-inetd        0.10-10.2           The Internet Superserver
    ii  nvi                 1.79-22             4.4BSD re-implementation of vi
    ii  passwd              4.0.13-1            change and administer password and group data
    ii  perl-base           5.8.7-7             The Pathologically Eclectic Rubbish Lister
    ii  procps              3.2.5-1             /proc file system utilities
    ii  psmisc              21.6-1              Utilities that use the proc filesystem
    ii  readline-common     5.0-11              GNU readline and history libraries, common files
    ii  reiserfsprogs       3.6.19-1            User-level tools for ReiserFS filesystems
    ii  sasl2-bin           2.1.19-1.7          Programs for manipulating the SASL users database
    ii  sed                 4.1.2-8             The GNU sed stream editor
    ii  slang1a-utf8        1.4.9dbs-8          The S-Lang programming library with utf8 support
    ii  sysklogd            1.4.1-17            System Logging Daemon
    ii  sysv-rc             2.86.ds1-4          Standard boot mechanism using symlinks in /etc/rc?.d
    ii  sysvinit            2.86.ds1-4          System-V like init
    ii  tar                 1.15.1-2            GNU tar
    ii  tasksel             2.32                Tool for selecting tasks for installation on Debian sy
    ii  tcpd                7.6.dbs-8           Wietse Venema's TCP wrapper utilities
    ii  telnetd             0.17-32             The telnet server
    ii  udev                0.105-4             /dev/ and hotplug management daemon
    ii  util-linux          2.12p-8             Miscellaneous system utilities
    ii  wget                1.10.2-1            retrieves files from the web
    ii  whiptail            0.51.6-31           Displays user-friendly dialog boxes from shell scripts
    ii  zlib1g              1.2.3-4             compression library - runtime
    
    

How to setup debian26 Edit

  • Adding telnetd to the original system
    • IP address is set from the menu of LANDISK.(Password is "landisk").
    • A new user "landisk" is made from the menu of LANDISK.
    • Next, download landisk_telnetd_v2.0.zip from the web site "wizd on LANDISK". ( filelandisk_telnetd_v2.0.zip )
    • It is unzipped and update.tgz is retrieved.
    • Update the firmware by specifying update.tgz in the menu of LANDISK.
    • After reboot, you can telnet into the device:
      • Open a telnetsession, connect to the Landisk IP (port 23)
      • User account is landisk, password is "landisk".
      • To become root, "sudo su" is executed. (root password is "landisk")
      • To write it in rootfs, "mount -o rw,remount /" is executed.
  • Debian26 is constructed to /dev/hda3.
    • Install debian26 base system.
      # cd /mnt/hda3
      # tar vxfzp base26-sh4-xxxxxxxx-etch.tgz
      # mv debian26/* .
      # rm -rf debian26
      
    • Some files need to be corrected. (Following is an example based on my environment. The IP in red have to be changed according to your setup.)
      • /mnt/hda3/etc/hosts
        127.0.0.1    localhost
        192.168.1.81 landisk
        
      • /mnt/hda3/etc/hostname
        landisk
        
      • /mnt/hda3/etc/resolv.conf
        nameserver 192.168.1.1  ( <- this is your ISP's DNS server)
        
      • /mnt/hda3/etc/network/interfaces
        # Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
        # /usr/share/doc/ifupdown/examples for more information.
        auto lo
        iface lo inet loopback
         
        auto eth0
        iface eth0 inet static
        address 192.168.1.81
        netmask 255.255.255.0
        gateway 192.168.1.1
        
  • /mnt/hda3/etc/hosts.allow
    ALL : 127.0.0.1 192.168.1. 192.168.0.
    
  • /mnt/hda3/etc/fstab
    # UNCONFIGURED FSTAB FOR BASE SYSTEM
    #/dev/sda4     /            reiserfs    defaults        0 1
    /dev/sda3     /            ext2    defaults        0 0
    none          /proc        proc    defaults        0 0
    /dev/sda2     swap         swap    defaults        0 0
    
  • Setup boot-loader lilo-sh
    • copy some files from debian26(/dev/hda3) to /dev/hda1
      # mount -o rw,remount /
      # cp /mnt/hda3/boot/vmlinuz-2.6.22-landisk /boot
      # cp /mnt/hda3/boot/boot.b-selk /boot
      
  • /etc/lilo.conf - dual boot setting between original environment and debian26
    linear
    boot=/dev/hda
    disk=/dev/hda
    bios=0x80
    timeout=50
    install=/boot/boot.b-selk
    map=/boot/map
    default=debian26
    
    image=/boot/zImage
            label=linux
            root=/dev/hda1
            read-only
            append="mem=64M console=ttySC1,9600 root=/dev/hda1"
    
    image=/boot/vmlinuz-2.6.22-landisk
            label=debian26
            root=/dev/sda3
            read-only
            append="mem=64M console=ttySC1,9600 root=/dev/sda3"
    
  • Setup lilo
    # /mnt/hda3/sbin/lilo
    Added debian26 *
    Added linux
    
  • reboot
    # /home/LANDISK/scripts/powerctrl.sh reboot
    
  • Login can be done by the telnet.
    Debian GNU/Linux testing/unstable
    landisk login: landisk
    Password: landisk
    Last login: Mon Nov 21 22:33:18 2005 from 192.168.1.2 on pts/1
    Linux landisk 2.6.14-sh #1 Sat Nov 12 00:03:54 JST 2005 sh4 GNU/Linux
    
    The programs included with the Debian GNU/Linux system are free software;
    the exact distribution terms for each program are described in the
    individual files in /usr/share/doc/*/copyright.
    
    Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
    permitted by applicable law.
    landisk@landisk:~$ su
    Password: landisk
    landisk:/home/landisk#
    
  • How to boot from original system :
    If you switch on the device, it will boot Debian from now on.
    However, there is still a way to boot the original linux by following procedure:
    • turn off the power.
    • power button ON, and quickly (max 5 seconds) power button OFF.
    • wait a 10 second.
    • power button ON

Additional setup Edit

  • apt-get
    landisk:/# apt-get update
    
    landisk:/# apt-get remove gpgv-udeb
    landisk:/# apt-get install gnupg
    landisk:/# wget http://ftp-master.debian.org/ziyi_key_2006.asc
    landisk:/# apt-key add ziyi_key_2006.asc
    
    landisk:/# apt-get update
    landisk:/# apt-get upgrade
    
  • gcc-4.0,g++-4.0,gcc-3.4,g++-3.4,etc
    landisk:/# apt-get install dpkg-dev binutils gcc g++ make libncurses5-dev
    landisk:/# apt-get install gcc-3.4 g++-3.4
    
  • Xorg-X11
    landisk:/# apt-get install x-window-system vncserver wdm
    
  • etc/X11/wdm/Xservers (If you use not USB2VGA dongle but VNC. )
    #:0 local /usr/bin/X11/X -nolisten TCP
    :0 local /usr/bin/Xrealvnc -geometry 1024x768 -depth 16
    
  • start wdm
    landisk:/# /etc/init.d/wdm restart
    Starting WINGs display manager: wdm.
    

Additional packages and source Edit

The following apt-line can be used.

deb http://eggplant.ddo.jp/www/download/debian26 etch main

source : http://eggplant.ddo.jp/www/download/debian26/source/

Screenshot Edit

From VNC client.
landisk_vnc.jpg

linux workstation Edit

usb2vga3.png usb2vga4.png

Appendix - How to Self-build Kernel Edit

  • setup
    landisk:~# mkdir kernel
    landisk:~# cd kernel
    
    landisk:~/kernel# tar vxfz linux-2.6.14-sh-landisk.0.3.tgz
    
  • build
    landisk:~/kernel# cd linux-2.6.14.3
    landisk:~/kernel/linux-2.6.14.3# cp arch/sh/configs/landisk_defconfig .config 
    
    landisk:~/kernel/linux-2.6.14.3# make menuconfig
    landisk:~/kernel/linux-2.6.14.3# make
    
  • It tests by using kexec.
    landisk:~/kernel/linux-2.6.14.3# kexec arch/sh/boot/zImage
    

Appendix - debian Cross-toolchain on Intel machine Edit

http://eggplant.ddo.jp/www/download/debian26/CROSS/
It contains the following.
Please install it by the dpkg -i *.deb command.

binutils-sh4-linux_2.16.1-2_i386.deb
cpp-3.4-sh4-linux_3.4.4-5_i386.deb
g++-3.4-sh4-linux_3.4.4-5_i386.deb
gcc-3.4-sh4-linux_3.4.4-5_i386.deb
libstdc++6-dev-sh4-cross_3.4.4-5_all.deb
libstdc++6-sh4-cross_3.4.4-5_all.deb
cpp-4.0-sh4-linux_4.0.2-2_i386.deb
g++-4.0-sh4-linux_4.0.2-2_i386.deb
gcc-4.0-sh4-linux_4.0.2-2_i386.deb
libstdc++6-4.0-dev-sh4-cross_4.0.2-2_all.deb
libstdc++6-dev-sh4-cross_3.4.4-5_all.deb
libc6-dev-sh4-cross_2.3.5-7_all.deb
libc6-sh4-cross_2.3.5-7_all.deb  
libdb1-compat-sh4-cross_2.1.3-7_all.deb
libgcc1-sh4-cross_4.0.2-2_all.deb
libncurses5-dev-sh4-cross_5.4-4_all.deb
libncurses5-sh4-cross_5.4-4_all.deb
linux-kernel-headers-sh4-cross_2.6.13+0rc3-2_all.deb

Appendix - More Information Edit

The following are my Japanese pages.

comment Edit

#pcomment(,5,below,reply)


添付ファイル: filelandisk_telnetd_v2.0.zip 787件 [詳細] filecomment1.jpg 453件 [詳細] filelandisk_vnc.jpg 461件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-07-10 (火) 00:26:45 (6191d)