嵌入式开发的ubuntu配置

嵌入式开发的 ubuntu 配置

一、 Ubuntu 基本配置
(
参看: http://wiki.ubuntu.org.cn/

1.
添加桌面图标
执行 gconf-editor ,选择 /apps/nautilus/desktop

2
、安装中文语言支持和配置输入法:去掉繁体等不用的输入法,否则切换太麻烦;
 
3
、将应用程序-附件-终端拖放一个副本到桌面,方便使用;
 
4
、设置软件源:
      
  不同情况连接以下源的速度不同。建议在添加前手动验证以下源的连接速度( ping 下就行)。比如说北京网通用户连接 cn99 就非常慢,而 ftp.sjtu.edu.cn 是相对较快的源。选择最快的源可大大节省下载时间,请根据自己网络环境设置更新服务器,以达到最快的速度。
      
  注意,你可以同时加入几个源。尽量选择一组官方的源(也就是下面的 Archive.ubuntu.com 的条目)直接加在文件的最后,以避免非官方源软件包不全时出现   404 Not Found   文件未发现的错误。建议电信用户使用 cn99 和台湾大学的源,网通用户使用欧洲官方源或台湾大学的源,教育网用户使用教育网的源。  

然后更新一下数据库
sudo apt-get update
随便升一下级
sudo apt-get upgrade

5
、一些别名设置,在你的用户目录中找到 .bashrc 文件,在最后加入下面一行:
alias ll='ls -l'
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

6
、安装一些开发相关的软件:

装基本开发环境
sudo apt-get install build-essential gcc make

装编辑器
sudo apt-get install vim-full emacs

装基本开发库
sudo apt-get install libc6 libc6-dev

manpage,   装了之后可以直接用   man printf   查阅 printf 的详细用法
sudo apt-get install manpages-dev

安装 minicom 串口工具
sudo atp-get install minicom
然后配置:
sudo minicom -s

安装 ncurse
编译 kernel   vivi 的时候,运行 make menuconfig 会提示 ncurses 找不到,这是因为 menuconfig   用到了 ncurses 库。解决办法如下:
sudo apt-get install ncurses-dev

添加 tree 命令
apt-get install tree

安装 samba
apt-get install samba system-config-samba

安装 telnet 服务器
apt-get install telnetd

安装安装图形界面 ddd   调试器
apt-get install ddd ddd-doc

安装系统缺少的开发包
apt-get install libncurses5-dev libreadline5-dev  libglib2.0-dev libdbus-glib-1-dev libqt4-dev libqt3-mt-dev

7
、增强 vi 功能
apt-get install vim-full
vi ~/.vimrc
加入如下内容:
"
在行前显示行号 . 关闭显示请用 "set nonu"
set nu
"
启用语法高亮
syntax on
"
  根据文件类型启用缩进
filetype indent on
set autoindent
set cindent  
"
  查找时忽略大小些
set ic
"
  查找文本高亮
set hls
" Wrap text instead of being on one line
set lbr
"
  更改缺省配色方案为 delek
colorscheme delek
"
  设置跳格距离
set tabstop=4
set softtabstop=4
"
  设置自动缩进格数
set shiftwidth=4

二、安装交叉编译环境

1
、准备文件
cross-2.95.3.tar.bz2
arm-linux-gcc-3.3.2.tar.bz2
arm-linux-gcc-3.4.1.tar.bz2

2
、安装
将压缩包解压到 /usr/local/arm 下:
tar jxvf cross-2.95.3.tar.bz2 -C /usr/local/arm/

3
、设置环境变量:
把交叉编译器的路径加入到 PATH ,以方便使用:
sudo vi ~/.bashrc
在后面加入如下代码:
if [ -d /usr/local/arm ] ; then
    PATH=/usr/local/arm/2.95.3/bin:"${PATH}"
fi

然后重新打开一个终端或者用 source 命令:
source ~/.bashrc

三、配置 nfs

首先确认已经在 Linux 操作系统上安装好了 nfs 软件,并确保 NFS 服务正常启动运行。

1
、备份 nfs 配置文件 :
 
    cd /etc/
    sudo mv exports exports.bak
 
2
、修改配置文件  
 
    sudo vi /etc/exports
 
加入如下内容:  
/armnfs/root *(rw,sync,no_root_squash)
/armnfs/nfs *(rw,sync,no_root_squash)
   /armnfs/nfs
/armnfs/root 是代表要作为 ARM2410 的根文件系统的共享目录;                
    
  代表所有的客户机都可以挂接此文件系统;     
    rw
  代表客户机以读写许可来挂接它们的根文件系统;                     
    no_root_squash
  选项允许客户机以主机上的 root 身份挂接根文件系统。请阅读 exports 的手册获取更详细的信息。  
 
3
、启动 nfs
 
    
切换到超级用户下,启动 nfs
    service nfs start

4
、设置自动启动

    
在系统-管理-服务器设置- service 中选择 nfs 后台服务;
    
或者用下面的命令:
    chkconfig --level 5 nfs on

四、 TFTP 安装配置
1.
  确保系统中已经安装了   tftp server   应用包 , 例如执行下面命令 :
    rpm -qa | grep tftp-server
    tftp-server-0.32-4    <===
  表示已安装   tftp-server   应用

    
否则用以下命令进行安装:
    apt-get install tftp-server
    
2.
  编辑   /etc/xinetd.d/tftp   文件,确保其   disable   选项设为   no, 如下为示例配置:
service tftp
{
        socket_type            = dgram
        protocol               = udp
        wait                   = yes
        user                   = root
        server                 = /usr/sbin/in.tftpd
        server_args            = -s /tftpboot
        disable                = no
        per_source             = 11
        cps                    = 100 2
        flags                  = IPv4
}
此外,确保 /tftpboot 目录存在,而且有访问权限(至少应该 "dr-xr-xr-x" )。

3.
将需要下载的文件拷贝到 /tftpboot 下:

4.
  重新启动   xinetd   服务:
/etc/init.d/xinetd restart

五、配置 minicom 或超级终端

为了在主机上 控制 开发板,最常用的就是串口通讯工具, windows 下是超级终端, linux 下是 minicom
超级终端的原理并不复杂,它是将用户输入随时发向串口(采用 TCP 协议时是发往网口,这里只说串口的情况),但并不显示输入。它显示的是从串口接收到的字符。所以,嵌入式系统的相应程序应该完成的任务便是:
将自己的启动信息、过程信息主动发到运行有超级终端的主机 将接收到的字符返回到主机,同时发送需要显示的字符(如命令的响应等)到主机 。这样在主机端看来,就是有输入命令,又有命令运行状态信息。超级终端成了嵌入式系统的显示器。   如果要在超级终端显示汉字,嵌入式系统只需将汉字编码(每个汉字 2 个字节)发到主机,主机便会直接显示汉字。

1
、配置 windows 超级终端
超级终端是一个通用的串行交互软件,很多嵌入式应用的系统有与之交换的相应程序,通过这些程序,可以通过超级终端与嵌入式系统交互,使超级终端成为嵌入式系统的 显示器
我们可以用以下步骤配置和启动 windows
1 )在开始 —— 程序 —— 附件 —— 通讯中找到并打开超级终端;
2 )设置超级终端:此处可以设置为: 115200 8N1
3 )发送文件时,可以选择菜单中的发送, xmodem ,然后选择相应的目录找到映像文件。然后可以看到发送进度。

