做网站的工具有哪些/apple日本网站
一、为什么需要远程Linux
相信大家在学习Linux时,要么是使用Linux的虚拟机或者在物理机上直接安装Linux。这样确实非常方便,我们也能直接看到Linux的桌面或者终端。既然我们都能直接看到终端或者Linux的桌面了,那我们为什么还要远程Linux呢?其实,在实际的生产环境中我们对于服务器的控制,基本都采用远程连接。或者在我们的嵌入式开发中,我们如果没有显示器的话,对我们的开发板也采用远程。可能一开始你并不适应远程Linux,觉得这种方法既卡顿部署又麻烦。但是当你习惯了远程Linux的方法以后,你会觉得这种方法非常易用并且高效,能极大提高你的生产效率。下面,我们就来学习一些常见的Linux的远程方法吧!
二、Linux常见的远程方式
在Linux中我们的远程分为了终端远程,文件远程传输,桌面远程。下面我们来详细介绍一下。首先是终端远程,顾名思义就是只有终端和字符的远程,我们通过命令行的方式对Linux进行控制,当然这种远程在你Linux上不管有没有安装图形化都可以使用。当然终端远程需要你具有一定的Linux操作基础。对于Linux文件远程传输我们常常采用Samba和SFTP等服务,这些文件服务能让我们快速的往Linux上传文件并且在传输过程中进行一定的加密。然后就是Linux的远程桌面。这里远程Linux桌面的前提就是Linux安装了桌面的环境。这里我们常用的是VNC桌面和RDP桌面,这些远程桌面协议能让我们通过图形化的方式访问Linux,可以说是非常方便。下面就让我来教大家如何配置这些常见的Linux远程吧!
三、Linux远程终端(SSH)
对于Linux用得最多的终端远程协议,那当然是SSH啦。并且现在在很多终端中也都支持SSH,比如在我们Windows的Powershell中就支持使用SSH直接连接Linux。目前非常多的Linux远程工具都附带了SSH协议,可以说SSH协议已经成为Linux远程终端的标配协议了。下面就让我们来看看,怎么配置SSH吧!
1.SSH工具的选择
既然我们要使用SSH去连接Linux,那么SSH的工具书不可或缺的。下面我会为大家推荐常用的SSH工具,大家根据自己的喜好进行选择。
我首先推荐的当然是Windows自带的SSH工具——位于Powershell中的ssh命令工具,我们可以在打开Powershell后直接使用ssh命令来连接一个Linux服务器,就像这样:
这里的命令也是非常的简单,下面我来解释一下。
首先就是ssh这是ssh命令的关键字。后面的root表示要登录Linux的用户名。@后面就是要远程的Linux的IP地址。是的就是这么简单,如果你的Linux的SSH端口不是默认的22端口,可以加上-p选项指定端口,就像下面这样:
ssh root@39.101.179.176 -p 25565
除了Windows自带的SSH工具,我们还可以选择一些开源的SSH工具,这一类工具往往有精美的界面也支持终端字符高亮,看起来也是非常的赏心悦目。
这里我向大家推荐“WindTerm”远程工具,作为一款在github开源的远程工具,其中就包含了SSH远程与串口终端等常见的远程方式,可以说非常易用,下面是项目的开源地址:
WindTerm开源地址:kingToolbox/WindTerm: A professional cross-platform SSH/Sftp/Shell/Telnet/Serial terminal. (github.com)
大家下载安装好以后点击“会话”:
再点击“新建会话”:
这里我们选择SSH:
这里我们输入主机的IP地址下面选择Linux:
随后点击“连接”:
下面我们输入用于登录Linux的用户名和密码:
后面就登录成功了:
如果大家有更好的SSH工具,当然也可以使用,这里就推荐给大家我最常用的两款SSH工具。
2.在Linux中打开SSH功能
对于不同的发行版,打开SSH的步骤也不同,对于Centos打开SSH就相对会简单一些,对于Ubuntu系列的Linux打开SSH就相对会麻烦一些。下面这两种系统打开SSH功能的方式我都会讲,具体演示这里使用Centos7和Ubuntu20.04进行。其它版本也都是一样的。下面我们分情况讨论:
3.Centos配置SSH功能
首先还是使用“ifconfig”命令查看Linux的IP地址:
这里要保证Linux主机和远程用的主机处于同一个网段或者Linux主机具有公网IP。
我们可以看到这里的Linux主机是在内网的一个网段内。Centos在默认的安装状态下,它的SSH是默认打开的,我们无需进行操作就可以直接连接了。下面我将在Powershell中演示连接:
这里我们输入远程命令后输入密码就连接上了,可以说是非常简单的。
4.Ubuntu配置SSH功能
Ubuntu打开SSH功能可能稍微复杂一些,下面我将使用Ubuntu20.04进行演示。首先登录我们的Ubuntu:
如上图,这里使用Ubuntud的20.04进行演示。
我们打开Ubuntu的终端查看Linux主机的IP地址:
对于Ubuntu,它默认不打开SSH,为了配置方便,我们这里安装一个工具来帮我们配置SSH。我们使用下面的命令来安装SSH工具:
sudo apt install openssh-server
在安装完成以后,我们使用下面的命令来查看openssh有没有启动:
sudo systemctl status sshd
这里我们可以看到openssh服务已经启动了。
如果这里你的openssh服务没有启动的话,使用下面的命令来启动openssh服务:
sudo systemctl start sshd
在openssh服务启动以后,我们就可以准备SSH连接了。我们这里同样使用Powershell来进行远程。使用下面的命令:
ssh chulingxiao@192.167.117.101
我们可以看到这里已经远程到了:
注意,在Ubuntu中最好不要使用root进行远程,尽管你已经设置了root用户的密码,但是仍然可能有一些意想不到的问题。
至此,我们Linux的SSH配置就已经完成了,尽管我们只演示了两个发行版,但是其它的发行版的操作都很类似,大家按照上面的步骤操作即可。
四、Linux远程文件(SFTP)
当我们安装了openssh服务以后,SFTP文件服务是被默认安装的。我们直接就能登录到SFTP服务器。我们可以在windows的Powershell中输入下面的命令来登录SFTP服务器:
sftp username@server_ip
这里和SSH登录时很像,这里的sftp表示关键字,后面的username表示要登录SFTP服务器的用户名,@后面跟着的是服务器的IP地址,这里我使用安装了openssh服务的Ubuntu20.04进行演示:
可以看到,当我们输入命令以后,和SSH一样会提示我们输入密码,这里我们输入用户的密码就登录成功了。
在成功登录SFTP服务器以后,我们就能对我们Linux主机的文件进行操作了,下面我们来看一条向Linux服务器提交文件的命令:
put local_file remote_file
这里的local_file表示的是本机文件路径,remote_file表示的是在Linux主机上的文件路径。
下面我们就来演示一下。加入我想将桌面的这个文件提交到Linux主机:
我们使用下面的命令:
put C:\Users\85884\Desktop\芙宁娜图片合集.zip \home\chulingxiao\芙宁娜图片合集.zip
这里的路径大家尽量使用绝对路径。不管是本机还是Linux主机都使用绝对路径,下面就是上传结果了:
我们在Linux主机中,也可以去到对应的文件夹查看文件:
我们可以看到这里文件已将到文件夹中了。
我们也可以在自己的主机上,远程拉取Linux主机上的文件,我们在Linux的目录中新建一个文件,如图:
我们拉取Linux文件使用的是下面的命令,当然,使用下面命令的前提也是登录SFTP服务器。
get remote_file local_file
这里的get就表示拉取命令,这里的remote_file表示我们要拉取的Linux主机的文件,local_file表示拉取到主机上的文件路径和文件名,我们可以使用下面的命令来拉取上面的“test”文件:
get \home\chulingxiao\test C:\Users\85884\Desktop\test
这里可以看到已经拉取完成了,我们的桌面上也出现了我们拉取过来的文件:
至此,我们SFTP传输文件服务就已经完成了。
五、RDP远程服务搭建
前面的那些远程服务基本都是对Linux进行基本的操作,对于新手来说可能不怎么友好,所以我们还是要建立一个图形化的远程方式,这里我们首先就是推荐大家使用RDP桌面。因为部署简单,并且我们使用Windows自带的远程桌面就能直接连接Linux主机。当然,使用RDP的前提就是,具有Linux的桌面环境,像下面的Ubuntu20.04一样,就是具有桌面环境的:
在有桌面环境以后,我们就可以使用下面的命令直接开始安装RDP了:
sudo apt install xrdp
在安装好xrdp以后,我们可以使用下面的命令来查看xrdp是否启动:
systemctl status xrdp
这里可以看到,我的xrdp已经启动了:
这里查询完以后,按Q退出。
如果你的xrdp没有启动,可以使用下面的命令来启动xrdp:
sudo systemctl start xrdp
在确定xrdp启动成功以后,我们就可以使用Windows的远程桌面来连接Linux主机:
在输入了Linux主机的IP地址以后,点击连接,弹出如下窗口点击“是”:
下面我们要全屏:
我们输入用户名和密码:
注意,如果这里你使用自己的用户登录xrdp,登录是瞬间闪退,就换成root用户登录,这里需要改一下root用户的密码,可以看到,我们已经远程进来了:
登录进来后,点击左上角的“活动”,我们这样也可以使用Ubuntu的各种功能了:
至此,我们RDP的远程环境就搭建完成啦,是不是非常简单,如果你发现你使用RDP连接Linux主机时出现黑屏或者蓝屏可以去浏览器中搜索相关解决方案。注意,这里的RDP连接方式不适用于一些嵌入式开发板,如果你想远程嵌入式开发板建议使用别的方案或者只使用SSH。
六、结语
这里已经向大家介绍了Linux的常见远程方式,希望这些远程方式都能在你的工作和学习中帮到你,那么,感谢大家的观看!
相关文章:

