实验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 技术实现磁盘冗余阵列的方法。
- 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");
}
}
}。