·硬链接,软链接区别
大小 | 链接数 | 设备,分区 | 类型 | |
硬连接 | 一样大,显示的是本身的大小 | 会增加 | 不能跨分区 | 是一个文件,相同inode号,忘了位置可通过inode号找到源文件 |
软链接 | 不一样大,链接文件大小是路径的大小 | 不会增加 | 可以跨分区,跨设备 | 两个文件,不同inode号,像发小广告,忘了源连接,文件就找不到了 |
软链接格式:ln -s +绝对路径或相对路径(相对于软连接的路径) + 连接文件路径
硬链接格式:ln + 相对源文件路径可以,相对后面连接文件也可以,因为链接不是根据路径找的,而是根据inode号找的+ 连接文件
·一个文件的创建会带来4个文件的修改,还有家目录和邮箱(/var/spool/mail)
·创建用户时的默认信息是调用/etc/default/useradd的,可用cat查看,查看效果等同于 useradd -D
·创建用户时,会自动建家目录,而且家目录中还有内容,是因为调用了/etc/skel模板
·/etc/passwd
用户名:密码:UID:GID:注释信息:家目录:shell类型
·/etc/shadow
用户名:密码:最后一次修改密码时间:最短密码有效期:最长密码有效期:警告时间:过 期后宽限时间:账户有效期
·/etc/gshadow
组名:密码:组管理员:组成员
·用户属性修改
usermod [OPTION] login
-aG:保留原来的附加组,并添加新的附加组 usermod -aG root,nodody laoli
清空附加组:usermod -G “ ” laoli
-u UID: 新UID
-g GID: 新基本组
-G :新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a 选项
-s SHELL :新的默认SHELL
-c 'COMMENT' :新的注释信息
-d HOME: 新家目录不会自动创建,原家目录中的文件不会同时移动至新的家目录;若要创建新家目录并移动原家数据,同时使用-m 选项
-l login_name: 新的名字
-L: lock 指定用户, 在/etc/shadow 密码栏的增加 !
-U: unlock 指定用户,将 将 /etc/shadow 的 密码栏的 ! 拿掉
-e YYYY-MM-DD: 指明用户账号过期日期;
-f INACTIVE: 设定非活动期限
例:
修改user1用户的一些相关信息:usermod -u 600 -g 600 -Ga(追加附加组) user2 -s /bin/csh -dm /tmp/user2
查看用户有几个附加组用groups
扩展技巧:拷贝/etc/skel下的所有目录来恢复家目录
cp -r /etc/skel/. /tmp/user1
·userdel:删除用户userdel [OPTION]… Login:默认不删家目录,是好事,因为只删用户,用户的内容还保留
-r: 删除用户家目录
·查看用户相关的ID 信息
id [OPTION]… [USER]
-u:显示用户id号
-n:显示用户名(要配合-u使用,显示用户名)
-g:显示组id号(同样要配合-u使用,显示组名)
-G:显示附加组
·su:切换用户
su UserName :非登录式切换(而不是登陆 ,who am i测试),即不会读取目标用户的配置文件,不改变当前工作目录
su – UserName :登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换
· root su 至其他用户无须密码;非root 用户切换时需要密码
·换个身份执行命令:
su [-] UserName -c 'COMMAND' 例wu$ su – root -c ‘pwck’ 一条命令执行三条命令,执行完又退回到wu用户了
·设置口令:passwd
-l: 锁定指定用户 相当于usermod – l(加两个!!双保险,用usermod解也是解一个)
-u: 解锁指定用户 相当于usermod – U(用usermod解也是解一个)
-uf;强行解锁
-e: 强制用户下次登录修改密码,相当于shadow第三项为0
等同于chage -d ·下一次登录强制重设密码chage -d 0 tom
-n mindays: 指定最短使用期限 等同于chage -m
-x maxdays :最大使用期限 等同于chage -M
-w warndays :提前多少天开始警告 等同于chage -W
-i inactivedays :非活动期限; 等同于chage -i
–stdin :从标准输入接收用户密码;(适合编脚本)
echo " PASSWORD " | passwd –stdin USERNAME
另一种改密码方法:echo xixi:123.com | chpasswd
·chage修改用户密码策略 [OPTION]… LOGIN(影响 某一个账号)
-E, 最长密码有效期 chage -E 2016-09-10 tom
–l ,显示密码策略 chage -l wu等同于getent shadow wu
-m:最短修改时间
-M:最长修改时间
-I:设置宽限时间
-W:警告时间
chage -m 0 –M 42 –W 14 –i 7 tom
可以不加任何选项,以交互的方式修改
chage user1
用户相关的其他命令扩展:
chfn:修改usermod 修改的是(useradd -c 说明信息)
chsh:修改shell 等同于usermod -s /bin/csh wu
finger 指定格式修改用户说明信息
·创建组,只改/etc/group和/etc/gshadow,不改:/etc/passwd和/etc/shadow
groupadd+选项+组名
-g GID: 指明GID 号;[GID_MIN, GID_MAX]
-r: 创建系统组;
CentOS 6: ID<500 CentOS 7: ID<1000
Groups wu :查看wu属于哪个组
Groupmems -l -g group1:查看groups1辅助组里有谁 例groupmems -l -g mail
·更改和查看组成员groupmems [options] [action]
-gl:查看有哪些用户属于xx组
-a指定用户加入组,追加用户(需要有-g选项)
-d从组中删除用户
-p从组中清除所有成员
-l显示组成员列表
·groups [OPTION].[USERNAME]… 查看用户所属组列表
·groupmod:修改组信息
-g:修改组id
-n:修改组名
·groupdel:删除组 groupdel + 组名
·gpasswd:更改组密码,gpasswd选项基本和group mems一样
·gpasswd + 组名 (修改方式是交互式的)
-a:添加用户到组 gpassed -a user1(用户) group1(组)
-d:删除组内一个用户
-A:将用户设置为管理员 gpasswd -A user group1
·newgrp 命令:临时切换基本组;
如果用户本不属于此组,则需要组密码
·文件权限
!!文件:
r: 可使用文件查看类工具获取其内容
w: 可修改其内容
x: 可以把此文件提请内核启动为一个进程
!!目录:一般都会给rx
r: 可以使用ls 查看此目录中文件列表
w:可在此目录中创建文件,也可删除此目录中的文件,如果只有w,没有x,也不能建,删
x: 可以使用ls -l 查看此目录中文件列表,可以cd 进入此
目录,读目录内文件内容,没有执行权限,目录内内容读不了
X:只给目录x 权限,不给文件x权限(本身没有x),但如果所有者本来就有x权限,ugo就都有x权限了 Chmod -R a+X /testdir/dir/ Chmod -R u=rwx /testdir/dir
·chmod:修改文件权限
1.授权修改:
chmod u=.. ,g=.. ,o=.. file1
chmod u+.. ,g+.. ,o+.. file1
或者chmod a=.. or a+.. file1
(..用rwx代替)
2.数值修改
chmod 777 file1
3.参考修改,
参考RFILE文件权限,将FILE 修改为同RFILE;chmod –reference f1 f2 参考f1的权限,把f2和f1改的一样
3.chown:修改文件的属主(只有root 可以改)
·chown 属主 文件名
也可以同时修改属主属组:[chown 属主:属组 文件名] chown user1:group1 file1
-R:表示递归修改
补充:chown user1: file1 这条命令表示将file1文件的属主属组同时改成user1
chown :group1 file1 这条命令表示将file1文件的属组改成group1,属主不变
·chgrp:修改文件的属组
-R:递归
chgrp group1 file1
·文件的权限
r: 可以ls
x:可以cd 读cat目录内文件内容
w:配合x能删能创建
递归给权限时X可以只给文件夹x权限,不给文件夹内文件的x权限
用数字表示权限
rwx:111 rw-:110等
补充说明:
a.只有root可以修改文件的属主,即使是文件的属主也不能修改文件属主
b.chgrp 文件的属组可以在属主的附加组内转换
权限设置
chgrp sales testfile 设置所属组是sales
chown root:admins testfile 设文件的属组为root属组为admins
chmod u+wx,g-r,o=rx file
hmod -R g+rwX /testdir
chmod 600 file
chown mage testfile
chown wangcai f1 只改文件所有者,所属组不变
chown wangcai: f1 属主属组都变
chown :ftp f1 只改属组,属主不变
新建文件和目录的默认权限
·umask值 可以用来保留在创建文件权限,从最大权限中屏蔽相应权限位,从而得出默认权限
·默认权限=最大权限-umask 文件:如果所得结果某位存在执行(奇数)权限,则将其权限+1 例子(umask=137 file=666-137=53-1 因为出现奇数,三位都+1,就成了640) 目录:不变
·新建FILE 权限: 666-umask ,linux默认对文件没有执行权限
·新建DIR 权限: 777-umask
·非特权用户umask是002
·root 的umask 是022
·umask: 查看默认umask值
·umask #: 设定 umask u=rw g=r o=rw
·umask 137
·umask –S 模式方式显示
·umask –p 输出可被调用 实际用法:umask -p >> ~/.bashrc
·默认值:
umask + 屏蔽权限位,例 umask 002,以上这种写法只是临时有效,永久生效:全局设置: /etc/bashrc 用户设 置:~/.bashrc
·文件的特殊权限:
1.suid:表示其他用户可以临时拥有[二进制文件]属主的执行权限 ,在属主的权限位的x位变成s位
chmod u+s file1,只能作用在二进制程序上
实例:/bin/passwd
拥有suid的文件要特别小心,它可以让其它用户拥有二进制文件的属主的权限
2.sgid:作用在二进制程序上,任何人(不一定是该组成员)执行该程序的时候将继承程序所属组的权限。作用在目录上,该目录内新建的文件或目录的所属组自动继承该目录的所属组,其他用户临时继承拥有了[二进制文件或者目录]的组的权限,在属组的权限位的x变成s
chmod g+s file1
实例:对于目录来说有2个用户属于目录的属组,那么他们所建立的文件的属组变为他们所在目录的属组
例:drwxrwsrwx user1 group1 dir1
user2和user3都属于group1那么他们所建立的文件的属组都为group1
若是other其他用户,那么需要看other是否又权限,如果有,那么他们所建的文件的属组依然是group1
3.sticky粘滞位:只能作用在目录上,具有写权限的目录通常用户可以删除该目录中的任何
文件,无论该文件的权限或拥有权,在目录设置Sticky 位,只有文件的所有者或root可以删除该文件,sticky 设置在文件上无意义
实例:/tmp/目录
·文件的特殊属性:
1. chattr:
+i:不能被删除改名,和修改 chattr +i file1
+a:只可以增加,不能删除 chattr +a file1
2.lsattr:查看文件的特定属性
·ACL访问控制列表:
1.setfacl:setfacl + 选项 + u/g/o : 用户名、组名 : 权限 + 文件
-m:增加
setfacl -m u:user1:rw file1
-x:删除权限
setfacl -x u:user1 file1
-b:清空所有acl权限
setfacl -b file1
-R:递归
setfacl -Rm g:group1:rwX dir1
-M:调用已经写好的文件的acl
1.echo “u:user1:rw” > acl.txt
2.setfacl -M acl.txt file1
-X:减去调用的文件
u前面加d
setfacl -m d:u:user1:rw dir1
表示在dir1 这个目录下用户user1所创建的文件默认有rw权限
2.mask:限制除所有者和other外的人
包括用acl允许的用户、组和文件本身的属组
setfacl -m mask::rw file1
原创文章,作者:wutianyou,如若转载,请注明出处:http://www.178linux.com/29378