实验 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系统及其编程》实验课记录(五)的更多相关文章

  1. Linux系统初学-第三课 Linux网络配置1

    Linux系统初学-第三课 Linux网络配置 1.动态IP配置 配置文件路径 /etc/sysconfig/network-scripts/ ls查看网卡eth0,其中HWADDR值得获取:ifco ...

  2. Linux 系统应用编程——进程基础

    一.Linux下多任务机制的介绍 Linux有一特性是多任务,多任务处理是指用户可以在同一时间内运行多个应用程序,每个正在执行的应用程序被称为一个任务. 多任务操作系统使用某种调度(shedule)策 ...

  3. 云服务器--linux系统操作命令以及安装ngnix记录,以及手动部署本地文件

    1.控制台登陆服务器,需要首先知道服务器ip和密码,,命令是 ssh root@1.1.1.1(服务器IP),然后输入密码登入服务器 2.查看linux 版本的系统命令是 cat /etc/redha ...

  4. linux系统串口编程实例

    在嵌入式开发中一些设备如WiFi.蓝牙......都会通过串口进行主机与从机间通信,串口一般以每次1bit位进行传输,效率相对慢. 在linux系统下串口的编程有如下几个步骤,最主要的是串口初始化! ...

  5. Linux系统shell编程自学_第一章基础

    第一章 基础shell的优势在于处理操作系统底层的业务,Python,php的优势在于开发运维工具,web界面的管理工具以及web业务开发.处理一键安装.优化.报警脚本shell又叫命令解释器,它能识 ...

  6. 《linux系统及其编程》实验课记录(一)

    实验 1:登录和使用基本的 Linux 命令 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统. 有另外一个无特权用户 student,密码 ...

  7. 《linux系统及其编程》实验课记录(二)

    实验 2:获取对使用命令的帮助 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统.有另外一个无特权用户 student,密码 student ...

  8. 《linux系统及其编程》实验课记录(六)

    实验 6:Linux 文件系统 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统.有另外一个无特权用户 student,密码 student ...

  9. 《linux系统及其编程》实验课记录(四)

    实验4:组织目录和文件 实验目标: 熟悉几个基本的操作系统文件和目录的命令的功能.语法和用法, 整理出一个更有条理的主目录,每个文件都位于恰当的子目录. 实验背景: 你的主目录中已经积压了一些文件,你 ...

随机推荐

  1. cpu_test

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  2. Intellij IDEA 14使用maven3.3.3 问题

    Intellij IDEA 14使用maven3.3.3报错: -Dmaven.multiModuleProjectDirectory system propery is not set. Check ...

  3. sqlserver学习笔记(六)—— sqlserver内置函数(字符串、日期)

    sqlserver中有很多内置函数,这里总结了一些常用的 一.关于字符串的函数: 1.CHARINDEX 寻找一个指定字符串在另一个字符串中的起始位置 SELECT CHARINDEX('world‘ ...

  4. C语言错误处理方法、C++异常处理方法(throw, try, catch)简介

    一.C语言错误处理方法 1.返回值(if … else语句判断错误) 2.errno(linux 系统调用) 3.goto语句(函数内局部跳转) 4.setjmp.longjmp(Do not use ...

  5. 怎样给ExecutorService异步计算设置超时

    ExecutorService接口使用submit方法会返回一个Future<V>对象.Future表示异步计算的结果.它提供了检查计算是否完毕的方法,以等待计算的完毕,并获取计算的结果. ...

  6. C++多态有哪几种方式?

    C++多态方式: (1)静态多态(重载,模板) 是在编译的时候,就确定调用函数的类型. (2)动态多态(覆盖,虚函数实现) 在运行的时候,才确定调用的是哪个函数,动态绑定.运行基类指针指向派生类的对象 ...

  7. Laravel Eloquent ORM--整理(未转)

    转:http://blog.csdn.net/a437629292/article/details/46312695 http://www.jianshu.com/p/cb641a4f3599

  8. 【Material Design视觉设计语言】应用布局设计

    [Material Design视觉设计语言]章节列表 [Material Design视觉设计语言]开篇 [Material Design视觉设计语言]Material Design设计概述 [Ma ...

  9. 关于.net 2.0 remoting 中 TCP Channel 用户认证探讨(一)

    http://www.cnblogs.com/scucj/archive/2007/05/09/740808.html

  10. HotSpot模板解释器目标代码生成过程源码分析

    虽然说解释执行模式是逐字逐句翻译给目标平台运行的,但这样的过程未免太过缓慢,如果能把字节码说的话做成纸条,运行时只要把对应的纸条交给目标平台就可以了,这样,执行速度就会明显提升.JVM的Hotspot ...