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