这篇文章将为大家详细讲解有关linux用户、权限及shell命令的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
用户 用户组
查看用户相关文件
[hadoop@hadoop ~]$ ll /usr/sbin/user* -rwxr-x---. 1 root root 103096 Apr 7 2015 /usr/sbin/useradd -rwxr-x---. 1 root root 69560 Apr 7 2015 /usr/sbin/userdel -rws--x--x. 1 root root 42264 Aug 23 2010 /usr/sbin/userhelper -rwxr-x---. 1 root root 98680 Apr 7 2015 /usr/sbin/usermod
查看用户组相关文件
[hadoop@hadoop ~]$ ll /usr/sbin/group* -rwxr-x---. 1 root root 54968 Apr 7 2015 /usr/sbin/groupadd -rwxr-x---. 1 root root 46512 Apr 7 2015 /usr/sbin/groupdel -rwxr-x---. 1 root root 50800 Apr 7 2015 /usr/sbin/groupmems -rwxr-x---. 1 root root 61360 Apr 7 2015 /usr/sbin/groupmod
(1)添加用户 :
[root@hadoop ~]$ useradd ruoze
(2) 查看用户ruoze的信息:
[root@hadoop ~]$ id ruoze
uid=501(ruoze) gid=501(ruoze) groups=501(ruoze)
(3) 删除用户:
对于不清楚的命令可以进行求助 usedel --help :在工作中要学会使用help命令
[root@hadoop ~]$ userdel ruoze
因为ruoze该组只有ruoze用户,当这个用户删除时,组会校验就他自己,会自动删除
(4) 模拟切换用户丢失样式
[ruoze@hadoop ~]$ ll -a total 28 drwx------ 4 ruoze ruoze 4096 Nov 18 14:53 . drwxr-xr-x. 5 root root 4096 Nov 18 14:53 .. -rw-r--r-- 1 ruoze ruoze 18 Jul 24 2015 .bash_logout -rw-r--r-- 1 ruoze ruoze 176 Jul 24 2015 .bash_profile -rw-r--r-- 1 ruoze ruoze 124 Jul 24 2015 .bashrc
[ruoze@hadoop ~]$ rm -rf .bash
#新开一个窗口进行切换用户 [root@hadoop ruoze]# su - ruoze #切换ruoze用户 -bash-4.1$ ##用户样式丢失 ##注:上一步删除了rm -rf .bash* 的配置文件 导致限制结构不同
修正样式:从skel中复制.bash*下的所有文件进行拷贝到所需的目录下即可
[root@hadoop ruoze]# cp /etc/skel/.* /home/ruoze/ cp: omitting directory `/etc/skel/.' cp: omitting directory `/etc/skel/..' cp: omitting directory `/etc/skel/.gnome2' cp: omitting directory `/etc/skel/.mozilla' [root@hadoop ruoze]# ll -a total 28 drwx------ 4 ruoze ruoze 4096 Nov 19 09:40 . drwxr-xr-x. 5 root root 4096 Nov 18 14:53 .. -rw-r--r-- 1 root root 18 Nov 19 09:40 .bash_logout -rw-r--r-- 1 root root 176 Nov 19 09:40 .bash_profile -rw-r--r-- 1 root root 124 Nov 19 09:40 .bashrc drwxr-xr-x 2 ruoze ruoze 4096 Nov 12 2010 .gnome2 drwxr-xr-x 4 ruoze ruoze 4096 May 6 2019 .mozilla [root@hadoop ruoze]#
[root@hadoop ruoze]# chown ruoze:ruoze .bash* ##修改所属用户 所属用户组 [root@hadoop ruoze]# ll-a #命令错误 细节注重一下 bash: ll-a: command not found [root@hadoop ruoze]# ll -a total 28 drwx------ 4 ruoze ruoze 4096 Nov 19 09:40 . drwxr-xr-x. 5 root root 4096 Nov 18 14:53 .. -rw-r--r-- 1 ruoze ruoze 18 Nov 19 09:40 .bash_logout -rw-r--r-- 1 ruoze ruoze 176 Nov 19 09:40 .bash_profile -rw-r--r-- 1 ruoze ruoze 124 Nov 19 09:40 .bashrc drwxr-xr-x 2 ruoze ruoze 4096 Nov 12 2010 .gnome2 drwxr-xr-x 4 ruoze ruoze 4096 May 6 2019 .mozilla [root@hadoop ruoze]#
(5)添加ruoze用户到另外一个组 bigdata
[root@hadoop ~]# groupadd bigdata [root@hadoop ~]# usermod -a -G bigdata ruoze ##-a append [root@hadoop ~]# id ruoze uid=501(ruoze) gid=501(ruoze) groups=501(ruoze),502(bigdata)
(6)修改bigdata为ruoze的主组
[root@hadoop ~]# usermod -g bigdata ruoze #强制改变属组 或者--gid [root@hadoop ~]# id ruoze uid=501(ruoze) gid=502(bigdata) groups=502(bigdata)
2.设置密码 命令:passwd+用户名 <enter> 或 passwd后什么也不加就是修改当前用户的密码
3.切换用户
su ruoze
su - ruoze
“-” 代表切换该用户的家目录,且执行环境变量文件
.bash_profile文件 su ruoze不会执行,su - ruoze 都执行
.bashrc文件 su ruoze执行 ,su - ruoze 都执行
##注:后期配置个人变量都在.bashrc中进行
4.普通用户获取root的最大权限
命令行模式进入: vi /etc/sudoers
找到root用户权限设置:
root ALL=(ALL) ALL
ruoze ALL=(root) NOPASSWD:ALL #不用登陆密码
5./etc/passwd ***重点***
用户存在但切换不了就是这里出了问题
[root@hadoop ~]# vi /etc/passwd ##进入进行编辑 将bin/bash 改成bin/false或sbin/nologin 进行测试 ruoze:x:1002:1003::/home/ruoze:/bin/false #进入/etc/passwd 显示的格式 #sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin #tcpdump:x:72:72::/:/sbin/nologin #hadoop:x:500:500:hadoop:/home/hadoop:/bin/bash #ruoze:x:501:501::/home/ruoze:/bin/bash [root@hadoop ~]# su - ruoze Last login: Tue Nov 19 08:40:33 2019 ###登陆失败 [root@hadoop ~]#
注意: /etc/passwd文件
CDH 很多的组件
hdfs组件 hdfs用户 、hbase组件 hbase用户 、yarn组件 yarn用户
su - hdfs 、 su - hbase 如果这个命令切换不了就是在passwd中的bin/后是/bin/false 或/bin/false
对应修改为 /bin/bash 就可以解决
6.
权限
错误: Permission denied
chmod -R 777 文件夹/文件路径
chown -R 用户:用户组 文件夹/文件路径
[root@hadoop~]# ll total 4 drwxr-xr-x 2 root root 6 Nov 16 22:15 ruozedata -rw-r--r-- 1 root root 18 Nov 16 21:58 rz.log 第一个字母: d文件夹 、-文件、 l连接 rwx r-x r-x r: read 4 w: write 2 x: 执行 1 -: 没权限 0
例如:755表示
7 = rwx 第一组 7 代表文件或文件夹的用户root,读、写、执行
5 = r-x 代表文件或文件夹的用户组root,读、执行
5 = r-x 代表其他组的所属用户对这个文件或文件夹的权限: 读、执行
(1)命令展示
chmod -R 777 文件夹/文件路径 ##注:777 代表任意的用户用户组 都读写执行 权限
chown -R 用户:用户组 文件夹/文件路径
(2)案例
/tmp 任意的 [root@hadoop tmp]# echo "www.ruozedata.com" >> rz.log -rw-r--r-- 1 root root 18 Nov 16 22:33 rz.log #增加用户useradd jepson [root@hadoop tmp]#useradd jepson [root@hadoop tmp]# su - jepson #编辑一个临时文件 [jepson@hadoop tmp]$ vi rz.log #在工作过程中中途退出:ctrl+x/z 会产生swp文件 ll -a 删除即可 .rz.log.swp #修改第三组权限为读、写 (其他组) [root@hadoop tmp]# chmod 646 rz.log [root@hadoop tmp]# [jepson@hadoop tmp]$ vi rz.log #编辑成功 #将jepson用户添加到root用户组 [root@hadoop tmp]# usermod -a -G root jepson #修改文件的第二组的权限:r==》rw权限 [root@hadoop tmp]# chmod 664 rz.log [root@hadoop ~]# su - jepson [jepson@hadoop ~]$cd /tmp [jepson@hadoop tmp]$vi rz.log #编辑是成功的
7. 查看大小 命令:du -sh
du -sh +文件
8. 搜索 find
在应用过程中可以搭配“*”号,进行模糊匹配。
关于“linux用户、权限及shell命令的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。