Ubuntu 13.0 嵌入式开发常用工具安装(二) u-boot和Kernel及busybox官方下载地址

Ubuntu 13.0 嵌入式开发常用工具安装(二)

u-boot和Kernel及busybox官方下载地址


1 minicom(linux下的超级终端)

minicom的安装非常简单
在终端输入:sudo apt-get install minicom 
系统会自动选择安装最新版本的的minicom
在终端输入minicom -s 进入相应的菜单进行配置;

具体的配置信息如下所示:
Serial port setup [Enter]
+-------------------------------------------------------------+
| A -    Serial Device      : /dev/ttyUSB0                    |
| B - Lockfile Location     : /var/lock                       |
| C -   Callin Program      :                                 |
| D - Callout Program      -:                                 |
| E -    Bps/Par/Bits       : 115200 8N1                      |
| F - Hardware Flow Control : No                              |
| G - Software Flow Control : No                              |
|                                                             |
|    Change which setting?                                    |
+-------------------------------------------------------------+

如果开发板上有USB转串口芯片的话 A该设为/dev/ttyUSB0 

如果没有那么设为: /dev/ttyS0

注意:非正常关闭minicom,会在/var/lock下创建几个文件LCK*,这几个文件阻止了minicom的运行,将它们删除后即可恢复

组合键的用法是:先按Ctrl+A组合键,然后松开这两个键,再按Z键。另外还有一些常用的组合键。
(1)S键:发送文件到目标系统中;
(2)W键:自动卷屏。当显示的内容超过一行之后,自动将后面的内容换行。这个功能在查看内核的启动信息时很有用。
(3)C键:清除屏幕的显示内容;
(4)B键:浏览minicom的历史显示;
(5)X键:退出mInicom,会提示确认退出。

3、配置文件所在目录
Ctrl + A --> O
+-----[configuration]------+
| Filenames and paths      |
| File transfer protocols -|
| Serial port setup        |
| Modem and dialing        |
| Screen and keyboard      |
| Save setup as dfl        |
| Save setup as..          |
| Exit                     |
+--------------------------+

选择"Filenames and paths"
+-----------------------------------------------------------------------+
| A - Download directory : /home/crliu                                    |
| B - Upload directory   : /tmp                                         |
| C - Script directory   :                                              |
| D - Script program     : runscript                                    |
| E - Kermit program     :                                              |
| F - Logging options                                                   |
|                                                                       |
|    Change which setting?                                              |
+-----------------------------------------------------------------------+

(1)A - download 下载文件的存放位置(开发板 ---> PC)
开发板上的文件将被传输到PC机上的/home/crliu目录下。
(2)B - upload 从此处读取上传的文件(PC ---> 开发板)
PC机向开发板发送文件,需要发送的文件在/tmp目录下(PC机上的目录)。做了此项配置后,每次向开发板发送文件时,只需输入文件名即可,无需输入文件所在目录的绝对路径

2 tftp  简单文件传输协议

1.安装tftp的服务端和客户端:
sudo apt-get install tftpd-hpa ;安装tftp服务端
sudo apt-get install tftp-hpa   ;安装tftp客户端

2.安装xinetd
sudo apt-get install xinetd

3.安装完 xinetd应该会建立目录/etc/xinetd.d,在此目录中添加文件:tftpd
sudo touch /etc/xinetd.d/tftpd

4. 编辑tftp的初始化文件
sudo gedit /etc/xinetd.d/tftpd
在tftpd中添加如下内容:
service tftp
{
disable = no
socket_type = dgram
wait = no
user = root
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /home/tftpd                                      ----------------------------自己创建的tftp主目录 cpy share file to this directory
log_on_success = PID HOST DURATION
log_on_failure = HOST
}

5.在/home下建立tftpd目录,作为服务器的目录
sudo mkdir /home/tftpd
释放权限:
sudo chmod 777 /home/tftpd        
      
