【快速入门Linux】5_Linux命令—远程管理常用命令

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 【快速入门Linux】5_Linux命令—远程管理常用命令

一、关机/重启


关机和重启操作只有管理员可以执行。


序号 命令 对应英文 作用
01 shutdown 选项 时间 shutdown 关机/重新启动


1.1 关机命令

# 立刻马上关机
$ shutdown -h now
# 60分钟(1个小时)后关闭
$ shutdown -h 60
# 系统在今天的 20:25 会关机
$ shutdown 20:25
# 系统再过十分钟后自动关机
$ shutdown +10
# 取消之前指定的关机计划
$ shutdown -c


说明:如果取消在另一个终端使用 shutdown -c 或者直接 ctrl c


1.2 重启命令

# 重启系统
$ reboot
# 立刻马上重启系统,其中 now 表示现在
$ shutdown -r now
# 30分钟后重启系统
$ shutdown -r 30


1.3 shutdown


  • shutdown 命令可以 安全关闭 或者 重新启动系统


选项 含义
-r 重新启动


提示:

  • 不指定选项和参数,默认表示 1 分钟之后 关闭电脑
  • 远程维护服务器时,最好不要关闭系统,而应该重新启动系统


二、查看或配置网卡信息


序号 命令 对应英文 作用
01 ifconfig configure a network interface 查看/配置计算机当前的网卡配置信息
02 ping ip地址 ping 检测到目标 ip地址 的连接是否正常


2.1 网卡 和 IP 地址


2.1.1 网卡


网卡是一个专门负责网络通讯的硬件设备

IP 地址是设置在网卡上的地址信息

我们可以把 电脑 比作 电话,网卡 相当于 SIM 卡,IP 地址 相当于 电话号码


2.1.2 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 这个命令就是取自 声纳的声音

网络管理员之间也常将 ping 用作动词 —— ping 一下计算机X,看他是否开着

原理:网络上的机器都有 唯一确定的 IP 地址,我们给目标 IP 地址发送一个数据包,对方就要返回一个数据包,根据返回的数据包以及时间,我们可以确定目标主机的存在


提示:在 Linux 中,想要终止一个终端程序的执行,绝大多数都可以使用 CTRL + C


三、远程登录和复制文件



序号 命令 对应英文 作用
01 ssh 用户名@ip secure shell 关机/重新启动
02 scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 secure copy 远程复制文件


3.1 ssh 基础(重点)


在 Linux 中 SSH非常常用 的工具,通过 SSH 客户端 我们可以连接到运行了 SSH 服务器 的远程机器上


7c45ef54fd0c17456a2dc656b17831bd.png


SSH 客户端是一种使用 Secure Shell(SSH) 协议连接到远程计算机的软件程序

SSH 是目前较可靠,专为远程登录会话和其他网络服务 提供安全性的协议

利用 SSH 协议 可以有效防止远程管理过程中的信息泄露

通过 SSH 协议 可以对所有传输的数据进行加密,也能够防止 DNS 欺骗和 IP 欺骗

SSH 的另一项优点是传输的数据可以是经过压缩的,所以可以加快传输的速度


3.1.1 域名 和 端口号


1)域名


由一串 用点分隔 的名字组成,例如:www.itcast.cn

是 IP 地址 的别名,方便用户记忆


2)端口号


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 http://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

XShell http://xshellcn.com (安装时,选择 免费为家庭/学校)

建议从官方网站下载正式的安装程序


3.2 scp(远程拷贝文件命令)


scp 就是 secure copy,是一个在 Linux 下用来进行 远程拷贝文件 的命令

它的地址格式与 ssh 基本相同,需要注意的是,在指定端口时用的是大写的 -P 而不是小写的


8522aadad06d500c06457b4c2b4e8206.png

# 把本地当前目录下的 01.py 文件 复制到 远程 家目录下的 Desktop/01.py
# 注意:`:` 后面的路径如果不是绝对路径,则以用户的家目录作为参照路径
scp -P port 01.py user@remote:Desktop/01.py
scp -P 22 01.py ggk@172.16.140.138: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 选项指定端口


注意:


scp 这个终端命令只能在 Linux 或者 UNIX 系统下使用

