Linux实验指导书

合集下载

Linux_实验指导书4版

Linux_实验指导书4版

嵌入式操作系统实验指导书目录实验一常用命令的使用实验二 vi编辑器实验三 shell编程(一)实验四 shell编程(二)实验五常用开发工具实验六 Linux环境编程(一)实验七 Linux环境编程(二)实验八系统及网络管理实验一常用命令的使用班级:姓名:学号:上机时间:任课教师:实验教师:实验成绩:一、实验目的1.掌握Linux的一般命令格式。

2.掌握有关文件和目录操作的常用命令。

3.掌握有关进程操作的常用命令。

4.熟练使用man命令。

二、实验任务1.正确登录和退出系统。

2.熟悉data,cal,who,echo,clear命令。

3.在用户主目录下对文件进行操作:复制一个文件、显示文件内容、查找指定内容、排序、文件比较、文件删除等。

4.对目录进行管理:创建和删除子目录、改变和显示工作目录、列出和更改文件权限、链接文件等。

5.利用man显示date,echo等命令的手册页。

三、实验注意事项实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。

要求每个同学登录后系统后,要在主目录(/home/student)下创建一个属于自己的子目录(以自己(拼音)名字或学号)。

以后所有工作都要在自己的目录内进行。

建议以后的实验都在同台计算机上做,这样可以保持连续性。

四、实验内容:1.登录进入系统。

开机,选择 VMware Workstation 进入,再选择 Ubuntu 登陆窗口,输入用户名: student ,输入密码: 111111 ,进入Ubuntu图形桌面环境。

2.使用简单命令:date,cal,who,echo,clear等,了解Linux命令格式。

要启动一个终端,可以选择在窗口左侧点击终端按钮。

在终端提示符下输入:date↲显示: 2015年 10月 15日星期四 08:31:50 CST 。

在终端提示符下输入:who ↲显示: student pst/1 2015-10-15 08:22(:0) 。

《Linux实用操作系统》实验指导书

《Linux实用操作系统》实验指导书

《Linux实用操作系统》课程实验指导书实验一、Red Hat Linux系统安装一、实验目的:1.掌握虚拟机软件VMWare的使用。

2.掌握Linux安装过程中的分区方法。

3.掌握Linux操作系统的安装和配置过程。

二、实验内容:安装red hat linux操作系统。

三、实验要求:一台pc机,Redhat 9.0,VMWare虚拟机软件。

四、实验课时2课时五、实验指导安装步骤如下:1.通过虚拟机VMWare开始安装RedHat9。

2.语言选择。

3.键盘配置。

4.鼠标配置。

5.选择安装还是升级。

6.安装类型。

7.磁盘分区设置。

8.系统配置。

9.选择引导装载程序。

10.配置联网。

11.防火墙配置。

12.安装并支持多种语言。

13.时区选择。

14.设置根口令。

15.选择软件包。

16.选择单个软件包。

17.安装软件包。

18.创建引导盘。

19.安装完成。

20.引导系统。

21.第一次启动运行,输入登陆用户和密码,登录系统。

实验二、linux常用命令一、实验目的:了解liunx的基本命令,熟练掌握其基本操作。

二、实验内容:1.操作linux常用命令。

2.查看命令执行后的结果。

3.完成相应的实验报告。

三、实验要求:一台pc机,Redhat 9.0,VMWare虚拟机软件。

四、实验课时4课时五、实验指导1.进入linux终端。

实验三、X Window系统一、实验目的:1.了解并掌握GNOME使用方法。

2.了解并掌握KDE使用方法。

二、实验内容:1.使用GNOME和KDE。

2.操作两种桌面环境下的常用软件。

3.对比两种桌面环境的不同。

三、实验要求:一台pc机,Redhat 9.0,VMWare虚拟机软件四、实验课时2课时五、实验指导1.配置X Window。

在如图所示的“X配置”窗口上选择“配置X窗口系统”按钮配置X 的第一步是选择默认的色彩深度和分辨率。

从相应的下拉菜单中选择它们。

确定指定与视频卡和显示器兼容的色彩深度及分辨率。

Linux程序设计实验指导书

Linux程序设计实验指导书

Linux程序设计实验指导书10/ 1前言根据教学大纲与实验大纲的安排,本课程计划进行8课时上机试验。

由于所有实验均涉及操作系统、程序设计等课程的多个知识点,希望各位同学认真准备。

?上机实验前应充分做好以下准备工作:1.复习和掌握与本次实验有关的教学内容。

2.根据本次实验的内容,在纸上编写好准备上机调试的程序,并初步检查无误。

3.准备好对程序进行测试的数据。

4.对每种测试数据,给出预期的程序运行结果。

5.预习实验步骤,对实验步骤中提出的一些问题进行思考。

?上机实验后,应及时写出实验报告,实验报告应包括以下内容:1.实验目的和内容。

2.程序说明,包括程序结构、各模块的算法。

3.调试正确的源程序。

4.程序运行记录(包括对不同测试数据的运行结果)。

5.针对实验中出现的问题,写出解决办法及对运行结果的分析。

本指导书适用于物联网工程专业学生学习“Linux程序设计”课程时实验使用。

10/ I.实验一:熟悉Linux实验学时:2实验类型:(验证)实验要求:(必修)一、实验目的Linux操作系统是多任务操作系统,对进程与线程提供完整支持。

本次实验意图通过实践掌握进程的基本概念,理解进程控制、进程同步、经典进程的同步问题、管程机制、进程通信、线程;初步熟悉多进程/多线程编程的特点。

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。

它能运行主要的UNIX工具软件、应用程序和网络协议。

它支持32位和64位硬件。

Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

本次实验意图通过实践了解Linux环境中常见的终端命令;熟悉文本编辑器leafpad 的使用。

二、实验内容本次实验的实验内容包括:1)熟悉man、cd、mkdir、rmdir、chmod、chown、ps、cat、ls命令;2) 练习使用文本编辑器leafpad。

linux-实验指导手册-常用命令

linux-实验指导手册-常用命令

实验一Linux常用命令(一)1、Shell环境和Shell命令格式如果实验用计算机上Linux以图形方式启动,登录系统后打开终端窗口。

方法:桌面:右键菜单-Terminal(终端);或:主菜单-系统工具-Terminal(终端)。

命令格式:command [-option(s)] [option argument(s)] [command argument(s)]步骤1:使用who命令步骤2:使用date命令步骤3:使用上下健提取历史命令who,执行。

2、文件系统操作命令(1)改变目录命令:cd 目标目录路径步骤1:使用绝对路径依次进入Linux根目录下的所有子目录。

例如:cd /usr/bin步骤2:使用绝对路径依次进入用户目录。