6.打开inetd.conf 注释掉内容:
sudo gedit /etc/inetd.conf
#tftp dgram udp wait nobody /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot        ----------若没有请自己添加此句。


7.重启xinetd服务
sudo /etc/init.d/xinetd restart


8.重启tftpd服务
sudo /etc/init.d/tftpd-hpa restart


通过查看进程可以查看当前tftp server 主目录
ps -axu | grep tftp
root     10736  0.0  0.0   2280   684 ?        Ss   21:26   0:00 /usr/sbin/in.tftpd -s /home/tftpd

9 tftp的使用方法
usage : tftp ipaddrs  //向指定的IP的开发板传输文件,或者PC。
    get filename  //获取文件,从另一台或者本机目录获取文件,文件需要提前保存到/home/tftpd   中。
put file      //发送文件
下面是网上总结出来的常见错误及解决方法:
现象一:
tftp> get file
Transfer timed out.
原因:
tftpd服务没有启动
解决方法:启动服务
sudo /etc/init.d/xinetd restart
sudo /etc/init.d/tftpd-hpa restart

现象二:
tftp> get file
Error code 2: Only absolute filenames allowed
原因:
在/etc/xinetd.d/tftpd中设置的server_args为/etc/default/tftpd-hpa
下面是我的机器上/etc/default/tftpd-hpa配置
# /etc/default/tftpd-hpa
RUN_DAEMON="yes"
TFTP_ADDRESS="0.0.0.0:69"
OPTIONS="-s /home/tftpd -c -p -U 077 -u tftpd"

现象三:
tftp> put file
Error code 1: File not found
原因:
指定的文件不存在;或tftpd启动参数中没有指定-c选项,允许上传文件~上传的时候一定要确保文件先存在于上传目录下。

现象四:
tftp> get file
tftp:  : Permission denied
原因:权限不足
请查看chmod 是不是配置好
或者切换到root用户 sudo passwd root
设置密码:
切换至root: su -
输入密码

nfs(网络文件系统):相同操作系统的两台主机共享目录

一、NFS安装

    $sudo apt-get install nfs-kernel-server nfs-common rpcbind

二、NFS配置

   2.1 配置/etc/exports文件

    $sudo vim /etc/exports

在文件最后加入如下内容:

{{

     /rootnfs *(rw,sync,no_root_squash)

}}

      注:nfs允许挂载的目录及权限在文件/etc/exports中进行了定义。其中:/rootnfs是要共享的目录,*代表允许所有的网络段访问,rw是可读写权限,sync是资料同步写入内存和硬盘,no_root_squash是nfs客户端分享目录使用者的权限,如果客户端使用的是root用户,那么对于该共享目录而言,该客户端就具有root权限。

 

nfs常用的参数有:

 

ro 只读访问

rw 读写访问sync 所有数据在请求时写入共享

async nfs在写入数据前可以响应请求

secure nfs通过1024以下的安全TCP/IP端口发送

insecure nfs通过1024以上的端口发送

wdelay 如果多个用户要写入nfs目录,则归组写入(默认)

no_wdelay 如果多个用户要写入nfs目录,则立即写入,当使用async时,无需此设置。

hide 在nfs共享目录中不共享其子目录

no_hide 共享nfs目录的子目录

subtree_check 如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限(默认)

no_subtree_check 和上面相对,不检查父目录权限

all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。

no_all_squash 保留共享文件的UID和GID(默认)

root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)

no_root_squas root用户具有根目录的完全管理访问权限

anonuid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的UID

anongid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的GID

 

三、重启服务

$ sudo /etc/init.d/rpcbind restart

 

$ sudo /etc/init.d/nfs-kernel-serverrestart

 

四、测试

   4.1 显示出共享出来的目录

    $showmount -e

   4.2 将nfs的rootnfs目录挂载到本地磁盘上。

    $sudo mount -t nfs localhost:/rootnfs /mnt

   4.3 查看挂载情况

    $df

   4.4 卸载挂载

    $sudo umount /mnt

五、完成


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值