0


新鲜出炉,Linux眼花缭乱的小寄巧

14天学习训练营导师课程: 互联网老辛《 符合学习规律的超详细linux实战快速入门》

努力是为了不平庸~
学习有些时候是枯燥的,但收获的快乐是加倍的,欢迎记录下你的那些努力时刻(学习知识点/题解/项目实操/遇到的bug/等等),在分享的同时加深对于知识点的理解,同时吸收他人的奇思妙想,一起见证技术er的成长~

1.5 linux基本实操

1.5.1 linux远程登录

在实际工作中,linux服务器是开发小组共享的,并不是存放在每个用户的本地电脑上,linux服务器一般会存在在一台独立的电脑上(独立的机房里)。所以我们需要远程的登录到linux进行相关的操作。

在这里我们介绍两个远程操作工具。一个是远程登录linux操作系统的工具,一个是进行远程文件传输 下载的工具。

第一个工具:远程连接 登录linux服务器的工具 Xshell7

  • 安装:
  1. 直接解压文件得到问了目录Xshell。
  2. 进入Xshell目录:点击!绿化.bat,桌面会自动化生成Xshell程序。

  1. 打开Xshell-帮助-关于Xshell,查看破解情况。

如果出现以上信息说明破解成功。

  • 通过Xshell7远程连接linux
  1. 首先我们需要获取远程连接linux操作系统的ip地址。
[root@xq100 ~]# ip addr

我们可以本地windows系统下面ping一下ip,看能否ping成功:

Microsoft Windows [版本 10.0.17763.1577]
(c) 2018 Microsoft Corporation。保留所有权利。
​
C:\Users\kriss>ping 192.168.10.137
​
正在 Ping 192.168.10.137 具有 32 字节的数据:
来自 192.168.10.137 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.10.137 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.10.137 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.10.137 的回复: 字节=32 时间<1ms TTL=64
​
192.168.10.137 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms
​
C:\Users\kriss>

我们发现,可以ping成功。

  1. 建立连接

打开Xshell,点击文件-->新建:

点击确定,再输入登录用户名和密码即可即可。

第二个工具:进行文件远程传输和下载的工具 FileZilla

  • 下载FileZilla
  • 安装

傻瓜式安装,直接点击下一步即可。

  • 使用FileZilla连接linux操作系统

注意:

主机的连接地址必须是sftp协议。也就是必须输入: sftp://192.168.10.137

用户名和密码是连接linux操作系统的用户名和密码。

端口号可以不写,默认就是22。

  • 上传文件

上传文件:在windows操作系统(左边)选择指定文件,右键-->上传 即可。

下载文件:在linux操作系统(右边)选择指定文件,右键-->下载 即可。

1.5.2 linux vi/vim编辑器

所有的 Linux 系统都会内置 vi 文本编辑器。Vim 具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

1.5.2.1 vi/vim的三种模式

  • 正常模式: 以vim打开一个档案就是直接进入了一般默认(这是正常的模式),在这个模式中,可以通过上下左右来移动光标,你也可以使用【删除字符】【删除整行】来编辑档案中的内容,也可以使用【复制】【贴上】来处理你的文件数据。
  • 插入模式: 按下i,l,o,O,a等任意一个字母之后才会进入编辑模式,一般情况按下i即可。
  • 命令行模式: 在这个模式当中,可以提供你相关指令,完成读取,存盘,替换vim,显示行号等操作是在此模式下完成的。

1.5.2.2 使用vim工具

现在我们完成一个简单的需求,使用vim编辑器,编辑一个Hello.java文件。我们就在Xshell中完成。

[root@xq100 ~]# vim Hello.java

我们输入

vim Hello.java

命令,然后回车,此时进入到正常模式。

此时我们直接在里面写内容是没有反应的,因为正常模式下,不能进行内容的编辑,我们需要容正常模式切换到插入模式。如何切换?

我们一般按下i键即可。此时,屏幕左下角会显示成INSERT字样:

这个时候我们可以在插入模式下面进行内容的编辑:

接下来我们需要保存文件,我们需要切换到命令行模式:

首先按ESC键,然后输入:wq 然后回车 就是保存并退出。

6.使用快捷键回到文件内容的最起始处和最末尾处

切换到正常模式。

G : 回到文件的末尾处(光标回到文件的末尾处)

gg:回到文件的最开始处(光标回到文件的最开始处)

7.快速的定位到某个位置

切换到正常模式。

5 shift + g (快速到定位到第5行)。

8.在文件中输入内容,执行撤销操作

切换到正常模式。按快捷键u

  • 要搜索当前行中字符串“World”的首次出现,并将其替换为“shijie”

:s/World/shijie/

  • 要替换当前行中搜索到的所有内容,可以添加g标志:

:s/World/shijie/g

  • 想搜索和替换整个文件中的匹配内容,使用百分比字符%作为范围。此字符指示从文件第一行到最后一行的范围

:%s/World/shijie/g

1.5.3 linux关机重启

  • shutdownshutdown -h now 表示立即关机shutdown -h 1:表示一分钟后关机shutdown -r now :立即重启
  • halt就是直接使用,效果等同于关机
  • sync把内存的数据同步到磁盘
  • reboot就是重启系统

注意细节:

  1. 不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写入到磁盘中。
  2. 目前的shutdown、reboot、halt命令在关机前都进行了sync。

1.5.4 用户登录和注销

  • 切换用户 su root 切换到root用户
  • exit 退出 注销

注意:在切换用户的时候,如果从低级别的用户切换到高级别的用户,需要输入密码的(wen --> root)。如果从高级别的用户切换到低级别的用户(root --> wen),那么是不需要输入密码的。

1.6 linux用户管理

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

1.6.1 添加用户

在root用户下,我们可以创建很多其它的用户,并且这些用户都会生成对应的目录,这些目录位于/home/用户名的目录下面。如果我们使用自己创建的用户登录,默认的情况下,用户所在的目录就是/home/用户目录所在的位置。

如何创建用户? useradd [选项] 用户名

[root@xq100 ~]# useradd kobe   #创建用户名为kobe的用户
[root@xq100 ~]# cd /home # 切换到home目录
[root@xq100 home]# ll  # 查看home目录所在的文件夹
total 0
drwx------. 3 kobe kobe  78 Aug 27 17:49 kobe
drwx------. 5 xq   xq   147 Aug 27 16:02 xq

细节:

  • 当用户创建成功后,会自动的创建和用户同名的目录。这个目录位于/home下面。
  • 也可以通过 useradd -d来指定目录新的用户名,给新的用户名指定目录
[root@xq100 home]# useradd -d /home/test king # 创建一个用户名为king的用户 用户目录位于/home/test
[root@xq100 home]# cd /home
[root@xq100 home]# ll
total 0
drwx------. 3 kobe kobe  78 Aug 27 17:49 kobe
drwx------. 3 king king  78 Aug 27 17:52 test
drwx------. 5 xq   xq   147 Aug 27 16:02 xq

1.6.2 给用户添加密码

创建密码的命令: passwd 用户名

[root@xq100 home]# passwd kobe # 给kobe这个用户设置密码
Changing password for user kobe.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.

我们执行logout指令,然后使用kobe进行登录,发现可以成功登录。

1.6.3 删除用户

删除用户有两种情况,一种是删除用户,保存用户对应的目录。还有一种是删除用户,连用户对应的目录也删除掉。

  • 删除用户,保存用户对应的目录

userdel 用户名

注意,我们切换到root用户下面,执行用户的删除操作。

[root@xq100 home]# userdel kobe
[root@xq100 ~]# cd /home
[root@xq100 home]# ll
total 0
drwx------. 5 1001 1001 147 Aug 27 18:03 kobe  # 我们发现用户所属的目录还在
drwx------. 3 king king  78 Aug 27 17:52 test
drwx------. 5 xq   xq   147 Aug 27 16:02 xq
  • 删除用户,对应的用户目录也删除掉

userdel -r 用户名

[root@xq100 home]# useradd lisi  #创建用户lisi
[root@xq100 home]# ll
total 0
drwx------. 5 lisi lisi 147 Aug 27 18:03 kobe
drwx------. 3 lisi lisi  78 Aug 27 18:09 lisi
drwx------. 5 xq   xq   147 Aug 27 16:02 xq
[root@xq100 home]# userdel -r lisi  # 删除用户的同时也删除lisi对应的目录
[root@xq100 home]# ll
total 0
drwx------. 5 1001 1001 147 Aug 27 18:03 kobe
drwx------. 5 xq   xq   147 Aug 27 16:02 xq

1.6.4 查询用户信息

  • 查询用户的详细信息

id 用户名

[root@xq100 home]# id root
uid=0(root) gid=0(root) groups=0(root)
[root@xq100 home]# id kobe
uid=1001(kobe) gid=1001(kobe) groups=1001(kobe)

uid: 用户id gid:用户组id groups:组名

  • 查看当前的用户的信息

who am i / whoami

[root@xq100 home]# who am i
root     pts/1        2022-08-27 18:06 (192.168.10.1)
  • 切换用户

su 用户名

注意:从高级别的用户切换到低级别的用户不需要输入密码。比如从root切换到kobe用户。

从低级别的用户输入到高级别的用户,需要输入密码。必须从kobe用户切换到root用户。

[root@xq100 home]# su kobe  #从root切换到kobe 不需要输入密码
[kobe@xq100 home]$ whoami
kobe
[kobe@xq100 home]$ su root   #从kobe切换到root 需要输入密码
Password: 
[root@xq100 home]#

1.6.5 用户组

用户组类似于角色,系统可以对有共性(权限)的多个用户进行统一管理。我们可以通过下面一幅图来理解组的概念。

  • 创建、删除用户组

groupadd 组名

[root@xq100 ~]# groupadd gaibang  #创建一个组

groupdel 组名

[root@xq100 ~]# groupdel gaibang  #删除一个组
  • 增加用户的时候,直接指定组名称

之前我们创建用户的时候,没有指定组,其实系统会自动给用户分配一个组,这个组的名称和用户名称是一样的。

现在我们创建用户的时候直接指定组名称。

基本语法: useradd -g 用户组 用户名

[root@xq100 ~]# useradd -g gaibang guojing #创建用户指定组名称
[root@xq100 ~]# id guojing
uid=1002(guojing) gid=1002(gaibang) groups=1002(gaibang)
  • 修改用户所在组

比如我们之前有一个用户guojing,所在组为gaibang。现在我们想将guojing这个用户放在taohuadao这个组里面去(前提是这个组必须存在)。

基本语法: usermod -g 用户组 用户名

[root@xq100 ~]# groupadd taohuadao   #创建组 名称为taohuadao
[root@xq100 ~]# usermod -g taohuadao guojing  #将用户guojing移动到taohuadao这个组里面去
[root@xq100 ~]# id guojing
uid=1002(guojing) gid=1003(taohuadao) groups=1003(taohuadao)
  • 用户和组相关的文件

(1)/etc/passwd文件

用户的配置文件,记录用户的各种信息。

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

使用cat命令浏览这个文件: cat /etc/passwd

xq:x:1000:1000:xq:/home/xq:/bin/bash
kobe:x:1001:1001::/home/kobe:/bin/bash
guojing:x:1002:1003::/home/guojing:/bin/bash

(2)/etc/shadow文件

口令的配置文件,用户登录的时候需要口令(密码)。口令的验证都是通过这个shadow文件去验证的。

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

xq:$6$O2FlTZ6TIC6rD2dZ$xQb7mhEuE10P4lodcj5OaGhU5FqrdO7FifH2VjSvwPouqzGLrtTdZLtG8L3l2AvnFQi47x0uRLYMt6LMGWHfc0::0:99999:7:::
kobe:$6$Ij/jhx8A$CYTNMbK0N0DQOIh6A6qQ0Ucnst6GcNTHeS1X4pca3MwXI1ntM0NWsA0/HfUZTrgZKzUPC5m0ZBhpiLG9ZZlrw.:19231:0:99999:7:::
guojing:!!:19231:0:99999:7:::

我们发现guojing这个用户没有加密口令,所以没有显示。我们给guojing这个用户设置密码就可以看到加密口令了。

guojing:$6$.AdhAmZA$gbKCNrwqHBZAot8DxqxrtA7a0uCtc07iKnQltVWdLAk20wLg/58eHF5Ude81Zoo8P.onVZbS0wh/acETjipEv1:19231:0:99999:7:::

(3)/etc/group文件

组的配置信息,记录linux包含的组的信息

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

1.7 linux运行级别

  • linux操作系统运行的7种级别

关于linux的运行级别,一共有7种,我们给大家分别介绍一下:

0:关机

1:单用户(找回用户丢失的密码,可以使用单用户模式)

2:多用户状态但没有网络服务(一般很少用)

3:多用户状态但有网络服务(没有图形化界面,但是有网络,这种用的最多)

4:系统未使用,保留给用户(很少用)

5:图形界面

6:系统重启

常用的运行级别是3和5,我们也可以指定系统默认的运行级别。

切换运行级别的口令: init[0 1 2 3 4 5 6]

我们在linux操作系统(带有图形化界面的操作系统)输入init 3。此时linux操作系统就会以纯命令行模式启动

  • 如何修改linux操作系统默认的运行级别

在centos7中,有一个文件/etc/inittab文件中,描述了运行级别的相关信息

现在我们就来演示linux操作系统的运行级别:

[root@xq100 ~]# systemctl get-default  #获取linux操作系统默认的运行级别
graphical.target   # 图形化的运行级别
[root@xq100 ~]# systemctl set-default multi-user.target  # 设置linux操作系统默认的运行级别为纯命令行级别
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
[root@xq100 ~]# reboot

建议:同学们在初学的时候,还是使用带有图形化界面的运行级别。

标签: linux

本文转载自: https://blog.csdn.net/keep_contact/article/details/127975853
版权归原作者 康来个程 所有, 如有侵权,请联系我们删除。

“新鲜出炉,Linux眼花缭乱的小寄巧”的评论:

还没有评论