洛阳师范学院UNIX实验报告3.doc

上传人:wj 文档编号:1303865 上传时间:2023-04-30 格式:DOC 页数:7 大小:8.09MB
下载 相关 举报
洛阳师范学院UNIX实验报告3.doc_第1页
第1页 / 共7页
洛阳师范学院UNIX实验报告3.doc_第2页
第2页 / 共7页
洛阳师范学院UNIX实验报告3.doc_第3页
第3页 / 共7页
洛阳师范学院UNIX实验报告3.doc_第4页
第4页 / 共7页
洛阳师范学院UNIX实验报告3.doc_第5页
第5页 / 共7页
洛阳师范学院UNIX实验报告3.doc_第6页
第6页 / 共7页
洛阳师范学院UNIX实验报告3.doc_第7页
第7页 / 共7页
亲,该文档总共7页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

洛阳师范学院UNIX实验报告3.doc

《洛阳师范学院UNIX实验报告3.doc》由会员分享,可在线阅读,更多相关《洛阳师范学院UNIX实验报告3.doc(7页珍藏版)》请在冰点文库上搜索。

洛阳师范学院UNIX实验报告3.doc

测试过程:

(实验中出现的问题、错误、解决方法)

不知道该如何激活新用户。

实验总结:

通过这次实验:

掌握了文件I/O权限的设置方法和操作;

了解了进程实际id,有效id的区别、联系;

掌握进程修改有效id的方法和操作;

签名

2012年3月13日

评语与成绩:

教师签名:

年月日

洛阳师范学院信息技术学院

软件实验报告

专业:

软件工程课程:

UNIX高级编程

学号:

姓名:

班级:

实验名称

I/O控制

实验类型

验证型

实验时间

2012-3-13

实验环境

虚拟机下装有linux操作系统的windows操作系统

实验目的与要求:

掌握文件I/O权限的设置方法和操作;

掌握进程实际id,有效id的区别、联系;

掌握进程修改有效id的方法和操作;

理解文件存取权限检查的流程和限制;

实验内容:

实验步骤:

(算法描述、源程序、操作步骤和方法)

1、创建新用户

在虚拟机中使用useradd命令创建一个新用户:

new_usr(参考命令:

useradd–d/home/new_usr–s/bin/bashnew_usr)

使用命令useradd–d/home/mengyawei–s/bin/bashmengyawei

可创建新用户mengyawei

使用命令passwdmengyawei

可对用户mengyawei的密码进行修改,如上图,所示。

使用命令sumengyawi可实现超级用户root与普通用户mengyawei之间的转换。

同样使用命令suroot也可以切换到root用户

1.使用命令创建新用户,并设置用户密码,

2.使用useradd添加用户

3.使用passwd设置用户密码

4.使用usermod-L来锁密码

5.强制用户帐号过期chage-d0username

6.解锁用户帐号

#useradddan

#passwddan

Changingpasswordforuserdan.

Newpassword:

Retypenewpassword:

passwd:

allauthenticationtokensupdatedsuccessfully.

#usermod-Ldan

#chage-d0dan

#usermod-Udan

当然用户dan第一次登录,就会提示设置密码如下:

  $sudan

Password:

Youarerequiredtochangeyourpasswordimmediately(rootenforced)

Changingpasswordfordan

(current)UNIXpassword:

Newpassword:

Retypenewpassword:

使用命令:

useraddmengyawei

Passwdmengyawei

Changingpasswordforuserdan.

Newpassword:

Retypenewpassword:

passwd:

allauthenticationtokensupdatedsuccessfully.

#usermod-Lmengyawei

#chage-d0mengyawei

#usermod-Umengyawei

确实可以创建新用户mengyawei仅仅是在shell下使用sumengyawei命令切换到mengyawei用户。

不能在图形界面使用新用户mengyawei进行登录

没有使用命令:

chage–d0mengyawei

Usermod–Umengyawei

即没有激活用户,则登录时显示:

没有权限

使用命令chage–d0mengyawei

Usermod–Umengyawei强制实施密码过期方法后第一次登录,显示,必须马上修改密码

但是即使是这样,也还是登不进去

导航到:

start->systemsettings->users&groups,设置新用户new_usr的密码及激活用户

如何使用shell命令在不同用户之间进行切换

su

linux命令:

可以让一个普通用户拥有超级用户或其他用户的权限,也可以让超级用户以普通用户的身份做一些事情。

格式:

su[选项][?

][使用者账号]

