Kullandığınız SBC üzerinde bir ethernet kartı varsa bu hayatınızı ciddi orada kolaylaştıracaktır. Dosya aktarımları, sisteme erişim vb. gibi konularda getirileri oldukça fazladır. Ayrıca SBC'yi bir ağa dahil etme, onunla yapabileceklerinizi de elbette artıracaktır.
Belgenin yazımında kullandığımız SBC üzerinde bir Realtek 8139 ethernet arayüzü mevcut idi. Bu nedenle çekirdeği derlerken RTL8139 desteğini de seçtik ve ethernet kartımızın Linux çekirdeği tarafından tanınabilmesini sağladık. Benzer işlemleri kendi ethernet kartınıza göre sizin de yapmanız gerekiyor.
# cat /proc/pci | grep -i eth
Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ ¬
(rev 16).
# dmesg | grep eth
eth0: RealTek RTL8139 Fast Ethernet at 0xc2800000, 00:05:b7:01:20:16, IRQ 10
eth0: Identified 8139 chip type 'RTL-8139C'
#
Kartımız sistem tarafından tanındığına göre ayarlamaları yapabiliriz. Bunun için değişebilir nitelikte olan bilgileri statik olarak açılışta çalışacak kabuk programına yazmak yerine /etc dizini altında bir genel ayar dosyası oluşturup buraya yazma yöntemini seçelim. Dosyamızın adı /etc/config olsun. Şimdi vi /etc/config ile bu dosyanın içeriğini aşağıdaki gibi oluşturalım:
HOSTNAME=embed
IP=192.168.0.155
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
Gerekli parametrelerimizi burada ayarladık. Şimdi bu parametrelerle sistemin açılışı esnasında /etc/hosts dosyasını düzenleyecek ve HOSTNAME değerini atayacak, ardından ağ kartına ilişkin IP ve yönlendirme ayarlarını yapacak program satırlarını açılışta çalışan betiğimiz olan /etc/init.d/rcS dosyasına ekleyelim.
## Ayar dosyasını oku
. /etc/config
## Ağ ayarlamaları
if [ -n "$HOSTNAME" ]; then
hostname $HOSTNAME
echo "127.0.0.1 localhost" > /etc/hosts
echo "$IP $HOSTNAME" >> /etc/hosts
fi
ifconfig lo 127.0.0.1 netmask 255.0.0.0 up
ifconfig eth0 $IP netmask $NETMASK up
if [ -n "$GATEWAY" ]; then
route add default gw $GATEWAY
fi
Bu değişiklikleri yaptıktan sonra sistemi yeniden başlatmaya gerek olmaksızın /etc/init.d/rcS betiğini çalıştırıp istenilen sonucu verip vermediğini görebiliriz:
# /etc/init.d/rcS
mount: Mounting proc on /proc failed: Device or resource busy
eth0: Setting 100mbps full-duplex based on auto-negotiated partner ability 45e1
# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:05:B7:01:20:16
inet addr:192.168.0.155 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10 errors:0 dropped:0 overruns:0 frame:0
TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:1234 (1.2 kiB) TX bytes:610 (610.0 iB)
Interrupt:10
# ping 212.156.4.1
PING 212.156.4.1 (212.156.4.1): 56 data bytes
64 bytes from 212.156.4.1: icmp_seq=0 ttl=57 time=23.2 ms
64 bytes from 212.156.4.1: icmp_seq=1 ttl=57 time=22.7 ms
64 bytes from 212.156.4.1: icmp_seq=2 ttl=57 time=21.8 ms
SBC üzerinden ağ bağlantısını artık gerçekleştirdiğimize göre sisteme FTP ve telnet sunucularını kurabiliriz. Bunun için öncelikle inetd servisinin kurulması gereklidir.