周游Linux操作系统——指令实战1

作者:Rhythm_2019

Emial:rhythm_2019@163.com

学习时间:2021.02.06

开始了开始了,这是我们学习Linux的第一天。之前我们已经安装好虚拟机和Linux,今天我们学习Linux的目录结构、VIM使用、开关机重启、远程登录和用户管理及其相关指令

Linux目录结构

在体验之前我们需要先了解一下Linux的目录结构,大家要记住一句话:在Linux下一切皆是文件

Linux目录结构

几个重要的文件夹:

  • /bin、/usr/bin、/usr/local/bin

    bin是binary的缩写,存放最经常使用的命令

  • /sbin、/usr/sbin、/usr/local/sbin

    s是super user的意思,存放系统管理员使用的系统管理工具

  • /home

    存放普通用户的主目录,在Linux中每一个用户都有自己的目录,一般目录名称是用户名

  • /root

    用户管理员的主目录

  • /boot

    存放Linux启动的一些核心文件,包括一些链接文件和镜像文件

  • /proc

    该目录是一个虚拟目录,是系统内存的映射,访问该目录可以获取系统信息

  • /srv

    service的缩写,该目录存放一些服务启动之后需要提取的信息

  • /sys

    存放Linux2.6新出现的一个文件系统

  • /tmp

    存放临时文件

  • /dev

    Linux将所有设备映射成了文件存放在该目录下,类似Window中的资源管理器

  • /media

    当Linux检测到U盘、光盘等设备后会生成对饮文件挂在到该目录下

  • /mnt

    为用户提供临时挂载的文件系统,如我们母机和子机互相共享的文件会被挂载在该目录下

  • /opt

    主机额外安装软件的存放目录

  • /usr/local

    软件安装目录,类似Window的Program File

  • /var

    类似于日志等需要一直变化的文件统一存放在该位置

  • /selinux

    一个安全子系统,当被入侵时会在该目录下产生文件,用户可以根据文件内容对服务器进行修复

远程登陆

我们可以使用远程登录工具登录我们的Linux系统,我用的是XShell,他自带的XFtp很好用,大家可以自行下载,找不懂就某宝吧

在这之前大家记得打开SSH Server,使用setup命令打开该服务即可

打开SSH服务

Tab操作哈,然后用XShell连的使用IP可以用ifconfig查看

ifconfig

这样就应该没什么问题了,以后我们就用SSH控制Linux吧

VIM编辑器

vi是所有Linux发行板都具有的一款文本编辑工具,我们平时需要修改Linux的一些配置文件时需要用到,vim是vi的升级版

要玩好vi最基本的需要掌握三种模式的切换

  • 正常模式:对文本进行预览,可以使用快捷键控制光标、复制删除某行等操作
  • 插入模式:对文本进行编辑
  • 命令行模式:使用命令控制编辑器、搜索文本内容等

三者切换如下

vi三种模式切换

三个命令:

  1. q 直接退出,如果文本倍修改会提示退出失败
  2. q! 强制退出,放弃修改
  3. wq write quite,保存退出

