数据仓库中的linux那些事儿
linux的基操中有趣的点
1.用户用户组
查看session中存在的用户和组
[root@hadoop001 ~]# ll /usr/sbin/user*
-rwxr-x--- 1 root root 118192 Nov 6 2016 /usr/sbin/useradd
-rwxr-x--- 1 root root 80360 Nov 6 2016 /usr/sbin/userdel
-rwxr-x--- 1 root root 113840 Nov 6 2016 /usr/sbin/usermod
-rwsr-xr-x 1 root root 11296 Apr 13 2017 /usr/sbin/usernetctl
[root@hadoop001 ~]# ll /usr/sbin/group*
-rwxr-x--- 1 root root 65480 Nov 6 2016 /usr/sbin/groupadd
-rwxr-x--- 1 root root 57016 Nov 6 2016 /usr/sbin/groupdel
-rwxr-x--- 1 root root 57064 Nov 6 2016 /usr/sbin/groupmems
-rwxr-x--- 1 root root 76424 Nov 6 2016 /usr/sbin/groupmod
添加用户 创建一个普通用户,默认创建这个名称的用户组ZXY,且设置这个用户主组ZXY,且创建/home/ZXY
[root@hadoop001 ~]# useradd ZXY
[root@hadoop001 ~]# id ZXY
uid=1002(ZXY) gid=1002(ZXY) groups=1002(ZXY)
删除用户 这个用户虽被删除了,但是在home目录中依然能够查到该用户的信息
[root@hadoop001 home]# userdel ZXY
[root@hadoop001 home]# cat /etc/passwd | grep ZXY
[root@hadoop001 home]# cat /etc/group | grep ZXY
添加ZXY用户到另一个组 bigdata
[root@hadoop001 ZXY]# groupadd bigdata
[root@hadoop001 ZXY]# cat /etc/group | grep bigdata
设置密码
[root@hadoop001 ZXY]# passwd ZXY
2.用户切换后的样式的丢失
(1)模拟切换用户样式的丢失
[root@hadoop001 ZXY]# rm -rf .bash* //*代表模糊匹配
[root@hadoop001 ~]# su - ZXY
Last login: Sat Nov 16 23:39:09 CST 2019 on pts/1
-bash-4.2$
-bash-4.2$
(2)修正样式
[root@hadoop001 ZXY]# cp /etc/skel/.* /home/ZXY/
[root@hadoop001 ZXY]# ll -a
drwx------ 2 ZXY ZXY 59 Nov 16 23:44 .
drwxr-xr-x. 5 root root 44 Nov 16 23:16 ..
-rw-r--r-- 1 root root 18 Nov 16 23:44 .bash_logout
-rw-r--r-- 1 root root 193 Nov 16 23:44 .bash_profile
-rw-r--r-- 1 root root 231 Nov 16 23:44 .bashrc
[root@hadoop001 ZXY]# chown ZXY:ZXY .bash*
[root@hadoop001 ZXY]# ll -a
drwx------ 2 ZXY ZXY 59 Nov 16 23:44 .
drwxr-xr-x. 5 root root 44 Nov 16 23:16 ..
-rw-r--r-- 1 ZXY ZXY 18 Nov 16 23:44 .bash_logout
-rw-r--r-- 1 ZXY ZXY 193 Nov 16 23:44 .bash_profile
-rw-r--r-- 1 ZXY ZXY 231 Nov 16 23:44 .bashrc
3.sudo命令----你值得拥有
普通用户获取root的最大权限
[root@hadoop001 ~]# vi /etc/sudoers
ZXY ALL=(root) NOPASSWD:ALL
[root@hadoop001 ~]# su ZXY
[ZXY@hadoop001 root]$ sudo ls -l
total 4
-rw-r--r-- 1 root root 18 Nov 16 23:38 rz.log
[ZXY@hadoop001 root]$ ls -l
ls: cannot open directory .: Permission denied
[ZXY@hadoop001 root]$ cat zxy.log
cat: rz.log: Permission denied
[ZXY@hadoop001 root]$
[ZXY@hadoop001 root]$
[ZXY@hadoop001 root]$ sudo cat zxy.log
Z X Y
4.用户无法登录 passwd文件
问题:
/etc/passwd文件中,如果用户后面是下面高亮的这两种情况是无法登录的
ZXY:x 1002:1003::/home/ZXY:/bin/false
ZXY:x 1002:1003::/home/ZXY:/sbin/nologin
[root@hadoop001 ~]# su - ZXY
Last login: Sat Nov 16 23:48:52 CST 2019 on pts/0
This account is currently not available.
解决办法:
CDH 很多的组件:
hdfs组件 hdfs用户
hbase组件 hbase用户
yarn组件 yarn用户
对应的修改为bin/bash即可
5.权限的那些事儿
[root@hadoop001 ~]# ll
total 4
drwxr-xr-x 2 root root 6 Nov 16 23:15 ZXY
-rw-r--r-- 1 root root 18 Nov 16 23:28 zxy.log
r
: read 4
w: write 2
x : 执行 1
-:没权限 0
7=rwx
3=wx
5=rx
rwx 第一组 7 代表文件或文件夹的用户root,读写执行
r-x 第二组 5 代表文件或文件夹的用户组root,读执行
r-x 第三组 5 代表其他组的所属用户对这个文件或文件夹的权限,读执行
6.其他不得不说的命令
查看文件大小
文件:1) ll 2) du -sh zxy.log
文件夹: du -sh ZXY
搜索: find
历史记录:history
查看进程:ps -ef
一个栗子
某个大数据组件hadoop,部署在哪里?(*代表模糊匹配)
[root@hadoop001 ~]# cd /usr/local/
[root@hadoop001 local]# mkdir xxxhadoopxxx
[root@hadoop001 local]# mkdir hadoop
[root@hadoop001 local]# find / -name '*hadoop*'
[root@hadoop001 ~]# find /usr/local -name '*hadoop*'
/usr/local/xxxhadoopxxx
/usr/local/hadoop