2
、配置 minicom
minicom
是一个串口通信工具,就像 Windows 下的超级终端。可用来与串口设备通信,如调试交换机和 Modem 等。
可以按照以下步骤配置 minicom
1 )以 root 身份运行   minicom. sudo minicom -s
2 )然后   Ctrl + A     o ( 先按 Ctrl +A   再按   O) 来配置   minicom.
3 )从菜单中选择   Serial port setup,   按回车 .   以配置为   115200 8N1 为例。
4 )按   E   ,   然后按 I Q ,   确认   current 显示为 115200 8Nl,   按回车 . 再按   A ,   Serial Device   下输入名 ( 如果选择串口 1, 输入 /dev/ttyS0.   如果选择串口 2, 输入 /dev/ttyS1), 然后回车 .
5 )按下 F , 修改 Hardware Flow Control     No.
6 )从菜单中选择 Modem and Dialing, 键入   A,   删除 Init Sring 中的内容 , 按回车 .
7 )键入 B, 删除 Reset String 中的内容 , 按回车 .   然后按回车键返回上级菜单 .
8 )从菜单中选择 Save setup as dfl 回车 . 然后选择 Exit 退出配置菜单 .
9 Ctrl + A   然后按   Q 退出 minicom.

六、配置 vsftp
1
、安装
$ sudo apt-get install vsftpd

