开发的第一步,需要最基础的一些服务,大部分开发人员还是在Windows平台上开发,无疑是Windows的高效率与开发工具的丰富。
在Windows开发Linux项目,一般需要通过samba服务器连接到Linux,通过终端来访问Linux,通过nfs来启动开发板,这三个最基本的服务先来配置吧。
平台:Ubuntu Server 10.04 LTS
安装完Ubuntu Server 10.04 LTS,默认已经安装了samba,nfs,ssh一些服务。在开发过程中,一般需要如下软件包:
samba, nfs, tftp, ssh, telnet;
安装软件包之前,需要先设置一下IP地址与DNS服务器:
配置文件:/etc/network/interfaces
静态IP(例子):
auto eth0
iface eth0 inet static
address 192.168.0.163
gateway 192.168.0.1
netmask 255.255.255.0
动态IP:
auto eth0
iface eth0 inet dhcp
DNS服务器的配置文件:/etc/resolv.conf
nameserver 192.168.0.1 (后面跟着相应的dns服务器地址)
重启网卡:sudo /etc/init.d/networking restart
安装这些软件包,速度可能有点慢,apt源服务器默认在外国,所以事先增加一些源:
增加源的2种方式:1、dvd可选包镜像; 2、网络
1、dvd增加源:
例子:ubuntu-10.04-dvd-i386.iso
步骤:sudo mkdir -p /media/cdrom
sudo mount -t iso9660 -o loop ubuntu-10.04-dvd-i386.iso /media/cdrom/
sudo apt-cdrom -m -d /media/cdrom add
sudo apt-get update
执行完上述步骤,即可获取一些源。若要删除dvd源,就去修改/etc/apt/sources.list文件,将dvd源手动删除即可。
2、网络增加源
这比较简单,不需要再另外下载dvd镜像,一些国内的软件源速度都比较理想。将以下的源地址添加到/etc/apt/sources.list开头。
一个是台湾源,一个是163源,速度很快。
deb http://tw.archive.ubuntu.com/ubuntu/ lucid main universe restricted multiverse
deb-src http://tw.archive.ubuntu.com/ubuntu/ lucid main universe restricted multiverse
deb http://tw.archive.ubuntu.com/ubuntu/ lucid-security universe main multiverse restricted
deb-src http://tw.archive.ubuntu.com/ubuntu/ lucid-security universe main multiverse restricted
deb http://tw.archive.ubuntu.com/ubuntu/ lucid-updates universe main multiverse restricted
deb http://mirrors.163.com/ubuntu/ lucid main universe restricted multiverse
deb-src http://mirrors.163.com/ubuntu/ lucid main universe restricted multiverse
deb http://mirrors.163.com/ubuntu/ lucid-security universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ lucid-security universe main multiverse restricted
deb http://mirrors.163.com/ubuntu/ lucid-updates universe main multiverse restricted
deb http://mirrors.163.com/ubuntu/ lucid-proposed universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ lucid-proposed universe main multiverse restricted
deb http://mirrors.163.com/ubuntu/ lucid-backports universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ lucid-backports universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ lucid-updates universe main multiverse restricted
添加完成后,执行:sudo apt-get update
nfs安装配置:
nfs服务配置最简单
步骤:
sudo apt-get install nfs-kernel-server (有些软件包会根据依赖关系自动加上)
sudo vi /etc/exports
添加以下内容:/home/lucky *(rw,sync,no_root_squash) (括号里面不能加空格)
重启服务:sudo /etc/init.d/nfs-kernel-server restart
测试是否配置成功:sudo mount -t nfs localhost:/home/lucky /mnt
tftp安装配置:
步骤:
sudo apt-get install tftp-hpa tftpd-hpa xinetd
sudo vi /etc/default/tftpd-hpa
在相应地方添加以下内容:
RUN_DAEMON="yes"
开启tftp
OPTIONS="-l -c -s /var/lib/tftpboot"
指定目录, -c表示能上传文件。
增加权限:sudo chmod 777 /var/lib/tftpboot
为了方便,直接创建一个链接文件就行:sudo ln -s /var/lib/tftpboot /tftpboot
重启服务:sudo /etc/init.d/tftpd-hpa restart
测试是否配置成功:tftp localhost 自己执行命令测试,一般用put或get测试
samba安装配置(最重要):
步骤:
sudo apt-get install samba
cd /etc/samba
sudo vi smb.conf
添加或修改以下内容:
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
security = user
encrypt passwords = true
passdb backend = tdbsam
smb passwd file = /etc/samba/smbpasswd
username map = /etc/samba/smbusers
obey pam restrictions = yes
共享目录的配置:
[lucky]
comment = Ubuntu Server
path = /home/lucky
browseable = yes
public = yes
writable = yes
valid users = lucky
create mask = 0755
force user = lucky
force group = lucky
available = yes
解释:
[lucky] 目录名称
comment = Ubuntu Server 目录的名字描述
path = /home/lucky 共享目录
browseable = yes 可浏览
public = yes 公开
writable = yes 可写
valid users = lucky 指定用户为lucky,需要用户输入samba密码,如果去掉该行,就不需要输入密码了。
create mask = 0755 创建文件的权限
force user = lucky 将放入共享目录的文件或目录为lucky用户所有
force group = lucky 将放入共享目录的文件或目录为lucky组所有
available = yes 可用
注:Windows只支持一个samba用户通过密码登陆,也就是说:如果第一个共享目录使用密码登陆samba,那么第二个需要输入密码的共享目录不能使用,若无密码,则可以正常使用(需自己测试才清楚)。
新建一些需要的文件:
在/etc/samba目录下:
sudo touch smbpasswd smbusers
创建用户:
sudo smbpasswd -a lucky
密码:123456
确认密码:123456
重启samba服务:sudo /etc/init.d/smbd restart
windows登录linux的samba服务器:
开始->运行:\\(linux的ip地址)
telnet安装配置:
步骤:
sudo apt-get install xinetd telnetd
sudo vi /etc/xinetd.conf
在相应的位置添加以下内容:
instances = 60
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30
sudo touch /etc/xinetd.d/telnet
sudo vi /etc/xinetd.d/telnet
内容如下:
# default: on
# description: The telnet server serves telnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
}
重启服务:sudo /etc/init.d/xinetd restart
ssh安装配置:
若Ubuntu默认没有ssh,直接:
sudo apt-get install ssh(软件包会自动选择)
安装完就能使用。
vim的配置:
vi多一些颜色和自动换行的功能,这样效率会比较高:
若要修改所有用户使用的配置文件是:sudo vi /etc/vim/vimrc
若要修改自己使用的配置文件:在自己的home目录新建一个".vimrc"文件
cd ~
touch .vimrc
vi .vimrc
添加以下内容:
let &termencoding=&encoding
set fileencodings=utf-8,gbk,ucs-bom,cp936,OK
syntax on
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent
set nu
if &term=="xterm"
set t_Co=8
set t_Sb=^[[4%dm
set t_Sf=^[[3%dm
endif
重新打开vi,就有自动换行与颜色功能。
Centos配置方法跟Ubuntu差不多,注意要关闭selinux和iptables
拷贝的虚拟机不能上网的问题
如果linux的虚拟机是拷贝的,可能不能上网,那么可以删除/etc/udev/rules.d/*-net.rules,然后重启虚拟机。此时重启网卡:# /etc/init.d/network restart,如果失败,显示类似Device eth0 does not seem to be present的出错信息,那么要查看/etc/udev/rules.d/*-net.rules文件,看里面使用的是eth0或N,然后用这个MAC地址替换/etc/sysconfig/network-scripts/ifcfg-eth0文件中的值,还有改成对应的eth(N)
最基本的环境搭建好了,下一步就是代码版本库的搭建了,SVN服务器搭建。。