步骤3:使用相对路径进入子目录1)使用绝对路径进入/lib目录2)使用相对路径进入/lib/i868目录3)使用相对路径退回到/lib目录(2)列出并观察目录中的文件步骤1:进入任意目录,使用无参数ls命令列出并观察其中所有文件;步骤2:进入任意目录,使用通配符列出其中部分文件;例如:cd /binls c*步骤3:使用-l选项,列出目录中文件的各种属性,并观察识别这些属性。

步骤4:直接列出子目录中的文件。

例如:ls i868步骤5:仅列出子目录本身(-d)步骤6:使用-F选项,显示文件类型标志。

步骤7:使用-a或-A选项,观察结果有什么变化。

步骤8:综合使用以上选项。

(3)目录的创建与删除步骤1:在用户目录中,使用相对路径创建一个任意名称的目录,如“tmp”。

mkdir tmp步骤2:删除该目录rmdir tmp步骤3:在根目录中,使用绝对路径在用户命令中创建一个子目录。

mkdir ~/tmp步骤4:删除该目录rmdir ~/tmp步骤5:使用-p参数一次创建多级目录。

如:mkdir ~/tmp/dir1步骤6:使用-p参数删除多级目录。

如:cd ~rmdir tmp/dir1(4)文件和目录拷贝命令:cp步骤1:从/usr/include目录中,任选一个文件拷贝到用户目录的tmp子目录中mkdir ~/tmpcp /usr/include/signal.h ~/tmp步骤2:从/usr/include目录中,任选一个文件拷贝到用户目录的tmp子目录中,并改变其文件名。

Linux 网络操作系统实验指导书10最新

Linux 网络操作系统实验指导书10最新

《Linux 网络操作系统》实验指导书实验一Linux基本命令熟悉及文本编辑器使用1. Red Hat Linux的文件系统管理一、实验目的1、了解Linux操作系统的启动与登陆方法。

2、熟悉Linux字符界面、窗口系统的常用指令。

二、实验内容在字符界面下,使用常用的Linux操作命令,完成下列内容。

1.在根目录(/)下新建一目录 test[root@localhost root]# mkdir /test[root@localhost root]# cd /test[root@localhost test]# pwd/test2.改变当前目录至 /test ,在该目录下,以自己名字的英文缩写建一个空的文件,再建两个子目录(-xh)与(ah);[root@localhost text]# touch pyh[root@localhost text]# mkdri -- -xh[root@localhost text]# lsah pyh –xh[root@localhost text]# Is –l后[root@localhost text]# cd -- -xh[root@localhost text]# ls[root@localhost text]# touch text13.进入到(-xh)子目录中,新建一个空文件text1;[root@localhost -xh]# cd ..[root@localhost text]# lsah pyh –xh[root@localhost text]# cd ah[root@localhost text]# mkdir abc[root@localhost text]# touch text2[root@localhost text]# lsabc text24.进入到(ah)子目录中,再新建一个子目录(abc),同时建立空文件text2;5.把刚建的text1文件移动到刚建立的abc子目录下,并改名为text3,同时把text2文件复制到-xh子目录中;[root@localhost text]# lsah pyh –xh[root@localhost text]# cd -- -xh[root@localhost -xh]# lstext1[root@localhost -xh]# mv text1 /test/ah/abc[root@localhost -xh]# ls[root@localhost -xh]# cd /test/ah/abc/[root@localhost -xh]# lstext1[root@localhost -xh]# mv text1/text3[root@localhost -xh]# lstext36.删除text3文件与-xh子目录及目录中的文件;并删除abc子目录;[root@localhost root]# rm text3Y[root@localhost -xh]# ls[root@localhost -xh]# cd..[root@localhost root]# ls[root@localhost root]# abc text2[root@localhost root]# rmdir abc[root@localhost root]# lstext27.在根目录(/)下新建目录test,test1,把/etc/passwd分别复制到/test1与/test下,并分别改名为file1与file;[root@localhost root]# cd\[root@localhost root]# cd..[root@localhost root]# cp /etc/passwd ./[root@localhost root]# lsah passwd pyh –xh[root@localhost root]# mv passwd file[root@localhost root]# lsah file pyh -xh8.查看file1文件的前二行与最后二行,并记录;[root@localhost root]# cat file[root@localhost root]# head -2 file[root@localhost root]# tail -2 file9.查看/etc/目录下的文件,并记录前两个文件的文件名;10.查看/etc/目录中所有的文件中包含有sys字母的文件并记录;[root@localhost root]# find /etc/ -name “*sys*”[root@localhost root]# find /etc/ -name “*sys*” |more11.查看/etc/目录中文件包含有conf的前两个文件是什么;12.把/test/file文件建一个软链接文件file.soft到/test1中;13.清屏;[root@localhost root]# clear三、实验要求一台安装Linux9.0操作系统的计算机。

Linux程序开发环境 实验指导书 (实验3-4)

Linux程序开发环境 实验指导书 (实验3-4)

Linux程序开发环境实验指导书中南大学软件学院实验3 Linux Shell程序设计1、实验目的(1)掌握Linux shell程序运行方法(2)掌握Linux Shell程序基本语法(3)了解Linux环境变量(4)编写简单Linux shell程序2、实验内容完成简单CD唱片管理系统。

(1)需求假设你收集了大量的CD唱片,现在为了方便管理,需要设计和实现一个管理CD唱片的程序。

程序至少能够把每张CD唱片的资料保存起来,如唱片的名称、音乐类型、艺术家或作曲家的名字等;然后针对某张CD唱片而言,还需要保存一些简单的曲目信息;程序要可以以CD唱片为单位进行搜索,而不是以曲目为单位;为了使程序具备完整性,还需要实现对CD唱片资料的输入、修改和删除等功能。

(2)设计把标题信息和曲目信息分开,用两个文本文件分别来存储。

每张CD唱片保存如下信息:编号、标题、曲目类型(流行、爵士等)、作曲家等。

曲目只保存下面两个信息:编号和曲名。

如下表所示:各项信息用逗号来分隔。

(3)实现程序共包含如下函数:get_return()get_confirm()set_menu_choice() insert_title()insert_track()add_record_tracks() add_records()find_cd()update_cd()count_cds() remove_records() list_tracks()代码范例:3、实验记录(1)实验报告中提交系统的完整脚本;(2)记录实验过程中的心得体会。

实验4 Linux 高级程序设计1、实验目的(1) 了解Linux操作系统下应用程序开发流程(2) 掌握gun工具链的使用(3) 了解Linux高级编程技巧(例如IPC机制、系统调用等)2、实验内容(1) 编写一个简单的C语言程序,编写Makefile文件。

了解编译过程,并用gdb进行调试。

(2) 编写一段程序,适用系统调用fork( )创建两个新的子进程,此程序运行使系统中有三个活动进程存在。

Linux操作系统实验指导书

Linux操作系统实验指导书

Linux操作系统实验指导书《Linux系统管理与维护》实验指导书实验一初识Linux操作系统一实验名称初识Linux操作系统二实验目的与要求掌握Linux的启动、登录与注销。

三实验容1.以root用户和普通用户两种不同身份登录Linux,说出其登录后得差异。

2.图形模式下的注销、重启与关机。

3.学会在虚拟机上登录和注销Linux。

四操作步骤与结果分析五问题与建议实验二 Linux的桌面应用一实验名称Linux的桌面应用二实验目的与要求熟悉Linux操作系统桌面环境熟悉Linux文件系统及常用的操作掌握Linux下使用外部存储设备、网络设备掌握Linux下安装应用程序三实验容1.查看GNOME提供的“应用程序”、“位置”或者“系统”菜单,运行其中的应用程序和工具。

2.查看Linux文件目录结构,学会常用的文件目录操作,如复制、粘贴、移动、删除、更名、创建文档、创建文件夹等。

3.练习在Linux下使用光盘和U盘。

4.学会网络配置,使计算机能够进行网络浏览等操作。

5.学会在Linux下安装新的应用软件。

四操作步骤与结果分析五问题与建议实验三 Linux操作系统的安装一实验名称Linux操作系统的安装二实验目的与要求掌握安装Linux操作系统三实验容1.通过学习《项目五 Linux操作系统的安装及远程服务》的容,学会如何安装Linux。

环境:windows 系统、vmware虚拟机、Redhat Linux镜像光盘。

通过安装向导将安装分为两步:1、基本安装,2、配置及具体安装。

在第一阶段重点如何分区,在第二阶段重点掌握如何设置密码及安装桌面环境。

四操作步骤与结果分析五问题与建议实验四 Linux在系统管理中的应用一实验名称Linux在系统管理中的应用二实验目的与要求理解Linux文件系统,掌握文件目录命令。

掌握常用的文件管理命令。

理解Linux用户、组和权限的概念,掌握用户、组和权限管理命令。

理解设备文件的概念,掌握常用的设备管理命令。

LINUX实验指导书

LINUX实验指导书

安装Redhat5虚拟机1.按新建虚拟机。

最后完成即可。

2.安装Redhat5系统,启动虚拟机后就会自动运行CD,第一界面回车即可进入图形安装。

上图,是检查CD是否完整,可以跳过。

下一步就是完成配置,等待安装。

实验1 VSFTP服务器配置1、实验步骤实验里使用“ROOT”用户,其他用户可能会出现权限问题。

登录时使用“root”用户名来登录,这样就是使用ROOT用户权限了,密码是安装时设定的。

一、安装软件包((本步骤可省略,RHEL5默认已经安装)在桌面右键就可以打开终端,实验中命令都在终端里输入。

[root@localhost ~]#rpm –qa | grep vsftp //检查是否已经安装vsftpd软件包。

注意空格:rpm(空格)–qa(空格)| (空格)grep(空格)vsftpvsftpd-2.0.5-16.el5 //显示已经安装出现上面这句说明安装成功,不出现说明没安装过。

[root@localhost ~]# service vsftpd start //启动vsftpd 服务([root@localhost ~]# service vsftpd restart //重启vsftpd 服务)如果服务开着,start就会失败,要运行restart才会应用更改。

若没有安装,则进行以下步骤:[root@localhost ~]# mkdir /mnt/cdrom //建立用于挂载光驱的目录注意空格:mkdir(空格)/mnt/cdrom[root@localhost ~]# mount –t iso9660 /dev/cdrom /mnt/cdrom //挂载光驱注意空格:mount (空格)–t (空格)iso9660 (空格)/dev/cdrom (空格)/mnt/cdrom[root@localhost ~]# find /mnt/cdrom –named *vsftpd* //查找vsftpd有关的软件包注意空格:find (空格)/mnt/cdrom (空格)–named (空格)*vsftpd*实验指导书上写的是“–named”正确是“–name”[root@localhost ~]# rpm –ivh /mnt/cdrom/Server/vsftpd-2.0.5-16.el5.i386.rpm // 安装vsftpd软件包注意空格:rpm (空格)–ivh (空格)/mnt/cdrom/Server/vsftpd-2.0.5-16.el5.i386.rpm技巧:Tab键可以自动识别文件名,觉得命令很长时可以按“TAB”键试试。

LINUX系统实验指导书

LINUX系统实验指导书

《 LINUX系统级应用》课程实验指导书一.实验总学时(课外学时/课内学时):4/6 总学分:2.5(课程)必开实验个数: 4 选开实验个数:2二.适用专业:计算机网络技术(专科)三.三.考核方式及办法:在规定实验时间内完成实验要求,依据实验过程及实验结果在实验现场逐一检查考核。

四.配套的实验教材或指导书:自编实验指导书五. 实验项目:实验1 UNIX基本操作1、实验目的掌握UNIX(LINUX)系统的基本使用方法:系统启动、注销、关闭和关机;帐号管理;文件系统的日常管理;文件系统的权限控制。

2、实验工具及环境UNIX(LINUX)系统网络环境或单机。

3、实验计划学时4学时上机实际操作。

4、实验内容及操作步骤⑴系统启动和关闭①使用自己的账户登录UNIX系统,查看系统提示符确定自己使用的shell程序类型别。

◎开机后,系统自检启动后提示login:(输入:root↙)password:(输入:用户口令↙,root用户为redhat)◎查看/etc/passwd文件可以获得用户使用的shell#grep $LOGNAME /etc/passwd↙可能的显示为:user001:*:200:50::/usr/user001:/bin/sh请思考上述命令怎样得到了当前使用的shell类型的?使用下面的命令也可以查看当前shell:#echo $SHELL②注销和关机命令。

◎用户注销使用:$exit↙或$<ctrl>+<D>↙或$logout↙◎超级用户关机使用:#shutdown↙该命令将结束所有的进程,当执行此命令后系统提示“Safe to Power off or Press Any Key to Reboot”时可以关闭电源或按任一键重启系统。

◎haltsys(halt),reboot只能由超级用户在单用户模式下使用。

⑵帐号管理①添加用户,删除用户,修改个人口令后重新进行登录;◎添加用户的shell命令:#useradd user08↙(Linux系统中可以为adduser)上述命令采用默认属性,UNIX也可以使用选项来指定创建帐户的属性:-c comment用户说明-d directory 指定用户主目录-m 若用户的起始目录不存在则创建-g group指定用户所属组-s shell 指定用户使用的shell-u uid为用户分配标识◎修改口令对linux系统而言,用adduser增加的用户应该随即用passwd命令来修改口令。

linux教程 实验指导书

linux教程 实验指导书

实验1 RedHat Linux常用命令使用【实验目的】1、了解linux的基本命令,熟练掌握其基本操作;2、掌握一些常用的Linux命令的使用方法。

【实验要求】1、了解RedHat Linux获得的方法以及怎样在虚拟机上进行安装;2、复习一些常用Linux命令的使用方法,掌握其功能和使用时的选项和参数。

【实验步骤】一、RedHat Enterprise Linux 4的启动启动VMWare虚拟机,即可看到Linux的启动画面,实验室的root密码统一设定为123456。

二、常用的Linux命令使用启动到Linux界面以后,在桌面上右键打开终端,即可进入命令输入的终端界面。

请在实验过程中输入正确的命令和选项参数,完成以下功能:1:创建自己的账户(如:test)和口令。

2:使用新创建的用户账户和口令登录Linux系统,察看登录后的界面。

3:使用pwd命令察看当前的工作目录,然后用ls命令查看当前目录下的内容,尝试使用-a,-l,-F,-A,-lF等不同选项并比较不同之处。

4:在当前目录下建立一个名为test的新目录,然后将工作目录切换到test下,尝试将/etc 目录下的文件passwd拷贝到该目录下(cp源文件目的目录)。

察看当前目录下的passwd 文件的属主和文件权限。

5:尝试向当前目录下的passwd文件和/etc/passwd文件分别写入一些新内容(可使用echo "字符串" >>文件的命令),看看操作能否成功,如果不能成功,请说明原因。

用cat命令浏览文件password的内容,用more命令进行浏览翻页操作,再用less命令浏览文件的内容。

比较这几个命令的不同之处6:用ls命令查看test下文件的权限,用mv命令更改文件password的文件名为test.txt,尝试用chown和chgrp更改文件的属主为root、组为root,看看能否成功,不成功,请说明原因。

linux实训指导书

linux实训指导书

《网络操作系统》综合实训指导书院系:信息科学与工程学院班级:07网络教师:温静静实验一、Linux的基本操作和常用命令的使用一、实验目的1.学会不同Linux用户登录的方法。

2.掌握常用Linux命令的使用方法。

3.了解Linux命令中参数选项的用法和作用。

二、实验工具与设备1.已安装Linux操作系统的计算机。

2.或装有Windows操作系统的计算机并通过网络与Linux服务器连接。

三、实验内容和步骤1.登录系统以适当的用户名在Windows 95/98下远程登录Linux主机,或在装有Linux系统的计算机中登录Linux系统。

2.文件操作命令(1)查看文件与目录ls(2)显示文件内容命令(cat)(3)文件复制命令(cp)(4)文件改名命令(mv)(5)删除文件命令(rm)3.目录操作命令的使用(1)改变当前目录命令(cd)和显示当前目录命令(pwd)(2)建立子目录命令(mkdir)在用户目录下创建如图所示的目录结构。

图创建的目录结构(3)删除子目录命令(rmdir)4.用户管理命令的使用(1)登录命令(login)和注销命令(logout)提示:可以直接用Ctrl+d退出或注销用户。

(2)添加和更改用户命令①添加用户②转换用户(3)修改用户密码命令(passwd)(4)关机命令(shutdown,终止或重启系统的命令)命令格式:shutdown [-r] [-h] [-c] [-k] [[+]时间]5.其他操作命令的使用(1)链接命令(ln)(2)查看用户命令who命令:查看当前正在登录的其他用户的命令。

whoami命令:查看当前正在使用(登录)的用户名。

(3)查看命令帮助信息命令(man)man命令:联机帮助命令。

用于查询命令和程序的使用方法和参数。

四.实验要求:1.写出实验报告2.练习题(1)熟悉Linux命令的功能和使用。

(2)将图1-5所示的目录结构变为图1-6所示的目录结构。

Linux操作系统-实验1-环境搭建-指导书-PPT版本-V1

Linux操作系统-实验1-环境搭建-指导书-PPT版本-V1

Linux操作系统第一章:Linux简介与系统安装实验一:实验环境搭建一台宿主机(Windows系统)加两台虚拟机(Desktop+Server)要求:(1)掌握VMware虚拟机的安装(2)利用VMware虚拟机安装Ubuntu Linux18.04桌面版操作系统(3)利用VMware虚拟机安装Ubuntu Linux18.04服务器版操作系统(4)从宿主机登录桌面环境和服务器环境(SSH登录)(5)练习涉及到的基本命令,如apt-get、ifconfig、ssh等(6)练习vim编辑文件基本操作等Tips:(1)绘制网络拓扑图(2)把遇到的问题和如何解决记录下来。

实验环境设置☐宿主机(Windows)•网络配置VMware Network Adapter(VMnet8)☐客户机•Ubuntu-Server(ubuntu-18.04.6-live-server-amd64)•Ubuntu-Desktop(ubuntu-18.04.6-desktop-amd64)虚拟机安装安装时网络类型选择NAT方式安装完成后的两台Ubuntu虚拟机宿主机:Windows记录宿主机IP地址客户机1:Ubuntu-Server命令行模式记录IP:192.168.126.130客户机2:Ubuntu-Desktop图形化操作方法记录IP:192.168.126.131NAT模式宿主机:Windows192.168.126.1192.168.126.130192.168.126.131客户机1:Ubuntu-Server客户机2:Ubuntu-DesktopSSH服务1.安装SSH服务2.启动SSH服务3.配置SSH服务(可选)4.验证SSH服务Desktop版客户机安装SSH服务Desktop版客户机安装SSH服务:sudo apt-get install openssh-serverDesktop版客户机启动SSH服务: sudo systemctl start sshDesktop版客户机启动SSH服务: sudo systemctl start sshDesktop版客户机端修改SSH配置文件:端口22修改为1022 vi /etc/ssh/sshd_configSSH验证-从宿主机连接Desktop客户机2: ********************.126.131SSH验证-从宿主机连接Server版客户机1: ***********************.126.130Desktop版客户机查看SSH状态:记录监听端口和连接情况Server版客户端1查看SSH状态Desktop版客户机安装 net-tools:sudo apt-get install net-toolsDesktop版客户机查看IP地址: ifconfigDesktop版客户机查看网络连接情况:Netstat -aServer版客户机查看网络连接情况:Netstat -a。

1Linux教程实验指导书

1Linux教程实验指导书

Linux程序设计实验指导书目录实验一:linux安装 (3)实验二:常用命令的使用 (10)试验三vi编辑器 (11)实验四 shell编程 (11)实验五常用开发工具 (12)实验六 makefile的编写与使用 (14)实验七 Linux环境编程 (14)实验八 (15)实验一:linux安装一、实验目的1.学会在操作系统安装之前,根据硬件配置情况,指定安装计划2.掌握多操作系统安装前,利用硬盘分区工具(如PQMagic)为Linux准备分区3.掌握Linux操作系统的安装步骤4.掌握Linux系统的简单配置方法5.掌握Linux系统的启动、关闭步骤6.掌握在虚拟机上的Linux安装步骤和使用方法二、实验内容1.安装并使用硬盘分区工具,为Linux准备好分区2.安装Linux系统(如红旗Linux桌面版)3.配置Linux系统运行环境4.正确的启动、关闭系统注意:为了避免新手在第一次安装Linux时,破坏掉磁盘上的有用数据,推荐第一次在winxp系统上的虚拟机上安装linux。

因此需要一下步骤:1.安装winxp下的虚拟机软件vmware,并创建一个虚拟机。

2.在虚拟机环境中安装linux系统。

3.配置Linux系统运行环境4.正确启动、关闭系统。

三、背景知识Linux安装有三种方式,分别是:通过光盘安装、硬盘安装和网络安装。

另外有三种形式,分别是:Linux独立操作系统、Linux与windows共存的双(多)操作系统、Windows下虚拟机安装Linux的双(多)操作系统。

在三种安装方式中,通过光盘安装最为简单,但是需要事先从网络上下载安装镜像文件,并将其刻录到光盘上;或者直接从外面买别人刻好的安装光盘。

由于Linux是开源的操作系统,因此不存在“盗版”的说法。

另一种是通过硬盘安装,需要事先将安装镜像文件下载到本地fat32格式的磁盘分区上,然后重新启动进入纯dos下,进行一些必要的设置就可以从硬盘自动安装了,其后的安装步骤跟光盘安装一样。

Linux实验指导书(胡小龙)

Linux实验指导书(胡小龙)

Linux实验指导书(胡⼩龙)Unix/Linux系统实验指导书中南⼤学信息科学与⼯程学院实验⼀ Linux的安装(课后)1、实验⽬的(1)了解硬盘分区的概念和⽅法;(2)掌握硬盘的分区规划;(3)掌握Linux操作系统的安装和配置过程。

2、实验设备⼀台pc机、RedHat Linux 7.2以上版本、VMware Workstation v5.53、实验原理Linux可以以多种⽅式安装在PC机上:(1)独⽴分区安装、(2)DOS分区安装和(3)虚拟机VMWare下安装。

鉴于VMware下安装对原来系统影响较⼩且不影响本实验⽬的,因此采⽤VMWare下安装⽅式。

4、实验步逐(1) 在Windows XP下安装VMware 5.5(2)配置虚拟机(3)启动虚拟机(4)启动Linux安装过程(5)安装过程配置(6)安装后配置(7)第1次启动VMWare下Linux操作系统5、实验记录(1)记录详细安装过程(2)安装过程中出现的问题及其解决措施实验2 Linux基本操作1、实验⽬的(1)复习Linux基本命令。

(2)掌握常⽤Linux命令2、实验内容(1)练习命令⾏模式下的常⽤命令:man:命令帮助ALT-Fx:虚终端切换常⽤命令:cat、Ls、ps、chmod、kill、ln、cp、mv、rm、cd、pwd、mkdir、chown、who、w、wc、whoami、date、uname 等(2) 编辑器vi的使⽤:使⽤vi建⽴并修改⼀个⽂本⽂件(3) 档案管理rpm、gzip、tar等命令(4) ⽹络命令telnet、ftp、talk3、实验记录(1)在实验过程中,注意记录实验现象(2)使⽤过程体会、⼼得、技巧实验3 Linux系统管理1、实验⽬的(1)掌握Linux基本系统管理命令(2)掌握基本管理⽅法(3)初步了解Linux中与系统管理相关的有关配置⽂件2、实验内容(1) ⽤户管理adduser、useradd、passwd等观察:/etc/passwd⽂件(2) ⽂件系统管理df、du命令使⽤mount、umount命令使⽤:安装usb盘或者光盘,查看分析/etc/fstab⽂件(3) 存储器free:了解存储器使⽤情况(4) 关机halt、shutdown –h、init 0reboot、shutdown -r now并⽐较它们之间的差别(5) ⽹络配置netconfig的使⽤(6)启动配置/etc/inittab:查看、修改并观察其响应3、实验记录(1)在实验过程中,注意记录实验现象(2)使⽤过程体会、⼼得、技巧实验4 Linux Shell程序设计1、实验⽬的(1)掌握Linux shell程序运⾏⽅法(2)掌握Linux Shell程序基本语法(3)了解Linux环境变量(3)编写简单Linux shell程序2、实验内容(1)查看/etc/.profile⽂件:相当于DOS下autoexe.bat (2)通配符“*”、“?”、“[]”的使⽤$ls [a-c]* 和$ls [a,m,t]*命令(3)重定向和管道的使⽤ls | morecat > test.txt(4) 变量$lookup=/usr/mydir$echo $lookup$export lookup:让进程使⽤(5) 编辑并运⾏以下程序(shell程序控制结构)1 fortest#!/bin/bashfor a in x y zdoecho now a=$adone2 fortest1#!/bin/bashfor adoecho now a=$adone3 functest#!/bin/bashsetup(){echo setup…}do_date(){date}chgdir(){cd $1}do_datesetupchgdir4 paramtest#!/bin/bashecho filename:$0echo arguments:$*echo number arg:$#echo arg2:$2shiftecho number arg:$#echo arg2:$2set hello,everoneecho args:$*echo arg2:$25 untiltest#!/bin/bashnumber=0until (test $number –gt 5)doecho “ $number”number=`expr $number + 1`done3、实验要求(1)每个shell程序事例运⾏多遍,并给不同参数(2)详细记录程序调试及运⾏结果3、实验⼼得与总结内核在内充中是受保护的块,因烤瓷我们必须要通过“shell”将我们输⼊的命令与kernel 通信,好让kernel可以控制硬件来正确⽆误的⼯作。

Linux操作系统实验指导书(2021)

Linux操作系统实验指导书(2021)

操作系统实验指导书目录操作系统 (1)实验指导书 (1)目录 (2)实验一Linux的安装与编译 (1)1.1 实验目的 (1)1.2 背景知识 (1)1.2.1 Linux简史 (1)1.2.2 内核的功能和结构 (3)1.2.3 内核源代码组织结构 (4)1.2.4 内核的功能版本和发行版 (6)1.2.5 学习Linux辅助软件介绍 (6)1.3 实验内容 (6)1.3.1 安装Ubuntu (6)1.3.2 编译Linux内核 (9)实验二Linux基本命令 (14)2.1 实验目的 (14)2.2 背景知识 (14)2.3实验内容 (14)实验三进程管理 (19)3.1 实验目的 (19)3.2 背景知识 (19)3.3实验内容 (19)3.3.1进程创建 (19)3.3.2进程控制 (19)3.3.3参考程序 (19)实验四进程通信 (22)4.1实验目的 (22)4.2背景知识 (22)4.3实验内容 (30)实验五存储管理 (38)5.1实验目的 (38)5.2背景知识 (38)5.3实验内容 (38)实验六文件管理 (49)6.1实验目的 (49)6.2背景知识 (49)6.3实验内容 (49)实验一Linux的安装与编译1.1 实验目的●了解Linux发展历史、功能和特点。

●学习和动手安装Linux操作系统。

●学习和动手编译Linux内核。

1.2 背景知识1.2.1 Linux简史1981 年IBM 公司推出享誉全球的微型计算机IBM PC。

在1981-1991 年间,MS-DOS 操作系统一直是微型计算机上操作系统的主宰。

此时计算机硬件价格虽然逐年下降,但软件价格仍然是居高不下。

当时Apple 的MACs 操作系统可以说是性能最好的,但是其天价没人能够轻易靠近。

当时的另一个计算机技术阵营是Unix 世界。

但是Unix 操作系统就不仅是价格贵的问题了。

为了寻求高利率,Unix 经销商将价格抬得极高,PC 小用户就根本不能靠近它。

linux操作系统实验指导书第2周

linux操作系统实验指导书第2周

第3周Linux文件与目录管理一、实验内容1.练习Linux文件和目录操作命令。

2.实验目的练习Linux文件权限和文件查找命令。

二、实验目的1.掌握文件与目录管理命令2.掌握文件内容查阅命令3.了解文件与目录的默认权限与隐藏权限4.掌握如何改变文件属性与权限5.掌握命令与文件的查询方法三、实验题目1. 文件与目录管理(1) 查看Ubuntu根目录下有哪些内容?(2) 进入/tmp目录,以自己的学号建一个目录,并进入该目录。

(3) 显示目前所在的目录。

(4) 在当前目录下,建立权限为741的目录test1,查看是否创建成功。

(5) 在目录test1下建立目录test2/teat3/test4。

(6) 进入test2,删除目录test3/test4。

(7) 将root用户家目录下的.bashrc复制到/tmp下,并更名为bashrc(8) 重复步骤6,要求在覆盖前询问是否覆盖。

(9) 复制目录/etc/下的内容到/tmp下。

(10) 在当前目录下建立文件aaa。

(11)查看该文件的权限、大小及时间(12) 强制删除该文件。

(13) 将/tmp下的bashrc移到/tmp/test1/test2中。

(14) 将/test1目录及其下面包含的所有文件删除。

2. 文件内容查阅、权限与文件查找(1) 使用cat命令加行号显示文件/etc/issue的内容。

(2) 反向显示/etc/issue中的内容。

(3) 用nl列出/etc/issue中的内容。

(4) 使用more命令查看文件/etc/man.config(5) 使用less命令前后翻看文件/etc/man.config中的内容(6) 使用head命令查看文件/etc/man.config前20行(7) 使用less命令查看文件/etc/man.config后5行(8) 查看文件/etc/man.config前20行中后5行的内容(9) 将/usr/bin/passwd中的内容使用ASCII方式输出(10) 进入/tmp目录,将/root/.bashrc复制成bashrc,复制完全的属性,检查其日期(11) 修改文件bashrc的时间为当前时间3. 文件权限(1) 执行echo pwd >> pwd.sh,然后使用ls -al查询一下,发生了什么事?(2) 以两种方式查看系统中新建文件或目录的默认权限(3) 新建文件test1和目录test2,查看它们的权限是否与(2)中的默认权限相符(4) 修改pwd.sh文件权限为r-xr--r--。

实验指导书(实验01Linux基本命令)

实验指导书(实验01Linux基本命令)

实用文档《嵌入式系统原理及应用》实验指导书北京理工大学珠海学院机械与车辆学院2014.7实验 1 Linux 基本命令一、实验目的掌握 Linux 系统注册与注销、关闭与重启的方法;熟悉命令行操作方式;掌握man 帮助命令;熟悉文件与目录常用操作命令:pwd、cd、cat 、mkdir 、cp 、man、ls 、find 、chmod、mv、tar 、 rm;熟悉用户账号管理命令:useradd 、passwd 以及其他部分常用命令: who、 whoami、date 、cal 、hostname、uname、which 。

为后续课程顺利学习奠定必要基础。

二、实验环境与条件1.标配 PC机2.VMware Workstation 93.Red Hat Enterprise Linux 5三、实验内容(一) Linux系统登录与注销、关闭与重启(1)启动 Linux 系统虚拟机打开 Vmware Workstation ,启动 Red Hat Enterprise Linux 5虚拟机;(2)注册与注销等待系统启动出现登录界面(login 提示),练习使用超级用户账号 root 或其他用户账号登录及注销系统;注销时分别尝试使用如下命令或操作:#exitCtrl+d(组合键,退出当前的Shell进程)#logout(注销当前登录)(3) Linux 虚拟机与 Windows 系统相互切换使用键盘组合键 Ctrl+Alt ,练习从 Linux 虚拟机切换回 Windows 系统。

从 Windows 系统切换到 Linux 系统只需在虚拟机窗口中点击鼠标即可。

(4)关机与重启练习关机与重启Linux 系统,使用 Shutdown、 halt命令:使用 shutdown 指令:例 1:#shutdown -h now例 2:#shutdown +1 "System will shutdown after 1 minutes"使用 halt指令:例 1:#halt -p使用 reboot 指令:#reboot相当于指令: shutdown -r now(5)启动与退出窗口( X Window)界面#startx(启动 X Windows)退出: Ctrl+Alt+Backspace(组合键)(6)终端控制台切换通过组合键 CTRL+ALT+F1~F7 切换终端。

linux基础实验指导书1

linux基础实验指导书1

大连东软信息学院《Linux基础》实验指导书编写者: Linux课程组目录实验一:基本常用命令实验实验二:综合服务器配置实验一:基本常用命令实验【实验目的】●掌握文件系统的基本命令●掌握管理用户和用户组的基本命令【实验环境】●Windows xp系统●Vmware 虚拟机及linux虚拟机【预备知识】●文件系统的基本命令表1 文件系统基本命令列表●管理用户和用户组的基本命令【实验学时】●基础模块2学时●提升模块2学时【实验内容】●基础模块1 在当前目录中新建文件text,并设置文件的属性为:文件所有者增加执行权限,同组用户增加写权限,其他用户删除读权限。

2 在当前目录创建文件a.txt,b.txt,c.txt,并将上述三个文件合成一个文件abc.txt。

3 查看当前目录下所有的文件或目录(含.开头的),把查看结果生成文件ls.txt。

4 建立文件file3和文件file4。

5 在当前目录下建立文件exam1.c,将文件exam1.c拷贝到/usr 这个目录下,并改名为shiyan1.c。

6 用长格式列出/home目录下所有的文件包括隐藏文件。

7 在当前目录中创建目录aaa,并把该目录的权限设置为只有文件主有读、写和执行权限。

8 在当前目录下新建文件file.txt , 更改文件的权限增加文件所有者的读写执行权限.9 建立文件ff.txt 并用数字的形式(绝对权限)把文件的权限改为rw-rw-rw-10 用vi建立文件bbbb.txt 并将用户名加入其中保存退出。

11 在/root文件下建立一个文件夹AAA,然后进入AAA文件夹,创建普通文件bbb。

12 在/root下面,新建newfile 文件,将该文件移动到/home下。

13 查看ex1.txt是不是在当前目录下存在,如果不存在,建立ex1.txt ;如果存在,查看文件的权限,修改其权限使得其他用户无读权限14 关机命令15 重启命令。

16 john用户在家目录中建立文件exam.c,将文件exam.c拷贝到/tmp 这个目录下,并改名为shiyan.c。

linux操作系统实验指导书新

linux操作系统实验指导书新

Linux操作系统实验指导书网络工程教研室二零一三年五月制实验一: Red Hat Linux 9.0系统的安装一、实验目的1.掌握安装Linux系统时收集电脑硬件信息的方法2.掌握Linux硬盘的分区方法和硬盘分区的大小3.掌握Linux系统安装的过程和在安装过程中各选项的设置二、实验环境微型电脑一台,Red Hat Linux9.0系统盘一套VMware Workstation v9.0sn:8UX0R-686FT-Z054V-4PDQPORLCT4T-24GFE-A816V-4MTQQ三、实验内容及步骤1.安装前的准备工作步骤一:关闭BIOS中的病毒报警功能,如果硬盘大于8G设置硬盘为LBA模式。

步骤二:备份硬盘上的所有重要数据!步骤三:为Linux系统准备足够的硬盘空间。

2.安装Red Hat Linux 9.0将Red Hat Linux 9.0安装光盘插入光驱,然后启动电脑,即可从CD-ROM启动Linux 安装程序。

步骤1:boot: 提示。

机器启动之后,显示boot: 提示屏幕,其中包括了几个不同的引导选项,每个引导选项还有一个或多个与之关联的帮助屏幕。

要访问帮助屏幕,可按在屏幕底部列出的恰当的功能键。

为以图形方式从光盘中安装Red Hat Linux,单击回车键。

步骤2:安装程序检测用户系统并试图识别光驱。

如果找到了,会进入安装进程的下一阶段。

这时假设要中止安装进程,应取出引导磁盘或光盘,重新引导机器。

在“即将安装”屏幕(步骤19) 之前的任何时候,都可以安全地中止安装。

步骤3:欢迎使用Red Hat Linux。

“欢迎”屏幕并不提示做任何输入。

可阅读左侧面板内的帮助文字来获得附加的说明,以及关于如何注册Red Hat Linux产品的信息。

注意屏幕左下角的“隐藏帮助”按钮。

帮助屏幕是默认打开的。

如果不想查看帮助信息,可单击“隐藏帮助”把屏幕上的帮助部分最小化。

单击Next继续。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux程序设计实验指导书计算机应用系2012年11月实验一:Linux常用命令及编程环境1.实验相关知识简述Unix/Linux环境下使用C语言程序开发的项目主要经历设计、开发、调试、集成、部署和维护几个阶段。

目前典型的开发环境,主要使用vi、emacs、gedit等文字编辑工具完成源代码的编辑工作;通过指定不同的GCC编译器编译选项指定编译结果,根据编译器提示改正程序中的语法错误,最终生成符合目标要求的可执行二进制文件;当可执行文件执行结果与预期结果不一致时,使用GDB调试器跟踪程序执行过程,查看中间变量,改正源程序中存在的逻辑错误。

在大型项目管理中,由于文件较多,整个编译过程费时较长,安装、调试难度较大。

为解决手工管理效率低下的问题,引入Make工具,将项目编译、安装、维护等工作以脚本的形式组织在Makefile中,从而简化项目维护成本。

手工编写Makefile脚本难度较大且不利于统一规范,推荐使用Autotools工具集直接生成。

本实验仅设置手工编辑、编译Linux C源代码,生成可执行文件并调试。

GNU CC(简称为GCC)是GNU 项目中符合ANSI C 标准的编译系统,能够编译用C、C++和Object C 等语言编写的源程序。

GCC也可理解为一个工具集合,包含多个编译相关工具,如gcc编译C语言源程序,g++编译C++语言源程序,ld链接器等。

在编译C语言程序时,可直接使用gcc指令通过配置不同的参数选项达到指定GCC工具集的目的。

GCC的常用选项如表1.1所示表1.1 GCC常用选项功能选项描述与编译相关的GCC 选项-c 只是编译不链接,生成目标文件“.o”-S 只是编译不汇编,生成汇编代码-E 只进行预编译,不做其他处理-g 在可执行程序中包含标准调试信息-o file 把输出文件输出到file 里-v 打印出编译器内部编译各过程的命令行信息和编译器的版本-I dir 在头文件的搜索路径列表中添加dir 目录-L dir 在库文件的搜索路径列表中添加dir 目录-static 链接静态库-llibrary 连接名为library 的库文件报警与出错相关的-ansi 支持符合ANSI 标准的C 程序-pedantic 允许发出ANSI C 标准所列的全部警告信息GCC选项-pedantic-error 允许发出ANSI C 标准所列的全部错误信息-w 关闭所有告警-Wall 允许发出Gcc 提供的所有有用的报警信息-werror 把所有的告警信息转化为错误信息,并在告警发生时终止编译过程与体系结构相关的GCC选项-mcpu=type 针对不同的CPU 使用相应的CPU 指令。

可选择的type 有i386、i486、pentium 及i686 等-mieee-fp 使用IEEE 标准进行浮点数的比较-mno-ieee-fp 不使用IEEE 标准进行浮点数的比较-msoft-float 输出包含浮点库调用的目标代码-mshort 把int 类型作为16 位处理,相当于short int-mrtd 强行将函数参数个数固定的函数用ret NUM 返回,节省调用函数的一条指令使用GCC注意事项:1)GCC指令的一般格式为:Gcc [选项] 需编译的文件[选项] [目标文件] ,其中,目标文件可缺省,GCC默认生成可执行的文件名为a.out。

执行时时使用指令./a.out;2)在include 语句中,“<>”表示在标准路径中搜索头文件,““””表示在当前目录中搜索。

故代码中使用“#include<myhead.h>”,就需要添加GCC编译选项“-I”指定myhead.h 所在路径;3)选项“-L dir ”的功能与“-I dir”类似,在编译时指定所需库文件路径,-l指定相应的库名称。

Linux下的库文件命名时规定:必须以lib字母组合开头,后接库名称。

因此用-l 选项指定链接库名为libsunq.so ,在命令中选项写为-lsunq;GDB调试相关命令汇总如表1.2所示表1.2 GDB相关命令汇总功能命令描述单步执行与函数跟踪backtrace(或bt)查看各级函数调用及参数finish 执行到当前函数返回,然后停下来等待命令frame(或f)帧编号选择栈帧info(或i)locals 查看当前栈帧局部变量的值list(或l)列出源代码,接着上次的位置往下列,每次列10行list 行号列出从第几行开始的源代码list 函数名列出某个函数的源代码next(或n)执行下一行语句print(或p)打印表达式的值,通过表达式可以修改变量的值或者调用函数set var 修改变量的值start 开始执行程序,停在main函数第一行语句前面等待命令step(或s)执行下一行语句,如果有函数调用则进入到函数中断点break(或b)行号在某一行设置断点break 函数名在某个函数开头设置断点break...if... 设置条件断点continue(或c)从当前位置开始连续而非单步执行程序delete breakpoints 删除断点display 变量名跟踪查看一个变量,每次停下来都显示它的值disable breakpoints 禁用断点enable breakpoints 启用断点info(或i)breakpoints 查看当前设置了哪些断点run(或r)从头开始连续而非单步执行程序undisplay 取消对先前设置的那些变量的跟踪观察点watch 设置观察点info(或i)watchpoints 查看当前设置了哪些观察点x 从某个位置开始打印存储器的一段内容,全部当成字节来看,而不区分哪些字节属于哪些变量GDB使用注意事项:1)在Gcc 编译选项中一定要加入“-g”;2)只有在代码处于“运行”或“暂停”状态时才能查看变量值;3)设置断点后程序在指定行之前停止;2.实验目的1)掌握Linux C开发过程中的基本概念;2)掌握如GCC,GDB等开发工具的使用;3.实验内容将参考代码录入到greet.c文件中,编译执行后发现结果与预期不一致,请使用GDB调试,完成字符串反序输出功能;4.参考代码5.实验扩展思考1)如何使用GCC将一组功能相关的源文件编译成相应库文件(静态库或动态库自行选择),并使用代码形式演示如何使用编译好的库?2)分析以下代码,完成指定范围内数值累加功能:#include <stdio.h>int add_range(int low, int high){int i, sum;for (i = low; i <= high; i++)sum = sum + i;return sum;}int main(void){int result[100];result[0] = add_range(1, 10);result[1] = add_range(1, 100);printf("result[0]=%d\nresult[1]=%d\n", result[0], result[1]);return 0;}实验二:文件I/O操作1.实验相关知识简述“文件”是Unix/Linux平台的核心概念之一。

广义理解,可将普通文件、目录、设备、管道……均视为文件(Everything is File);狭义理解,文件仅代表普通文件。

涉及具体上下文时,需要结合语义对其进行区分。

Unix/Linux相关文件系统在组织文件时,将文件的数据与属性分离。

目录文件中记录子目录及所属文件的文件名和相应i节点,由i节点记录相应的数据存储位置及文件属性。

针对文件内容时行操作时,一般需要经历步骤为:打开/创建文件→操作文件→关闭文件。

打开/创建文件推荐使用系统调用open,若仅需新建文件,亦使用creat系统调用,但creat 不负责打开文件。

为保证程序运行时无异常发生,程序员必须对open返回值进行判断,若返回值为-1意味着文件打开失败,其原因或为进程已打开的文件数目超出可打开文件的最大值,或为相应路径下无对应文件(注意:Unix/Linux文件名区分大小写);当open调用成功时,将返回一个由内核管理生成的非负整型数值,对应术语为文件描述符(File Descriptor)。

对文件内容操作时,文件描述符将自动维护文件读写指针。

换句话说,多个进程可同时打开一个文件,并在各自的文件读写指针位置进行相应操作,程序员有责任对其进行合理规划,以保证数据有效性。

进程创建时,Linux内核将值为0,1,2这三个文件描述符预分配给标准输入设备、输出设备和错误输出设备。

若使用dup系统调用,可干预内核分配文件描述符,从而达到文件重定向的目的。

open语法要点如表2.1所示:表2.1 open语法要点头文件#include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>功能打开或创建文件函数原型int open(const char* path, int flags)int open(const char* path, int flags, int perms)参数说明path 需打开或创建的文件路径名flags 文件打开方式:O_RDONLY:只读方式O_WRONLY:只写方式O_RDWR:读写方式O_CREAT:如果文件不存在就创建文件,并以参数perms设置文件权限O_EXCL:测试文件是否存在,如果O_CREAT创建文件时,文件已存在则返回错误消息O_TRUNC:如果文件存在,打开文件后将已存在的文件内容删除,并定位于文件开始处O_APPEND:打开文件,在尾部添加内容perms 新建文件时以八进制方式设置文件权限属性,只用于读或写时此参数可省略函数返回值成功:返回打开或新建文件的文件描述符失败:-1文件内容读写时,内核负责内存与文件所在存储设备之间的数据流动。

程序员负责规划代表文件读或写时使用的缓冲区大小与类型,其类型设置,通常与操作的目标文件类型相关。

l 当操作以二进制为单位存储的文件时,内存缓冲多使用byte类型数组;l 在操作以字符为单位的存储文件时,内在缓冲多使用char类型数组;注意:若违反文件编码方案,文件内容显示乱码;表2.2 read语法要点头文件#include <unistd.h>函数原型ssize_t read(int fd, void* buffer, size_t len)功能读取文件内容函数参数fd 所读文件的文件描述符buffer 存放文件读取内容的缓冲len 缓冲长度函数返回值成功:返回实际读取的字节数(不大于len),0表示到达文件结束位置; 失败:-1表2.3 write 语法要点头文件#include <unistd.h>函数原型ssize_t write(int fd, void* buffer, size_t len) 功能写文件内容函数参数fd 所写文件的文件描述符buffer 需写入文件的内容缓冲len 缓冲长度函数返回值成功:返回实际实际写入文件的字节数(=len); 失败:-1文件定位系统调用lseek实现文件读写指针在文件中移动。

相关文档
最新文档