Linux——(3-vim and 用户权限 组)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

在这里插入图片描述


前言

vi/vim编辑器 用户和 组管理及 时间

一、vi文本编辑器and vim

1.安装介绍

yum -y install vim* 安装

在CentOS中,常用的文本编译器是vi编译器和它的升级版本vim编译器。 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器。vi也是Linux中最基本的文本编辑器,学会它后,将在Linux的世界里畅行无阻。

2.vi的 三个模式 和各个模式之间的转换

视图
在这里插入图片描述

  • 命令模式(command mode)
    控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
  • 插入模式(Insert mode)
    只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
  • 低行模式(Last line mode)
    将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。

3.模式切换

进入 vim
在这里插入图片描述

  • 退出vim 直接 esc 进入低行模式 在 shift +:
  • 如果想保存当前编辑的内容,在:后输入wq! ,即 :wq! ,这样就将文本保存了.然后退出了vi编 辑器。
  • 如果不想保存当前编辑的内容,在:后输入q! ,即 :q! ,这样放弃本次编辑直接退出了vi编辑器。 ;

注意 如果 不小心按 ctrl + z 会强制当前进程转为后台,并使之停止。
可以 jobs 显示当前暂停的进程

  • bg %N 使第N个任务在后台运行
  • fg %N 使第N个任务在前台运行
  • 直接 bg 或者 fg 会对 最后一个进行进程操作

在这里插入图片描述

4.编辑命令

插入命令:(一般模式进入到插入模式)
  • i 在光标前插入
  • I 在光标当前行开始插入
  • a在光标后插入
  • A在光标当前尾部插入
  • o在当前行的下一行插入
  • O 在当前行的上一行插入
定位命令:
  • set nu 显示行号
  • set nonu 取消行号
  • n 到文本的第n行
    这两个是在普通模式直接按的
  • gg 到文本的第一行
  • G 最后一行
    替换和取消命令(一般模式下):
  • u undo,取消上一步操作
  • ctrl + r redo,返回到undo之前
  • r 替换光标所在处的字符
  • R 从光标所在处开始替换,按Esc键结束
    在这里插入图片描述在这里插入图片描述
删除命令:
  • x 删除光标所在处字符
  • nx 删除光标所在处后的n个字符
  • dd 删除光标所在行。
  • ndd 删除n行
  • dG 删除光标所在行到末尾行的所以内容
  • D 删除光标所在处到行尾的内容
  • :5,7d 删除指定范围的行
常用快捷键:
  • v 进入字符可视模式
  • V 或 Shift + v 进入行可视模式
  • Ctrl + v 进入块可视模式
  • ctrl+b:屏幕往后移动一页 直接按 pgup
  • ctrl+f:屏幕往前移动一页 直接按 pgDn
  • 按"$"符号将光标移动到行尾 不如直接按 Home
  • 按"^"将光标移到行头 直接按 End
  • yy:复制光标所在行到缓冲区。
  • nyy:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。
  • 在这里插入图片描述
    注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能。
    用"/“加上要查找的内容.例如”/hello"或者是"?hello"也是可以的.

替换:在底行模式下使用“s/原字符/新字符/g” 代表当前行所有 如果想全局替换,s变为%s
在这里插入图片描述

二、用户权限管理和组管理

1、用户管理

1.1、用户信息保存文件 :cat etc/passwd

在这里插入图片描述
文件详解: root:x:0:0:root:/root:/bin/bash
:号分割

  • 用户名 用户登陆系统的用户名
  • 密码 密码位
  • UID 用户标示号
  • GID 默认组标示号
  • 描述信息 存放用户的描述信息
  • 宿主目录 用户登陆系统的默认目录,默认是在/home/下
  • 命令解析器 用户使用的Shell,默认是bash
1.2、用户分类:
  • 超级用户:(root,UID=0)
  • 普通用户:(UID在1000以后)
  • 伪用户:( UID在1到999)
    系统和服务相关的:bin、daemon、shutdown等进程相关的:mail、news、games等
    伪用户不能登陆系统
1.3、保存用户密码信息的文件:/etc/shadow

在这里插入图片描述

1.4、用户文件详情
  • :号分割
  • 用户名 登陆系统的用户名
  • 密码 加密密码
  • 最后一次修改时间 用户最后一次修改密码距现在的天数,从1970-1-1起
  • 最小时间间隔 两次修改密码之间的最小天数
  • 最大时间间隔 密码有效天数
  • 警告时间 从系统警告到密码失效的天数
  • 账号闲置时间 账号闲置时间
  • 失效时间 账号失效的绝对天数(从1970-01-01开始)
  • 标志 保留字段
1.5、添加用户命令:useradd

用法:useradd [选项] 登录
useradd -D
useradd -D [选项]

