day08复习
day 08学习总结
1.复习
1.tar 压缩 解压缩 非常耗费cpu的资源
优点是:减少设备io 在业务低谷区进行压缩的操作
备份优点:节省磁盘空间 节省网络资源
参数选项-C 指定解压的路径
tf tar tf all.tar.gz 查看压缩包内容 文件名称
格式:tar zcvf all.tar.gz file/dir
打包名称 路径 最好在相对路径
解压缩: tar xf all.tar.gz 解压到当前目录
*exclude 排除某个文件
*exclude-from=file 排错的文件写入到file中 批量删除
2.find查 不要从根目录开始查找 要从相对路径开始查找
-type 按类型查找 f d l
相对路径查找 /data/didboy 目录 find /data/oldboy -type f
-name 按名称查找
find ./ -name "test.avi"
或 find ./ -type f -name"test.avi"./test.avi
*-size 按照大小查找 K M G
寻找大于50m的文件
find ./ -size+50M
寻找大于50m的文件小于100m的文件
find ./ -size +50M -size -100M
-maxdepth 按照深度等级查找
find ./ -maxdepth 1 -size +50M
find ./ -maxdepth 2 -size +50M
find 查找后的mv cp rm
MV
方法1:find ./ -maxdepth 1 -size +50M|xargs -i mv{} /opt/
查看 ll hosts /opt/hosts
方法2:mv `find ./ -maxdept 1 -zise +50M`/opt/hosts.bak
CP
RM
find ./ -name "test.avi"|xargs rm
3.时间 时间戳
stat 查看文件的详细信息 查看文件时间 cat less vim 修改文件后的第一次查看时间会改变 不修改 不会变
-mtime按照文件的修改时间查找 修改文件时间 vi vim echo
-ctime按照文件属性的改变时间查找 属性修改时间 权限 大小 硬链接数 属主 属组
进行时间同步
安装yum yum -y install ntpdate
ntpdate ntpdate1.aliyu.com
系统时间同步到软件时间
查看date
hwclock -w
4.查找七天前的文件并删除
find ./ -mtime +7|xarges rm ---数字可以改变数字代表天数
查找到七天前的文件进行打包 并放在/data目录下
find ./ -type f -mtime +7|xargs tar zcvf /data mtime.tar.gz
find 按照inode号查找
find ./ -type d -inum (inode)
删除rm -rf`find ./ -type d -inum (inode)`
2.学习 用户管理
1.用户分类
2.用户相关的目录
3.用户相关命令
4.sudo
1.用户分类
用户分为三类
管理员 root uid 类似于身份证 root UID:0最高权限
傀儡用户 虚拟用户 作用:在运行程序的时候 必须有一个用户来启动它但是用户不需要登录系统只用来运行程序
centos6.x 1-499 不允许登陆操作系统 没有家目录
centos7.x 1-999 不允许登陆操作系统 没有家目录
普通用户
UID
centos6.x 500+ 默认没有普通用户手动创建的用户 可以登录系统 正常运行命令 有家目录
centos7.x 1000+ 默认没有普通用户手动创建的用户 可以登录系统 正常运行命令 有家目录
2.用户相关的目录
[root@aa ~]# ll /etc/passwd /etc/shadow /etc/group /etc/group /etc/gshadow
-rw-r--r-- 1 root root 542 11月 9 10:44 /etc/group
-rw-r--r-- 1 root root 542 11月 9 10:44 /etc/group
---------- 1 root root 429 11月 9 10:44 /etc/gshadow
-rw-r--r-- 1 root root 1070 11月 9 10:44 /etc/passwd
---------- 1 root root 673 11月 9 10:44 /etc/shadow
以冒号分割 看每一列的含义 root:x:0:0:root:/root:/bin/bash
第一列:root 用户名
第二列:x 用户密码 x必须存在如果删除 表示清空密码 可以使用su的方式进行免密切换
第三列:0 UID
第四列:0 GID
第五列:root 用户的描述信息 可有可无
第六列:/root:家目录
第七列:/bin/bash解释器 当前用户登录系统后默认的使用什么解释器运行命令普通用户和管理员用户
/sbin/nologin 不运行当前的用户登录操作系统 傀儡用户 虚拟用户
group:默认创建后的用户属于自身命名的组
3.用户相关命令
useradd 创建普通用户
语法格式:useradd 参数选项 用户名称
参数选项
-s指定解释器
-u指定UID
-g指定GID
-G指定属于多个组附属组
-M不创建家目录
-c
1.创建一个用户UID为888的可以正常登陆的普通用户
创建:useradd -u888 aoldboy1
切换:su - oldboy1
2.创建一个虚拟用户UID999不允许登陆不创建家目录
创建:useradd -u900 -M -s /sbin/nologin oldboy2
创建一个用户的过程
1.使用命令创建用户 自动创建/home/oldboy1
2. 会复制/etc/skel/目录下的隐藏文件 存放环境变量的文件 到/home/oldboy1
.bash_logout 退出操作系统
.bash_profile 用户的环境变量 供操作系统正常使用
.bashrc 别名的配置文件
3.系统自动修改拷贝过去的隐藏文件权限为普通用户
出现以下错误的解决方式
-bash-4.2$ # 运维 笔试题 开发必会
-bash-4.2$
1.先拷贝隐藏文件到当前家目录
-bash-4.2$ cp /etc/akel/.*
2.退出重新登录到当前用户
方法一:使用su的方式
方法二:ssh远程连接的方式登录或者source和.chongxin1zhixing1.bash_profile
-bash-4.2$source .bash_profile
在执行$
usermod 修改已经创建用户的信息
usermod s /bin/bash -G(用户名1),root -c (内容)(名字2)
tail -5 /etc/passqd 显示五列信息
清空附加组
id oldboy2
usermod -G "oldboy2"
userdel 删除用户
-r 删除用户家目录及相关信息
userdel -r oldboy1
passwd 给用户设置密码
1.交互方式
passwd
passwdroot
2.非交互式
echo 1|passwd -- stdin oldbay1
*修改文件的属主属组
格式
chown olddboy.oldboy file 同时修改文件的属主属组
chown oldboy file 只修改文件的属主
chown.oldboy file 只修改文件的属组
chown -R oldboy.oldboy dir
last 如何查看当前公司的ip地址 排除安全隐患
1.如何查看登陆ip是否是公司和家庭的公网IP
2.看时间点
3.查看LINUX服务器的公网ip地址
curlcip.cc
id 查看用户信息
id(用户名)
如何判断用户名是否存在
1.id(用户名)
2.cat /etc/passwor
3.使用grep过滤文件内容
grep '用户名' /etc/passwd
4.useradd (用户名)
grep 语法格式:
1.直接过滤
grep'过滤的内容'
2.car /etc/password|grep'oldboy'
lastlog :查看所有用户最后的登陆系统的时间
whosmi:查看当前登陆系统用户
三剑客
awk:三剑客老大 过滤字符串 统计数据
sed:三剑客老二:查找替换字符串
grep :三剑客老三:过滤字符串
grep :三剑客老三:过滤字符串 过滤文件中的内容
单引号和双引号的区别 不加引号
单引号不能解析变量
双引号和不加引号可以解析变量过滤文件中的内容
grep '过滤的内容' 文件 # 直接跟文件过滤
cat 文件|grep '过滤的内容' # 过滤其他命令的输出结果
[root@oldboyedu ~]# cat passwd|grep root
正则 ^ 以什么什么开头的行
[root@oldboyedu ~]# grep ^r passwd
$ 以什么什么结尾的行
[root@oldboyedu ~]# grep nologin$ passwd
或:
[root@oldboyedu ~]# grep '^$' /etc/selinux/config
-v 对查找到的内容进行取反
[root@oldboyedu ~]#grep -v'^$'/etc/selinux/config
扩展正则:
[root@oldboyedu ~]# grep -v '^$' /etc/selinux/config|grep -v '#'
awk:三剑客老大过滤字符串 统计数据
语法格式:
awk'/查找的内容/'file
cat file|awk'/查找的内容/'
awk过滤字符串
cat passwd |awk'/root'
可以按行和列进行过滤文件内容
先过滤出文件的第二列
表达式:
== 等于
!= 不等于
>
<
>=
<=
过滤出行数小于2的
awk 'NR<2' passwd 条件可以变化
* 并且&&
小于4并且等于2的
awk 'NR>2&&NR<5' passwd
或者||
awk 'NR==2||NR>4' passwd
按行匹配使用过滤字符串方式 过滤时间
awk '/root/,/daemon/' passwd
按列
0 1 2 3 4 5 awk的内容变量
0 表示所有的行
awk执行方式按一行一行的执行
awk '匹配模式{动作}' file
[root@oldboyedu ~]# awk '{print $0}' passwd
awk按列查找内容 默认以空格和tab键分割
1 就是第一列
2 就是第二列
获取变量 $1 $2
使用-F 指定分隔符
[root@oldboyedu ~]# awk -F: '{print $1}' passwd
[root@oldboyedu ~]# awk -F: '/root/' passwd
root:x:0:0:root:/root:/bin/bash
[root@oldboyedu ~]# awk -F: '/root/{print $1}' passwd
root
------------------------------------------------180天计划
8/180
加油 努力