Linux命令-补
Linux命令-补
设置系统时间和网络同步
sudo apt install ntpdate # 安装ntp程序
sudo ntpdate cn.pool.ntp.org 设置时间
# 设置时区
sudo timedatectl set-timezone Asia/Shanghai
# 时间写入到硬件中
sudo hwclock --systohc
# 显示当前时间
date
环境搭建
搜索查找类
# find 命令
find [搜索范围] [选项]
# 目录可以是相对目录绝对目录
# 名称可以使用*进行匹配查找
ind /home/hexi/ -name "*.h"
# 使用用户进行搜索
find /home/ -user hexi
# 根据文件大小 有 +100 -100 100 分别表示大于 小于 等于
find / -size +300M
# 定位文件的路径
locate [文件名称]
# 安装文件
sudo apt install locate
# 设置root密码并且登陆
sudo passwd
su root
# 输入root密码,实现root登陆
# 初始化数据库
updatedb
# 搜索
locate 参数 文件名称
# grep 查找筛选工具
grep [选项] 查找内容 源文件
压缩解压类
# 打包和解压包
tar tar 参数 压缩包名 文件或目录名
# 原文链接:https://www.linuxcool.com/tar
tar -zxvf test.tar.gz
参考tar使用
# 打包文件或者目录
tar -zcvf png2.tar.gz /home/hexi
# 解压文件或者目录 需要进入目标文件夹
tar -zxvf ../png2.tar.gz
# 后缀加上-C可以解压到指定文件夹
tar -zxvf png2.tar.gz -C ./mew/
用户相关
用户管理
用户文件介绍
系统文件给开发人员,数据库权限给游戏客服
root@root:~# cd /etc/
root@root:/etc# cat passwd
root:x:0:0:root:/root:/bin/bash
# 用户名 密码标识 用户UID 组ID 用户说明 家目录 用户登录的权限
# 标准文件的登陆权限事/bin/bash 做完之后要改过来
# 理论上所有的服务都用用户维护
linux的权限不是绑定在组上的,绑定在UID上,没有特殊权限不要把普通用户修改成超级用户
root:$6$nxJSBM8xyyKVeDz6$CJjzpcWVsWpu8QeecXiNXv5OEWxs.pvQSYRWO/i848sl/eQGHsfE9XihetTe4nVkaasqUQNUs6G3XiShFxcPk/:19851:0:99999:7:::
daemon:*:18375:0:99999:7:::
# 九列信息
# 1用户名称 2加密之后的密码,约定俗成在前面加上! 3更新密码的时间(时间戳)
# echo #((#(date --date="2013/03/11"+%s)/86400+1))
# 4两次密码的修改间隔时间 5密码有效期 6密码有效期提醒 7密码到期宽限天-1(不过期)
# 8 密码失效时间 9 保留
# 组信息文件
# 组名称 组密码位 GID 改组支持的其他用户
cat /etc/gtoup
# 建议初始组不要更改 需要用的话 添加到其他对象的附加组中
# 组密码目录
/etc/gshadow
# 用户家目录
/home/[名称]
# 用户邮箱目录
/var/spool/mail
# 用户模版目录
/etc/skel
用户管理命令
添加用户
useradd -m user1 # 创建有家目录的新用户
vi /etc/passwd
vi /etc/shadow
passwd user1
vim /etc/shadow
出现问题,没有创建对应的家目录
useradd
useradd -G user0 p2 # 用户加入组写G可以保障用户存在默认的同名组存在
修改useradd的默认配置文件
vim /etc/passwd
vim /etc/default/useradd # 修改useradd配置文件
vim /etc/login.defs
查看用户文件 发现已经存在的hexi和root事用的bash类型shell,新建用户默认使用的是sh的shell,所以新建用户后会奇怪
查看useradd的默认配置,这里指定HOME和SHELL以及MAIL等选项可以对新用户创建有所帮助
INACTIVE 账户过期设置,这里是shadow的过期设置,到期后账户就终止
EXPIRE 密码的失效时间,需要的时候可以进行更改
vim /etc/default/useradd # 修改useradd配置文件
修改login文件的配置,在文末添加上
CREATE_HOME yes
vim /etc/login.defs
接下来创建账户就是正常的了
详细介绍下login.defs
vim /etc/login.defs
# 使用vim快捷键 ctrl-f上翻一页(forward) ctrl-b下翻一页 快速浏览
修改密码
[root@localhost ~]#passwd [选项] 用户名
选项:
-l: 暂时锁定用户。仅 root 用户可用
-u: 解锁用户。仅 root 用户可用
--stdin: 可以将通过管道符输出的数据作为用户的密码。主要在批量添加用户时使用
[root@localhost ~]#passwd
#passwd 直接回车代表修改当前用户的密码
使用字符串作为密码
[root@localhost ~] echo "123" | passwd --stdin user1 更改用户 user1 的密码 。
更改系统的时间戳可以帮助用户登陆即修改密码,shadow文件的第三个参数
[root@localhost ~] chage -d 0 user1
用户信息修改
对已经添加的用户进行属性修改
# 将t2加入user0的组中
usermod -G user0 t2
# 建议不要修改用户名称
删除用户
显示正在使用
# 首先使用查看指令,接着杀死进程
ps -ef |grep [目标文件]
kill -9 [进程号]
切换用户身份
su [用户名称] # 输入密码
su - [用户名称] # 环境变量也修改为目标用户
whoami # 查看我自己是谁
用户组操作
groupadd [选项] 组名
groupdel [选项] 组名
gpasswd [选项] 组名 选项:
-a 用户名: 把用户加入组
-d 用户名: 把用户从组中删除
gpasswd -a user1 grouptest# 把组名作为参数放在最后
用户可不可以删除有成员的主组
改变有效组:newgrp
我们说过,每个用户可以属于一个初始组(用户是这个组的初始用户),也可以属于多个附加组 (用户是这个组的附加用户)。既然用户可以属于这么多用户组,那么用户在创建文件后,默认生效 的组身份是哪个呢?当然是初始用户组的组身份生效了,因为初始组是用户一旦登录就直接获得的组
身份。也就是说,用户在创建文件后,文件的属组是用户的初始组,因为用户的有效组默认是初始组。
newgrp 组名
权限相关
基本权限
- 第 1 位代表文件类型
- “-”:普通文件。
- “d”:目录文件。Linux中一切皆文件,所以目录也是文件的一种。
- “l”:软链接文件。
- “b”:块设备文件。这是一种特殊设备文件,存储设备都是这种文件,如分区文件/dev/sda1 就是这种文件。
- “c”:字符设备文件。这也是特殊设备文件,输入设备一般都是这种文件,如鼠标、键盘 等。
- “p”:管道符文件。这是一种非常少见的特殊设备文件。(不常见)
- “s”:套接字文件。这也是一种特殊设备文件,一些服务支持Socket访问,就会产生这样
的文件,误删除会产生严重问题
- 第 2~4 位代表文件所有者的权限。
- r:代表 read,是读取权限。
- w:代表 write,是写权限。
- x:代表 execute,是执行权限。
如果有字母,则代表拥有对应的权限;如果是“-”,则代表没有对应的权限。
- 第 5~7 位代表文件所属组的权限,同样拥有“rwx”权限
- 第 8~10 位代表其他人的权限,同样拥有“rwx”权限