linux的运维管理UNIT6

文件权限:
ls -ld /mnt/
drwxr-xr-x. 2 root root 6 Mar 13  2014 /mnt/
-|rwxr-xr-x.|2|root|root|6|Mar 13 2014|/mnt
— —————————— — ———— ———— — ——————————— ———
1     2      3  4     5  7      8       9
1:文件类型,不可修改
    -:文件
    d:目录(directory)
    l:链接文件(link)
    b:设备文件中的可供存储的接口设备(块:block)
    c:设备文件中的串行端口设备(键盘鼠标等一次性读取设备)(字符:character)
    s:套接字(sockets)
    p:管道(FIFO,pipe)
2:文件权限,可以修改
3:子目录个数
4:文件所有人,可以修改
5:文件所有组,可以修改
6:文件大小,即定事实不可修改
7:文件最后一次修改时间
8:文件名字,可以修改

问:执行rm -fr /mnt/*后查看那/mnt/目录的属性,为什么子文件个数还是2?
答:ls -a /mnt/会发现/mnt/目录中还有两个隐藏目录.和..

.表示当前目录
..表示当前目录的上级目录

chown username file|dir        ##更改文件或目录的所有人##
chown username:roupname file|dir    ##更改文件或目录的所有人以及所有组##
chown -R username dir        ##更改目录本身及里面所有内容的所有人(第归更改)##
chgrp -R groupname dir        ##更改目录本身及里面所有内容的所有组(第归更改)##

文件或目录的权限:
r(4):
    对文件:可以读取文件内容
    对目录:可以查看目录中的文件名或子目录名
w(2):
    对文件:可以写入文件内容
    对目录:可以添加删除目录中的文件或子目录
x(1):
    对文件:可以允许系统运行文件中的程序
    对目录:可以进入目录

修改权限:(-R表示第归修改)
chgrp:改变文件所属用户组
chown:改变文件所有者
chmod:改变文件的权限

如果把/mnt/westos/目录权限改成000,root用户能进入/mnt/westos,修改/mnt/westos的所有者为student,使用用户student进入/mnt/westos失败。student用户作为目录的所者不能进入是因为该目录对其所有者并没有开放权限,root用户可以进入该目录是因为root用户为系统管理者,至高无上。

从系统存在角度来讲,系统开放的权力越大,系统存在的意义就越高;从系统安全角度来讲,系统开放的权力越小,系统的安全性也就越高。所以系统设定新文件或目录时会去掉一些权限。
系统默认保留权限umask=022
文件默认权限为644(系统内核认为文件有可执行权力是不正常的,所以系统默认会去点文件的可执行权力)
目录默认权限为755

系统默认权限的设定:
临时设定:
umask        ##查看系统保留权限##
umask 077    ##更改系统保留权限为077##
永久设定:
vim /etc/bashrc        ##shell程序的配置文件
 70     if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
 71        umask 002    ##普通用户umask##
 72     else
 73        umask 022    ##超级用户umask##
 74     fi
 75
vim /etc/profile    ##系统程序的配置文件##
 59 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
 60     umask 002    ##普通用户umask##
 61 else
 62     umask 022    ##超级用户umask##
 63 fi
 64
source /etc/bashrc    ##使配置文件/etc/bashrc生效##
source /etc/profile    ##使配置文件/etc/profile生效##
注:永久设定时两个配置文件的umask必须统一

现在有一个满权限的目录/pub,任何用户都可以在该目录下随意的删除文件,对于文件安全性而言,这样就不合理了,
t权限(sticky:粘制位):只针对目录,使用户只能删除该目录下属于自己的文件或目录
t权限的添加方式:    chmod o+t /directory
(t=1)            chmod 1777 /directory
注,含t权限的目录属性为“drwxrwxrwt”当该目录为满权限时,各个用户才能在该目录下建立自己的目录文件,才需要保证每个用户只能删除自己的目录文件,所以有t权限的目录也是满权限。

更改一个二进制可执行文件的所有人为student,使用root用户运行该名令时,这个进程是root的;但是给该二进制可执行文件加上s权限,root用户再执行该命令时,这个进程就是student的了。
s权限(suid:冒险位):只针对二进制可执行文件,使文件内记录的程序产生的进程的所有人为文件所有人,与该进程的发起人无关
s权限的添加方式:    chmod u+s file
(suid=4)        chmod 4xxx file
应用:使该系统中的所有用户可以在任何位置建立文件
建立文件使用命令touch ----> touch命令的二进制文件为/bin/touch(执行which touch命令可以知道touch命令的二进制可执行文件在那里) ----> 执行chmod u+s /bin/touch命令;给touch的二进制可执行文件加上s权限后,任何用户执行touch命令时都会以root身份来执行

s权限(sgid:强制位):
    文件:只针对二进制可执行文件,使文件内记录的程序产生的进程的所有组为文件所有组,与该进程的发起组无关
    目录:当目录有了sgid权限后,任何用户组的用户在该目录下创建文件或目录最后都属于该目录的所有组
sgid的添加方式:    chmod g+s file|/directory
(sgid=2)        chmod 2xxx file|/firectory
个人感觉sgid是个很攻气的权限,不敢谁在该目录下创建目录或文件,最后都是我!

时间: 2024-07-30 13:32:23

linux的运维管理UNIT6的相关文章

linux的运维管理UNIT2

文件的寻址 绝对路径:文件在系统的真实位置,文件名字以"/"开头相对路径:文件相对与当前所在位置的一个名字的简写,这个名字不会以/开头,而且名字会自动添加pwd显示的值注:pwd        ##显示当前工作目录## ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

linux的运维管理UNIT4

####管理输入与输出#### 在linux系统中,正确输出编号为1,错误输出编号为2. 使用student用户执行find    /etc    -name    passed命令,因为student用户的权限问题会出现如下情况: [[email protected] Desktop]$ find /etc/ -name passwd find: '/etc/pki/CA/private': Permission denied        ##报错:没有权力进入## find: '/etc/

linux的运维管理UNIT1

UNIT1 虚拟机的控制:[[email protected] Desktop]$ rht-vmctl start desktop               ##开启虚拟机desktop##Starting desktop.                [[email protected] Desktop]$ rht-vmctl view desktop                ##显示虚拟机desktop## [[email protected] Desktop]$ rht-vmct

linux的运维管理UNIT5

用户及用户组的相关文件 当用户输入帐号密码时,系统处理了什么? 在 /etc/passwd文件中是否有该帐号---->读取该帐号对应的UID(/etc/passwd)和GID(/etc/group),同时将 该帐号的主文件夹与shell设置也一并读出来---->核对密码表:在/etc/shadow文件中找出对应的帐号与UID,然后核对密码是否正 确---->一切OK,则进入shell 控管的阶段 /etc/passwd [[email protected] Desktop]$ head 

linux日常运维管理

1.查看系统负载命令 w命令:主要查看cpu负载 load average:一分钟内负载 五分钟内负载 十五分钟内负载 负载跟cpu核心数有关,查看cpu核心数: # cat /proc/cpuinfo | grep 'processor' | wc -l uptime也可以显示cpu负载 2.vmstat命令 # vmstat 1 5 1代表每一秒显示一次,5代表显示五次 r列:表示一秒内运行的进程 b列:被阻塞的进程 swpd列:有多少数据被交换,单位是kb free列:剩余内存 buff列

linux的运维管理UNIT7

##################### 进程的定义 #####################触发任何一个事件时,系统都会将它定义成为一个进程,并且给予这个进程一个ID,称为PID.进程就是CPU未完成的工作*)区别程序和进程:程序---->通常为二进制程序放置在存储媒介中(如硬盘.光盘.软盘.磁带等),以物理文件的形式存在;进程---->程序被触发后,执行者的权限与属性.程序的程序代码与所需数据等都会被加载到内存中,操作系统并给予这个内存内的单元一个标识符(PID),可以说,进程就是一个

RedHat / Centos   Linux 系统运维与管理实践技巧荟萃,持续更新

RedHat / Centos   Linux  系统运维与管理实践技巧荟萃

Linux小课堂开课了(9)-Centos7日常运维管理

Centos7日常运维管理 1,查看系统配置,进程,I/O,网卡流量使用w可以查看系统的状态,当前时间,系统启动时间,登录用户,从哪个IP登录的,系统的负载值.使用uptime查看系统的负载值使用iptop,可以具体查看哪个进行使用的I/O较多,需要安装一下[[email protected] ~]# yum -y install iotop[[email protected] ~]# iotop使用cat /proc/cpuinfo查看系统配置使用vmstat可以查看CPU,内存,虚拟磁盘,交

linux 自动化运维之Cobbler

一.Cobbler 简介 1.Cobbler 概述 Cobbler由python语言开发,是对PXE和Kickstart以及DHCP的封装.融合很多特性,提供了CLI和Web的管理形式.更加方便的实行网络安装.同时,Cobbler也提供了API接口,使用其它语言也很容易做扩展.它不紧可以安装物理机,同时也支持kvm.xen虚拟化.Guest OS的安装.更多的是它还能结合Puppet等集中化管理软件,实现自动化的管理. 2.新旧对比 以前自动化安装系统得先设置一个网络环境,可是设置网络环境涉及到