Linux修改⽤户所在组⽅法
usermod -g ⽤户组⽤户名
强⾏设置某个⽤户所在组
usermod -G ⽤户组⽤户名
把某个⽤户改为 group(s)
usermod -a -G ⽤户组⽤户名
把⽤户添加进⼊某个组(s)
附usermod使⽤说明:
功能说明:修改⽤户帐号。
语  法:usermod [-LU][-c <;备注>][-d <;登⼊⽬录>][-e <;有效期限>][-f <;缓冲天数>][-g <;组>][-G <;组>][-l <;帐号名称>][-s <shell>][-u <uid>][⽤户帐号]
补充说明:usermod可⽤来修改⽤户帐号的各项设定。
参  数:
 -c<;备注>  修改⽤户帐号的备注⽂字。
 -d登⼊⽬录>  修改⽤户登⼊时的⽬录。
 -e<;有效期限>  修改帐号的有效期限。
 -f<;缓冲天数>  修改在密码过期后多少天即关闭该帐号。
 -g<;组>  修改⽤户所属的组。
 -G<;组>  修改⽤户所属的附加组。
 -l<;帐号名称>  修改⽤户帐号名称。
 -L  锁定⽤户密码,使密码⽆效。
 -s<shell>  修改⽤户登⼊后所使⽤的shell。
 -u<uid>  修改⽤户ID。
 -U  解除密码锁定。—————————————————————————————————————————————————————————————————————————————————————————useradd、su、whoami、exit、userdel
