《嵌入式 Linux应用程序开发标准教程(第2版)》——2.4 实验内容

简介:

本节书摘来异步社区《嵌入式 Linux应用程序开发标准教程(第2版)》一书中的第2章,第2.4节,作者:华清远见嵌入式培训中心,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.4 实验内容

嵌入式 Linux应用程序开发标准教程(第2版)

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

boll想一想

为什么要将此目录创建在“/usr/local”下?
(11)解压缩该软件包。

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

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

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

0162注意

用此方法添加的环境变量在掉电后会丢失,因此,可以在“/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的系统定制步骤。

相关文章
|
Linux C语言
《嵌入式 Linux应用程序开发标准教程(第2版)》——导读
本书第1版《嵌入式Linux应用程序开发详解》自2006年7月出版以来,受到了广大读者的一致好评,已经多次印刷,累计销量18000册。许多高等院校、职业学校和培训机构也将本书作为嵌入式专业的教材。许多读者提出了宝贵的意见和中肯的建议。
2153 0
|
7天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
30 3
|
7天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
25 2