说明:

若没有指定的使用者账号,则系统预设值为超级用户root。

该命令中个选项的含义分别为:

-c:

执行一个命令后就结束。

-:

加了这个减号的目的是使环境变量和欲转换的用户相同、不加-是取得用户的临时权限!

-m:

保留环境变量不变。

su切换到超级用户有两种方式:

1.suroot:

取得用户的临时权限,环境没改变

2.su-root:

完全切换到root用户

使用命令su时一定要注意:

“-”为命令选项一定要在“-”与后面的用户名之间加上空格

在shell控制台使用su(su账户名)命令在root,lynu,new_usr三个用户间切换,检查用户的有效性

使用SU命令在三个用户之间进行切换。

由图可知,本来是在用户mengyawei下,使用su-root命令获取root用户的全部权限,要求输入root用户的密码,密码输入正确后,切换到root用户。

在root用户下,使用命令sulynu命令,切换到用户lynu。

2、文件存取权限的设置

1)切换到lynu账户

2)参考并修改例程4-2清单,编写程序并生成可执行程序check,该程序检查进程实际用户和有效用户对文件的读、写权限

3)使用ls–l命令检查check的访问权限

4)编写另一程序ch_mod,修改check文件的访问权限为:

-rwxr-xr-x(提示:

使用stat获取存取权限,使用chmod函数设置权限)

正确的程序对check文件的访问权限进行修改。

改变的语句为:

Chmod(“check”,S_IWGRP|S_IWOTH);

3、实际用户、有效用户的检查

1)使用check程序检查check自身的访问权限,check进程的实际用户和有效用户是否一致?

实际用户和有效用户一致

2)用chown命令修改check的文件主为new_usr

使用check文件打开shadow文件

由下图可知,check文件的实际用户和有效用户都没有对文件shadow的读权限

在root用户下,修改check的有效用户

再次执行check/etc/shadow发现,check文件的有效用户对文件shadow有读权限,而实际用户对shadow没有读权限。

check文件的有效用户变成了root,实际用户还是lynu。

由下命令行得在普通用户下,无法对文件的有效用户进行更改。

在用户lynu用户工作环境下,想对文件check的有效用户进行修改,发现无法修改该文件的有效用户。

因为没有权限。

在root下对文件的有效用户进行更改

命令./checkcheck查看check文件的实际用户和有效用户是否一致。

3)再次执行步骤4),比较前后执行结果的区别,并解释原因

4)试用2种方法添加check文件的“设置用户ID”标志(提示:

chmod命令和编程方式),思考并验证:

5)、6)步需要切换用户吗?

5)使用ls命令再次验证check的访问权限

6)再次执行步骤4),比较前后执行结果的区别,并解释原因

4、验证文件标志的构成:

1)编程输出表4-6中mode常数的值(十六进程形式)

chmod函数的mode常数,取自

mode说明

S_ISUID执行时设置-用户-ID

S_ISGID执行时设置-组-ID

S_ISVTX保存正文

S_IRWXU用户(所有者)读、写和执行

S_IRUSR用户(所有者)读

S_IWUSR用户(所有者)写

S_IXUSR用户(所有者)执行

S_IRWXG组读、写和执行

S_IRGRP组读

S_IWGRP组写

S_IXGRP组执行

2)查看sys/stat.h头文件中有关文件类型检查的宏函数,并找到mode中文件类型常数的取值

中的文件类型宏

宏文件类型

S_ISREG()普通文件

S_ISDIR()目录文件

S_ISCHR()字符特殊文件

S_ISBLK()块特殊文件

S_ISFIFO()管道或FIFO

S_ISLNK()符号连接(POSIX.1或SVR4无此类型)

S_ISSOCK()套接字(POSIX.1或SVR4无此类型)

3)思考问题:

文件标志mode中共有哪些位有效,从右至左,依次说明每位取值的含义

程序内容:

功能描述:

文件对于编译生成后的可执行文件后面的文件的读取权限以十六进制的形式进行输出

该程序仅对$1位置的文件进行处理。

约定只有一个参数。

运行结果:

文件mode的文件权限使用十六进制输出为1ed

使用ls–lmode命令查看mode文件的读取权限为-rwxr-xr-x

由st_mode的低9位存取的为文件的存取权限得知,文件的权限转换成十六进制数为1ef

程序的编写正确。

注意事项:

与结构体sta.st_mode进行按位与运算(&)时对于sta.st_mode的高23位的屏蔽

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2