选项:
-b, --base-dir BASE_DIR 新账户的主目录的基目录
-c, --comment COMMENT 新账户的 GECOS 字段
-d, --home-dir HOME_DIR 新账户的主目录
-D, --defaults 显示或更改默认的 useradd 配置
-e, --expiredate EXPIRE_DATE 新账户的过期日期
-f, --inactive INACTIVE 新账户的密码不活动期
-g, --gid GROUP 新账户主组的名称或 ID
-G, --groups GROUPS 新账户的附加组列表
-h, --help 显示此帮助信息并推出
-k, --skel SKEL_DIR 使用此目录作为骨架目录
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库
-m, --create-home 创建用户的主目录
-M, --no-create-home 不创建用户的主目录
-N, --no-user-group 不创建同名的组
-o, --non-unique 允许使用重复的 UID 创建用户
-p, --password PASSWORD 加密后的新账户密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files
-s, --shell SHELL 新账户的登录 shell
-u, --uid UID 新账户的用户 ID
-U, --user-group 创建与用户同名的组
-Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER

主要
-u 指定用户ID(uid)
-g 指定所属的组名(gid) 主组
-G 指定多个组,用逗号“,”分开(Groups) 其他组
-c 用户描述(comment) ;
-e 失效时间(expire date)

创建: useradd -u 888 -g users -G sys,root -c "hr zhang" zhangsan
设置密码: passwd zhangsan

1.6、切换用户 su name

在这里插入图片描述
su
参数说明

-f , –fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。
-l , –login:加了这个参数之后,就好像是重新登陆一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会改变。如果没有指定USER,缺省情况是root。
-m, -p ,–preserve-environment:执行su时不改变环境变数。
-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。
–help 显示说明文件
–version 显示版本资讯
USER:欲变更的使用者账号,
ARG: 传入新的Shell参数。

在这里插入图片描述

(centos 7之前的版本,伪用户从1-499 centos7之后伪用户使用1-999
当前版本普通用户ID应该是1000到60000)

1.7、修改用户命令:usermod(user modify)
  • -l 修改用户名 (login)usermod -l a b(b改为a)
  • -g 添加组 usermod -g sys tom
  • -G 添加多个组 usermod -G sys,root tom
  • –L 锁定用户账号密码(Lock)
  • –U 解锁用户账号(Unlock)
    锁定示范
    在这里插入图片描述
    解锁示范 注意解锁需要重新设置密码
    在这里插入图片描述

2、组管理

保存用户组的文件:cat /etc/group
在这里插入图片描述

文件详解:
组名 用的所在的组
组密码 密码位,一般不使用
GID 主标示号
组内用户列表 属于该组的用户列表(从组)

  • 添加组:groupadd
    -g 指定gid
  • 修改组:groupmod
    -n 更改组名(new group)
  • 删除组:groupdel groups 显示用户所属组
Sudo命令

一般用在非root用户下,临时提升非root用户的权限。
第一步:必须要在/etc/sudoers中配置非root用户
第二步:执行命令sudo reboot,输入user1 的密码,成功重启。

3、时间管理

GMT Greenwich Mean Time 格林尼治标准时间
CST 中国时区
CST可视为美国、澳大利亚、古巴或中国的标准时间。 
CST:Central Standard Time (USA) 中部标准时间(美国) UTC -6:00  
CST:Central Standard Time (Australia) 中部标准时间(澳大利亚) UTC 9:30  
CST:China Standard Time 中国标准时间(北京时间) UTC 8:00  
CST:Cuba Standard Time 古巴标准时间 UTC -4:00
UTC 世界统一时间、世界标准时间、国际协调时间

DST 夏令时(Daylight Saving Time) 指在夏天太阳升起的比较早时,将时间拨快一小时,以提早日光的使用。

PDT (Pacific Daylight Time)太平洋夏季时间。
列出所有时区:timedatectl list-timezones
在这里插入图片描述
列出所有时区:timedatectl list-timezones
查看当前系统时间:timedatectl
设置系统时区为上海: timedatectl set-timezone Asia/Shanghai
查看当前时间:date
查看硬件时间:hwclock -r or --show
修改当前时间:date MMDDhhmmYYYY == date -s ‘2011-07-07 11:11:11’

用系统时间同步硬件时间:hwclock -w or --systohc
用硬件时间同步系统时间:hwclock -s or --hctosys
使用ntpd服务同步网络时间:(centos7默认没有该服务,需要安装) yum -y install ntp ntpdate
查看启动状态 ntp(network time protocol) ntpd 网络时间协议服务:(centos7下默认没有该服务)
service ntpd status 查看当前启动状态
同步:
ntpdate cn.pool.ntp.org
启动:
service ntpd start
设置开机启动(chronyd时间服务和ntpd冲突)
systemctl disable chronyd
systemctl enable ntpd

ntpq -p 查看 同步间隔
ntpq -p命令列出了所有作为时钟源校正过本地NTP服务器时钟上层NTP服务器的列表,每一列的含义分别如下:
remote:响应请求的NTP服务器的名称(IP地址或域名),带“*”的表示本地NTP服务器与该服务器同步
refid:远程NTP服务器使用的上一级ntp服务器的IP地址
st:远程NTP服务器的级别,由于NTP是层级结构,有顶端的服务器,多层的Relay Server再到客户端。所以服务器从高到低,级别可以设定为1~16级。为了减缓负荷和网络堵塞,原则上应该避免直接连接到级别为1的服务器。
t:本地NTP服务器与远程NTP服务器的通信方式。u:单播;b:广播;I:本地
when:上次成功请求后到现在的秒数
poll:本地NTP服务器与远程NTP服务器同步的时间间隔。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Network porter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值