目录
1. 关机 / 重启
2. 查看或配置网卡信息
3. 远程登录和复制文件
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
1 | shutdown 选项 时间 | shutdown | 关机 / 重新启动 |
1.1 shutdown
选项 | 含义 |
---|---|
-r | 重新启动 |
提示 :
# 重新启动操作系统, 其中 now 表示现在
$ shutdown -r now
# 立刻关机, 其中 now 表示现在
$ shutdown now
# 系统在今天前 20:00 会关机
$ shutdown 20:00
# 系统再过十分钟后自动关机
$ shutdown +10
# 取消之前指定的关机计划
$ shutdown -c
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
1 | ifconfig | configure a network interface | 查看 |
2 | ping ip地址 | ping |
2.1 ifconfig
# 查看网卡配置信息
$ ifconfig
# 查看网卡对应的 IP 地址
$ ifconfig | grep inet
ps : 127.0.0.1 被称为 本地回环 / 环回地址, 一般用来测试本机网卡是否正常
2.2 ping
# 检测到目标主机是否连接正常
$ ping IP地址
# 检测本地网卡工作正常
$ ping 127.0.0.1
ps : 在Linux 中, 想要终止一个终端程序的执行, 绝大多数都可以使用 CTRL + C
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
1 | ssh 用户名@ip | secure shell | 关机 / 重新启动 |
2 | scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 | secure copy | 远程复制文件 |
3.1 ssh 基础 (重点)
在 Linux 中 SSH 是非常常用 的工具, 通过 SSH 客户端 我们可以连接到运行了 SSH 服务端 的远程机器上
SSH 客户端 ====> SSH 服务器
数据传输是 加密 的, 可以 防止信息泄露
数据传输是 压缩 的, 可以 提高传输速度
3.2 域名和端口号
域名
端口号
序号 | 服务 | 端口号 |
---|---|---|
1 | SSH 服务器 | 22 |
2 | Web 服务器 | 80 |
3 | HTTPS | 443 |
4 | FTP 服务器 | 21 |
3.3 客户端的简单实用
ssh [-p port] user@remote
ps : 使用 exit 退出当前用户的登录
3.4 Windows 下 SSH 客户端的安装
ps : 在安装完成过后, 输入IP,点击open,会报错 putty:network error:Connection refused
这时需要在Ubuntu 安装ssh协议 , 终端执行下面代码, 然后再连接就可以了
ps : exit 是退出
$ sudo apt-get install openssh-server
3.5 scp (重要)
SSH 客户端 <====> SSH 服务端
# 把本地当前目录下 123.txt 文件 复制到 远程 家目录下的 Desktop/123.txt
# 注意: ' : ' 后面的路径如果不是绝对路径, 则以用户的家目录作为参照路径
scp -P port 123.txt user@remote:Desktop/123.txt
# 把远程 家目录下的 Desktop/123.txt 文件 复制到 本地当前目录下的 123.txt
scp -P port user@remote:Desktop/123.txt 123.txt
# 加上 -r 选项可以传送文件夹
scp -r port user@remote:Desktop/123.txt 123
选项 | 含义 |
---|---|
-r | 若给出的源文件是目录文件.则 scp 将递归复制该目录下所有子目录和文件, 目标文件必须为一个目录名 |
-P | 若远程 SSH 服务器的端口不是22, 需要使用大写 -P 选项指定端口 |
注意 :
FileZilla 下载地址
3.6 SSH 高级
ps : 有关 SSH 配置信息都保存在用户家目录下的 .ssh 目录下
1) 免密码登录
步骤
执行 ssh-keygen 即可生成 SSH 钥匙, 一路回车即可
执行 ssh-copy-id -p port user@remote, 可以让远程服务器记住我们的公钥
示意图
ps : 带pub的是公钥(public)
解读一下 非对称加密算法(密码学),
a. 客户端执行 ssh-copy-id -p port user@remote, 可以让远程服务器记住我们的公钥 ,客户端=>私钥,服务端=>公钥
b. 客户端发送数据给服务端时通过 私钥加密, 服务端通过 公钥解密 发送过来的数据.
c. 服务端发送数据给客户端时通过 公钥解密 , 客户端通过 私钥解密 发送过来的数据.
ps : 这里可以再mac上直接操作,因为mac本身就是UNIX, window不一样,如果不是mac系统,可以在创建一个虚拟机
2) 配置别名
每次都输入 ssh -p port user@remote ,时间久了会觉得麻烦, 配置别名 就是用简单的词语代替这些繁琐的东西
例 : 用 ssh mac 来代替上面一长串内容, 那么就在 ~/.ssh/config 里面追加以下内容 :
Host mac
HostName ip地址
User 用户名
port 22
保存之后, 即可用 ssh mac 实现远程登录了, scp 同样可以使用