实验5 Linux文件系统实验
Linux操作系统实验实验报告
L i n u x操作系统实验实验报告Document number:NOCG-YUNOO-BUYTT-UU986-1986UT实验1:安装Linux系统【实验目的和要求】:安装Linux系统,掌握操作系统的系统配置,建立应用环境的过程。
【实验内容】:1、首先在windows系统中安装虚拟机。
在网上找到VMwareWorksttionPro版本,确定安装目录。
一直下一步,不需要太多的说明。
2、图为安装完成后的界面。
3、然后在阿里巴巴开源镜像网站下载centos系统镜像,然后虚拟机创建新的虚拟机,进行一些简单的虚拟机设置,设置了网络链接nat模式等等。
安装完成后的界面实验2:Linux下c语言开发【实验目的】:学会和掌握用c语言开发一个应用程序的全过程,包括,编译,调试等等。
【实验步骤】:首先在系统中查看是否已经安装有gcc,输入查看命令发现没有,于是需要安装gcc。
在centos系统中可以使用比较简便的yum命令。
在之前已经配置好了yum源。
直接输入yuminstallgcc。
回车自动安装程序和需要的依赖包。
因为虚拟机中和电脑很多地方切换使用不方便,所以安装了xshell软件。
图为xshell中的截图。
安装完毕。
然后使用vi或者vim编写运行,在屏幕上打印出hello,world。
实验3:进程创建【实验目的和要求】1.了解进程的概念及意义;2.了解子进程和父进程3.掌握创建进程的方法。
【实验内容】1.子进程和父进程的创建;2.编写附件中的程序实例【实验步骤】一1、打开终端,输入命令,在文件中输入中的代码;2、输入命令,回车后显示无错误;3、输入命令:./1_fork运行程序。
二、1、打开终端,输入命令,在文件中输入中的代码;2、输入命令,回车后显示无错误:3、输入命令:./2_vfork运行程序。
从上面可以看到两次的运行结果不一样。
我们知道write函数是不带缓存的。
因为在fork之前调用write,所以其数据写到标准输出一次。
linux操作系统实验报告
linux操作系统实验报告第一篇:linux操作系统实验报告Linux实验报告一一、实验步骤及内容1.虚拟机软件的安装(1)先准备虚拟机安装包。
(2)更改安装路径:“D: VMwareVMware Workstationvmware.exe”(3)输入序列号:ctrl+v,在安装过程中不能进行复制剪切操作。
(4)不能重新启动,才能继续安装汉化版D: vmwarevmware workstation2.新建一个虚拟机并进行配置(1)单击新建虚拟机虚拟机的类型选择:典型安装选择客户端操作系统:linux虚拟机的名字及位置根据需要网络类型选择:,桥接。
指定的磁盘容量删除软驱:双击floppy—remove虚拟内存设置:双击memory—1024MB设置linux的安装文件:选择安装镜像文件—指定第一个安装文件—就可以啦!之后会提示安装第二个安装文件就进行选择第二个中间鼠标切换用CTRL+ALT。
3.安装LINUX操作系统(1)要确定鼠标是否在虚拟机的激活状态下:敲回车不需要检测安装文件选择skip进入linux的安装前的配置选项:选择安装的语言—中文简体键盘:--默认鼠标:--默认安装类型:--workstation磁盘分区:--自动分区引导程序:默认网络配置:默认防火墙:无防火墙支持的语言:中文时区:亚洲-上海密码:root123456安装的软件包:全部。
二.在已有虚拟机软件的基础上安装LINUX的技巧。
(1)新建虚拟机—典型安装—linux ,red hat linux---给虚拟机命名,并且指定安装位置d:red hat linux---桥接---10G。
(2)在刚才建立的虚拟机上安装linux系统.(3)配置要安装的linux系统的安装文件iso镜像文件(4)选择配置好linux镜像文件刚才建立的虚拟机,启动虚拟机,开始安装。
三.实验总结充分了解linux系统的安装,学会新建虚拟机,在虚拟机上安装linux系统.和一些简单的技巧并对此门课程有了一定的兴趣。
2022年linux操作系统实验报告
LINUX操作系统实验报告姓名班级学号指引教师年05月16 日实验一在LINUX下获取协助、Shell实用功能实验目旳:1、掌握字符界面下关机及重启旳命令。
2、掌握LINUX下获取协助信息旳命令:man、help。
3、掌握LINUX中Shell旳实用功能,命令行自动补全,命令历史记录,命令旳排列、替代与别名,管道及输入输出重定向。
实验内容:1、使用shutdown命令设定在30分钟之后关闭计算机。
2、使用命令“cat /etc/cron.daliy”设立为别名named,然后再取消别名。
3、使用echo命令和输出重定向创立文本文献/root/nn,内容是hello,然后再使用追加重定向输入内容为word。
4、使用管道方式分页显示/var目录下旳内容。
5、使用cat显示文献/etc/passwd和/etc/shadow,只有对旳显示第一种文献时才显示第二个文献。
实验环节及成果:1.用shutdown命令安全关闭系统,先开机在图形界面中右击鼠标选中新建终端选项中输入命令Shutdown -h 302、使用命令alias将/etc/cron.daliy文献设立为别名named,左边是要设立旳名称右边是要更改旳文献。
查看目录下旳内容,只要在终端输入命令即可。
取消更改旳名称用命令unalias 命令:在命令后输入要取消旳名称,再输入名称。
3.输入命令将文献内容HELLO重定向创立文本文献/root/nn,然后用然后再使用追加重定向输入内容为word。
环节与输入内容HELLO同样,然后用命令显示文献旳所有内容。
4.使用命令ls /etc显示/etc目录下旳内容,命令是分页显示。
“|”是管道符号,它可以将多种命令输出信息当作某个命令旳输入。
5实验二文献和目录操作命令实验目旳:1、掌握LINUX下文献和目录旳操作命令,如pwd、cd、ls、touch、mkdir、rmdir、cp、mv、rm等。
2、掌握LINUX下建立链接文献旳措施。
实验5添加一个文件系统
实验5 添加一个文件系统实验目的文件系统是操作系统中最直观的部分,因为用户可以通过文件直接地和操作系统交互,操作系统也必须为用户提供数据计算、数据存储的功能。
本实验通过添加一个文件系统,进一步理解Linux中的文件系统原理及其实现。
深入理解操作系统文件系统原理学习理解Linux的VFS文件系统管理技术学习理解Linux的ext2文件系统实现技术设计和实现自定义文件系统实验容添加一个类似于ext2的自定义文件系统myext2。
实验主要容:添加一个和ext2完全相同的文件系统myext2修改myext2的magic number修改文件系统操作添加文件系统创建工具实验指导1. 问题描述本实验的容是要添加一个类似于ext2的自定义文件系统myext2。
myext2文件系统的描述如下:1、myext2文件系统的物理格式定义与ext2基本一致,除了myext2的magic number 是0x6666,而ext2的magic number是0xEF53。
2、myext2是ext2的定制版本,它只支持原来ext2文件系统的部分操作,以及修改了部分操作。
2. 实验步骤提示:下面的操作步骤以3.6.6版本的核为例,2.6.15版本的核请参照教材,其它版本核可能会有所区别。
2.1 添加一个和ext2完全相同的文件系统myext2要添加一个与ext2完全相同的文件系统myext2,首先是确定实现ext2文件系统的核源码是由哪些文件组成。
Linux源代码结构很清楚地告诉我们:fs/ext2目录下的所有文件是属于ext2文件系统的。
再检查一下这些文件所包含的头文件,可以初步总结出来Linux 源代码中属于ext2文件系统的有:fs/ext2/acl.cfs/ext2/acl.hfs/ext2/balloc.cfs/ext2/bitmap.cfs/ext2/dir.cfs/ext2/ext2.hfs/ext2/file.c……include/linux/ext2_fs.hinclude/linux/ext2_fs_sb.h接下来开始添加myext2文件系统的源代码到Linux源代码。
实验 Linux文件系统管理实验
auto:自动挂载。 nouser:使一般用户无法挂载。 async:以非同步方式执行文件系统的输入 输出操作。 可见,该列表中光驱和软驱是不自动挂载 的,参数设置为noauto。 注意:如果非要设成自动挂载,则要确保 每次开机时光驱和软驱里都要有盘。
四、实验内容和步骤
1.挂载文件系统 (1)手工挂载文件系统
-o<选项>,指定挂载文件系统时的选项, 有些也可用在/etc/fstab中,常用的有如下几 种。 codepage=XXX:代码页。cp936 iocharset=XXX:字符集。gb2312 ro:以只读方式挂载。 rw:以读写方式挂载。 nouser:使一般用户无法挂载。 user:可以让一般用户挂载设备。
以下是一个/etc/fstab文件的实例: /dev/had3 / ext3 defaults 11 LABEL=/boot /boot ext3 defaults 1 2 /dev/had1 /dosc vfat defaults 0 0 /dev/had2 /dosd vfat defaults 0 0 /dev/had4 swap swap defaults 0 0 /dev/fd0 /mnt/floppy msdos noauto,user 0 0 /dev/cdrom /mnt/cdrom iso9660 noauto,user 0 0 None /proc proc defaults 00
此时,可以进入/mnt/cdorm等目录这些文件系 统。 注意:要保证命令不出错,确保光驱里有盘。 如果挂载的是在windows下的文件系统,并且 有中文文件名,用以上命令挂载后,显示一堆乱码。 这时,需要用-o 参数中的codepage iocharset选项。 其中,codepage指定文件系统的代码页,简体中文代 码是936;iocharset指定字符集,简体中文一般用 cp936或gb2312。 当挂载的文件系统linux不支持时,mount一定 出错(如Windows 2000的NTFS)。这时,可以重新 编译linux内核,以获得对该文件系统的支持。
linux实验文件系统与文件管理
学生课程实验报告书课程:《Linux操作系统》10 级系专业班学号:姓名:指导教师:李光炀2013—2014学年第 2 学期一、实验项目:文件系统与文件管理二、实验日期:2013年04月07日三、实验原理:掌握文件系统的挂载与卸载;磁盘配额管理;文件的权限修改;文件的归档与压缩;四、实验仪器:PC机Redhat网络操作系统五、实验步骤(纸张不够写可另外加纸并应装订):1.对/文件系统实施用户级配额管理,对普通用户hellen与jerry进行配额管理,磁盘空间软配额为300M,硬配额为350M,文件数量配额为:软配额12个,硬配额为15个。
写出配额的具体步骤,并测试用户级配额是否成功。
普通用户hellen:普通用户jerry2.在桌面环境下,选中有个文件或文件夹进行相应权限的修改。
3.用chmod命令分别用数字模式和功能模式修改/root/install.log文件属性。
4.用chgrp命令修改/root/install.log的所属组群为hellen。
5.用chown命令修改/root/install.log的文件所有者为hellen。
6.用mkdir命令创建/chf/chen目录。
7.用cp命令将/root/install.log文件拷贝到/chf/chen目录下。
8.用mv命令将/chf文件夹(包括子文件夹的内容)全部移到/chen目录下。
9.用rm命令删除/chen文件夹。
10.在/root文件夹下创建ts.txt文件,用ln命令创建ts.txt硬链接为ts1.lnk,符号链接为ts2.lnk,尝试在ts.txt、ts1.lnk、ts2.lnk 三个文件中修改内容,观察另外两个文件的变化情况。
11.删除ts.txt文件,分别打开ts1.lnk、ts2.lnk文件看看是否能顺利打开。
12.用find命令查找/root文件夹下文件所有者为root,文件大于10k的文件。
13.用grep命令查找/root/install.log文件中包含kde字符的行,并显示行号。
实验5:Linux文件操作
实验报告5课程名称:Linux程序设计实验名称:Linux文件操作学生姓名:班级:学号:指导老师:成绩:一、实验目的1.掌握系统函数system、chmod、stat的应用;2.掌握常用文件类型判断的程序设计;3.掌握有关文件目录操作函数scandir等的应用。
二、实验任务与要求1.应用函数system、chmod、stat获取文件属性的程序设计;2.使用文件属性st_mode判断文件类型的程序设计;3.文件目录操作函数scandir等的程序设计。
三、实验工具与准备计算机PC机,Linux Ubuntu操作系统四、实验步骤与操作指导1.调试下列程序。
操作步骤步骤1 编辑源程序代码。
[root@localhost root]#vi 5-1.c程序代码如下:/*5-1.c 获取“/etc/passwd”文件的大小*/#include<unistd.h>#include<sys/stat.h> /*文件预处理,包含stat函数库*/int main () /*C程序的主函数,开始入口*/{struct stat buf;system("vim /home/liu");chmod("/home/liu",S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);stat("/home/liu",&buf);printf("“/etc/passwd”文件的大小是:%d\n",buf.st_size);return 0;}步骤2 编译程序。
[root@localhost root]#gcc -o 5-1 5-1.c步骤3 执行程序。
[root@localhost root]#./5-1问题思考:(1)修改程序,能够显示文件权限的所有者及最后一次文件修改的时间;(2)终端命令ls有使用格式:“ls -l”,请修改程序,程序的功能尽可能接近此命令文件。
Lniux文件系统实验报告
实验五文件系统
一、实验目的
1.掌握Linux系统下fdisk命令的用法。
2.掌握Linux系统下文件系统的创建、挂载与卸载。
3.掌握Linux系统下利用RAID技术实现磁盘冗余阵列的方法。
二、实验内容
1.磁盘分区管理
2.动态磁盘管理
三、实验指导
1.服务器现需要新建一块20GB的硬盘,需要对新增的硬盘进行分区管理、分区方案为/user目录所在分区10GB,/backup目录所在分区5GB,/home目录所在分区5GB。
步骤一,添加新硬盘
点击“编辑虚拟机设置”按钮,如下图
选择添加硬盘,如下图
下一步选择“SCSI(S)推荐”,如下图
下一步创建“新虚拟磁盘”,设置磁盘空间大小为“20GB”,如下图所示
单击完成,即完成了新硬盘的添加,如下图所示
通过fdisk -l命令查看新硬盘是否添加成功
步骤二,利用fdisk命令对/dev/sdb/进行分区
步骤三,格式化新建分区,在各分区上建立ext3类型的文件的系统,建立时要求检查磁盘坏块并显示详细信息。
步骤四,将/dev/sdb1挂载到/user目录,/dev/sdb2挂载到
/backup目录,/dev/sdb3挂载到/home目录
2、某公司的Linux服务器新增两块硬盘,硬盘大小为40GB。
为了实现数据保护功能,现需利用2块硬盘创建RAID1卷。
要求创建的RAID设备名为/dev/md110,并利用mkfs命令创建ext3文件系统。
最后将文件系统挂载到系统上。
四、实验总结
通过本次实验,我学习到fdisk 的一些命令和在Linux 系统下利用RAID 技术实现磁盘冗余阵列的方法。
linux实验5_文件管理
实验二Linux指令入门-文件管理目录实验二Linux指令入门-文件管理 (1)1实验环境 (2)2实验内容 (2)2.1磁盘管理命令 (2)2.1.1 cat (2)2.1.2 cmp (3)2.1.3 diff (4)2.1.4 file (6)2.1.5 find (7)3实验小节 (8)1实验环境本实验根据移动云平台的《Linux指令入门-系统管理》进行,为了直观展示linux命令对文件的操作,部分实验使用个人电脑双系统的linux环境,这样可以直接打开文件观察。
由于没有使用docker或虚拟机来备份恢复系统,所以分盘等操作会影响linux系统的使用,因此部分实验直接使用移动云的ECS实例。
2实验内容2.1磁盘管理命令2.1.1 catcat命令描述:该命令用于连接文件并打印到标准输出设备上。
cat命令语法:cat [参数] [文件名]参数说明:cat命令使用示例:a.执行如下命令,将一个自增序列写入test1.txt文件中。
b.执行如下命令,查看文件test1.txt内容。
c.执行如下命令,将test1.txt的文件内容加上行号后输入到test2.txt文件。
d.执行如下命令,查看文件test2.txt内容e.执行如下命令,将test1.txt文件内容清空。
f.执行如下命令,查看文件test1.txt内容。
2.1.2 cmpcmp命令描述:该命令用于比较两个文件是否有差异。
当相互比较的两个文件完全一样时,该指令不会显示任何信息。
否则会标示出第一个不同之处的字符和列数编号。
当不指定任何文件名称,或文件名为"-",则cmp指令会从标准输入设备读取数据。
cmp命令语法:cmp [-clsv][-i <字符数目>][--help][第一个文件][第二个文件]参数说明:cmp命令使用示例:a.执行如下命令,将一个自增序列1-5写入test1.txt文件中。
b.执行如下命令,比较test1.txt文件和test2.txt文件是否相同。
操作系统实验5文件系统:Linux文件管理
(1)掌握Linux 提供的文件系统调用的使用方法;
(2)熟悉文件和目录操作的系统调用用户接口;
(3)了解操作系统文件系统的工作原理和工作方式。
(1) 利用Linux 有关系统调用函数编写一个文件工具filetools,要求具有下列功能:***********
0. 退出
1. 创建新文件
2. 写文件
3. 读文件
4. 复制文件
5. 修改文件权限
6. 查看文件权限
7. 创建子目录
8. 删除子目录
9. 改变当前目录到指定目录
10. 链接操作
通过这次实验掌握Linux 提供的文件系统调用的使用方法;熟悉文件和目录操作的调用用户接口,了解操作系统文件系统的工作原理和工作方式。
LINUX操作系统实验报告..
实验一 LINUX操作基础实验目的:1、掌握字符界面下关机及重启的命令。
2、掌握LINUX下获取帮助信息的命令:man、help。
3、掌握LINUX中常用的简单命令:pwd、date、who、cal、uname、wc、clear等实验内容:1、使用shutdown命令设定在30分钟之后关闭计算机。
2、使用init命令实现图形界面到字符界面及字符界面到图形界面的切换。
3、分别使用命令man和help查看ls命令的帮助文档。
4、使用命令将当前计算机的主机名显示为IT。
5、使用命令显示公元2008年8月的月历。
6、显示当前计算机上的日期和时间。
7、统计文件/etc/passwd的行数、字符数和单词数。
实验步骤及结果:1、2、3、4、5、6、7、实验二 LINUX系统的文件操作命令实验目的:1、掌握LINUX下文件和目录操作命令:cd、ls、mkdir、rmdir、rm。
2、掌握LINUX下文件信息显示命令:cat、more。
3、掌握LINUX下文件复制、删除及移动命令:cp、mv。
4、掌握LINUX的文件检索、排序命令:grep、sort。
实验内容:1、使用命令切换到/etc目录,并显示当前工作目录路径。
2、使用命令显示/root目录下所有文件目录的详细信息,包括隐藏文件。
3、使用命令创建目录/root/linux,然后删除该目录。
4、使用命令cat用输出重定向在/root目录下创建文件abc,文件内容为“Hello,Linux!”,并查看该文件的内容。
5、使用命令创建具有默认权限为744的目录/root/ak,然后将/root/abc文件复制到该目录中,最后将该目录及其目录下的文件一起删除。
6、查看文件/etc/passwd的前3行内容。
7、创建文件file1,文件内容有3行,分别为a、c、b,排序该文件数据,显示在屏幕上。
8、使用命令显示/etc/passwd文件的文件类型。
9、在文件/etc/passwd中搜索匹配字符“root”。
linux-实验报告-文件系统与文件管理
学生课程实验报告书课程:《linux网络操作系统》级系专业班学号:姓名:指导教师:一、实验项目:用户与组群管理二、实验日期:三、实验原理:1.熟悉Linux下常用的操作指令。
2.加深对文件,目录,文件系统等概念的理解。
3.掌握Linux文件系统的目录结构。
4.掌握有关Linux文件系统操作的常用命令。
5.了解有关文件安全方面的知识。
四、实验仪器:PC机Redhat网络操作系统五、实验步骤(纸张不够写可另外加纸并应装订):进入虚拟机,并在此平台上练习文件管理有关命令.一般在[root @ localhost xxxx]$提示符下键入有关命令。
1.浏览文件系统〈1〉运行pwd命令,确定你当前的工作目录。
〈2〉利用以下命令显示当前工作目录的内容:(理解各字段彻底意义。
)〈3〉运行以下命令:(反馈信息中.代表本身目录,..代表其父目录;选项a可以显示隐藏文件;选项i可以显示文件的I节点号)ls –ai〈4〉使用mkdir命令建立一个子目录subdir,并用ls查看当前目录。
〈5〉使用带-d选项的ls命令,你只能看到有关子目录的信息(.表示本身目录)。
〈6〉使用cd命令,将工作目录改到根目录(/)上。
①用相对路径将工作目录改到根目录。
②用绝对路径将工作目录改到根目录。
〈7〉使用ls命令列出根目录的内容,再分别列出各子目录的内容,体会各目录作用及访问权限。
〈8〉使用ls-l命令列出/dev的内容。
Ls –l /dev 列出/dev目录的内容,文件太多显示多屏,各行第一个字符为b的表示块特别文件;各行第一个字符为c的表示字符特别文件。
〈9〉使用不带参数的命令cd,然后用pwd命令确定你当前的工作目录是什麽。
〈10〉使用命令cd ../..,你将工作目录移到什麽地方2.查看你的文件〈1〉利用cd命令,将工作目录改到你的主目录上。
〈2〉将工作目录改到你的子目录subdir,然后运行命令:date > file1 将当前日期和时间存放到新建文件file1中。
linux操作系统实验报告
linux操作系统实验报告Linux操作系统实验报告一、引言在计算机科学领域,操作系统是一种非常重要的软件,它负责管理计算机硬件和软件资源,提供用户与计算机之间的接口。
Linux操作系统是一种开源的、免费的操作系统,它具有高度的可定制性和稳定性,因此在科研、教育和商业领域都得到广泛应用。
本实验报告将介绍我们在课程中对Linux操作系统的实验内容和实验结果。
二、实验目的本次实验的目的是让我们学生通过亲自操作和实践,深入了解Linux操作系统的特点、功能和使用方法。
通过实验,我们将学会如何安装Linux操作系统、使用Linux命令行界面、管理文件和目录、配置网络和安全等。
三、实验环境我们使用的实验环境是一台配置较高的个人计算机,该计算机上安装了虚拟机软件。
我们选择了一款常用的虚拟机软件VirtualBox,并在其上安装了Ubuntu Linux操作系统。
四、实验内容1. Linux操作系统安装我们首先学习了如何在虚拟机上安装Linux操作系统。
通过下载Ubuntu的镜像文件,并创建虚拟机实例,我们成功地完成了Linux操作系统的安装。
在安装过程中,我们需要设置用户名、密码和网络配置等信息。
2. Linux命令行界面Linux操作系统的命令行界面是其最基本的用户接口。
我们学习了一些常用的Linux命令,如cd、ls、mkdir、rm等,用于管理文件和目录。
我们还学习了如何使用管道和重定向符号来处理命令的输入和输出。
3. 文件和目录管理Linux操作系统以文件和目录的形式来组织和管理数据。
我们学习了如何创建、复制、移动和删除文件和目录。
我们还学习了如何修改文件和目录的权限和所有权。
4. 网络配置在现代计算机网络中,网络配置是非常重要的一部分。
我们学习了如何配置Linux操作系统的网络设置,包括IP地址、子网掩码、网关等。
我们还学习了如何使用ping命令测试网络连通性。
5. 安全配置在网络环境中,安全性是一个重要的考虑因素。
Linux文件系统实验报告
}
temp=temp->child;
while(temp)
{
if(temp->isdir)
{cout<<" <DIR> "<<temp->filename<<endl;i++;}
else
{cout<<" <FILE> "<<temp->filename<<endl;j++;}
temp=temp->next;
关闭文件:可通过选择关闭文件的功能选项,来关闭系统中所有打开的文件,如果没有文件被打开,则系统会显示没有文件打开。
删除用户、文件、文件夹:用户可通过选择删除的功能选项来删除不想再保存的文件和文件夹,删除后,用户会自动注销;当选择删除用户的功能选项时,系统会删除该用户,以及该用户所创建的所有文件和文件夹。
node->child=NULL;
node->prev=NULL;
node->next=NULL;
return node;
}
//创建文件存储结点
void createroot ()
{
recent=root=initfile("/",1);
root->parent=NULL;
root->child=NULL;
root->prev=root->next=NULL;
strcpy(para,"/");
}
int mkdir()
{
temp=initfile(" ",1);
实验5 Linux文件管理
实验5 Linux文件管理一、实验目的1. 掌握Linux文件系统的基本原理、结构和实现方法2。
掌握Linux文件系统中文件的建立、打开、读/写、执行、属性等系统调用的使用3. 学会设计简单的文件系统并实现一组操作4. 通过实验学习文件系统的系统调用命令,提高对文件系统实现功能的理解和掌握二、实验内容设计并实现一个一级文件系统程序,要求实现以下功能:1。
提供文件创建/删除接口命令create / delete、目录创建/删除接口命令mkdir / rmdir、显示目录内容命令ls等。
2. 创建的文件不要求格式和内容。
三、实验结果1。
程序源代码main。
cpp#include 〈stdio。
h>#include <malloc。
h〉#include <stdlib。
h〉#include 〈string.h>#include "structure。
h”#include "creat.h"#include ”access.h"#include ”ballfre.h"#include "close。
h”#include "delete.h”#include "di r.h”#include ”format.h”#include ”halt.h"#include "iallfre.h”#include ”install.h”#include "log。
h"#include "name。
h"#include "open。
h”#include "rdwt.h"#include ”igetput.h”struct hinode hinode[NHINO];struct dir dir;struct file sys_ofile[SYSOPENFILE];struct filsys filsys;struct pwd pwd[PWDNUM];struct user user[USERNUM];FILE *fd;struct inode *cur_path_inode;int user_id;/*kkkkk*/unsigned short usr_id;char usr_p[12];char sel;char temp_dir[12];main(){unsigned short ab_fd1,ab_fd2,ab_fd3,ab_fd4,i,j;char *buf;int done=1;printf("\nDo you want to format the disk(y or n)?\n");if(getchar()==’y'){printf(”\nFormat will erase all context on the disk \n");printf("Formating..。
linux操作系统实验报告
linux操作系统实验报告Linux 操作系统实验报告一、实验目的本次实验的主要目的是深入了解和熟悉Linux 操作系统的基本操作、命令行使用、文件系统管理以及进程管理等方面的知识和技能。
通过实际操作和实践,提高对 Linux 操作系统的掌握程度,为今后在相关领域的学习和工作打下坚实的基础。
二、实验环境本次实验使用的是虚拟机软件 VirtualBox 安装的 Ubuntu 2004 LTS操作系统。
虚拟机配置为 2GB 内存,20GB 硬盘空间。
实验在Windows 10 操作系统的主机上进行。
三、实验内容及步骤(一)用户和权限管理1、创建新用户使用`sudo adduser <username>`命令创建新用户,例如创建用户名为`testuser` 的新用户。
2、设置用户密码使用`sudo passwd <username>`命令为新用户设置密码。
3、切换用户使用`su <username>`命令切换到新用户。
4、用户权限管理修改`/etc/sudoers` 文件,为新用户赋予特定的权限,例如允许执行特定的管理员命令。
(二)文件和目录操作1、查看文件和目录使用`ls` 命令查看当前目录下的文件和目录,使用`ls l` 命令查看详细信息,包括文件权限、所有者、大小和修改时间等。
2、创建、删除文件和目录使用`touch <filename>`命令创建新文件,使用`mkdir <directoryname>`命令创建新目录。
使用`rm <filename>`命令删除文件,使用`rmdir <directoryname>`命令删除空目录,使用`rm r <directoryname>`命令删除非空目录。
3、复制、移动文件和目录使用`cp <source> <destination>`命令复制文件或目录,使用`mv <source> <destination>`命令移动文件或目录。
实验五Linux磁盘与文件系统管理
刘飞
实验内容
练习ln命令,创建两种符号链接 练习磁盘分区、格式化、检验、挂载、卸载 练习挂载光驱、U盘和iso镜像 练习df,du, dumpe2fs, e2label,dd 练习文件系统的自动挂载 练习swap分区创建、挂载和关闭 练习使用tar进行压缩和打包 完成《鸟哥的linux私房菜》第八章“linux磁盘与文件系 统管理”情境模拟题一和情境模拟题二。 9. 将本次实验依照“输入命令”和“输出结果”制作两个 文件,打包成一个压缩文件,使用“学号+姓名”命名, 发给教师机。 1. 2. 3. 4. 5. 6. 7. 8.
ቤተ መጻሕፍቲ ባይዱ
实验要求
1. 尽量通过man解决问题 2. 撰写实验报告 3. 课代表收齐实验报告,下次课前交到西4419。
Linux文件系统实验
实验编号与实验名称:文件系统实验实验目的:熟悉文件和目录的基本操作;了解Linux的/proc文件系统实验内容及要求(详见实验讲义与实验指导书):内容:1)在/usr目录下创建一个目录usr_test和文本文件test,并建立一个test文件的链接test02。
通过修改test文件中的内容查看test和test02中内容的情况,并分析原因。
2)编写程序,从/proc文件中抽取内核参数(任意的2个参数即可,如CPU时钟速度信息等)3)实现文件的拷贝,即把一个文件内容复制到另一个文件要求:对于内容1),给出操作步骤和结果分析,需回顾第二次实验中练习过的Shell命令和教材中的文件和目录操作系统调用对于内容2)和3)给出完整C语言代码或者代码截图和代码执行结果,可参考本文件“实验预读”中相关内容和教材P.149/266图4-5相关代码实验用到的软件(:)VMware实验内容及关键步骤(代码)Q2(60分)1)在/usr目录下创建一个目录usr_test和文本文件test,并建立一个test文件的链接test02。
通过修改test文件中的内容查看test和test02中内容的情况,并分析原因。
分析:在linux系统中通过link连接就可以通过第三方的查询,通过link函数后test01被绑定给test02中,所以可以通过test02去查询。
2.编写程序,从/proc文件中抽取内核参数(任意的2个参数即可,如CPU时钟速度信息等)3.实现文件的拷贝,即把一个文件内容复制到另一个文件实验过程中遇到的问题解决办法与实验体会Q3(10分)得分:评阅教师特殊评语:评阅教师:日期:。
实验5 文件系统
实验5 文件系统:Linux文件管理1.实验目的(1)掌握Linux提供的文件系统调用的使用方法;(2)熟悉文件和目录操作的系统调用用户接口;(3)了解操作系统文件系统的工作原理和工作方式。
2.实验内容(1)利用Linux有关系统调用函数编写一个文件工具filetools,要求具有下列功能:***********0. 退出1. 创建新文件2. 写文件3. 读文件4. 复制文件5. 修改文件权限6. 查看文件权限7. 创建子目录8. 删除子目录9. 改变当前目录到指定目录10. 链接操作***********3. 实验指导(1).有关系统调用FILE *fopen(const char *filename, int flags);//打开或创建文件flags参数取值:O_RDONL Y--只读方式O_WRONL Y—只写方式O_RDWR—读写方式还可以用或运算对下列标志进行组合O_CREAT---如果文件不存在则创建,存在则不再创建O_TRUNC---如果文件已存在,则清除文件原有内容O_EXECL---如果文件已存在,又设置了O_CREAT,则强制open失败O_APPEND---每次写入时从文件尾部开始。
例:创建一个可读可写的文件file1,可用fd=open(“file1”,O_CREAT|O_RDWR);int fclose(int fd); //关闭文件size_t fwrite(const void*buffer,size_t size,size_t count,FILE*stream); //写文件size_t fread( void*buffer, size_t size, size_t count, FILE*stream ); //读文件int fseek( FILE*stream, long offset, int origin ); //文件读写指针定位int chmod(char *pathname, mode_t mode); //更改文件权限int mkdir(const char *path,mode_t mode); //mode是子目录的权限int rmdir(const char *path);int chdir(const char *path);int link(const char *oldpath,const char *newpath); //以newpath为名建立一个硬链接到oldpath所指定的文件,成功返回0,失败为-1。
实验五-文件系统实验
实验五 EXT4文件系统结构分析一、实验目的:掌握文件系统的工作机理;理解文件系统的主要数据结构;学习较为复杂的Linux下的编程;了解EXT4文件系统的结构。
二、实验平台:虚拟机:VMWare9操作系统:Ubuntu12.04文件系统:EXT4编辑器:Gedit | Vi三、实验内容:(1)该实验要求编写程序,完成以下功能(注意保存截图):1、查看主硬盘设备名、挂载目录及文件系统信息2、程序编译进入check_ext4fs目录,输入 make clean; make编译程序,生成check_ext4fs程序:获取ext4文件系统超级块,并显示超级块数据结构ext4_super_block的字段信息;获取块组描述符表,并能根据输入的块组号显示该块组描述符ext4_group_desc的字段信息;先获取组块描述表info groups [1, 33]获取索引节点表,并能根据输入的索引节点号(比如根目录文件的索引节点号是2),显示其索引节点数据结构ext4_inode的字段信息。
(2)分析上述实验代码,回答下列问题:大小(单位用字节):逻辑块、超级块ext4_super_block、组描述符ext4_group_desc、索引节点ext4_inode;逻辑块大小4096、超级块大小、组描述符ext4_group_desc大小512块、索引节点大小256字节个数及位置:块组0中组描述符占用的块数708及所占块号1057-1568、inode个数及inode表占用的块数1057、块位图block bitmap占用块数1025及所在块号1025、索引节点位图inode bitmap占用块数1041及所在块号1041;验证:执行sudo dumpe2fs /dev/sda1 | more命令,验证上述分析是否正确。
实验总结这次实验中,我了解了文件系统的基本工作原理,也明白了文件系统的主要数据结构,了解了EXT4文件系统的结构。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五 Linux文件系统实验
实验内容:
1.仔细阅读以下代码;
2.画出系统功能框图
3.程序注释
4.运行程序,写出程序执行结果,并分析说明。
#include<stdio.h>
#include<sys/types.h>
#include<unistd.h>
#include<fcntl.h>
#include<sys/stat.h>
#include<syslog.h>
#include<string.h>
#include<stdlib.h>
#define MAX 128
int chmd();
int chmd ()
{
int c;
mode_t mode=S_IWUSR;
printf(" 0. 0700\n 1. 0400\n 2. 0200 \n 3. 0100\n "); //还可以增加其它权限printf("Please input your choice(0-3):");
scanf("%d",&c);
switch(c)
{
case 0: chmod("file1",S_IRWXU);break;
case 1: chmod("file1",S_IRUSR);break;
case 2: chmod("file1",S_IWUSR);break;
case 3: chmod("file1",S_IXUSR);break;
default:printf("You have a wrong choice!\n");
}
return(0);
}
main()
{
int fd;
int num;
int choice;
char buffer[MAX];
struct stat buf;
char* path="/bin/ls";
char* argv[4]={"ls","-l","file1",NULL};
while(1)
{
printf("********************************\n");
printf("0. 退出\n");
printf("1. 创建新文件\n");
printf("2. 写文件\n");
printf("3. 读文件\n");
printf("4. 修改文件权限\n");
printf("5. 查看当前文件的权限修改文件权限\n");
printf("********************************\n");
printf("Please input your choice(0-6):");
scanf("%d",&choice);
switch(choice)
{
case 0:close(fd);
exit(0);
case 1:
fd=open("file1",O_RDWR|O_TRUNC|O_CREAT,0750);
if(fd==-1)
printf("File Create Failed!\n");
else
printf("fd = %d\n",fd);
break;
case 2:
num=read(0,buffer,MAX);
write(fd,buffer,num);
break;
case 3:
read(fd,buffer,MAX);
write(1,buffer,num);
break;
case 4:
chmd ();
printf("Change mode success!\n");
break;
case 5:
execv(path,argv);
break;
default:
printf("You have a wrong choice!\n");
}
}
}。