shell文件安全与权限 笔记
主要学习: 文件盒目录的权限
Setuid
Chown和chgrp
Umask
连接符号
一个文件已经创建,就具有三种访问方式
读,可以显示该文件的内容
写,可以编辑或删除它
执行,如果该文件时一个shell脚本或者是程序
按照所针对的用户,文件的权限可以分为三类
文件属主,就是创建该文件的用户
同组用户,拥有该文件的用户组中的任何用户
其他用户,即不属于拥有该文件的用户组的某一用户
1.1文件
当创建一个文件时,保存的信息有:文件的位置,文件的类型,文件的长度,文件的访问权限,i节点,文件的修改时间,文件的权限位。
[root@localhost software]# ls -l
Total 2229516 :告诉我们该目录中所有文件所占的空间
drwxrwxr-x 8 oracle oinstall 4096 2009-08-18 database
drwxrwxr-x 2 oracle oinstall 4096 08-29 18:12 jdk for linux
-rwxrwxr-x 1 oracle oinstall 1285396902 08-29 19:00 linux_11gR2_database_1of2.zip
-rwxrwxr-x 1 oracle oinstall 995359177 08-29 19:07 linux_11gR2_database_2of2.zip
以第一个为例
drwxrwxr-x :权限位
8 :该文件硬链接的数目
Oracle 文件的属主
Oinstall文件的属住oracle所在的组。
4096:文件的长度,不是K
2009-08-18: 修改的日期
Database:文件名
1.2 文件类型
文件有7中类型。可以从文件为来判断
d:目录
l:符号链接
s套接字文件
b块设备文件
c 字符设备文件
p命名管道文件
-普通文件
1.3权限
使用]# touch myfile创建一个文件
结果
-rw-r--r-- 1 root root 0 08-29 23:05 myfile
第一位 文件位,普通文件
rw-文件的属主权限
r—文件的属住oracle所在的组用户权限
r—其他用户权限
改变权限位,可以使用chmod
Chmod 命令,语法
Chmod [who] operator [permission] filename
Who:取值为
u文件属主权限 g同组用户权限 o其他用户权限
a所有用户
operator
+ 增加权限 –取消权限 =设定权限
Permission的含义
r读权限 w写权限 x执行权限 s文件属主和组set_ID
t粘性位 l给文件枷锁,是其他用户无法访问。
绝对模式:
Chmod [mode] file
1.4 目录
r:可以列出该目录中的文件
w:可以在该目录中创建或删除文件
x:可以搜索或进入目录
1.5 suid/guid
Suid意味着如果某个用户对属于自己的shell脚本设置了这种权限,那么其他用户在执行这个脚本时也会具有其属主的相应权限。
# chmod 4741 myfile
-rwsr----x 1 root root 0 08-29 23:30 myfile
1.6 chown chgrp
在改变一个文件的所有权的时候,相应的suid也将被清除,这是出于安全考虑。
Chown命令的一般形式:
Chown –R –h owner file
1.7 umask
Umask命令确定了创建文件的缺省模式。是在/etc/profile中设置。
例: 对于umask002
文件的最大权限是 777
也就是目录权限为775 即 rwx rwx r-x
文件权限 rw- rw- r—文件创建时没有可执行权限,需要自己使用chmod改变
也就是说umask就是要从权限中拿走的权限。
重用的umask值
在设置umask命令之前一定要清楚知道到底希望具有什么样额的文件创建缺省权限。
1.8 符号链接
ln [-s] source_path target_path
其中的路径可以是目录也可以是文件。这样不同用户在自己的¥home目录中的文件可以指向同一个文件,这样值需要修改一个文件。不用去每个用户的home 目录下去修改
shell文件安全与权限 笔记的更多相关文章
- Linux 与 unix shell编程指南——学习笔记
第一章 文件安全与权限 文件访问方式:读,写,执行. 针对用户:文件属主,同组用户,其它用户. 文件权限位最前面的字符代表文件类型,常用的如 d 目录:l 符号链 ...
- LINUX SHELL脚本攻略笔记[速查]
Linux Shell脚本攻略笔记[速查] 资源 shell script run shell script echo printf 环境变量和变量 pgrep shell数学运算 命令状态 文件描述 ...
- 【链接】LINUX SHELL脚本攻略笔记[速查]
LINUX SHELL脚本攻略笔记[速查]
- 写shell脚本速查笔记
linux shell脚本的语法蛋疼,而且对于java开发人员来说又不常用,常常是学了一次等到下次用的时候又忘记了.因此制作这个速查笔记,用于要写shell脚本时快速回忆&速查. 获取当前脚本 ...
- shell脚本学习积累笔记(第一篇)
(1)首先,今天在执行shell脚本./test.sh时抛出“/bin/sh^M: bad interpreter: No such file or directory”的异常,百度后,才知道这是由于 ...
- shell 其他杂项知识点笔记
// 其他杂项知识点 对于普通用户,Base shell 默认的提示符是美元符号$:对于超级用户(root 用户),Bash Shell 默认的提示符是井号# ------- \#!是一个约定的标记, ...
- Shell脚本的学习笔记一:变量
三种变量: 局部变量:局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量. 环境变量:所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需 ...
- Shell高级编程学习笔记(基础篇)
目录 1.shell脚本的执行方法 2.shell的变量类型 3.shell特殊变量 4.变量子串的常用操作 5.批量修改文件名实践 6.变量替换 7.在shell中计算字符串长度的方法 ...
- Shell脚本编程基础笔记一
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/8176137.html 一:脚本文件的创建.格式.运行 1:创建shell脚本 首先,要创建一个文件 touch ...
随机推荐
- HtmlEncode
String.prototype.toHtmlEncode = function() { var str = this; str=str.replace("&"," ...
- Hadoop1的安装
目前hadoop1的稳定版本是1.2.1,我们以版本1.2.1为例详细的介绍hadoop1的安装,此过程包括OS安装与配置,JDK的安装,用户和组的配置,这些过程在hadoop2也有可能用到. Had ...
- 标C编程笔记day05 函数声明、文件读写、联合类型、枚举类型
函数声明: 1.隐式声明:在没有声明的情况下,系统可依据參数类型推断去调用函数(有可能出错) 2.显式声明:声明在被调用之前.如:double add(double,double); ...
- 关于sqlSessionTemplate
SqlSessionTemplate是MyBatis-Spring的核心.这个类负责管理MyBatis的SqlSession,调用MyBatis的SQL方法,翻译异常.SqlSessionTempla ...
- Http服务器实现文件上传与下载(一)
一.引言 大家都知道web编程的协议就是http协议,称为超文本传输协议.在J2EE中我们可以很快的实现一个Web工程,但在C++中就不是非常的迅速,原因无非就是底层的socket网络编写需要自己完成 ...
- JZOJ.3769【NOI2015模拟8.14】A+B
Description 对于每个数字x,我们总可以把它表示成一些斐波拉切数字之和,比如8 = 5 + 3, 而22 = 21 + 1,因此我们可以写成 x = a1 * Fib1 + a2 * F ...
- JZOJ.3777【NOI2015模拟8.17】最短路(shortest)
Description 小Y最近学得了最短路算法,一直想找个机会好好练习一下.话虽这么说,OJ上最短路的题目都被他刷光了.正巧他的好朋友小A正在研究一类奇怪的图,他也想凑上去求下它的最短 ...
- Jmeter - 分布式部署负载机
1. 原理图: 2.具体操作 ① 负载机 安装JDK.Jmeter[版本与Controller 调度机一致] ② 配置环境变量 ③ 负载机自定义端口号 a.进入Jmeter的bin目录,找到Jmete ...
- 【BZOJ1511】[POI2006]OKR-Periods of Words next数组
[BZOJ1511][POI2006]OKR-Periods of Words Description 一个串是有限个小写字符的序列,特别的,一个空序列也可以是一个串. 一个串P是串A的前缀, 当且仅 ...
- 【BZOJ3207】花神的嘲讽计划Ⅰ Hash+主席树
[BZOJ3207]花神的嘲讽计划Ⅰ Description 背景 花神是神,一大癖好就是嘲讽大J,举例如下: “哎你傻不傻的![hqz:大笨J]” “这道题又被J屎过了!!” “J这程序怎么跑这么快 ...