[Linux]从零开始的Linux的远程方法介绍与配置教程
一、为什么需要远程Linux 相信大家在学习Linux时,要么是使用Linux的虚拟机或者在物理机上直接安装Linux。这样确实非常方便,我们也能直接看到Linux的桌面或者终端。既然我们都能直接看到终端或者Linux的桌面了,那我们为什么还要远程Linux呢&a…...

手机改IP地址怎么弄?全面解析与操作指南
在当今数字化时代,IP地址作为设备在网络中的唯一标识,其重要性不言而喻。有时候,出于隐私保护、网络访问需求或其他特定原因,我们可能需要更改手机的IP地址。然而,对于大多数普通用户来说,如何操作可能还是…...

【React】useState 和 useRef:项目开发中该如何选择
如果你正踏入用 React 进行网页开发的世界,那你可能已经遇到了像 useState 和 useRef 这样的术语。这两个 Hook 在构建交互性和动态组件时起着至关重要的作用。 下面,我们将探讨它们是什么,它们的功能,它们的区别,并通…...

python装饰器用法
为什么用装饰器? 第一个原因是,使用装饰器可以提升代码复用,避免重复冗余代码。如果我有多个函数需要测量执行时间,我可以直接将装饰器应用在这些函数上,而不是给多个函数加上一样的代码。这样的代码既元余也不方便后…...