2
、设置   vsftpd.conf 文件 ( 查找对应项,去掉注释 # ,或更改成自定义值 )

备份 vsftpd.conf 文件
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.old

编辑 vsftpd.conf 文件
$ sudo vim /etc/vsftpd.conf

#
匿名用户设置
#
匿名用户访问权限, YES   允许访问, NO   拒绝访问
anonymous_enable=NO
{//
以下只针对 anonymous_enable=YES 生效,建议关闭匿名访问
#
匿名用户上传权限, YES 允许, NO 拒绝。 FTP 匿名用户对某个目录有写权限。
anon_upload_enable=NO
#
匿名用户创建新目录权限, YES 允许, NO 拒绝。 FTP 匿名用户必需对新目录的上层目录拥有写权限。
anon_mkdir_write_enable=NO
#
匿名用户下载权限, YES 允许浏览及下载, NO   只允许浏览
anon_world_readable_only=NO
}

#
本地用户设置
#
控制 vsftpd 所在的系统的用户是否可以登录 vsftpd
local_enable=YES
#
  将本地用户锁定在自家目录中。 YES   锁定, NO   不锁定。 chroot_list_file 所指定文件中的用户将不被锁定在自家目录。本参数被激活后,可能带来安全上的冲突,特别是当用户拥有上传、   shell 访问等权限时。因此,只有在确实了解的情况下,才可以打开此参数。默认值为 NO
chroot_local_user=NO
#
锁定某些用户在自家目录中。即当这些用户登录后,不可以转到系统的其他目录,只能在自家目录 ( 及其子目录 ) 下。具体的用户在 chroot_list_file 参数所指定的文件中列出。默认值为 NO
chroot_list_enable=YES
#
指出被锁定在自家目录中的用户的列表文件。文件格式为一行一用户。
chroot_list_file=/etc/vsftpd.chroot_list
注意:   chroot_local_user=NO chroot_list_enable=YES 时, vsftpd.chroot_list 中用户为锁定用户,即他们除了自己的目录,不可以访问其他目录。
chroot_local_user=YES chroot_list_enable=YES 时, vsftpd.chroot_list 中用户为非锁定用户,他们可以访问任何其他目录。
#
定义所有本地用户的根目录。当本地用户登入时,将被更换到此目录下。(注释则访问该用户自己目录)
local_root=/var/www/web
  (路径自定义)
#
控制是否允许使用任何可以修改文件系统的 FTP   的指令,比如 STOR DELE RNFR RNTO MKD RMD APPE   以及 SITE
write_enable=YES
#FTP
服务器最大承载用户
max_clients=100
#
限制每个 IP 的进程
max_per_ip=5
#
最大传输速率 (b/s)
local_max_rate=256000
#
是否隐藏文件的所有者和组信息。 YES ,当用户使用 "ls -al" 之类的指令时,在目录列表中所有文件的拥有者和组信息都显示为 ftp
hide_ids=YES
#
空闲(发呆)用户会话的超时时间,若是超出这时间没有数据的传送或是指令的输入,则会强迫断线。单位为秒,默认值为 300
idle_session_timeout= 3000

3
、配置 vsftpd.chroot_list
$ sodu vim /etc/vsftpd.chroot_list
#
增加需要锁定 / 非锁定目录的用户 ( 根据自己情况添加 )
user1
user2

4
、删除 vsftp 默认访问路径
$ sudo rmdir /home/ftp

5
、重启 vsftp 服务
$ /etc/init.d/vsftpd restart
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值