Android学习【Android内核编译之Linux通信环境搭建】

博客:http://blog.csdn.net/muyang_ren
Linux系统:Ubuntu Kylin 1404


NFS服务器的安装配置和使用

安装nfs服务器:
1->安装NFSserver端口映射和服务

sudo apt-get install nfs-kernel-server

2->先重启portmap服务

sudo /etc/init.d/portmap restart

3->编辑/etc/exports,添加目标系统的根文件系统映射目录,假如目标系统的根文件系统最后映射到/opt/rootfs,则
—>打开文件/etc/exports,添加以下内容:

/opt/rootfs  *(subtree_check,rw,no_root_squash,async) 

4->重启服务:

$sudo      /etc/init.d/nfs-kernel-server   restart 
$sudo  exportfs –a (最好每修改过/etc/exports 后需要执行一次) 

3、测试:
1->在用户主目录中创建一个挂载点:
2->挂载文件系统:/opt/rootfs

sudo mount 192.168.7.5:/opt/rootfs /mnt

3->查看mnt下是否可以看到rootfs中的内容,如果可以看到,nfs OK
4->卸载:sudo umount /mnt


Samba服务

1、在linux中创建一个共享目录,并修改访问权限:

    mkdir ~/samba
    sudo chmod 777 samba/ -R

2、安装:

sudo apt-get install samba

3、打开配置文件: /etc/samba/smb.conf

sudo vim /etc/samba/smb.conf

4、添加以下内容:

    [home-samba]:w
    path = /home/lhy/samba
    available = yes
    browseable = yes
    public = yes
    writable = yes
    #valid users = lhy

4、保存退出,重启samba服务:

sudo /etc/init.d/smbd restart

5、测试:

    在windows中:
        开始---》运行:
                \\192.168.7.5

6、设置samba密码(可选)
1》在配置文件/etc/samba/smb.conf中加入以下内容:

    [home-samba]:w
    path = /home/lhy/samba
    available = yes
    browseable = yes
    public = yes
    writable = yes
    valid users = lhy

2》设置samba密码:
sudo smbpasswd -a lhy
3》重启samba服务:

sudo /etc/init.d/smbd restart

Ssh安装

sudo apt-get install openssh-server

Tftp服务器的安装与配置

关闭防火墙

sudo  ufw disable

1 安装xinetd:

lhy@ubuntu:~$ sudo apt-get install xinetd

2 安装tftp和tftpd:

lhy@ubuntu:~$ sudo apt-get install tftp tftpd

3 或者安装tftp的增强版本tftp-hpa(忽略安装这个):

lhy@ubuntu:~$ sudo apt-get install tftp-hpa tftpd-hpa

4.建立配置文件。建立/etc/xinetd.d/tftp文件,写入如下内容:
sudo vim /etc/xinetd.d/tftp

service tftp
{
        socket_type    = dgram
        protocol       = udp
        wait           = yes
        user           = root
        server         = /usr/sbin/in.tftpd
        server_args    = -s /tftpboot/ -c
        disable        = no
        per_source     = 11
        cps            = 100 2
        flags          = IPv4
}

5、打开文件 /etc/default/tftpd-hpa (没有就新建),添加以下内容:
sudo vim /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"

6.修改inetd.conf文件
sudo vim /etc/inetd.conf

sudo vim /etc/inetd.conf
tftp  dgram    udp    wait    nobody    /usr/sbin/tcpd
/usr/sbin/in.tftpd   /tftpboot (tftp共享目录)

7.设置tftp根文件访问权限为777:

lhy@ubuntu:~$ sudo mkdir /tftpboot/
lhy@ubuntu:~$ sudo chmod 777 /tftpboot/

8.启动或者重启xinetd服务:

lhy@ubuntu:~$ sudo /etc/init.d/xinetd restart

本机测试。在/tftpboot目录下创建一个ky文件,启动另外一个终端,输入:

lhy@ubuntu:
tftp 127.0.0.1
tftp> get 123.c     #获取文件
Received 57 bytes in 0.0 seconds
tftp> q         #退出tftp

在终端输入ls命令,可以看到当前目录下看到获取到的 u-boot134.bin文件。
用开发板来验证tftp服务器是否可用。启动开发板,进入U-Boot命令行,用tftp命令加载tftp服务器中的文件,如:

U-Boot$ tftp 80008000 zImage
ENET:auto-negotiation complete
ENET:Link status up
ENET:FULL DUPLEX
ENET:100MBase
MAC: 00:61:62:69:6e:67
TFTP from server 192.168.1.3; our IP address is 192.168.1.5
Filename 'zImage'.
Load address: 0x80008000
Loading: #################################
done
Bytes transferred = 479927 (752b7 hex)

说明:
(1)使用开发板与虚拟机安装的客户系统进行TFTP通讯,需要将虚拟网卡设置为Bridged模式,并建议使用静态IP地址。
(2)如果以上设置都确认无误,但tftp还是不成功,请检查主机的防火墙是否已经关闭。
(3)如果出现Error code 0: Permission denied, 是因为tftpboot文件夹没有权限,或者是要上传和下载的文件没有权限
(4)如果出现Error code 1: File not found, 是因为tftp配置文件中没有加-c。

你可能感兴趣的:(安卓,Ubuntu-Linux之旅,Android开发)