AI 写作太死板?原因竟然是这个!
有些同学跟我埋怨说AI生成的文章太死板,一堆的“首先、其次、然后、再次、接着、总而言之……”,说话太官方,内容还很水。 想要让它模仿谁的语气,或者谁的文章,一点儿都不像。 名人都不模仿不了,更别说模…...

ansible实用模块
简介 ansible是基于 paramiko 开发的,并且基于模块化工作,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。ansible不需要在远程主机上安装client/agents,因为它们是基于ssh来和远程主机通讯的。…...

【JavaScript】JIT
JIT实际上指,JS的编译过程、运行时。 Just in Time 在传统的编译语言里,比如JAVA、Go等,是提前编译的,它们的执行是先在本地编译出一个"东西",然后在放到服务器上运行。 提前编译的三大过程: …...

Matlab实现麻雀优化算法优化回声状态网络模型 (SSA-ESN)(附源码)
目录 1.内容介绍 2.部分代码 3.实验结果 4.内容获取 1内容介绍 麻雀搜索算法(Sparrow Search Algorithm, SSA)是一种新兴的群体智能优化算法,灵感来源于麻雀的觅食行为及其在面临危险时的预警机制。SSA通过模拟麻雀的这些自然行为来寻找问题…...

从 TCP Reno 经 BIC 到 CUBIC
重读 TCP拥塞控制算法-从BIC到CUBIC 以及 cubic 的 tcp friendliness 与拐点控制 这两篇文章,感觉还是啰嗦了,今日重新一气呵成这个话题。 reno 线性逼近管道容量 Wmax,相当于一次查询(capacity-seeking),但长肥管道从 0.5*Wmax …...

