目标
- 关机/重启
shutdown
- 查看或配置网卡信息
ifconfig
ping
- 远程登录和复制文件
1. 关机/重启
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
1 | shutdown 选项 时间 | shutdown | 关机/重新启动 |
1.1 shutdown
shutdown命令可以关闭或者重新启动系统
选项 | 含义 |
---|---|
-r | 重新启动 |
提示:
- 不指定选项和参数,默认表示1min之后关闭电脑;
- 远程维护服务器时,最好不要关闭系统,而应该选择重新启动系统
常用命令示例:
# 重新启动操作系统,其中Now表示现在
$ shutdown -r now
#立刻关机
$ shutdown now
#系统在今天的20:25会关机
$ shutdown 20:25
#系统再过十分钟后自动关机
$ shutdown +10
#取消之前指定的关机计划
$ shutdown -c
2. 查看或配置网卡信息
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | ifocnfig | configure a network interface | 查看/配置计算机当前的网卡配置信息 |
02 | ping ip地址 | ping | 检测到目标ip地址的连接是否正常 |
2.1 网卡和ip地址
网卡
网卡是一个专门负责网络通讯的硬件设备
IP地址是设置在网卡上的地址信息
IP地址
每台联网的电脑上都有IP地址
注意:每台电脑的IP地址不能相同,否则会出现IP地址冲突,并且没有办法正常通讯。
2.2 ifconfig
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用作动词,测试一下计算机是否开着
原理:根据发送和返回的数据包之间的时间来确定目标主机是否存在
提示:Linux中, 如果想要停止一个终端程序的运行,绝大多数都可以使用Ctrl + C
相对于给本地的计算机发一个56字节的数据包,会返回来一个64字节的数据包,通过观察其ping值看本地网卡是否正常工作。
3. 远程登录和复制文件
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
1 | ssh 用户名@ip | secure shell | 关机/重新启动 |
2 | scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 | secure copy | 远程复制软件 |
3.1 ssh基础(重点)
在Linux中SSH是常用的工具,通过SSH客户端我们可以连接到运行了SSH服务器的远程机器上:
其中,SSH服务器和SSH客户端都是一个软件
- ssh客户端是一种使用和secure shell协议连接到远程计算机的软件程序
SSH目前比较可靠,专为远程登录会话和其他网络服务,提高安全性的协议
利用SSH协议可以有效防止远程管理过程中的信息泄露; 通过SSH协议可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗
SSH的另一项优点是传输的数据是可以经过压缩的,所以可以加快传输的速度
知识点
(1)域名和端口号
域名:
是一串用.分隔符的名字组成,例如www.itcast.cnping www.baidu.com
是IP地址的别名,方便用户记忆
端口号:
IP地址:通过IP地址找到网络上的计算机;
端口号:通过端口号可以找到计算机上运行的应用程序
SSH服务器的默认端口号是22,如果是默认端口号,在连接的时候,可以省略
常见的服务端口号列表:
序号 | 服务 | 端口号 |
---|---|---|
1 | SSH服务器 | 22 |
2 | Web服务器 | 80 |
3 | HTTPS | 443 |
4 | FTP服务器 | 21 |
在访问服务器的时候如果没有指定端口名,则会访问默认的端口,也就是上面这个列表里的端口号
(2)SSH客户端的简单使用
ssh [-p port] user@remote
如果访问的是默认端口号,可以不使用-p选项; 如果访问的不是默认端口号,必须使用-p 端口号的形式进行说明,否则没有办法正常运行
- user是在远程机器上的用户名,如果不指定的话默认为当前用户
- remote是远程机器的地址,可以是IP/域名,或者是后面会提到的别名
- port是SSH Server监听的端口,如果不指定,就为默认值22
提示:
- 使用exit退出当前用户的登录
注意:
- ssh这个终端命令只能在Linux或者Unix系统下使用;
- 如果在windows系统中,可以安装Putty或者XShell客户端软件即可。
使用该命令可以直接查看需要远程电脑的端口名
如果想要连接该网络内的其他电脑,则通过以下命令:
ssh -p 22 milanotang@192.168.65.129
(3)Windows下SSH客户端的安装
- Putty
- Xshell
3.2 scp(掌握)——远程复制文件/文件夹
- scp 就是sercure copy ,是一个在Linux下用来进行远程拷贝文件的命令
- 它的地址格式与ssh基本相同,需要注意的是,在指定端口时用的是大写的-P而不是小写的
# 把本地当前目录下的01.py 文件复制到远程家目录下的Desktop/01.py
# 注意:':'后面的路径如果不是绝对路径,则以用户的家目录作为参照路径
scp -P port 01.py user@remote:Desktop/01.py
# 把远程 家目录下的Desktop/01.py 文件复制到本地当前目录下的01.py
scp -P port user@remote:Desktop/01.py 01.py
# 加上 -r 选项可以传送文件夹
# 把当前目录下的demo 文件夹复制到远程家目录下的Desktop
scp -r demo user@remote:Desktop
# 把远程家目录下的Desktop复制到当前目录下的demo文件夹
scp -r user@remote:Desktop demo
选项 | 含义 |
---|---|
-r | 若给出的源文件是目录文件,则scp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 |
-P | 若远程SSH服务器的端口不是22,需要使用大写字母-P选项指定端口 |
其他和cp命令是一样的
将Ubuntu桌面中的一个文件复制到当前操作系统的桌面下
scp -P 22 milanotang@192.168.65.129:桌面/1.txt .
将当前系统下的文件复制到Ubuntu下:
scp -P 22 1.txt milanotang@192.168.65.129:/桌面
将Ubuntu中桌面上所有的文件都拷贝到当前的系统的demo文件夹下:
scp -P 22 -r milanotang@192.168.65.129:/桌面 demo
注意:
scp这个终端命令只能在Linux或者Unix系统下使用
- 如果在Windows系统中,可以安装Putty,使用pscp命令行工具或者安装FileZilla使用FTP进行文件传输
FileZilla
官网下载
FileZilla在传输文件时,使用的是FTP服务而不是SSH服务,因此端口号应该设置为21。
3.3 SSH高级
- 免密码登录
- 配置别名
提示:有关SSH配置信息都保存在用户家目录下的.ssh目录下
(1)免密码登录
步骤
- 配置公钥
- 执行ssh-keygen即可生成SSH钥匙,一路回车即可
- 上传公钥到服务器
- 执行ssh-copy-id -p port user@remote,可以让远程服务器记住我们的公钥
示意图
非对称加密算法: 使用公钥/私钥加密的数据,通常需要与之相反的密钥进行解密。
(2)配置别名
每次连接远程电脑的时候都需要使用ssh -p port user@remote,故配置别名来对上面一系列进行简化,比如用ssh mac来代替前面的这个字符串,即在~/.ssh/config里面追加以下内容:
Host mac /设置主机的名称,不能有空格
HostName ip地址 /输入远程服务器的ip地址
User itheima /输入远程服务器的用户名
Port 22 /输入端口
在.ssh目录下创建config文件
cd .ssh
touch config
使用geidt打开config文件并对其进行编辑
gedit config
将之前需要配置的代码复制进去
- 配置完成以后直接使用以下命令就可以连接远程计算机
ssh 设计的主机名称