linux --> shell --> passwd,SUID,SGID,SBIT

来源:互联网 发布:知秋的意思 编辑:程序博客网 时间:2024/06/13 19:53
linux下的shell命令学习笔记005

# --------------------------------------
# 有关于用户密码的问题
# 1.root模式下
# passwd #修改root的密码
# passwd aston #修改用户aston的密码
# 2.用户模式下
# passwd#修改该用户的密码


# su alex #切换为alex用户
#若从root下,则直接切换到相应用户下
#若从其他用户(如aston),则还需要输入alex的密码
#
#注:若初始用户没有密码,则用su从另一个用户切换时
#密码输入什么都会报错,此时先用root给该用户指定密码
# ---> 关于备注中的问题,我目前是这样做的。不知道
# ---> 是否还有其他方法。使得不用设置密码也可以?




# --------------------------------------
# #当程序在运行中
# Ctrl + c #退出进程
# Ctrl + z #挂起,进程进入后台
#
# #在shell中
# Ctrl + d #发送EOF(我现在用到的)退出root,回到普通用户模式
# --------------------------------------
# #此处简单介绍下和进程有关的:
# & -> 用在命令之后,直接将命令放在后台执行
# Ctrl + z -> 见上
# jobs -> 显示当前有多少个后台运行的命令
# fg -> 将后台的命令调至前台继续执行foregroud
# bg -> 让后台挂起,在后台继续执行backgroud
#
# ps
# kill






# --------------------------------------
# 此处有对SUID,SGID,SBIT做了详细的了解
# 1.SUID
# 实际应用:
# /usr/bin/passwd 属性 -rwsr-xr-x 
# /etc/shadow 属性 -r-------- 1 root root 
# 实际情况都知道,在任何用户下都可以修改自己的密码、
# 这便是SUID在起作用
# a.SUID 对二进制程序(binary program)有效。(shell script不行) 
# b.执行者需要有该程序的x权限
# c.该权限仅仅在程序过程中有效(run-time)
# d. --> 执行者会拥有该程序所有者(owner)的权限
#
# 2.SGID 
# 实际应用:
# #针对文件:
# /usr/bin/locate 属性 -rwx--s--r 1 root slocate ...
# /usr/lib/mlocate/mlocate.db 属性-rw-r----- 1 root slocate ...
# a.SGID 对二进制程序有效
# b.程序执行者对程序有x权限
# c.执行者在执行期间,会获得该程序用户组的支持
#
# #针对目录
# (见“实践”item001(这个例程是针对目录))
# a.用户若对此目录拥有r和x权限,则用户可以进入该目录
# b.用户在次目录下的有效用户组(effective group)将会变成该目录的用户组
# c.若用户在此目录下具有w权限,则用户所创建的新文件的用户组和该目录的用户组一致
#
# 3.Sticky Bit (仅支持目录;文件没有效果)
# 实际应用:
# user_share目录  属性:drwxrwxrwt 
# a.当用户对此目录有w和x的权限
# b.某用户创建的文件,仅仅可以root和其自身可以删除,移动,重命名等操作
#