2018-08-02笔记
1 、 服务器 有很大空间就是存不了东西
可能是iNode 已经满了 没办法在分配iNode号,清除无用的文件让系统回收iNode
find / -size +100M #查文件大小大于100Mb的文件
find / -name "*.log" -tyoe f +mtime 365 -exec rm -f { }\ ;
2.1 #查找/data目录以.log结尾,文件大于10k的文件,同时cp到/tmp目录;
find /data/ -name "*.log" –type f -size +10k -exec cp {} /tmp/ /;
#查找/data目录以.txt结尾,文件大于10k的文件,权限为644并删除该文件;
find /data/ -name "*.log" –type f -size +10k -m perm 644 -exec rm –rf {} /;
#查找/data目录以.log结尾,30天以前的文件,大小大于10M并移动到/tmp目录;
find /data/ -name "*.log" –type f -mtime +30 –size +10M -exec mv {} /tmp/ /;
3 文件后缀
*.php ------这个大家都知道吧,是能用php语言解释器进行解释,能用浏览器打开的文件
.so-----类库文件
.c -------C源程序代码文件
.txt------纯文本文件
.bz2 ------bzip2的压缩文件
.py pytho
4 文件传输
一用户配置文件和密码配置文件
用户在系统中的存储方式
用户名称:密码:uid:gid:说明:家目录:默认shell
# 该文件结构,每个用户一行,用':'进行分割成7段;
# root(用户名):x(略):0:0:root(注释):/root(用户家目录):/bin/bash(用户的shell) # longlong02(用户名):x(略):1006:1006:(注释):/home/longlong02(用户家目录):/bin/bash
tc/shadow 认证信息文件:
用户名称root;用户密码
用户密码最后一次被更改的时间;密码最短有效期;密码最长有效期
# 该文件结构,每个用户一行,用':'进行分割成9段;
# root(用户名)
:$6$dAG6/8RmAOv603Ln$eDc6vFHvGC4snH3YJPVJkIP3OC7qbl0ax069YxFTlRb9TRjb0VqSimxoK2Eva6NKkZkV1YWZsOrqgtInheaCD1(密码'加密过')
:(上次更改密码距离'格林乔治时间'天数):0(多少天之后可再更改密码):99999(多少天之后要更改密码)
:7(密码到期前多少天提示):(密码到期后没修改密码多少天账号失效):(账号使用期限'格林乔治时间后多少天')
:(略) # longlong02(用户名):!!(密码'没密码是!!'):17387(上次更改密码距离):0(多少天之后可再更改密码)
:99999(多少天之后要更改密码):7(密码到期前多少天提示):(密码到期后没修改密码多少天账号失效):(账号使用期限'格林乔治时间后多少天'):(略) # xxx:*(密码被锁定):17110:0:99999:7:::
root:::
bin:::
daemon:::
sys:::
adm::: ......
(中段信息省略)
ntp:!::
long:!::
longlong02:!::
slocate:!::
# 备份文件同名带-号的为备份文件()
# ls /etc/gshadow gshadow gshadow-
# tail -n1 /etc/group # 查看
lrm:x:1009: # 自定义组ID创建组
# groupadd -g 2000 lrm2 # 自定义组ID创建组
# tail -n2 /etc/group # 查看
lrm:x:1009: lrm2:x:2000:
# tail -n 5 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
longlong:x:1005:1008::/home/longlong:/sbin.nologin
longlong02:x:1006:1006::/home/longlong02:/bin/bash
longlong03:x:1007:1007::/home/longlong03:/bin/bash
# 自定义用户ID和指定用户组创建用户
# useradd(命令) -u(用户ID) 1008(参数) -g(组名) lrm2(参数) longlong04(新用户名)
# useradd -u 1008 -g lrm2 longlong04
# 创建用户
# tail -n 5 /etc/passwd
ntp:x:38:38::/etc/ntp:/sbin/nologin
longlong:x:1005:1008::/home/longlong:/sbin.nologin
longlong02:x:1006:1006::/home/longlong02:/bin/bash
longlong03:x:1007:1007::/home/longlong03:/bin/bash
longlong04:x:1008:2000::/home/longlong04:/bin/bash
# 增加指定家目录 # useradd -u 1009 -g lrm2 -d(家目录) /home/lrm(路径) -s /sbin.bologin longlong05
# useradd -u 1009 -g lrm2 -d /home/lrm -s /sbin.bologin longlong05
# tail -n 5 /etc/passwd
longlong:x:1005:1008::/home/longlong:/sbin.nologin
longlong02:x:1006:1006::/home/longlong02:/bin/bash
longlong03:x:1007:1007::/home/longlong03:/bin/bash
longlong04:x:1008:2000::/home/longlong04:/bin/bash
longlong05:x:1009:2000::/home/lrm:/sbin.bologin
# 创建用户时不创建家目录
# useradd -M longlong06
# ls /home longlong02 longlong03 longlong04 lrm
longlong09:x:1022:2001::/home/longlong09:/bin/bash
longlong10:x:1023:1023::/home/longlong10:/bin/bash
longlong11:x:1024:1024::/home/longlong11:/bin/bash
# userdel longlong11 "删除用户
# tail -n 3 /etc/passwd " 查看
longlong08:x:1021:1021::/home/
longlong08:/bin/bash
longlong09:x:1022:2001::/home/
longlong09:/bin/bash longlong10:x:1023:1023::/home/
longlong10:/bin/bash
# userdel -r longlong10 "删除用户时连同用户家目录一起删除
[[email protected] ~]# usermod 用法:usermod [选项] 登录 选项:
-c, --comment 注释 GECOS 字段的新值
-d, --home HOME_DIR 用户的新主目录
-e, --expiredate EXPIRE_DATE 设定帐户过期的日期为 EXPIRE_DATE
-f, --inactive INACTIVE 过期 INACTIVE 天数后,设定密码为失效状态
-g, --gid GROUP 强制使用 GROUP 为新主组
-G, --groups GROUPS 新的附加组列表 GROUPS
-a, --append GROUP 将用户追加至上边 -G 中提到的附加组中, 并不从其它组中删除此用户 -h, --help 显示此帮助信息并推出
-l, --login LOGIN 新的登录名称
-L, --lock 锁定用户帐号
-m, --move-home 将家目录内容移至新位置 (仅于 -d 一起使用)
-o, --non-unique 允许使用重复的(非唯一的) UID
-p, --password PASSWORD 将加密过的密码 (PASSWORD) 设为新密码
-R, --root CHROOT_DIR chroot 到的目录
-s, --shell SHELL 该用户帐号的新登录 shell
-u, --uid UID 用户帐号的新
UID-U, --unlock 解锁用户帐号
-Z, --selinux-user SEUSER 用户账户的新
SELinux 用户映射
[[email protected] ~]# id abcuid=1001(abc) gid=1001(abc) 组=1001(abc)
[[email protected] ~]# usermod -g lgs abc
[[email protected] ~]# id abcuid=1001(abc) gid=1000(lgs) 组=1000(lgs)
[[email protected] ~]# id abcuid=1001(abc) gid=1000(lgs) 组=1000(lgs)
[[email protected] ~]# usermod -G abc abc
[[email protected] ~]# id abcuid=1001(abc) gid=1000(lgs) 组=1000(lgs),1001(abc)
[[email protected] ~]# id lgsuid=1000(lgs) gid=1001(abc) 组=1001(abc),1000(lgs)
[[email protected] ~]# usermod -G abc abc
[[email protected] ~]# id lgsuid=1008(lgs) gid=1001(abc) 组=1001(abc),1000(lgs)
[[email protected] ~]# usermod -L abc
[[email protected] ~]# su - lgs
上一次登录:二 4月 3 21:49:01 CST 2018pts/0 上
[[email protected] ~]$ su - abc
密码: su: 鉴定故障
[[email protected] ~]# tail -3 /etc/shadow
chrony:!!:17610::::::lgs:!!:17619:0:99999:7:::abc:!$6$XoIK9B3k$jHl6YSoOPPZxgcRD2cNLaf2aBrSVetbEmfmHtWLLzQsdikx9L1kJua9aCur3EiOsGn1de7XZp8DI5rEiQ.BQD/:17624:0:99999:7:::
[[email protected] ~]# usermod -U abc
[[email protected]~]# tail -3 /etc/shadow
chrony:!!:17610::::::lgs:!!:17619:0:99999:7:::abc:$6$XoIK9B3k$jHl6YSoOPPZxgcRD2cNLaf2aBrSVetbEmfmHtWLLzQsdikx9L1kJua9aCur3EiOsGn1de7XZp8DI5rEiQ.BQD/:17624:0:99999:7:::
[[email protected] ~]# su - lgs
上一次登录:二 4月 3 21:50:02 CST 2018pts/0 上
[[email protected] ~]$ su - abc
密码:
上一次登录:二 4月 3 21:49:52 CST 2018pts/0 上 最后一次失败的登录:二 4月 3 21:50:24 CST 2018pts/0 上 最有一次成功登录后有 2 次失败的登录尝试。
[[email protected] ~]# passwd abc
更改用户 abc 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[[email protected] ~]# passwd -l abc锁定用户 abc 的密码 。
passwd: 操作成功
[[email protected] ~]# su - lgs
上一次登录:二 4月 3 21:52:48 CST 2018pts/0 上
[[email protected]01 ~]$ su - abc 密码:
su: 鉴定故障
[[email protected] ~]$ 登出
[[email protected]~ ]# tail -3 /etc/shadow
chrony:!!:17610::::::
lgs:!!:17619:0:99999:7:::
abc:!!$6$BxRGlSVL$w7ZJ9yVpcf2ysyV4O5kHvF6Gwof.j5C37z/IYmwZ5y30VQmX5fATjTaPL5mITRKbydhCr192o/3mnhUnpd2c1.:17624:0:99999:7:::
[[email protected] ~]# passwd -u abc
解锁用户 abc 的密码。
passwd: 操作成功
[[email protected]01 ~]# su - lgs 上一次登录:二 4月 3 21:58:51 CST 2018pts/0 上
[[email protected] ~]$ su - abc
密码:
上一次登录:二 4月 3 21:57:37 CST 2018pts/0 上 最后一次失败的登录:二 4月 3 21:59:38 CST 2018pts/0 上 最有一次成功登录后有 3 次失败的登录尝试。
[[email protected]~]# tail - 3 /etc/shadow
chrony:!!:17610::::::
lgs:!!:17619:0:99999:7:::
abc:$6$BxRGlSVL$w7ZJ9yVpcf2ysyV4O5kHvF6Gwof.j5C37z/IYmwZ5y30VQmX5fATjTaPL5mITRKbydhCr192o/3mnhUnpd2c1.:17624:0:99999:7:::
修改用户密码:--stdin 只输入一次新密码。 shell脚本中常用
[[email protected] ~]# passwd --stdin abc
更改用户 abc 的密码 。12345678
passwd:所有的身份验证令牌已经成功更新。
[[email protected] ~]# echo "11220055" |passwd --stdin lgs
更改用户 lgs 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[[email protected] ~]# su - abc
上一次登录:二 4月 3 22:05:50 CST 2018pts/0 上
[[email protected] ~]$ su - lgs 密码: 上一次登录:二 4月 3 22:05:38 CST 2018pts/0 上
[[email protected] ~]# echo -e "1122334455\n1122334455"11223344551122334455
[[email protected] ~]# echo -e "1122334455\n1122334455" |passwd lgs
更改用户 lgs 的密码 。
新的 密码:
无效的密码:
密码未通过字典检查 - 它基于字典单词 重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
mkpasswd
# yum intstall -y expect # 安装工具 # mkpasswd \vw1SG3wf
# 默认长度9 # mkpasswd -l 12 ooWpxgm4c)1Q
# 指定长度12 # mkpasswd -l 12 -s 4ht>3^!d<PB9c
# 指定长度12,指定特殊符号4
# 简单说明
# mkpasswd -l(长度) 12 -s(字符) 4 -C(大写) 1 -c(小写) 1 -d(数字) 1
[[email protected] ~]# su - jimmy
su命令是切换用户使用的,在这里加一个“-”表示彻底切换到jimmy用户下包括自己的配置和环境变量,就在自己的家目录。
[[email protected] ~]# su - -c "touch /tmp/jimmy.111" jimmy 以指定用户的身份执行一条命令
[[email protected] ~]# ls -lt /tmp/ |head 使用此命令可以查看是否有执行成功
在普通用户下在切换到其他用户,按理说应该在user5家目录中,因为没有相应的配置文件,所以显示不正常。
既然缺少user5家目录,那么就重新创建一个user5的家目录出来。
[[email protected] ~]# mkdir /home/user5
[[email protected] ~]# chown user5:user5 /home/user5/
拷贝.bash文件到user5的家目录,这样就可以显示正常了。
[[email protected] ~]# visudo 直接添加如下内容,让jimmy用户拥有root权限,同时可以执行ls、mv、cat命令。
使用方法同vi命令,按i进入编辑内容,ESC取消编辑,然后:wq保存修改并退出编辑状态。
提示刚才的操作有问题,第93行语法错误,按e键回车进入重新修改,可以输入:set nu显示行数信息。
/usr/bin/ls, /usr/bin/mv, /usr/bin/cat 需要修改成绝对路径才能够正常使用
修改完成后切换成jimmy用户,在运行ls /root/就会提示无法打开目录,权限不够。
sudo /usr/bin/ls /root/ 检验sudo的作用,可以将普通用户临时授予root权限,可以操作指定的一些命令。
同样可以给user5授予相同的权限,但是切换用户时还需要输入密码比较麻烦,添加这个参数就可以免密登录。
user5 ALL=(ALL) NOPASSWD: /usr/bin/ls, /usr/bin/mv, /usr/bin/cat
[[email protected] ~]# su - suer5 切换user5
[[email protected] ~]$ ls /root/ 直接输入ls /root/ 提示权限不够
[[email protected] ~]$ sudo /usr/bin/ls /root/ sudo命令即可顺利执行
11 1.txt 33.txt anaconda-ks.cfg a.txt
Cmnd_Alias JIMMY_CMD = /usr/bin/ls, /usr/bin/mv, /usr/bin/cat
在visudo里面还可以设置用户组,比如把多个用户放到wheel一个组里面,相同组里面的用户名都可以执行授予的命令。
如果密码过于简单,容易被别人猜到,过于复杂自己也可能会忘记,为了安全起见,防止别人拿到密码通过root远程登录。
创建一个user alias,同时设置一个规则免密执行su命令登录root
如果要限制root远程登录,输入vi /etc/ssh/sshd_config 修改成PermitRootLogin no 保存退出,重启systemctl restart sshd.service 服务。
[[email protected] ~]# vi /etc/ssh/sshd_config
[[email protected] ~]# systemctl restart sshd.service
这个时候再重新连接,已经无法登录root用户,包括输入root密码也一样。(说明已经限制root远程登录)
打开putty终端以普通用户登录,然后执行sudo su - root可以直接免密登录到root用户。
重新输入vi /etc/ssh/sshd_config 还原配置文件并重启服务即可恢复root远程登录
如果密码过于简单,容易被别人猜到,过于复杂自己也可能会忘记,为了安全起见,防止别人拿到密码通过root远程登录。
创建一个user alias,同时设置一个规则免密执行su命令登录root
如果要限制root远程登录,输入vi /etc/ssh/sshd_config 修改成PermitRootLogin no 保存退出,重启systemctl restart sshd.service 服务。
[[email protected] ~]# vi /etc/ssh/sshd_config
[[email protected] ~]# systemctl restart sshd.service
这个时候再重新连接,已经无法登录root用户,包括输入root密码也一样。(说明已经限制root远程登录)
打开putty终端以普通用户登录,然后执行sudo su - root可以直接免密登录到root用户。