一、总体概述
- 1.1、关机/重启
shutdown
- 1.2、查看和配置网卡信息
ifconfig
、ping
- 1.3、远程登录和复制文件
ssh
、scp
二、关机/重启
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | shutdown选项 时间 | shutdown | 关机/重新启动 |
- 2.1、shutdown 命令可以 安全 关闭 或者 重新启动系统
选项 含义 - r 重新启动(重启的意思) -
提示:
- 不指定选项和参数,默认 1 分钟 之后 关闭电脑
- 远程维护服务器时,最好不要关闭系统,而应该重新启动系统
-
常用的命令如下:(如果不是超级管理员就在指令前加上
sudo
,如:sudo shutdown -r now
:重新启动操作系统)$ shutdown -r now : 重新启动操作系统 ,其中 now 表示现在 $ shutdown now :立刻关机,其中 now 表示现在 $ shutdown 20:25 :系统在今天 20:25 会关机 $ shutdown +10 : 系统会在十分钟后自动关机 $ shutdown -c : 取消之前的关机计划
-
三、网卡和IP地址
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | ifconfig | configure a network interface | 查看/配置计算机当前的网卡配置信息 |
02 | ping ip 地址 | ping | 检测到目标 ip 地址 的链接是否正常 |
-
3.1、网卡:
- 是一个专门负责网络通讯录的硬件设备
- IP地址是设置在网卡上的地址信息
我们可以把 电脑 比作 电话,网卡 相当于 SIM 卡,IP地址相当于 电话号码
-
3.2、IP地址:每台联网的计算机上都有 IP 地址,是保证电脑之间正常通讯的重要设置
注意:每台电脑的IP地址不能相同,否则会出现 IP 地址冲突,并且没有办法正常通讯
-
3.3、
ifconfig
可以查看/配置计算机当前的网卡配置信息$ ifconfig 查看网卡的配置信息 $ ifconfig | grep inet 查看网卡对应的 IP 地址,inet6代表是ipv6,其他的是Ipv
提示:一台计算机中可能会有一个 物理网卡 和 多个虚拟网卡,在Linux 中物理网卡的名字通常以
ensXX
表示,127.0.0.1
被称为 本地回环/环回地址,一般用来测试本机网卡是否正常 -
3.4、
ping
$ ping IP地址 $ ping 127.0.0.1 检测本地网卡工作正常
-
ping
:一般用于检测当前计算机到目标计算机之间的网络 是否通畅,数值越大,速度越慢-
ping
的工作原理与潜水艇的声呐相似,ping
这个命令就是取自 声呐的声音 - 网络管理员之间也常将
ping
一下计算机X看他是否开着
原理:网络上的机器都有 唯一的IP地址,我们给目标IP地址发送一个数据包,对方就要回一个数据包,根据返回的数据包以及时间,我们可以确定主机的存在。
提示:在Linux中,想要终止一个终端程序的执行,绝大多数都可以使用
control + c
-
-
三、远程登录和复制文件
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | ssh 用户名@ip | secure shell | 关机/重新启动 |
02 | scp用户名@ip:文件名或路径 用户名@ip: 文件名或路径 | secure copy | 远程复制文件 |
-
3.1、ssh基础 (重点)
在 Linux 中 SSH 是 非常常用的工具,通过 SSH 客户端 我们可以连接到运行了 SSH 服务器 的远程机器上
- SSH 客户端是一种用
Secure Shell (SSH)
协议连接到远程计算机的软件程序 - SSH 是目前较可靠,专为远程登录会话和其他网络服务 提供安全性的协议
- 利用 SSH 协议可以有效防止计算机远程管理过程中的信息泄露
- 通过 SSH 协议 可以对所有传输的数据进行加密,也能防止 DNS 欺骗和IP欺骗
- SSH 的另一项优点是传输的数据可以是经过压缩的,所以可以加快传输的速度
- SSH 客户端是一种用
-
3.2、域名和端口号
- 域名:由一串 用点分割的名字组成,例如:
www.itcast.cn
,是IP地址的别名,方便用户记忆 - 端口号:通过端口号可以找到计算机上运行的应用程序,SSH 服务器的默认端口号是
22
,如果是默认端口号,在链接的时候,可以省略 - 常见的端口号:
序号 服务 端口号 01 SSH 服务器 22 02 Web 服务器 80 03 HTTPS 443 04 FTP 服务器 21
- 域名:由一串 用点分割的名字组成,例如:
-
3.3、SSH 客户端的简单实用
登陆服务器:
ssh [-p port] user@remote
:如ssh -p 22 root@47.92.215.232
退出服务器:使用exit
或者control+d
退出当前用户的登录user 是在远程计算机器上的用户名,如果不指定的话默认为当前用户
remote 是计算机器的地址,可以是 IP/域名,或者是 后面会提到的别名
port 是 SSH Server 监听的端口,如果不指定,就为默认值
22
-
提示:
- 使用
exit
或者control+d
退出当前用户的登录
注意:ssh 这个终端命令只能在 Linux 或者 UNIX 系统下使用
如果在 Windows 系统中,可以安装 PuTTY 或者 XShell 客户端软件即可
提示:在工作中,SSH 服务器的端口号很可能不是 22,如果遇到这种情况就需要使用
-p
选项,指定正确的端口号,否则无法正常连接到服务器 - 使用
-
3.4、Windows 下 SSH 客户端的安装(
全部免费,要从官网下载
)- Putty 这是 使用Putty教程
- XShell 这是 使用XShell教程
-
3.5、scp(掌握): remote是你的公网IP或者域名
scp
就是secure copy
,是一个在Linux 下用来进行 远程拷贝文件的命令-
它是 地址格式与ssh基本相同,需要注意的是,在指定端口时用的是大写的
-P
而不是小写的
说明: port:端口号,一般是 22 ,服务的根目录一般是:root
,文件夹或者目录的copy 和 文件copy差不多,就是多了一个-r
# 把本地当前目录下的 2.py 文件 复制到 远程 家目录下的 Desktop/1.py # 复制(-----文件夹-----) # 注意: `:` 后面的路径如果不是绝对路径,则以用户的家目录作为参照路径(本地文件copy到服务器root目录下) scp -P port 2.py user@remote:1.py (本地文件copy到服务器root目录下) # 把远程 家目录下的 Desktop/1.py 文件 复制到 本地当前目录下的 1.py (服务器root目录下的文件copy到本地当前位置) scp -P port user@remote:1.py 1.py (服务器root目录下的文件copy到本地当前位置) # 提示:前面的 1.py 是服务器的路径,后面的是要复制的本地路径 # 加上 -r 选项可以传送文件夹 # 把当前目录下的 demo 文件夹 复制到 远程 家目录下的 Desktop # 复制(-----文件-----) scp -r demo user@remote:Desktop # 把远程 家目录下的 Desktop 复制到 当前目录下的 demo 文件夹 scp -r user@remote:Desktop demo
选项 含义 -r 若给出的源文件是目录文件,则 scp,将递归复制该目录下所有字目录和文件,目标文件必须为一个目录名 -P 若远程 SSH 服务器的端口不是 22 ,则需要使用大写字母 -P
选项指定端口注意:
scp
这个终端命令只能在Linux
或者UNIX
系统下使用
如果在Windows
系统中,可以安装PuTTY
,使用pscp
命令行工具或者安装FileZilla
使用FTP
进行文件传输- FileZilla
- 官网网站:https://www.filezilla.cn/download/client
- FileZilla 在传输文件时,使用的是
FTP 服务
而不是SSH 服务
,因此端口号应该设置为21
- FileZilla
-
3.6、SSH 高级
免密码登录和配置别名
注意: 有关 SSH 配置信息都保存在用户家目录下的
.ssh
目录下-
1 >、[免密码登录](https://pan.baidu.com/s/1NZwYGQAAkPIQyzTBdz_mTw) 提取码: nepk
步骤:- 配置公钥:执行
ssh-keygen
即可生成 SSH 钥匙,一路回车即可 - 上传公钥到服务器:执行
ssh-copy-id -p port user@remote
,可以让远程服务器记住我们的公钥 -
示意图
-
非对称性加密
- 使用 公钥 加密的数据,需要使用 私钥 解密
- 使用 私钥 加密的数据,需要使用 公钥 解密
-
非对称性加密
- 配置公钥:执行
-
2 >、配置别名
每次输入ssh -p port username@remote
,时间久了会觉得很麻烦,特别是当username
,remote
和port
都得输入,而且还不好记忆,而 配置别名 可以让我们进一步偷懒,譬如用:ssh JKServer
来替代上面那么一长串,那么就在~/.ssh/config
里面追加以下内容:host JKServer HostName ip地址 User itheima Port 22
保存之后,即可用
ssh mac
实现远程登陆了,scp
同样可以使用。
说明: JKServer是起的别名;ip地址:ip地址;itheima:服务器的用户名,一般是 root;22:端口一般是22,其他的话就自己设置-
下面再终端起别名演示一下:
1>、进入用户目录下的 .ssh文件 cd ~/.ssh 2>、创建文件config touch config 3>、在文件 config 内写入下面的内容,输入 open config 打开文件,输入下面的内容 host 别名 HostName ip地址 User 服务器的名字(一般是root) Port 22 4>、保存内容
做完上面的操作就可以连接服务器,如下(说一下
~
:代表家目录)ssh JKServer scp -r ~/Desktop/demo JKServer: newDemo (把电脑桌面的文件夹 demo 复制到 服务器的家目录名字且新的名字叫newDemo,如果不想改名字什么都不用写即可,如: scp -r ~/Desktop/demo JKServer: )
-