2.4  实验内容

2.4.1  在Linux下解压常见软件

1.实验目的

在Linux下安装一个完整的软件(嵌入式Linux的必备工具——交叉编译工具),掌握Linux常见命令,学会设置环境变量,同时搭建起嵌入式Linux的交叉编译环境(关于交叉编译的具体概念在本书后面会详细讲解),为今后的实验打下良好的基础。

 

2.实验内容

在Linux中解压cross-3.3.2.tar.bz2,并添加到系统环境变量中去。

 

3.实验步骤

(1)将光盘中的cross-3.3.2.tar.bz2复制到Windows下的任意盘中。

(2)重启机器转到Linux下,并用普通用户身份登录。

(3)打开“终端”,并切换到超级用户模式下。

命令为:su - root

(4)查看cross-3.3.2.tar.bz2所在的Windows下对应分区的格式,并记下其文件设备名称,如“/dev/hda1”等。

命令为:fdisk -l

(5)使用mkdir命令在“/mnt”新建子目录作为挂载点。

命令为:mkdir /mnt/win

(6)挂载Windows相应分区。

若是vfat格式,则命令为:mount –t vfat /dev/hda* /mnt/win。

 

注意

由于ntfs格式在Linux的早期版本中是不安全的,只能读,不能写,因此最好把文件放到fat32格式的文件系统中。

 

(7)进入挂载目录,查看是否确实挂载上。

命令为:cd /mnt/win;ls

(8)在/usr/local下建一个名为arm的目录。

命令为:mkdir /usr/local/arm

(9)将cross-3.3.2.tar.bz2复制到刚刚创建的目录中。

命令为:cp  /mnt/win/cross-3.3.2.tar.bz2  /usr/local/arm

 

注意

若cross-3.3.2.tar.bz2在当前目录中,则可将命令简写为:cp ./cross-3.3.2.tar.bz2 /usr/local/arm

 

(10)将当前工作目录转到“/usr/local/arm”下。

命令为:cd  /usr/local/arm

 

想一想

为什么要将此目录创建在“/usr/local”下?

 

(11)解压缩该软件包。

命令为:tar  jxvf  cross-3.3.2.tar.bz2

(12)将此目录下的/bin目录添加到环境变量中去。

命令为:export  PATH=/usr/local/arm/3.3.2/bin :$PATH

 

注意

用此方法添加的环境变量在掉电后会丢失,因此,可以在“/etc/bashrc”的最后一行添加以上命令。

 

(13)查看该路径是否已添加到环境变量中。

命令为:echo $PATH

 

4.实验结果

成功搭建了嵌入式Linux的交叉编译环境,熟悉Linux下常用命令,如su、mkdir、mount、cp、tar等,并学会添加环境变量,同时对Linux的目录结构有了更进一步的理解。

 

2.4.2  定制Linux系统服务

1.实验目的

通过定制Linux系统服务,进一步理解Linux的守护进程,能够更加熟练运用Linux操作基本命令,同时也加深对init进程的了解和掌握。

 

2.实验内容

查看Linux系统服务,并定制其系统服务。

 

3.实验步骤

(1)查看系统的默认运行级别。

命令为:cat  /etc/inittab(假设当前运行级别为N)

(2)进入相应级别的服务脚本目录,查看哪些服务是系统启动的独立运行的服务,并做下记录。

命令为:cd  /etc/rc.d/rcN.d

(3)利用命令查看系统开机自启动服务,与上次查看结果进行比较,找出其中的区别,并思考其中的原因。

命令为:chkconfig  –list

(4)记录chkconfig  –list命令中由xinet管理的服务,并将其中启动的服务做下记录。

(5)进入xinet配置管理的相应目录,查看是否与chkconfig  –list所得的结果相吻合,并查看相应脚本文件。

命令为:cd  /etc/xinetd.d

(6)将sshd服务停止。

命令为:service  sshd  stop

(7)将sshd服务设置为开机不启动。

命令为:chkconfig  –level  N  sshd  stop

(8)查看该设置是否生效。

命令为:chkconfig  –list

(9)查看系统中所有服务及其端口号列表。

命令为:cat  /etc/services

(10)将sshd服务端口号改为4022。

命令为:vi  /etc/services 

(11)重启sshd服务,验证所改的端口号是否生效。

命令为:service  sshd  start

(12)重启Linux系统,验证所改的服务开机启动是否生效。

 

4.实验结果分析

本实验通过验证Linux系统服务的启动状态,进一步明确Linux系统服务启动的流程,更深入地理解了Linux系统操作。

 

本实验还通过定制Linux系统服务sshd的开机启动状态和端口号,熟悉了Linux的系统定制步骤。

 

2.5 本章小结

本章首先讲解了Linux操作的基本命令,这些命令是使用Linux的基础。Linux基本命令包括用户系统相关命令、文件目录相关命令、压缩打包相关命令、比较合并相关命令以及网络相关命令。着重介绍了每一类命令中有代表性的重要命令及其用法,并给出了具体实例,对其他命令列出了其使用方法。希望读者能举一反三、灵活应用。

 

接下来,本章讲解了Linux启动过程,这部分的内容比较难,但对深入理解Linux系统是非常有帮助的,希望读者能反复阅读。

 

最后,本章还讲解了Linux系统服务,包括独立运行的服务和xinetd设定的服务,并且讲解了Linux系统中设定服务的常用方法。

 

本章安排了两个实验,实验一通过一个完整的操作使读者能够熟练使用Linux的基本命令,实验二讲解了如何定制Linux系统服务,希望读者能够认真动手实践。

 

2.6 思考与练习

1.更改目录的名称,如把/home/david变为/home/john。

2.如何将文件属性变为-rwxrw-r--?

3.下载最新Linux源码,并解压缩至/usr/src目录下。

4.修改Telnet、FTP服务的端口号。