《linux系统及其编程》实验课记录(五)
实验 5:权限的设置和更改
实验环境:
安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统。有另外一个无特权用户 student,密码 student 的账户存在,还有一个无特权的用户 visitor,密码 password的账户存在。
实验目标:
了解 linux 的安全模型,熟悉用户账号的组群帐号,设置并修改文件权限。
实验背景:
在 Linux 系统中,各个用户(除超级用户外)的空间之间是隔离的,一个用户是不能进入其他用户的注册空间的。通常普通用户可以通过超级用户在/usr 目录下建立共享的用户目录,
然后将该共享目录的属主权移交给普通用户。普通用户可将该目录可设置成允许同组用户访问,也可以设置成允许所有用户访问。并在该目录中提供允许共享的文件。
实验要求:
1、转换用户帐号,查看 id 值
2、使用 chown 修改文件属主
3、使用 chmod 采用两种不同方法修改文件权限
4、使用 umask 修改默认的权限
实验详解:
1、使用口令 password 登录为用户 visitor。如果你使用的是图形化环境,点击[应用程序(Applications)]->[附件(System Tools)]->[终端(Terminal)]来打开终端:
2、登录到系统之后,你应该就位于你的主目录中。使用”id”命令来查看你的相关信息:
[student@desktopX ~]$ id
uid=501(visitor) gid=501(visitor) group=501(visitor)
„„
[student@desktopX ~]$ pwd
/home/visitor
3、运行 su – student 命令来转换成用户 student,在运行上一步:
[student@desktopX ~]$ id
uid=500(visitor) gid=500(visitor) group=500(visitor)
„„
[student@desktopX ~]$ pwd
/home/student
思考:为什么我们要用 su -而不直接用 su 。
4、现在切换到 root 用户,在/usr 中创建两个文件夹,分别为 student 和 visitor:
[student@desktopX ~]$ su -
Password:
[root@desktopX ~]# cd /usr
[root@desktopX usr]# mkdir student visitor
[root@desktopX usr]# ls –ld student visitor
5、使用 chown 命令来修改这两个文件夹的属主:
[root@desktopX usr]# chown student:student student
[root@desktopX usr]# chown visitor:visitor visitor
6、回到 student 文件夹,用 student 账户创建两个文本文件,分别为 tf1 和 tf2,并赋予
不同的权限:
[student@desktopX student]$ cat >tf1
This file is for all user
[student@desktopX student]$ cat >tf2
This file is for the users in the same groups
[student@desktopX student]$ ls –l tf1 tf2
[student@desktopX student]$ chmod 750 tf2
[student@desktopX student]$ ls –l tf1 tf2
7、切换到 visitor 用户,分别访问刚才创建的两个文件 tf1 和 tf2:
[student@desktopX student]$ su visitor
Password:
[visitor@desktopX student]$ cat tf1
This file is for all user
[visitor@desktopX student]$ cat tf2
cat: tf2: Permission denied
8、切换到 root 用户,使用 chmod 命令增加 visitor 的访问权限:
[visitor@desktopX student]$ su
[root@ desktopX student]# chmod o+r tf2
9、回到 visitor 用户,继续访问 tf2:
[visitor@desktopX student]$ cat tf2
This file is for the users in the same groups
10、使用 umask 修改文件的默认权限:
[student@desktopX student]$ umask 0002
[student@desktopX student]$ mkdir dir1
[student@desktopX student]$ umask –p 007
[student@desktopX student]$ mkdir dir2
[student@desktopX student]$ ls –ld dir1 dir2
这时候如果切换到 visitor 用户访问 dir2 将会提示权限不够
[visitor@desktopX student]$ cd dir2
dir2: .: Permission denied
Freecode : www.cnblogs.com/yym2013
《linux系统及其编程》实验课记录(五)的更多相关文章
- Linux系统初学-第三课 Linux网络配置1
Linux系统初学-第三课 Linux网络配置 1.动态IP配置 配置文件路径 /etc/sysconfig/network-scripts/ ls查看网卡eth0,其中HWADDR值得获取:ifco ...
- Linux 系统应用编程——进程基础
一.Linux下多任务机制的介绍 Linux有一特性是多任务,多任务处理是指用户可以在同一时间内运行多个应用程序,每个正在执行的应用程序被称为一个任务. 多任务操作系统使用某种调度(shedule)策 ...
- 云服务器--linux系统操作命令以及安装ngnix记录,以及手动部署本地文件
1.控制台登陆服务器,需要首先知道服务器ip和密码,,命令是 ssh root@1.1.1.1(服务器IP),然后输入密码登入服务器 2.查看linux 版本的系统命令是 cat /etc/redha ...
- linux系统串口编程实例
在嵌入式开发中一些设备如WiFi.蓝牙......都会通过串口进行主机与从机间通信,串口一般以每次1bit位进行传输,效率相对慢. 在linux系统下串口的编程有如下几个步骤,最主要的是串口初始化! ...
- Linux系统shell编程自学_第一章基础
第一章 基础shell的优势在于处理操作系统底层的业务,Python,php的优势在于开发运维工具,web界面的管理工具以及web业务开发.处理一键安装.优化.报警脚本shell又叫命令解释器,它能识 ...
- 《linux系统及其编程》实验课记录(一)
实验 1:登录和使用基本的 Linux 命令 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统. 有另外一个无特权用户 student,密码 ...
- 《linux系统及其编程》实验课记录(二)
实验 2:获取对使用命令的帮助 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统.有另外一个无特权用户 student,密码 student ...
- 《linux系统及其编程》实验课记录(六)
实验 6:Linux 文件系统 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统.有另外一个无特权用户 student,密码 student ...
- 《linux系统及其编程》实验课记录(四)
实验4:组织目录和文件 实验目标: 熟悉几个基本的操作系统文件和目录的命令的功能.语法和用法, 整理出一个更有条理的主目录,每个文件都位于恰当的子目录. 实验背景: 你的主目录中已经积压了一些文件,你 ...
随机推荐
- javascript:void(0)和onclick=fn(this)
今天在写代码中遇到一个这样的问题.关于点击在html中添加点击事件,顺便把this对象通过参数传过去. <a href='#' \>查看详情</a> <a href='j ...
- oracle中如何设置主键并且让其自动增长
由于oracle中是没有自动增长的的,需要自己去进行写触发器等方式去进行设置: 找了一下他人写的,有两种方法可以设置主键,一种是自增长主键,另一种就是生成唯一序列. 一.自增长主键 我创建一个用户的信 ...
- Linux平台Boost的编译方法
本博客(http://blog.csdn.net/livelylittlefish)贴出作 者(三二一@小鱼)相关研究.学习内容所做的笔记,欢迎广大朋友指正! Linux平台Boost的编译方法 Bo ...
- Java注解总结
注解是Spring和Mybatis框架所大量使用的技术,要想掌握框架相关技术,注解是必须要掌握的. 掌握注解的优势: 1.能够读懂别人写的代码,特别是框架相关的代码. 2.本来可能需要很多配置文件,需 ...
- JavaScript 对象与数组参考大全
http://www.cnblogs.com/meil/archive/2006/06/28/437527.html本文列举了各种JavaScript对象与数组,同时包括对上述每一对象或数组所完成工作 ...
- 对C++对象内存模型造成的影响(类/对象的大小)
首先重新回顾一下关于类/对象大小的计算原则: 类大小计算遵循结构体对齐原则 第一个数据成员放在offset为0的位置 其它成员对齐至min(sizeof(member),#pragma pack(n) ...
- Linux:命令执行控制&&与||
1.&& 方式:command1 && command2 如果command1执行成功,则执行command2 2.|| 方式:command1 || command2 ...
- php实现aes加密类
php实现的aes加密类,代码中有使用方法. <?php //php aes加密类 class AESMcrypt { public $iv = null; public $key = null ...
- Docker 监控的一点想法
目前项目内部署了docker,于是涉及到关于监控的事情,参考一些经典实例以及一些自己的想法,总结一下思路. 1.关于监控的内容 监控宿主机本身 监控宿主机本身还是比较简单的,同其他服务器监控类似,对c ...
- 219. Insert Node in Sorted Linked List【Naive】
Insert a node in a sorted linked list. Example Given list = 1->4->6->8 and val = 5. Return ...