《Linux操作系统实验指导书V32.pdf》由会员分享,可在线阅读,更多相关《Linux操作系统实验指导书V32.pdf(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Linux 操作系统 实验指导书第 1页LinuxLinuxLinuxLinux操作系统实验指导书操作系统实验指导书操作系统实验指导书操作系统实验指导书评分标准评分标准期末成绩选取至少 2-3 个实验,根据实验的难度和任务多少及完成情况评分。实验报告的内容与书写实验报告的内容与书写按照指定的报告模板,以书面形式记录下实验的每一步的过程,包括输入和输出信息(或者代码运行情况)遇到的问题、解决的办法和得到某种输出信息的原因,(输出结果较多者可精简截屏)。提交形式和日期提交形式和日期班长统一收齐期末报告后(完成实验中有源代码的,需将源代码作为附录,且给出代码文件等资料),刻录成光盘(2 份),最后一
2、节课提交,务必填写学号和姓名。Linux 操作系统 实验指导书第 2页实实实实验验验验一一一一 系统安装和配置(系统安装和配置(系统安装和配置(系统安装和配置(3 3 3 34 4 学时)学时)学时)学时)【实验目的】【实验目的】了解 Linux 操作系统的发行版本;掌握 Linux 系统安装方法;练习系统登录、注销、重启和关机。【实实验验内容内容】1Vmware Workstation 7.0 下创建 Red Hat Linux 虚拟机,要求虚拟机的内存为 256MB 或更大,硬盘为 8GB 或更大。2使用 DVD 光盘或 ISO 文件安装 Linux 系统。【实实验指导】验指导】1 1 1
3、 1硬盘和分区知识以及硬盘和分区知识以及 LinuxLinuxLinuxLinux文件系统的组织方式文件系统的组织方式(1)硬盘和分区知识磁盘有 IDE 接口和 SCSI 接口两种。磁盘在使用前需分区。磁盘分区有主分区、扩展分区和逻辑分区之分。一块硬盘可以有4 个主分区,其中一个主分区的位置可以有一个扩展分区替换,即可以有 3 个主分区和一个扩展分区,且一块硬盘只能有一个扩展分区,在这个扩展分区中可以划分多个逻辑分区。(2)Linux 如何表示分区在 Windows 系统中使用盘符来标识不同的分区,而在 linux 下使用分区的设备名来标识不同的分区,设备名存放在/dev 目录中。磁盘设备名称
4、如下:系统的第 1 块 IDE 接口的硬盘称为/dev/hda系统的第 2 块 IDE 接口的硬盘称为/dev/hdb系统的第 1 块 SCSI 接口的硬盘称为/dev/sda系统的第 2 块 SCSI 接口的硬盘称为/dev/sdb分区使用数字编号表示:系统的第 1 块 IDE 接口硬盘的第 1 个分区称为/dev/hda1系统的第 1 块 IDE 接口硬盘的第 5 个分区称为/dev/hda5系统的第 2 块 SCSI 接口硬盘的第 1 个分区称为/dev/sdb1系统的第 2 块 SCSI 接口硬盘的第 5 个分区称为/dev/sdb5注意:数字编号 1-4 留给主分区或扩展分区使用,逻
5、辑分区编号从 5 开始。(3)Linux 文件系统文件系统的组织方式-挂载点Linux 系统只有一个根目录,即只有一个目录树。不同磁盘的不同分区只是这个目录树的一部分,在 linux 中创建文件系统后(类似 format),用户不能直接使用它,要挂载文件系统后才能使用。挂载文件系统首先要选择一个挂载点。Linux 操作系统 实验指导书第 3页2 2 2 2利用利用 VMwareVMwareVMwareVMware WorkstationWorkstationWorkstationWorkstation7 7 7 7.0.0.0.0创建一台新的虚拟机创建一台新的虚拟机(1)选择 VMware W
6、orkstation 的 File 菜单下的 New-Virtual Machine 命令,出现以下对话框,单击下一步;(2)选择要创建一台典型虚拟机,按下一步继续;(3)选择客户操作系统;Linux 操作系统 实验指导书第 4页(4)为虚拟机选择一个虚拟机名称和目录;(5)设置虚拟机网络访问,可用的选择为:使用桥接网络:通过你的计算机中的一块以太网适配器卡直接连接到一个本地以太网。使用网络地址翻译(NAT):允许客户操作系统使用主机的 IP 地址访问主机的拨号或者外部以太网连接。使用仅为主机网络:通过一个虚拟网络从内部连接客户操作系统到主机。不使用一个网络连接;(6)设置虚拟磁盘大小;Lin
7、ux 操作系统 实验指导书第 5页(7)单击完成按钮,虚拟机就创建好了。3 3 3 3系统安装过程系统安装过程安装系统之前,先要设置一下虚拟机的光驱,如上图所示,双击“设备”下的“CD-ROM”项,打开配置窗口。使用的是 Linux 安装光盘,因此点选“使用物理驱动器”项,并在下拉列表中选择正确的光驱盘符(如:J);如果是从网上下载的 ISO 安装映像文件,则点选使用ISO 映像项,并通过浏览按钮选择下载所得的安装映像文件。设置完毕,单击确定按钮。双击“Start Virtual Machine”,启动虚拟机,开始安装 Linux 操作系统。(1)使用光盘启动后,出现安装界面,按“Enter”
8、进入图形安装环境。Linux 操作系统 实验指导书第 6页(2)按“Skip”跳过安装介质检查。(3)RedHat 欢迎界面。(4)语言选择。选择恰当的语言会在稍后的安装中帮助你定位时区,点击下一步继续。(5)键盘配置。选择你要在本次安装中和今后使用的系统默认键盘布局类型(例如,美国英语式),点击下一步来继续。(6).输入安装序列号,可以跳过(7)磁盘分区磁盘分区允许你将硬盘驱动器分隔成独立的区域在选择磁盘上删除所有分区并创建默认分区结构。在选择驱动上删除 Linux 分区并创建默认的分区结构使用选择驱动器中的空余空间并创建默认的分区结构建立自定义的分区结构。(8)选择上步的“建立自定义的分区
9、结构”。安装 RedHatEnterprise Linux 系统一般需要三个分区一个交换分区(大小为物理内存的两倍)一个 boot 分区(80MB120MB)一个根分区(1.7GB5.0GB)注意:掌握硬盘和分区知识以及 Linux 文件系统的组织方式。(9)配置引导装载程序配置。(10)设置网络。如果您是通过 DHCP 获得 IP 地址的,用默认的 DHCP 就行;如果你手工地输入了 IP 和子网掩码信息,你可能还得输入网关、主要、次要、和第三 DNS地址。(11)设置时区。(12)设置 root 口令。(13)定制软件包。(14)开始安装 RHEL。(15)完成安装。安装程序会提示你做好重
10、新引导系统的准备。重启过程中,会要求创建一个普通用户。【实实验重点】验重点】1掌握硬盘和分区知识,包括硬盘分类、硬盘以及分区在 Linux 下如何标识。2掌握 Linux 文件系统的组织方式挂载点含义。3学会使用 VMware Workstation。4学会安装 Linux 系统。实验一续 安装 VMware ToolsVMware常用快捷键:Linux 操作系统 实验指导书第 7页Ctrl-Alt-Enter进入全屏模式或退出全屏到窗口模式Ctrl-Alt在 VM 虚拟机和真实系统之间切换(1)启动 Linux 虚拟机登陆后,按下 CtrlAlt,跳出鼠标,点击 VM 菜单Install V
11、MwareTools(或者在 VMware的虚拟光驱加载 VMware安装目录下的文件 linux.iso),此时系统会自动挂起 CDRom,如果没有的话,用 mount 命令挂一下光驱,命令如下:mount-t iso9660/dev/cdrom/mnt 或者 mount/mnt/cdrom/。加载 CDROM 设备,这时如果进入/mnt 目录下,你将会发现多了两个文件:vmware-linux-tools.tar.gz。这就是 WMWARETOOLS 的 LINUX 软件包。(2)复制安装包到 linux 系统,命令如下:cp/mnt/vmware-linux-tools.tar.gz/t
12、mp,命令功能,将该软件包拷贝到 LINUX 的 TMP 目录下。(3)卸载光驱,卸载 CDROM,命令如下:umount/dev/cdrom 或者 umount/mnt/cdrom/(4)跳转到软件包所在的目录,命令如下:cd/tmp,命令功能,进入 TMP 目录(5)解压安装包,命令如下:tar zxf vmware-linux-tools.tar.gz,命令功能,将软件包解压到 vmware-linux-tools 目录下(与文件名同名)(6)进入解压后的目录,命令如下:cd vmware-linux-tools,命令功能,进入解压后的目录(7)运行安装命令,命令如下:./vmware-
13、install.pl,命令功能,执行 vmware-install.pl。这时 install 提示你是否需要备份以前的配置文件,建议选择y。然后一路回车就 ok!(8)安装完成后,重启系统,命令如下:Reboot(9)登陆后,查看目录/mnt/cdrom/是否有文件#cd/mnt/cdrom/#ls#mount/mnt/cdrom/#ls#umount/mnt/cdrom/#ls(10)登陆后,查看目录/mnt/有不有 hgfs 文件夹,命令如下:ls/mnt在 VM 菜单 里选择 setting 子项,再选择 Options.在窗 体的左半 部分是不 是看到 了SharedFolders这
14、么一项,如果你以前没有设置过,应该是 Disabled。下面就要启动它,选择它,在右边就会出现共享文件夹的设置窗口。选择 Add,选择要与客户 Linux 进行共享的文件夹。按上述步骤就可以实现安装和文件的共享。Linux 操作系统 实验指导书第 8页实验二 桌面系统环境应用【实实验指导】验指导】1.改变系统背景色2.设置系统时间和时区3.将系统用户目录界面内容截图,保存到 U 盘4.在系统中用文本编辑器创建新的文本文件,并复制到 U 盘5.打开面板,了解应用程序、系统设置、首选项中各自的功能6.熟悉 GNOME 桌面系统开始菜单中的选项7.利用控制面板,配置网卡,将 Linux 系统的 IP
15、 设置和 windows 的 IP 为同一网段,并在windows下 PING 通。Root 用户,选择删除当前的网络设备(Device:eth0,Nickname:eth0,Type:Ethernet)。选择“新建(New)”增加一个网络设备,弹出设备选择(Select Device Type)画面,在其中选择以太网络连接(Ethernet Connection)后,点击“前进(Forward)”选择AMD Pcnet32(eth0)后,点击“前进(Forward)”。进入配置网络设置(Configure Network Settings)画面。选择静态设置的 IP 地址(Staticall
16、y Set IP address)(说明:可以选择自动设置),参照 Windows 系统中 Vmnet8 的属性(IP 地址、掩码,网关等),配置本 Linux 系统网络地址。关键是要让它和 VMnet8 在一个网段内且子网掩码要相同,且地址不能冲突。然后激活(Active)它。利用控制面板,查看当前系统的服务,是否有 sshd 服务,有则将服务处于开启状态,并安装 sshd 软件,通过 ssh 软件访问 linux(注意:宽带客户端关闭,sshd 服务是否开启,防火墙)实验三 系统常用命令【实实验指导】验指导】1、系统环境变量查看和赋值,查看和设置 shell 提示符echo$PS1PS1=
17、uh Wd t#“2、使用 man 命令查看命令 ls,cal,echo,halt 和 shutdown 的用法3、使用 type 查看熟悉的命令,找出至少 5 个 shell 内置命令,并用 help 查看命令说明4、显示当前日期,格式化显示当前日期,并通过 man 查找资料,试用格式化输出date+%Y.%m.%d%H:%M:%SDay%j5、使用 cal 命令6、试依次打开多个终端,执行 who 命令,查看输出结果的变化7、使用 tty 和 who am i 命令Linux 操作系统 实验指导书第 9页8、使用 fdisk 命令观察硬盘分区a.fdisk lb.进入 fdisk 命令界面
18、:fdisk/dev/sda使用 fdisk 的 m 命令进行帮助;使用 l 命令观察常见分区的类型;使用 p 命令观察/dev/sda 上分区;使用 q 命令退出 fdisk;其它命令要慎重(建议不试)。9、使用 uptime 和 w 命令查看当前系统运行情况10、使用 passwd 变更当前用户密码,如果用桌面系统的窗口设置,在哪里?11、通过系统桌面系统,添加用户组 gtest,并创建一个新用户 test,且是属于 gtest 用户组,并设置此用户账号,明天过期;在终端修改此用户的密码为 88888812、使用 echo 命令,对比当参数加引号和不加引号后的输出结果echo We are
19、 studying UNIX OS now!necho e We are studying UNIX OS now!necho n We are studying UNIX OS now!n13、使用 clear 命令,理解其功能14、执行 cd/命令,并使用 ls 命令,尽可能多的使用其选项,对比输出结果15、执行 cd 命令,并用 pwd 查看输出结果,是否是你期望的输出16、跳转到目录:/lib,执行 ls|grep p|more,观察理解输出结果,并分步执行Lsls|morels|grep pls|grep p|more17、使用 su 命令,切换到 test 账号,并修改其密码18、
20、使用当前账号,执行 cd/命令,思考输出结果,执行 ls 命令,思考结果19、使用 cd 和 pwd 命令,掌握相对路径和绝对路径。对照右图,假如从目录 user3 开始,键完以下命令后,你的位置会在哪里。请将结果填在横线上。$pwd/home/user3$cd.$pwd$cdusr$pwd$cd/usr$pwd$cd./tmp$pwd$cd.$pwd/usruser4tmphometreeuser3binLinux 操作系统 实验指导书第 10页实验三续 系统常用命令【实验目的】【实验目的】1、了解 Linux 的命令及使用格式。2、熟悉 LINUX 的常用基本命令。【实验指导】【实验指导】
21、一、一、LinuxLinuxLinuxLinux命令格式命令格式命令选项 处理对象例:lslamydir注意:(1)命令一般是小写字串。注意大小写有别(2)选项通常以减号()再加上一个或数个字符表示,用来选择一个命令的不同操作(3)同一行可有数个命令,命令间应以分号隔开(4)命令后加上&可使该命令后台(background)执行二、常用命令二、常用命令1、目录操作和 DOS 相似,Linux 采用树型目录管理结构,由根目录(/)开始一层层将子目录建下去,各子目录以/隔开。用户 login 后,工作目录的位置称为 home directory,由系统管理员设定。符号代表自己的 home dire
22、ctory,例如/myfile 是指自己 home目录下 myfile 这个文件。Linux 的通配符有三种:*和?用法与 DOS 相同,代表区间内的任一字符,如 test05即代表 test0,test1,test5 的集合。(1)显示目录文件ls执行格式:ls atFlgR name(name可为文件或目录名称)例:ls显示出当前目录下的文件lsa显示出包含隐藏文件的所有文件lst按照文件最后修改时间显示文件lsF显示出当前目录下的文件及其类型lsl显示目录下所有文件的许可权、拥有者、文件大小、修改时间及名称lslg同上lsR显示出该目录及其子目录下的文件注:ls 与其它命令搭配使用可以生
23、出很多技巧(最简单的如ls-l|more),更多用法请输入 ls-help 查看,其它命令的更多用法请输入命令名-help查看.(2)建新目录mkdir执行格式:mkdirdirectoryname例:mkdirdir1(新建一名为 dir1 的目录)Linux 操作系统 实验指导书第 11页(3)删除目录rmdir执行格式:rmdirdirectoryname 或 rmdirectoryname例:rmdir dir1删除目录 dir1,但它必须是空目录,否则无法删除rm r dir1删除目录 dir1 及其下所有文件及子目录rm-rf dir1不管是否空目录,统统删除,而且不给出提示,使用
24、时要小心(4)改变工作目录位置cd执行格式:cd name例:cd改变目录位置至用户 login 时的 workingdirectorycddir1改变目录位置,至 dir1 目录cduser改变目录位置,至用户的 working directorycd.改变目录位置,至当前目录的上层目录cd./user改变目录位置,至上一级目录下的 user 目录cd/dir-name1/dir-name2改变目录位置,至绝对路径(Fullpath)cd-回到进入当前目录前的上一个目录(5)显示当前所在目录 pwd执行格式:pwd(6)查看目录大小 du执行格式:du s directory例:du dir
25、1显示目录 dir1 及其子目录容量(以 kb 为单位)du s dir1显示目录 dir1 的总容量(7)显示环境变量echo$HOME显示家目录echo$PATH显示可执行文件搜索路径env显示所有环境变量(可能很多,最好用env|more,env|grepPATH等)(8)修改环境变量,在 bash 下用 export,如:export PATH=$PATH:/usr/local/bin想知道 export 的具体用法,可以用 shell 的 help 命令:help export2 2 2 2、进程操作、进程操作(1)查看系统目前的进程ps执行格式:ps aux例:ps 或 ps x
26、查看系统中属于自己的 processps au查看系统中所有使用者的 processps aux查看系统中包含系统内部及所有使用者的 processps-aux|grepapache找出系统中运行的所有名称中带有apache串的process(2)查看正在 background 中执行的 process执行格式:#jobs#whojobs(3)结束或终止进程kill执行格式:kill9 PID(PID 为利用 ps 命令所查出的 process ID)例:kill456或kill9 456终止 process ID 为 456 的 process(4)后台(background)执行 pr
27、ocesscommand 的命令Linux 操作系统 实验指导书第 12页执行格式:command&(在命令后加上&)例:gcc file1&在后台编译 file1.c注意:按下Z,暂停正在执行的 process。键入”bg”,将所暂停的 process 置入background 中继续执行。例:gcc file1&Zstoppedbg(5)结束或终止在 background 中的进程kill执行格式:kill%n例:kill%1终止在 background 中的第一个 jobkill%2终止在 background 中的第二个 job(6)显示系统中程序的执行状态例:top-q不断地更新、显
28、示系统程序的执行状态第一行显示的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行为进程情况,依次为进程总数、休眠进程数、运行进程数、僵死进程数、终止进程数。第三行为 CPU 状态,依次为用户占用、系统占用、优先进程占用、闲置进程占用。第四行为内存状态,依次为平均可用内存、已用内存、空闲内存、共享内存、缓存使用内存。第五行为交换状态,依次为平均可用交换容量、已用容量、闲置容量、高速缓存容量。PID 每个进程的 ID。PPID 每个进程的父进程 ID。UID 每个进程所有者的 UID。USER 每个进程所有者的用户名。PRI 每个进程的优先级别。NI 该进程的优先级值。SI
29、ZE 该进程的代码大小加上数据大小再加上堆栈空间大小的总数。单位是 KB。TSIZE 该进程的代码大小。对于内核进程这是一个很奇怪的值。DSIZE 数据和堆栈的大小。TRS 文本驻留大小。D 被标记为“不干净”的页项目。LIB 使用的库页的大小。对于 ELF 进程没有作用。RSS 该进程占用的物理内存的总数量,单位是 KB。SHARE 该进程使用共享内存的数量。STAT该进程的状态。其中 S 代表休眠状态;D 代表不可中断的休眠状态;R 代表运行状态;Z代表僵死状态;T 代表停止或跟踪状态。TIME 该进程自启动以来所占用的总 CPU 时间。如果进入的是累计模式,那么该时间还包括这个进程子进程
30、所占用的时间。且标题会变成 CTIME。%CPU 该进程自最近一次刷新以来所占用的 CPU 时间和总时间的百分比。Linux 操作系统 实验指导书第 13页%MEM 该进程占用的物理内存占总内存的百分比。COMMAND 该进程的命令名称,如果一行显示不下,则会进行截取。内存中的进程会有一个完整的命令行按ctrl+c停止查看(7)以树状图显示执行的程序pstree例:pstree-h列出进程树并高亮标出当前执行的程序(8)监视虚拟内存 vmstatvmstat 对系统的虚拟内存、进程、CPU 活动进行监视,同时它也对磁盘和 forks和 vforks 操作的个数进行汇总。不足是:vmstat 不
31、能对某个进程进行深入分析,它仅是一对系统的整体情况进行分析。例如:angelhome/angel#vmstatprocsmemoryswapiosystemcpurbwswpdfreebuffcachesisobiboincsussyid00071801852560924840000652480018其中:Procsr:等待运行的进程数b:处在非中断睡眠状态的进程数 w:被交换出去的可运行的进程数。Memoryswpd:虚拟内存使用情况,单位:KBfree:空闲的内存,单位KBbuff:被用来做为缓存的内存数,单位:KBSwapsi:从磁盘交换到内存的交换页数量,单位:KB/秒 so:从内存交
32、换到磁盘的交换页数量,单位:KB/秒IObi:发送到块设备的块数,单位:块/秒 bo:从块设备接收到的块数,单位:块/秒Systemin:每秒的中断数,包括时钟中断 cs:每秒的环境(上下文)切换次数CPU 按 CPU 的总使用百分比来显示us:CPU 使用时间sy:CPU 系统使用时间id:闲置时间Linux 操作系统 实验指导书第 14页实验四 文件和目录管理【实实验指导】验指导】1.查看操作系统的根目录下,有哪些目录2.文件操作(1)查看文件(可以是二进制的)内容 cat执行格式:cat filename 或 morefilename 或 cat filename|more例:cat f
33、ile1以连续显示方式,查看文件 file1 的内容more file1或cat file1|more 以分页方式查看文件的内容(2)删除文件 rm执行格式:rm filename例:rmfile?rmf*(3)复制文件 cp执行格式:cp r source destination例:cpfile1 file2将 file1 复制成 file2cp file1 dir1将 file1 复制到目录 dir1cp/tmp/file1将 file1 复制到当前目录cp/tmp/file1 file2将 file1 复制到当前目录名为 file2cp r dir1 dir2(recursive cop
34、y)复制整个目录。(4)移动或更改文件、目录名称 mv执行格式:mv source destination例:mv file1 file2将文件 file1,更名为 file2mv file1 dir1将文件 file1,移到目录 dir1 下mv dir1 dir2(5)比较文件(可以是二进制的)或目录的内容diff执行格式:diff rname1 name2(name1、name2 同为文件或目录)例:diff file1 file2比较 file1 与 file2 的不同处diffr dir1 dir2 比较 dir1 与 dir2 的不同处(6)文件中字符串的查找grep执行格式:gr
35、ep string file例:grep abc file1查找并列出串 abc 所在的整行文字3、系统询问与权限口令(1)查看系统中的使用者执行格式:who(2)查看 username执行格式:who am I查看自己的 username(3)改变自己的 username 的帐号与口令su执行格式:suusernameLinux 操作系统 实验指导书第 15页例:su username输入帐号password输入密码(4)文件属性的设置chmod改变文件或目录的读、写、执行的允许权执行格式:chmod R mode name其中:-R为递归处理,将指定目录下所有文件及子目录一并处理 mode
36、为 3-8 位数字,是文件/目录读、写、执行允许权的缩写(r:read,数字代号为4,w:write,数字代号为2,x:execute,数字代号为1)modemodemodemode:rwxrwxrwxrwxrwxrwxrwxrwxrwxrwxrwxrwxusergroupother缩写:(u)(g)(o)例:chmod 755 dir1将目录 dir1 设定成任何人皆有读取及执行的权利,但只有拥有者可作写修改。其中 7=4+2+1,5=4+1chmod 700 file1将 file1 设为拥有者可以读、写和执行chmod u+x file2将 file2,增加拥有者可执行的权利chmod
37、g+x file3将 file3,增加组使用者可执行的权利chmod orfile4将 file4,除去其它使用者可读取的权利(5)改变文件或目录所有权chown执行格式:chown R username name例:chown user file1将文件 file1 改为 user 所有chown R user dir1将目录 dir1 及其下所有文件和子目录,改为user 所有(6)检查用户所在组名称groups执行格式:groups(7)改变文件或目录的组拥有权chgrp执行格式:chgrp R groupname name例:chgrp vlsi file1将文件 file1 改为 v
38、lsi 组所有chgrpR imagedir1将目录 dir1 及其下所有文件和子目录,改为 image 群组(8)改变文件或目录的最后修改时间touch执行格式:touch name3.切换到 test 用户,并创建目录 dir2,分别执行 ls/date dir2/a1/cd dir2 三个命令。执行命令 chmod 444 dir2,分别执行命令 ls/date dir2/a2/cd dir2执行命令 chmod 333 dir2,分别执行命令 ls/date dir2/a3/cd dir2执行命令 chmod 111 dir2,分别执行命令 ls/date dir2/a4/cd dir
39、24.创建目录创建目录 dir3dir3dir3dir3 和文件:和文件:xcom.exexcom.exexcom.exexcom.exe xcom.cxcom.cxcom.cxcom.c xcom.objxcom.objxcom.objxcom.obj,执行命令,执行命令ls xcom*和rm xcom*5.执行命令 ls F 和 ls R6.创建目录结构如右图所示(当前目录为:dir4),将 p1.c和 p2.c输入不同的内容,执行命令 cpcpcpcp bak.d/p*.cbak.d/p*.cbak.d/p*.cbak.d/p*.c7.创建目录 dir5,此目录下创建文件 a和 b 和
40、e和 f 和目录 a.d和目录 b.d,执行命令 mv a c和 mv b ef a.d 和 mv a.d b.d8.跳转到 dir5 的上层目录,执行命令 rm irdir59.创建目录 dir6 和文件 a.c和文件 b.c和文件 e.c,执行命令当 前 目 录当 前 目 录p1.cp1.cp1.cp1.cbak.dbak.dbak.dbak.dp2.cp2.cp2.cp2.cp2.cp2.cp2.cp2.cp1.cp1.cp1.cp1.cLinux 操作系统 实验指导书第 16页rm-i和 who-i和 rm i,然后执行命令 rm*和 cat*和 ls*和rm-i10.跳转到 dir6
41、 的上层目录,复制 dir6 目录到/tmp11.修改/tmp 下的 dir6 目录下 a.c 文件内容,以增量拷贝的方式,复制 dir6 目录到/tmp,查看/tmp 下的 dir6 目录下 a.c 文件内容。12.找出所有/usr/include 下的.c文件和.h 文件13.找出所有/usr/include 下的.c文件和.h 文件,并查找文本“extern”,分屏显示。14.查找出/tmp 下所有的目录文件和 socket 文件15.查找出/tmp 下所有 3 天内没有访问的文件和 3 天内修改过的普通文件16.查找出/tmp 下所有大于 100c的普通文件Linux 操作系统 实验指
42、导书第 17页实验五 Linux 下 C 语言使用、编译与调试【实验目的】【实验目的】1、复习 C 语言程序基本知识2、练习并掌握 LINUX 提供的vi编辑器来编译 C 程序3、学会利用 gcc(cc)编译、调试 C 程序【实验内容】【实验内容】1、用vi编写一个简单的、显示Hello,World!的 C 程序,用 cc编译并观察编译后的结果2、利用 cc调试该程序3、运行生成的可执行文件。【实验指导】【实验指导】一、C 语言使用简介LINUX 中包含了很多软件开发工具。它们中的很多是用于 C 和 C+应用程序开发的。C 是一种能在 LINUX 的早期就被广泛使用的通用编程语言。它最早是由
43、Bell 实验室的 Dennis Ritchie 为了 LINUX 的辅助开发而写的,从此 C就成为世界上使用最广泛的计算机语言。C 能在编程领域里得到如此广泛支持的原因有:(1)它是一种非常通用的语言,并且它的语法和函数库在不同的平台上都是统一的,对开发者非常有吸引力;(2)用 C 写的程序执行速度很快;(3)C 是所有版本 LINUX 上的系统语言;二、文件编辑器vivi是在 LINUX 上被广泛使用的中英文编辑软件。vi是 visual editor 的缩写,是LINUX 提供给用户的一个窗口化编辑环境。进入vi,直接执行vi编辑程序即可。例:$vi test.c显示器出现vi的编辑窗口
44、,同时vi会将文件复制一份至缓冲区(buffer)。vi先对缓冲区的文件进行编辑,保留在磁盘中的文件则不变。编辑完成后,使用者可决定是否要取代原来旧有的文件。1、vi 的工作模式vi提供二种工作模式:输入模式(insert mode)和命令模式(command mode)。使用者进入vi后,即处在命令模式下,此刻键入的任何字符皆被视为命令,可进行删除、修改、存盘等操作。要输入信息,应转换到输入模式。Linux 操作系统 实验指导书第 18页(1)命令模式在输入模式下,按 ESC 可切换到命令模式。命令模式下,可选用下列指令离开vi:q!离开vi,并放弃刚在缓冲区内编辑的内容:wq将缓冲区内的资
45、料写入磁盘中,并离开vi:ZZ同 wq:x同 wq:w将缓冲区内的资料写入磁盘中,但并不离开vi:q离开vi,若文件被修改过,则要被要求确认是否放弃修改的内容,此指令可与:w 配合使用(2)命令模式下光标的移动H左移一个字符J下移一个字符K上移一个字符L右移一个字符0移至该行的首$移至该行的末移至该行的第一个字符处H移至窗口的第一列M移至窗口中间那一列L移至窗口的最后一列G移至该文件的最后一列W,W下一个单词(W 忽略标点)B,B上一个单词(B忽略标点)+移至下一列的第一个字符处移至上一列的第一个字符处(移至该句首)移至该句末移至该段首移至该段末NG移至该文件的第 n 列N+移至光标所在位置之
46、后第 n 列n移至光标所在位置之前第 n 列Ctrld向下半页Ctrlf向下一页Ctrlu向上半页Ctrlb向上一页(3)输入模式输入以下命令即可进入vi输入模式:a(append)在光标之后加入资料A在该行之末加入资料i(insert)在光标之前加入资料I在该行之首加入资料o(open)新增一行于该行之下,供输入资料用O新增一行于该行之上,供输入资料用Linux 操作系统 实验指导书第 19页Dd删除当前光标所在行X删除当前光标之前字符U撤消重做F查找s替换,例如:将文件中的所有FOX换成duck,用:%s/FOX/duck/gESC离开输入模式更多用法见 info vi.三、GNU C 编
47、译器LINUX 上可用的 C编译器是 GNU C 编译器,它建立在自由软件基金会编程许可证的基础上,因此可以自由发布。LINUX 上的 GNU C 编译器(GCC)是一个全功能的 ANCIC 兼容编译器,而一般 LINUX(如 SCO LINUX)用的编译器是 CC。1、使用 GCC通常后跟一些选项和文件名来使用 GCC 编译器。GCC 命令的基本用法如下:gccoptions filenames命令行选项指定的编译过程中的具体操作2、GCC 常用选项GCC 有超过 100 个的编译选项可用,这些选项中的许多可能永远都不会用到,但一些主要的选项将会频繁使用。很多的 GCC 选项包括一个以上的字
48、符,因此必须为每个选项指定各自的连字符,并且就像大多数 LINUX 命令一样不能在一个单独的连字符后跟一组选项。例如,下面的命令是不同的:gcc-p-g test.cgcc-pg test.c第一条命令告诉 GCC 编译 test.c 时为 prof 命令建立剖析(profile)信息并且把调试信息加入到可执行文件里。第二条命令告诉 GCC 只为 gprof 命令建立剖析信息。当不用任何选项编译一个程序时,GCC 将建立(假定编译成功)一个名为 a.out 的可执行文件。例如,gcc test.c编译成功后,当前目录下就产生了一个 a.out 文件。也可用o 选项来为即将产生的可执行文件指定一
49、个文件名来代替 a.out。例如:gcccount.co co此时得到的可执行文件就不再是 a.out,而是 co。GCC 也可以指定编译器处理步骤多少。c 选项告诉 GCC 仅把源代码编译为目标代码而跳过汇编和连接步骤。这个选项使用得非常频繁因为它编译多个 C 程序时速度更快且更易于管理。默认时 GCC 建立的目标代码文件有一个.o 的扩展名。3、执行文件格式:./可执行文件名例:./a.out./count4、应用举例(1)设有一源程序 greet.cLinux 操作系统 实验指导书第 20页(2)编译,cc greet.c o gr(3)执行./gr四、参考程序main()printf(
50、Hello,world!n);Linux 操作系统 实验指导书第 21页实验六 进程管理【实验目的】【实验目的】1、掌握进程的概念,明确进程的含义2、认识并了解并发执行的实质【实验内容】【实验内容】1、编写一段程序,使用系统调用 fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示a,子进程分别显示字符b和字符c。试观察记录屏幕上的显示结果,并分析原因。2、修改上述程序,每一个进程循环显示一句话。子进程显示daughter及son,父进程显示 parent,观察结果,分析原因。【实验准备】【实验准备】(1)阅读 LINU