(四)Linux 远程管理常用命令

简介: (四)Linux 远程管理常用命令

一、总体概述



  • 1.1、关机/重启
    shutdown
  • 1.2、查看和配置网卡信息
    ifconfigping
  • 1.3、远程登录和复制文件
    sshscp


二、关机/重启



序号 命令 对应英文 作用
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 服务器 的远程机器上


image.png

  • SSH 客户端是一种用 Secure Shell (SSH) 协议连接到远程计算机的软件程序
  • SSH 是目前较可靠,专为远程登录会话和其他网络服务 提供安全性的协议
  • 利用 SSH 协议可以有效防止计算机远程管理过程中的信息泄露
  • 通过 SSH 协议 可以对所有传输的数据进行加密,也能防止 DNS 欺骗和IP欺骗
  • 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 客户端的安装(全部免费,要从官网下载)



  • 3.5、scp(掌握): remote是你的公网IP或者域名


  • scp就是 secure copy,是一个在Linux 下用来进行 远程拷贝文件的命令
  • 它是 地址格式与ssh基本相同,需要注意的是,在指定端口时用的是大写的 -P 而不是小写的

image.png


  • 说明: 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


  • 3.6、SSH 高级



  • 提取码: nepk步骤:


  • 配置公钥:执行 ssh-keygen 即可生成 SSH 钥匙,一路回车即可
  • 上传公钥到服务器:执行 ssh-copy-id -p port user@remote,可以让远程服务器记住我们的公钥
  • 示意图


image.png

  • 非对称性加密
  • 使用 公钥 加密的数据,需要使用 私钥 解密
  • 使用 私钥 加密的数据,需要使用 公钥 解密
  • 2 >、配置别名每次输入 ssh -p port username@remote,时间久了会觉得很麻烦,特别是当 username,remoteport都得输入,而且还不好记忆,而 配置别名 可以让我们进一步偷懒,譬如用: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 复制到 服务器的家目录名


相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
4天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
1天前
|
监控 Linux Windows
50个必知的Linux命令技巧,你都掌握了吗?(下)
50个必知的Linux命令技巧,你都掌握了吗?(下)
|
1天前
|
Linux Shell Windows
Linux 常用基本命令
Linux 常用基本命令
|
2天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
2天前
|
Linux
【Linux】常用命令
【Linux】常用命令
21 0
|
2天前
|
安全 Ubuntu Linux
Linux 网络操作命令Telnet
Linux 网络操作命令Telnet
16 0
Linux 网络操作命令Telnet
|
3天前
|
Linux 数据安全/隐私保护
Linux常用命令实例带注释
Linux常用命令实例带注释
30 0
|
3天前
|
Linux 开发工具 数据安全/隐私保护
Linux(19)常用解压命令记录
Linux(19)常用解压命令记录
9 0
|
5天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
17 0
|
7天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
16 0