如果在 Windows 系统中,可以安装 PuTTY,使用 pscp 命令行工具或者安装 FileZilla 使用 FTP 进行文件传输


3.3 FileZilla (传输文件)


官方网站:https://www.filezilla.cn/download/client

FileZilla 在传输文件时,使用的是 FTP 服务 而不是 SSH 服务,因此端口号应该设置为 21


3.4 SSH 高级(知道)


免密码登录

配置别名

提示:有关 SSH 配置信息都保存在用户家目录下的 .ssh 目录下

python@ubuntu:~$ ls -alh
python@ubuntu:~$ cd .ssh
python@ubuntu:~/.ssh$ ls -alh


总用量 20K

drwx------ 2 python python 4.0K 5月 19 2016 .

drwxr-xr-x 33 python python 4.0K 9月 12 17:13 …

-rw------- 1 python python 1.7K 5月 19 2016 id_rsa

-rw-r–r-- 1 python python 395 5月 19 2016 id_rsa.pub

-rw-r–r-- 1 python python 884 5月 19 2016 known_hosts


python@ubuntu:~/.ssh$ cat known_hosts   # 显示第一次连接的信息。


3.4.1 免密码登录


1)步骤


  • 配置公钥
  • 执行 ssh-keygen 即可生成 SSH 钥匙,一路回车即可
python@ubuntu:~$ ssh-keygen
python@ubuntu:~/.ssh$ ls
id_rsa  id_rsa.pub  known_hosts
python@ubuntu:~/.ssh$ cat id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7DJ/wRRL6nRKt0zjvRHApRK6xL45gVTdZBisPFgUgs2TEB2yoCKFU6/g9xiIPiEd4XB4ndpczl0r4N6lEQX51bCFkDD7xLA0Gvcn98H9CshilCTdzgiRK0x7xsqggTv+IZ9sUZMgqtK13Rqqwe8DdDby9bEj1D0SbNZHNBuDVwx7EdF8sDcVWx4hOcazJyX+IuHz4lyFRIWy8TMddYNyst0K56bqy6C3qe3F3XaruI87TwFo/MJSPE1iVPh9JE6aMF1wL/hE17J+yNw5wqi+cxAuho


  • 上传公钥到服务器
  • 执行 ssh-copy-id -p port user@remote,可以让远程服务器记住我们的公钥


ssh-copy-id -p port user@remote


a39aa5bc3c81fe9daeeb21001232c6d2.png


非对称加密算法


使用 公钥 加密的数据,需要使用 私钥 解密

使用 私钥 加密的数据,需要使用 公钥 解密


3.4.2 配置别名


每次都输入 ssh -p port user@remote,时间久了会觉得很麻烦,特别是当 user, remote 和 port 都得输入,而且还不好记忆


而 配置别名 可以让我们进一步偷懒,譬如用:ssh mac 来替代上面这么一长串,那么就在 ~/.ssh/config 里面追加以下内容:

python@ubuntu:~/.ssh$ ls
id_rsa  id_rsa.pub  known_hosts
python@ubuntu:~/.ssh$ touch config
config id_rsa  id_rsa.pub  known_hosts
python@ubuntu:~/.ssh$ gedit config  

然后输入以下信息:


Host mac(设置主机别名)
    HostName ip地址(远程服务器的IP地址)
    User itheima(远程计算机用户名)
    Port 22


保存之后,即可用 ssh mac 实现远程登录了,scp 同样可以使用

目录
相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
139 8
|
2月前
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
112 2
|
30天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
54 14
Linux 10 个“who”命令示例
|
9天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
32 8
|
19天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
104 20
|
19天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
48 7
|
2月前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
37 9
|
2月前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
2月前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
165 3
|
2月前
|
存储 运维 Linux
如何在 Linux 系统中使用 envsubst 命令替换环境变量?
`envsubst` 是 Linux 系统中用于替换文本中环境变量值的实用工具。本文分三部分介绍其工作原理、使用方法及实际应用,包括配置文件替换、脚本执行中环境变量替换和动态生成文件等场景,帮助用户高效利用 `envsubst` 进行开发和运维工作。
77 4