下面举几个例子体验一下

  1. 拷贝当前行yy , 拷贝当前行向下的 5 行5yy,并粘贴p

    注意:是复制当前光标起对应行数,插入到目标行下一行起的行数

  2. 删除当前行dd , 删除当前行向下的 5 行 5dd

  3. 在文件中查找某个单词 [命令行下 /关键字,回车查找 , 输入 n查找下一个 ],,N查找上一个

  4. 替换某个单词:[addr]s/源字符串/目标字符串/[option]

    参数说明:

    • [addr]——表示检索范围,省略时表示当前行。
      • “%”:表示整个文件,同”1,$”;
      • “.,$”:从当前行到文件尾;
    • s:表示替换操作
    • [option]:表示操作类型
      • g:全局替换
      • c:表示进行确认
      • p:表示替换结果逐行显示(Ctrl+L恢复屏幕)
      • 省略option:默认仅对每行第一个匹配串进行替换
    • 如果在源字符串和目标字符串中有特殊字符,需要使用“\”转义
  5. 设置文件的行号: set nu,取消文件的行号:set nonu

  6. 使用快捷键到底文档的最末行G和最首行gg

  7. 撤销快捷键u

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
set nu    显示行号
gg 跳转到文件开头
/ 向后搜索
? 向前搜索
n 查找下一处
N 查找上一处
| 光标所在行行首
L 屏幕所显示的底行
{ 段首
} 段尾
- 前一行行首
+ 后一行行首
( 句首
) 下一句首
$ 行末
M 屏幕中间行
0 行首(零)
hjkl 左下上右
x 删除光标所在字符
R 替换模式(可以替换任意字符)
r 单个替换
dd 删除光标所在的行
D 删除至行末(从光标位置开始)
s 删除字符并插入(单个字符删除,并进入插入模式)
S 删除行并插入(整行删除)
>> 缩进(相当于一个tab)
<< 反缩进
= 自动格式化
J 合并上下两行
I 插入到行首
i 插入
C 从光标处开始修改至行位
a 在光标后附件或追加
A 在行末追加
p 粘贴(后)
P 粘贴(前)
Esc 命令模式
ZZ 保存退出编辑(vi,含保存)
ZQ 不保存退出编辑

快捷键大全

这一块玩的越6越好,写脚本的时候随便操作

关机重启、用6户切换

关机重启的指令如下:

  1. showdown:
    • showdown -h now 马上关机
    • showndown -h [时间] 定时关机
    • shwodown -r now 马上重启
  2. halt 相当于立即关机
  3. reboot 相当于立即重启
  4. ````syn``` 把内存同步到磁盘

当我们关机或者重启时,都应该先执行以下 sync 指令,把内存的数据写入磁盘,防止数据丢失

用户登录注销

  1. 登录某用户

    录时尽量少用 root 帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利 用普通用户登录,登录后再用” su - 用户名’ 命令来切换成系统管理员身份

  2. 注销

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

    ## 用户管理

    > Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向 系统管理员申请一个账号,然后以这个账号的身份进入系统。

    每个用户都至少属于一个用户组,都有自己的家目录(/homw/用户名)

    下面介绍一下User的CRUD

    ### 添加用户

    命令:```useradd [option] 用户名

使用该命令后会创建用户并生成家目录,默认将用户放入一个新的与用户同名的用户组中

  • useradd -d /home/other 用户名 可以指定家目录的位置
  • useradd -g 用户组 用户名 可以指定用户组
1
2
3
4

### 删除用户

删除用户:```userdel 用户名

删除用户及其家目录:userdel -r 用户名

我们一般删除用户就好,家目录留着

查询用户

命令:id 用户名

1
uid=1003(xh) gid=1003(xh) groups=1003(xh)

uid对应用户编号,gid为组编号,groups为组名

如果找不到用户会提示

1
id: xh: no such user

修改用户

修改用户名:usermod -l 新用户 旧用户

修改用户名后家目录名字不会改变

修改用户组:usermod -g 用户组 用户名

切换用户

命令:su - 用户名

  • 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要
  • 当需要返回到原来用户时,使用 exit 指令

用户组管理

  • 增加用户组:groupadd 用户组名
  • 删除用户组:groupdel 用户组名

用户管理文件

  • /etc/passwd 文件

    用户( user)的配置文件,记录用户的各种信息

    passwd.png

    每行的含义:用户名 :口令:用户标识号:组标识号:注释性描述:主目录:登录 Shell

  • /etc/group 文件

    组(group)的配置文件,记录 Linux 包含的组的信息

    group.png

    每行含义:组名 :口令:组标识号:组内用户列表

  • /etc/shadow 文件

    口令的配置文件,存在一些密钥

    每行的含义:登录名 :加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动 时间:失效时间:标志


好啦,今天的内容到此为止,明天带来的是文件、时间等操作指令,大家今晚好好休息