工厂模式与建造者模式的区别
在软件设计中,工厂模式和建造者模式是两种常见的设计模式,它们都是用于创建对象,但是各自有不同的应用场景和目的。本文将通过餐馆点餐的例子,深入探讨这两种模式的区别。 工厂模式 工厂模式的核心思想是通过一个抽象工厂类来创…...

电脑usb接口封禁如何实现?5种禁用USB接口的方法分享!(第一种你GET了吗?)
“防患于未然,安全始于细节。”在信息技术飞速发展的今天,企业的信息安全问题日益凸显。 USB接口作为数据传输的重要通道,在带来便利的同时,也成为了数据泄露和安全风险的高发地。 因此,对电脑USB接口进行封闭管理&a…...

有效的括号
有效的括号 思路:我们先创建一个栈,让左括号入栈,与右括号判断 Stack stacknew Stack<>(); 将字符串中的符号转化为字符 char ch s.charAt(i); 完整代码如下: class Solution {public boolean isValid(String s) {if (s …...

Vue3.0面试题汇总
Composition API 可以说是Vue3的最大特点,那么为什么要推出Composition Api,解决了什么问题? 通常使用Vue2开发的项目,普遍会存在以下问题: 代码的可读性随着组件变大而变差每一种代码复用的方式,都存在缺…...

TCP编程:从入门到实践
目录 一、引言 二、TCP协议原理 1.面向连接 2.可靠传输 三、TCP编程实践 1.TCP服务器 2.TCP客户端 四、总结 本文将带你了解TCP编程的基本原理,并通过实战案例,教你如何在网络编程中运用TCP协议。掌握TCP编程,为构建稳定、高效的网络通信…...

Python NumPy 数据分析:处理复杂数据的高效方法
Python NumPy 数据分析:处理复杂数据的高效方法 文章目录 Python NumPy 数据分析:处理复杂数据的高效方法一 数据来源二 获取指定日期数据三 获取指定行列数据四 求和计算五 比例计算六 平均值和标准差七 完整代码示例八 源码地址 本文详细介绍了如何使用…...

【Preference Learning】Reasoning with Language Model is Planning with World Model
arxiv: https://arxiv.org/abs/2305.14992 问题背景:当前LLM推理受到几个关键因素的限制: (1)LLM缺乏世界模型(一种人类就有的对环境的心理表征,可以模拟行动以及活动对外部世界状态的影响)去…...

OJ在线评测系统 后端基础部分开发 完善CRUD相关接口
完善相关接口 判斷编程语言是否合法 先从用户的请求拿到Language package com.dduo.dduoj.service.impl;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dduo.dduoj…...

计算机网络--TCP、UDP抓包分析实验
计算机网络实验 目录 实验目的 实验环境 实验原理 1、UDP协议 2、TCP协议 实验具体步骤 实验目的 1、掌握使用wireshark工具对UDP协议进行抓包分析的方法,掌握UDP协议的报文格式,掌握UDP协议校验和的计算方法,理解UDP协议的优缺点&am…...

FreeRTOS的中断管理
前言 FreeRTOS的任务有优先级,MCU的硬件中断有中断优先级,这是两个不同的概念,FreeRTOS的任务管理要用到硬件中断,使用FreeRTOS时候也可以使用硬件中断,但是硬件中断ISR的设计要注意一些设计原则,在本节中我…...

JS加密=JS混淆?(JS加密、JS混淆,是一回事吗?)
JS加密、JS混淆,是一回事吗? 是的!在国内,JS加密,其实就是指JS混淆。 1、当人们提起JS加密时,通常是指对JS代码进行混淆加密处理,而不是指JS加密算法(如xor加密算法、md5加密算法、…...

hive-拉链表
目录 拉链表概述缓慢变化维拉链表定义 拉链表的实现常规拉链表历史数据每日新增数据历史数据与新增数据的合并 分区拉链表 拉链表概述 缓慢变化维 通常我们用一张维度表来维护维度信息,比如用户手机号码信息。然而随着时间的变化,某些用户信息会发生改…...

高并发内存池(六):补充内容
目录 有关大于256KB内存的申请和释放处理方法 处理大于256KB的内存申请 补充内容1 补充内容2 补充内容3 处理大于256KB的内存释放 新增内容1 新增内容2 测试函数 使用定长内存池替代new 释放对象时不传对象大小 补充内容1 补充内容2 补充内容3 补充内容4 测试…...

高性能存储 SIG 月度动态:优化 fuse 提升 AI 存储接入能力,erofs 工具发布新版本
本次月报综合了 SIG 在 7、8 两个月的工作进展,包含多项新特性、优化、Bugfix 等。 SIG 整体进展 fuse 支持 failover,并优化 background 读写公平性,提升 AI 存储接入场景的能力。 erofs page cache 共享特性已发到上游社区,re…...

2024 年最新 Protobuf 结构化数据序列化和反序列化详细教程
Protobuf 序列化概述 Protobuf(Protocol Buffers)是由Google开发的一种语言中立、平台中立、可扩展的序列化结构数据的方法。它用于在不同系统之间高效地交换数据。Protobuf使用定义文件(.proto)来描述数据结构,并通过…...

【小程序】微信小程序课程 -4 项目实战
目录 1、 效果图 2、创建项目 2.1 创建小程序端 2.1.1 先创建纯净项目 2.1.2 删除components 2.1.4 删除app.json红色部分 2.1.5 删除index.json红色部分 2.1.6 删除index.wxss全部内容 2.1.7 删除index.wxml全部内容 2.1.8 app.json创建4个页面 2.1.9 app.json添加…...

【期刊】论文索引库-SCI\SSCI\IE\南大核心\北大核心\CSCD等
外文期刊检索 SCI SCI即《科学引文索引》(Science Citation Index),是由美国科学信息研究所(Institute for Scientific Information)创建于1961年,收录文献的作者、题目、源期刊、摘要、关键词,不仅可以从文献引证的角度评估文章的学术价值,还可以迅速方便地组建研究课…...

开源链动 2+1 模式 S2B2C 商城小程序:社交电商团队为王的新引擎
摘要:本文深入探讨在社交电商领域中,团队的重要性以及如何借助开源链动 21 模式 S2B2C 商城小程序,打造具有强大竞争力的团队,实现个人价值与影响力的放大,创造被动收入,迈向财富自由之路,同时为…...

使用Fiddler Classic抓包工具批量下载音频资料
1. 通过F12开发者工具,下载音频文件 浏览器打开音频列表->F12快捷键->网络->媒体,播放一个音频文件,右边媒体下生成一个音频文件,右击“在新标签页中打开”,可以下载这个音频文件。 2.通过Fiddler Classic抓…...

QT开发:基于Qt实现的交通信号灯模拟器:实现一个带有倒计时功能的图形界面应用
介绍 本文将介绍如何使用Qt框架实现一个简单的交通信号灯控制程序。本程序包括一个图形界面,显示红、黄、绿三色信号灯,并通过定时器控制信号灯的切换。同时,我们还将实现一个带有按钮的界面,用于展示信号灯的状态。 1. 安装Qt开…...

【编程基础知识】网络I/O模型详解:从阻塞到异步
引言 网络I/O模型是网络编程的核心,它们决定了应用程序如何进行读写操作以与网络进行数据交换。了解不同的网络I/O模型对于设计高效、可扩展的网络应用程序至关重要。 一、阻塞I/O(Blocking I/O) 1. 定义 阻塞调用:当应用程序…...