# 使⽤ls查看/home,发现只有zou123⼀个⽤户
zou123@zq:~$ ls /home
zou123
# 使⽤useradd添加⼀个新⽤户,取名为user1,-m 表⽰同时创建家⽬录
zou123@zq:~$ sudo useradd user1 -m
[sudo] zou123 的密码:
# 再次查看/home下的⽂件,发现多了⼀个新⽤户,还可以 cat /etc/passwd 查看⽤户是否真的成功添加
zou123@zq:~$ ls /home
user1  zou123
# 给新⽤户添加密码
zou123@zq:~$ sudo passwd user1
输⼊新的 UNIX 密码:
重新输⼊新的 UNIX 密码:
passwd:已成功更新密码
# 切换⽤户,通过su切换⽤户,- 表⽰切换账户同时,切换到家⽬录
zou123@zq:~$ su - user1
密码:
# 通过whoami查看,该⽤户是谁
user1@zq:/home/zou123$ whoami
user1
# 退出该⽤户,回到进⼊该⽤户之前的⽤户,若是最开始的⽤户,则退出终端
user1@zq:/home/zou123$ exit
exit
# 可以看出已经切回原⽤户
zou123@zq:~$ whoami
zou123
# 删除⽤户 -r 表⽰删除⽤户user,其家⽬录及⽂件⼀并删除,如果没有 -r 只删除⽤户,不删除家⽬录
zou123@zq:~$ sudo userdel -r user1
userdel: user1 邮件池 (/var/mail/user1) 未到
# 再查看/home 发现user1已经被删除
zou123@zq:~$ ls /home
zou123
切换为超级管理员(并不是所有⽤户⾓⾊都有这个权限,使⽤ useradd 创建的⽤户貌似就没有)
sudo -s
# 切换为超级管理员
zou123@zq:~$ sudo -s
# 当进⼊root,操作符从 ~$ 变成了~#
root@zq:~#
# 使⽤whoami查看当前⽤户
root@zq:~# whoami
root
# 原来需要加sudo才能做得事情,现在不需要再加 sudo,现在⾃⼰就是最⾼权限
root@zq:~# useradd user2 -m
root@zq:~# ls /home
user2  zou123  zzz
root@zq:~# userdel -r user2
root@zq:~# ls /home
zou123  zzz
# 退出root,退回到进⼊之前的⽤户
root@zq:~# exit
exit
zou123@zq:~$
groupadd、groupdel、chgrp、chown
# 添加⼀个新的组,命名为g1
zou123@zq:~/Desktop/Console$ sudo groupadd g1
# 输⼊ cat /etc/group 查看所有组
zou123@zq:~/Desktop/Console$ cat /etc/group
root:x:0:
......
zou123:x:1000:
zzz:x:1001:
g1:x:1002:
# 查看当前的⽂件
zou123@zq:~/Desktop/Console$ ll
.
.....
# 第⼀个zou123是拥有者,第⼆个zou123是组
-rw-rw-r-- 1 zou123 zou123 2180 Dec 23 15:
# 修改⽂件的组,sudo chgrp 组名⽂件,若是root则不⽤ sudo,chgrp(change group)
zou123@zq:~/Desktop/Console$ sudo chgrp
zou123@zq:~/Desktop/Console$ ll
......
-rw-rw-r-- 1 zou123 g1    2180 Dec 23 15:
# 修改⽂件的拥有者,sudo chown ⽤户⽂件
zou123@zq:~/Desktop/Console$ sudo chown
zou123@zq:~/Desktop/Console$ ll
.
.....
-rw-rw-r-- 1 zzz    g1    2180 Dec 23 15:
# 删除指定组g1
zou123@zq:~/Desktop/Console$ sudo groupdel g1
—————————————————————————————————————————————————————————————————————————————————————————在关键时刻听从⾃⼰内⼼的声⾳!
订阅
随笔 - 981  ⽂章 - 0  评论 - 232  阅读 - 1033万
linux 中更改⽤户权限和⽤户组的命令实例;
增加权限给当前⽤户 chmod +wx filename
chmod -R 777 /upload
⽤户组 chgrp -R foldname zdz
chown -R  所有者⽤户名.组名⽂件夹名称
例如:chown -R  inx KooBox
命令详解直接搜索就很多了,这⾥不多说了。
================================
语法:chmod [who] [+ | - | =] [mode] ⽂件名
命令中各选项的含义为
u 表⽰“⽤户(user)”,即⽂件或⽬录的所有者。
g 表⽰“同组(group)⽤户”,即与⽂件属主有相同组ID的所有⽤户。
o 表⽰“其他(others)⽤户”。
a 表⽰“所有(all)⽤户”。它是系统默认值。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表⽰的权限可⽤下述字母的任意组合:
r 可读。
w 可写。
x 可执⾏。
X 只有⽬标⽂件对某些⽤户是可执⾏的或该⽬标⽂件是⽬录时才追加x 属性。
s 在⽂件执⾏时把进程的属主或组ID置为该⽂件的⽂件属主。⽅式“u+s”设置⽂件的⽤户ID位,“g+s”设置组ID位。
t 保存程序的⽂本到交换设备上。
u 与⽂件属主拥有⼀样的权限。
g 与和⽂件属主同组的⽤户拥有⼀样的权限。
o 与其他⽤户拥有⼀样的权限。
实例
修改⽂件可读写属性的⽅法
例如:把index.html ⽂件修改为可写可读可执⾏:
chmod 777 index.html
要修改⽬录下所有⽂件属性可写可读可执⾏:
chmod 777 *.*
把⽂件夹名称与后缀名⽤*来代替就可以了。
⽐如:修改所有htm⽂件的属性:
chmod 777 *.htm
修改⽂件夹属性的⽅法
把⽬录 /images/small 修改为可写可读可执⾏
chmod 777 /images/small
修改⽬录下所有的⽂件夹属性
chmod 777 *
把⽂件夹名称⽤*来代替就可以了
要修改⽂件夹内所有的⽂件和⽂件夹及⼦⽂件夹属性为可写可读可执⾏
chmod -R 777 /upload
总结linux下⽬录和⽂件的权限区别
⽂件:读⽂件内容(r)、写数据到⽂件(w)、作为命令执⾏⽂件(x)。
⽬录:读包含在⽬录中的⽂件名称(r)、写信息到⽬录中去(增加和删除索引点的连结)、搜索⽬录(能⽤该⽬录名称作为路径名去访问它所包含的⽂件和⼦⽬录)
具体说就是:
(1)有只读权限的⽤户不能⽤cd进⼊该⽬录:还必须有执⾏权限才能进⼊。
(2)有执⾏权限的⽤户只有在知道⽂件名,并拥有读权利的情况下才可以访问⽬录下的⽂件。
(3)必须有读和执⾏权限才可以ls列出⽬录清单,或使⽤cd命令进⼊⽬录。
(4)有⽬录的写权限,可以创建、删除或修改⽬录下的任何⽂件或⼦⽬录,即使使该⽂件或⼦⽬录属于其他⽤户也是如此。
查看⽬录权限
查看⽂件权限的语句:
  在终端输⼊:
ls - (是⽂件名)
  那么就会出现相类似的信息,主要都是这些:
