Install SMS Linux (Slackware) on the eBox-2300SX

    I’ve been looking at the eBox-2300SX for a long time and trying it on as a simple home server. Moreover, I read the topic Ideal NAS on Habré ? Another point of view, eBox-2300SX . The piece of iron looks pretty interesting, but is it suitable as an HTTP server and Jabber? I think that everyone can solve this independently. But I just describe my experience installing Linux on it.

    About the eBox-2300SX itself

    Temporarily pulled one eBox out of work for experimentation. The patient has the following connectors: 3 USB, 1 Ethernet, 1 PS / 2 for the keyboard, 1 VGA, 1 CompactFlash and 1 power. Other interfaces may be present depending on the configuration. I got a model with two COM ports (which I personally do not need at all).

    First of all, I opened it. Inside, as it was already possible to learn from the reviews, there are both cPCI and E-IDE connectors. But do not roll your lip, because the standard E-IDE cable connector does not fit into the chassis in height. But this did not upset me, because I do not have IDE drives, but there is a SATA drive with an adapter for USB.

    Separately, I want to note that eBox pulled a USB CD-ROM. True, I had to take two of the three available connectors for this.

    First attempt to install Linux

    Having the knowledge that the eBox-2300SX does not have a mathematical coprocessor, I selected the distribution with this parameter in mind. In addition, I wanted to choose a familiar distribution kit or its clone - for me it is Slackware and Arch. A little google, I chose SMS . Firstly, this is Slackware for weak machines. Secondly, it is Slackware with a small number of packages. Well and thirdly, this is Slackware, with which I am a little familiar, starting from 4.0 to 13.0.

    I downloaded SMS 1.6.0 (this was the latest version at that time) and recorded a disc on RW. It booted from a USB CD-ROM and realized that the installation wouldn’t work - the eBox just hung at the boot stage. And one USB connector was still missing, as I did not have a PS / 2 keyboard.

    The second (and more correct attempt) install Linux

    Then I thought that installing Linux on the eBox itself is not necessary at all, you can use the capabilities of virtualization. To be more precise, then VMWare. We create a new virtual machine with standard settings and delete everything superfluous - sound, floppy and disk. As a disk, add a USB drive connected to the host machine. Installing in a virtual machine is quite easy and familiar (for those who are familiar with Slackware, of course). Unfortunately, VMWare is not able to boot from a USB drive as from a USB device (I did not find such options in its BIOS). So let's move on to the field tests on eBox.

    There is nothing surprising in the fact that the eBox again depended on the SMS with the kernel. At least I was not surprised. In order not to torment the venerable public, I will not pour so much water anymore, but in short I will tell you what difficulties I encountered and how I solved them.

    Kernel preparation

    If the kernel from SMS does not go to eBox, then on eBox you can tighten the kernel from X-Linux . This is such a special Linux for eBox, in which there is nothing sensible. But it works on eBox. It’s not interesting to just take the finished kernel 2.6.29. It is best to prepare a kernel (native to SMS) based on its .config. To do this, do the following:
    • Download and unpack kernel sources
    • Download the archive (Password: download)
    • We find the kernel config in the etc / kernel-config directory under the name kernel- and copy it to the directory with the kernel sources as .config.
    • Go to the source directory and do it make oldconfig. We answer a few simple questions. I gave up everything new.
    • Then we do, for example, make menuconfigand turn on Ext4 and JFS support
    • After that already make -j12 bzImage
    • The core is ready

    Preparing the kernel on the x86_64 host

    Arch x86_64 is installed on my laptop and after the assembly I got a kernel that needs a 64-bit processor. Somehow strong for eBox, I thought. In order for the kernel to build properly on a system with x86_64 (amd64) architecture, you need to do everything as described in the previous section, but add the ARCH = i386 prefix to the make command:
    • make ARCH=i386 oldconfig
    • make ARCH=i386 menuconfig
    • make ARCH=i386 -j12 bzImage
    All this will work if multilib is supported on the host.

    Ext4 Feature

    When installing SMS Linux, I, of course, formatted the root partition in Ext4, and when preparing the kernel, I turned off support for large files. And where will the 2TB files come from on eBox? It turned out that I was mistaken. For Ext4 to work correctly, the CONFIG_LBDAF option (large file support) must be set. Clear business that eBox in my case did not load. There seem to be two ways to solve the problem, I thought. The first is to reinstall SMS on the Ext3 partition. The second is to rebuild the kernel with support for large files. And the third is to disable support for large files in the Ext4 section . Yes, the third method was found in Google and I liked it more than the first two. We connect the USB drive to the host system and execute the following commands:

    # tune2fs -O ^huge_file /dev/раздел
    # fsck /dev/раздел

    Installing a new kernel on a USB drive

    While the USB drive is connected to the host machine, copy the new kernel to the root partition (I have / dev / sdb2). I called it vmlinuz-xlinux-5.7- To do this, go to the directory with the kernel sources and execute the commands: Do not forget to fix the LILO config. I added this section: It is clear that on eBox I have only one disk, so not / dev / sdb2, but / dev / sdba2. And pay attention to the rootdelay = 10 option. This option sets the delay before mounting the root file system, which is useful when using a USB device as the media for the root file system. After that, you must again boot into VMWare from the SMS installation disk and execute the following magic commands (so that LILO finds out about the new kernel):

    # mkdir /mnt/tmp
    # mount /dev/sdb2 /mnt/tmp
    # cp arch/i386/boot/bzImage /mnt/tmp/boot/vmlinuz-xlinux-5.7-
    # umount /mnt/tmp

    image = /boot/vmlinuz-xlinux-5.7-
    root = /dev/sda2
    append = "rootdelay=10"
    label = X-Linux-5.7
    # initrd = /boot/initrd.splash

    # mount /dev/sda2 /mnt
    # chroot /mnt
    # lilo
    # exit
    # halt

    As a result

    As a result, eBox still booted with SMS Linux. The first download took quite a lot of time, in my opinion, most of which (time, not look) took the generation of OpenSSH keys. This made me less optimistic about setting up the server on eBox.

    For myself, I made the following conclusions. The advantages of eBox are its small size and noiselessness, as Passive cooling is used. But since these advantages do not matter to me, I am considering building a server on the VIA PV530. If you add the memory and the case there, then you can completely meet the price of the eBox (~ $ 130). And this will already be more nimble hardware and the memory will be 2GB and not 128MB (on eBox).

    While preparing the material, a new version of SMS 1.6.1 was released. I did not remake the topic, because The principle of installing SMS is the same.

    Also popular now: