Linux程序设计实验报告姓名:杨帆班级:计1242学号:121842284专业:计算机科学与技术指导老师:赵帼英实验一Linux系统安装与启动(选做实验)一、实验目的(通过实践及查阅资料完成如下实验)1.掌握虚拟机的配置过程。2.掌握Linux系统的安装过程和简单配置方法。3.掌握与Linux相关的多操作系统的安装方法。4.掌握Linux系统的启动、关闭步骤。5.了解Linux文件系统和目录结构。二、实验内容1.安装虚拟机软件(如VMware、Virtualbox)。2.在虚拟机软件中安装Linux操作系统(如Fedora、Ubuntu、redhat等)。3.配置Linux系统运行环境。4.正确地启动、关闭系统。三、实验步骤1.安装虚拟机软件(VMwareWorkstation7.0)。2.在虚拟机软件中新建Linux虚拟机2.1设置内存大小(建议大于256MB)2.2设置虚拟硬盘大小(建议大于8GB)2.3设置虚拟光驱(虚拟方式,镜像文件)2.4设置网络连接模式(建议采用桥接方式)2.5设置共享目录(建议英文目录名)1.在Linux虚拟机中安装Linux操作系统(fedora10)。3.1选择安装界面3.2检测安装截介质(建议跳过)3.3安装过程中的语言、键盘选择3.4磁盘分区(采用自动分区,总大小与2.2相匹配)3.5引导程序选择(采用GRUB)3.6注意事项(禁用SELinux)2.通过相关命令实现对操作系统的登录、退出与关机3.使用文件浏览器査看Linux操作系统目录结构四、实验思考题1.举例说明Linux操作系统不同目录下文件的主要作用。2.列出你发现的Linux与Windows操作系统区别。3.列出决定文本界面及图形界面显示的关键文件,并说明设置的关键。4.列出你所能想到的虚拟机软件的用途。实验结论:实验二:linux基本命令(必做实验)一、实验目的、要求(请在操作后附实验结果)1.熟悉Linux操作环境。2.掌握Linux—般命令格式。3.掌握有关文件和目录操作的常用命令。4.掌握有关进程操作的常用命令。二、实验内容1.熟练掌握登录和退出系统,创建,删除用户等命令(命令:运行结果)。2.熟悉date,cal,who,echo,clear,passwd,man等命令。3.在用户主目录下对文件进行如下操作:复制一个文件、显示文件内容、查找指定内容、排序、文件比较、文件删除。4.对目录进行管理:创建和删除子目录、改变和显示工作目录、列出文件权限、建立链接文件等。1.显示系统中的进程信息。三、实验步骤1.登录进入系统,打开shell环境(终端)。2.使用date,cal,who,echo,clear等命令,了解Linux命令格式。3.利用man命令查看date,echo等命令的帮助说明。4.目录操作4.1在用户默认工作目录下新建目录testdirl(命令:运行结果)。4.2在用户目录下复制testdirl为testdir2(命令:运行结果)。4.3在用户目录下删除testdir2。(命令:运行结果)5.文件操作5.1进入用户默认工作目录。5.2运行datetestl,然后运行cattest1,记录观察到的信息(命令:运行结果)。5.3再次运行datetestl,然后运行cattestl,记录观察到的信息(命令:运行结果)。5.4运行date»testl,然后运行cattestl,记录观察到的信息并说明原因(命令:运行结果)。5.5复制testl为test2。5.6査看testl和test2的文件详细信息,记录并说明其异同。5.7统计testl文件内容的行数、字数。5.8显示testl的内容。5.9建立testl的链接文件test3。5.10复制testl到上一级目录。5.11在用户目录下删除testl,删除testdirl。四、实验思考题1.如何显示当前工作目录的完整路径。在Linux层次目录结构中,用户可以在被授权的任意目录下利用mkdir命令创建新目录,也可以利用cd命令从一个目录转换到另一个目录。然而,没有提示符来告知用户目前处于哪一个目录中。要想知道当前所处的目录,可以使用pwd命令,该命令显示整个路径名。pwd说明:此命令显示出当前工作目录的绝对路径。例:$pwd/home/xu显示的路径名为/home/xu,每个目录名都用“/”隔开,根目录以开头的“/”表示。2.举例说明Linux命令的常用格式。mkdir-p/srv/ftp/linux-10创建文件夹-p如果文件夹不存在自动创建free命令free命令的功能是查看当前系统内存的使用情况,它显示系统中剩余及已用的物理内存和交换内存,以及共享内存和被核心使用的缓冲区。3.举例说明如何使用Linux命令帮助(命令:运行结果)。实验结论:4实验三文件权限管理(必做实验)一、实验目的1.熟悉Linux操作环境。2.掌握Linux—般命令格式。3.理解Linux中文件所有者和权限的概念。4.掌握有关权限操作的常用命令。5.掌握文件/目录的打包和压缩命令。二、实验内容1.2.1普通文件与目录权限的修改。1.2.2改变文件属主。1.2.3普通文件与目录的打包和压缩。三、实验步骤1.文件权限操作1.1在用户默认工作目录下创建目录test03,进入test03目录,使用touch命令创建空文件filel。1.2显示filel详细信息,记录文件的权限信息,所属用户和组。1.3对filel设置权限,使其他用户可以对此文件进行写操作,并查看设置结果。1.4取消同组用户对filel的读取权限,并査看设置结果。51.5用数字形式来为filel设置权限,使所有者可读、可写、可执行;其他用户和所属组用户只有读和执行的权限,并查看设置结果。1.6用数字形式更改filel权限,使所有者只能读取此文件,其他任何用户都没有权限,并査看设置结果。1.7为其他用户添加写权限,并査看设置结果。1.8回到上层目录,查看test03的权限。1.9为其他用户添加对此目录的写权限,查看设置结果。1.10査看并记录目录test03及其中文件的所属用户和组。1.11把目录test03及其下的所有文件的所有者改成bin,所属组改成daemon,并査看设置结果。1.12删除目录test03及其下的文件。61.13设定umask为000($umask000),创建testdir目录,并査看其权限。2.打包压缩命令操作2.1将/etc目录拷贝SlJ用户默认工作目录下,重命名为etctest。72.2用tar命令将etctest目录打包成etctest.tar.gz,查看etctest.tar.gz的权限,解压缩etctest.tar.gz四、实验思考题4.1列举ls命令不同选项的功能。(1)ls:显示所有非隐藏文件(按字典顺序排序)(2)ls-a:显示所有文件包括隐藏文件(3)ls-l:显示所有文件的详细信息(4)显示总数4.2说明文件权限和文件所有者的含义。-rw-r--r--是文件的权限。Root是用户组。4.3举例说明umask命令的功能。8umask设置了用户创建文件的默认权限,它与chmod的效果刚好相反,umask设置的是权限“补码”,而chmod设置的是文件权限码。一般在/etc/profile、$[HOME]/.bash_profile或$[HOME]/.profile中设置umask值。4.4说明后缀名为tar.gz和tar.bz2的文件的压缩和解压命令。Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,所以首先就来讲讲tar命令的基本用法:tar命令的选项有很多(用mantar可以查看到),但常用的就那么几个选项,下面来举例说明一下:#tar-cfall.tar*.jpg这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。#tar-rfall.tar*.gif这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。#tar-ufall.tarlogo.gif这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。#tar-tfall.tar这条命令是列出all.tar包中所有文件,-t是列出文件的意思#tar-xfall.tar这条命令是解出all.tar包中所有文件,-x是解开的意思以上就是tar的最基本的用法。为了方便用户在打包解包的同时可以压缩或解压文件,tar提供了一种特殊的功能。这就是tar可以在打包或解包的同时调用其它的压缩程序。实验结论:通过这个实验我了解了普通文件与目录权限的修改。9实验四用户和组的管理(必做实验)一、实验目的1.熟悉Linux操作环境。2.掌握Linux—般命令格式。3.熟悉命令行操作方式进行用户和用户组管理。二、实验内容2.建立新用户账号权限测试。3.为新用户建立账号和工作组,并进行相应配置。4.以该用户身份登录,修改密码。5.删除该用户。三、实验步骤1.创建用户(以zhangsan为例)1.1创建一个新用户zhangsan。1.2査看/etc/passwd文件的最后一行内容,并记录。1.3査看/etc/shadow文件的最后一行内容,并记录。1.4给用户zhangsan设置密码。1.5查看/etc/shadow文件的最后一行内容,记录并说明变化。101.6使用zhangsan用户登录系统,测试能否登录成功。2.创建用户(以user为例)2.1使用1的步骤创建新用户user。2.2更改zhangsan所属群组为root。2.3査看/etc/passwd文件,记录zhangsan用户和user用户的属组情况。2.4更改用户zhangsan的帐户名为user。112.5査看/etc/passwd文件的最后一行内容,记录并说明变化。2.6删除用户user。3.组的管理(以stuff为例)3.1创建一个新组,组名为stuff。3.2査看/etc/group文件的最后一行内容,并记录。3.3创建一个新帐户test,并将其起始组和附属组都设为stuff。3.4査看/etc/group文件中的最后一行内容,记录并说明变化。123.5设置stuff组密码。3.6在stuff组中删除用户test。3.7查看/etc/group文件中的最后一行,记录并说明变化。3.8删除会且stuff。四、实验思考题1.说明所属群组与所属附加群组的区别。13chgrp(changegroup)改变文件所属群组,hown(changeowner)改变文件所有者属性。2.如普通用户遗失密码后要求恢复用户权限,说明root用户可能采取的方式。1)在root账户下,打开/etc/shadow(不是passwd文件,因为密码实际上经过加密后放在了“影子口令”文件shadow中了。passwd文件每个用户均可见,但是shadow只有root可以见)。2)找到普通用户名cicikasa,然后删除第二个域即可,域之间用“:”隔开的,如下user:TdkakkkYUukkjkjk:14672:0:99999:7:::上述红色部分就是经过加密的密码,删除即可。3)在普通用户下,输入passwd即可输入新密码。3.如何指定不同用户的默认工作目录。1)修改/etc/vsftpd/vsftpd.conf将guest_username=virtual_useruser_config_dir=/etc/vsftpd_useruser_sub_token=$USER加进去2)在/etc目录下手工建立vsftpd_user目录3)在/etc/vsftpd_user目录下建立用户文件,用户文件名称=要登录的用户名。例如:FTP用户是test111那么就在/etc/vsftpd_user/下建立一个test111文件,文件内容local_root=/home/test111/