-rw-rw-r--
  ⼀共有10位数
  其中:最前⾯那个 - 代表的是类型
  中间那三个 rw- 代表的是所有者(user)
  然后那三个 rw- 代表的是组(group)
  最后那三个 r-- 代表的是其他⼈(other)
  然后我再解释⼀下后⾯那9位数:
  r 表⽰⽂件可以被读(read)
  w 表⽰⽂件可以被写(write)
  x 表⽰⽂件可以被执⾏(如果它是程序的话)
  - 表⽰相应的权限还没有被授予
  现在该说说修改⽂件权限了
  在终端输⼊:
  chmod o
  表⽰给其他⼈授予写这个⽂件的权限
  chmod
  表⽰删除中组和其他⼈的读和写的权限
  其中:
  u 代表所有者(user)
  g 代表所有者所在的组(group)
  o 代表其他⼈,但不是u和g (other)
  a 代表全部的⼈,也就是包括u,g和o
  r 表⽰⽂件可以被读(read)
  w 表⽰⽂件可以被写(write)
  x 表⽰⽂件可以被执⾏(如果它是程序的话)
  其中:rwx也可以⽤数字来代替
  r ------------4
  w -----------2
  x ------------1
  - ------------0密码修改
  ⾏动:
  表⽰添加权限
  - 表⽰删除权限
  = 表⽰使之成为唯⼀的权限
  当⼤家都明⽩了上⾯的东西之后,那么我们常见的以下的⼀些权限就很容易都明⽩了:
  -rw------- (600) 只有所有者才有读和写的权限
  -rw-r--r-- (644) 只有所有者才有读和写的权限,组和其他⼈只有读的权限
  -rwx------ (700) 只有所有者才有读,写,执⾏的权限
  -rwxr-xr-x (755) 只有所有者才有读,写,执⾏的权限,组和其他⼈只有读和执⾏的权限
  -rwx--x--x (711) 只有所有者才有读,写,执⾏的权限,组和其他⼈只有执⾏的权限
  -rw-rw-rw- (666) 每个⼈都有读写的权限
  -rwxrwxrwx (777) 每个⼈都有读写和执⾏的权限————————————————————————————————————————————————————————————————————————————————————————
查⽂件
find ./ -type f
查⽬录
find ./ -type d
查名字为test的⽂件或⽬录
find ./ -name test
查名字符合正则表达式的⽂件,注意前⾯的‘.*’(查到的⽂件带有⽬录)
find ./ -regex .*so.*\.gz
查⽬录并列出⽬录下的⽂件(为到的每⼀个⽬录单独执⾏ls命令,没有选项-print时⽂件列表前⼀⾏不会显⽰⽬录名称)
find ./ -type d -print -exec ls {} \;
查⽬录并列出⽬录下的⽂件(为到的每⼀个⽬录单独执⾏ls命令,执⾏命令前需要确认)
find ./ -type d -ok ls {} \;
查⽬录并列出⽬录下的⽂件(将到的⽬录添加到ls命令后⼀次执⾏,参数过长时会分多次执⾏)
find ./ -type d -exec ls {} +
查⽂件名匹配*.c的⽂件
find ./ -name \*.c
打印test⽂件名后,打印test⽂件的内容
find ./ -name test -print -exec cat {} \;
不打印test⽂件名,只打印test⽂件的内容
find ./ -name test -exec cat {} \;
查⽂件更新⽇时在距现在时刻⼆天以内的⽂件
find ./ -mtime -2
查⽂件更新⽇时在距现在时刻⼆天以上的⽂件
find ./ -mtime +2
查⽂件更新⽇时在距现在时刻⼀天以上⼆天以内的⽂件
find ./ -mtime 2
查⽂件更新⽇时在距现在时刻⼆分以内的⽂件
find ./ -mmin -2
查⽂件更新⽇时在距现在时刻⼆分以上的⽂件
find ./ -mmin +2
查⽂件更新⽇时在距现在时刻⼀分以上⼆分以内的⽂件
find ./ -mmin 2
查⽂件更新时间⽐⽂件abc的内容更新时间新的⽂件
find ./ -newer abc
查⽂件访问时间⽐⽂件abc的内容更新时间新的⽂件
find ./ -anewer abc
查空⽂件或空⽬录
find ./ -empty
查空⽂件并删除
find ./ -empty -type f -print -delete
查权限为644的⽂件或⽬录(需完全符合)
find ./ -perm 664
查⽤户/组权限为读写,其他⽤户权限为读(其他权限不限)的⽂件或⽬录find ./ -perm -664
查⽤户有写权限或者组⽤户有写权限的⽂件或⽬录
find ./ -perm /220
find ./ -perm /u+w,g+w
find ./ -perm /u=w,g=w
查所有者权限有读权限的⽬录或⽂件
find ./ -perm -u=r
查⽤户组权限有读权限的⽬录或⽂件
find ./ -perm -g=r
查其它⽤户权限有读权限的⽬录或⽂件
find ./ -perm -o=r
查所有者为lzj的⽂件或⽬录
find ./ -user lzj
查组名为gname的⽂件或⽬录
find ./ -group gname
查⽂件的⽤户ID不存在的⽂件
find ./ -nouser
查⽂件的组ID不存在的⽂件
find ./ -nogroup
查有执⾏权限但没有可读权限的⽂件
find ./ -executable \! -readable
查⽂件size⼩于10个字节的⽂件或⽬录
find ./ -size -10c
查⽂件size等于10个字节的⽂件或⽬录
find ./ -size 10c
查⽂件size⼤于10个字节的⽂件或⽬录
find ./ -size +10c
查⽂件size⼩于10k的⽂件或⽬录
find ./ -size -10k
查⽂件size⼩于10M的⽂件或⽬录
find ./ -size -10M
查⽂件size⼩于10G的⽂件或⽬录
find ./ -size -10G
分类: