linux查看hive账户权限,Linux用户和权限管理

1、用户

Linux用户分为两类:管理员和普通用户。

管理员:用户名为root,它几乎有行使一切命令的权限,一般情况下不建议使用root权限,因为Linux是不支持回收机制的。

比如:rm -rf /或rm -rf /*等.

普通用户:分为系统用户和登录用户

系统用户:仅用于服务运行程序,是系统为了满足服务运行所创建的内建用户,而且系统用户是不能登录的。

登录用户:指的是系统资源的正常使用者,大多数的用户都是此类。

那该怎么识别用户呢?Linux系统并不会直接认识“用户名”,而是通过用户的ID(UID),每一个用户都有自己的ID号,系统就是通过认识ID号来判断用户。

UID通常用16bits的二进制表示的,从0到65535,管理员的uid就是0,普通用户分为系统用户和登录用户,它们的UID表示为:

系统用户:对于centos5,6是从1-499,centos7是1-999.

登录用户:对于centos5,6是500开始,一般到65535,centos7是1000开始,一般到65535.

我们登录系统是通过username,而系统识别用户是通过UID, 系统是怎么知道0就是表示root,1-499就是表示系统用户,因为系统是通过解析库/etc/passwd来进行识别的。例如登录的是root,以root为查找键去解析库里查找已知对应的值,找到UID为0,反之亦然。

组也分管理员组和普通用户组,普通用户组也分系统用户组和登录用户组,组的ID称为组ID,和用户的UID分类的值一样。组的解析库是/etc/group

一个用户可以有多个附加组,也可以只有一个主组,查看用户的ID和所属组的命令:id  username

[root@localhost ~]# id gentoo

uid=5003(gentoo) gid=5006(gentoo) 组=5006(gentoo),5002(peguin),5003(distro)

其中gid表示的就是组ID,组表示主组,5002和5003表示用户的附加组。

2、用户和组的管理

用户:useradd,usermod,userdel

组  :groupadd,groupmod,groupdel

useradd:表示添加用户

选项:-c:注释信息 -d:指明家目录 -u:指定UID -g:指明组或者组ID -G:添加附加组,多个可用,隔开 -s:更改登录的shell,默认为/bin/bash

[root@localhost ~]# useradd -c testin -u 2000 -G gentoo,distro -s /bin/tcsh test

[root@localhost ~]# id test

uid=2000(test) gid=2000(test) 组=2000(test),5003(distro),5006(gentoo)

注意:更改登录的shell时,其自定义的shell必须为可登录的shell,且要位于/etc/shells文件中。

usermod:修改用户信息

选项:-c:修改注释信息

-d:修改家目录为新的位置,和 -m 一起使用会移动到新目录中

-g:改基本组ID

-G:修改时会覆盖原有的附加组;一同使用-a选项,表示为用户添加新的附加组

-l:修改用户的用户名

-u:uid

[root@localhost ~]# usermod -c testout -u 2001 -G hive  test

[root@localhost ~]# id test

uid=2001(test) gid=2000(test) 组=2000(test),10102(hive)

userdel:删除用户

-r:家目录和邮箱一并删除

[root@localhost ~]# userdel -r test

[root@localhost ~]# id test

id: test: no such user

注意:如果不加-r只是删除了用户,但用户的家目录和邮箱还是存在。

groupadd:添加组信息    groupadd [选项] group

选项:-g:GID   -r:添加系统组

[root@localhost ~]# groupadd -g 3000 test

test:x:3000:

groupmod:修改组信息

选项: -g:GID   -n:修改组名称

groupdel:删除组信息

[root@localhost ~]# groupdel   test

id:查看用户相关的ID信息

-G:查看所属的所有组的

[root@localhost tmp]# id -G gentoo

5006 5002 5003

3、权限管理

[root@localhost tmp]# ll /tmp/

-rw-r--r--  1 root root  4069 3月   5 15:45 centos-release

drwxr-xr-x  2 root root    97 3月   5 16:21 conf.d

drwxr-xr-x  2 root root    78 3月   5 16:17 etc

ls -l命令看/tmp目录下的文件,可以看到有-rw-r--r--,root(属主),root(属组),4069(文件大小),3月   5 15:45(文件最后一次被修改的时间),centos-release(文件名)。

-rw-r--r--拆分来看,-,rw-,r--,r--,可以分成四份,第一个“-”表示文件的类型,普通文件,第二个“rw-”表示owner(属主)权限,第三个“r--”表示group(属组)权限,第四个表示“r--”other(其他)权限。

文件的类型有:  -d:普通文件  -d:目录文件  -l:链接文件  -s:套接口文件  -p:管道文件  -b:块设备文件 -c:字符文件

1、基本权限:

r:readable 可读    对文件来说,具有读取文件内容的的权限,对目录来说,只能用ls命令查看目录下的文件列表。

w:wirtable 可写    对文件来说,具有修改文件内容的的权限,对目录来说,可以修改目录下的文件列表,也可以删除和创建文件。

x:execute  可执行  对文件来说,具有执行文件内容的的权限,对目录来说,可以用ls -l命令获取目录下文件列表的详细信息,也可以cd此目录。

权限组合机制:以owern为例

--- ;--x;-w-;-wx;r--;r-x;rw-;rwx;

000  001 010 011 100 101 110 111

八进制:      0    1   2   3   4   5   6   7

rwxr-xr-x表示755

2、权限管理

命令:chmod  chown chgrp

chmod命令:change file mode  bits

用法:(1):通过用户的标识符来修改权限

1.1  chmod  u=rw,g=rw,o=wx  file /path/to/somefile   可以单个,也可以两个或者三个一起赋予权限,中间用,隔开。

如果两类用户权限相同,可以写成ug= ,og=

1.2  chmod u+r/w/x或u-,g+r/w/x或g-,o+/r/w/x或o- /path/to/somefile 多个一起用,隔开

如果两类用户权限相同:ug+,ug-

1.3  chmod 755 /path/to/somefile   八进制附权法

1.4  chmod --reference=file  file1   参考其他文件的权限位    比如:chmod --reference=/var/log/messages a.txt   参照/var/log目录下的message文件的权限给予a.txt文件附权

chown命令:更改属主权限

chown [OPTION]... [OWNER][:[GROUP]] FILE...

chown [OPTION]... --reference=RFILE FILE...

chown  root /tmp/hello.txt   把hello.txt文件的属主改成root

chown  :root /tmp/hello.txt  把hello.txt文件的属组改成root

chown -R --reference=/var/log/messages /tmp/fstab  递归修改目录或者文件的属主

chgrp命令:改属组权限

chgrp [OPTION]... GROUP FILE...

chgrp [OPTION]... --reference=RFILE FILE...

chgrp  root /tmp/hello.txt   把hello.txt文件的属组改成root

chgrp -R --reference=/var/log/messages /tmp/fstab  递归修改目录或者文件的属组

umask:文件的遮罩码  功能是查看和修改文件的遮罩码

显示umask:  umask     修改umask: umask  mask

对于管理员的umaks:022  登录用户的umak:002

[root@localhost tmp]# umask   [gentoo@localhost tmp]$ umask

0022                          0002

新建目录的权限:777-umask     新建文件的权限:666-umask

新建一个文件名为test.txt  目录名为test

[root@localhost tmp]# ll -d test.txt test

drwxr-xr-x 2 root root 6 3月   9 20:48 test       //777-22=755

-rw-r--r-- 1 root root 0 3月   9 20:46 test.txt   //666-22=644

注意:之所以文件用666去减,表示文件默认不能有执行权限;如果减的结果中,u,g,o有执行权限,则加1

例如:把root用户的umask设置023    umask 023  在新建一个文件test1.txt

[root@localhost tmp]# umask 023

[root@localhost tmp]# umask

0023

[root@localhost tmp]# touch test1.txt

[root@localhost tmp]# ll -d test1.txt

-rw-r--r-- 1 root root 0 3月   9 21:01 test1.txt

本来文件权限应该是666-23=643,那就应该是-rw-r---wx,具有可执行的权限,但因为文件默认不能有执行权限,所有在othere(其他)这加1,变成644。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值