Linux实操篇-远程登录/Vim/开机重启

目录

传送门

SpringMVC的源码解析(精品)
Spring6的源码解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架

Activiti(敬请期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技术文章传送门入口

前言

不懂点Linux,都不好意思和别人说自己是开发,所以一些基础的必须掌握,同样的也是面试高频。

以下文章不定时更新...

Linux基础篇

Linux实操篇-远程登录/Vim/开机重启

Linux实操篇-用户组

Linux定制篇

一、远程登录

1、概念



需要linux开启服务端口22,一般是开启的

2、ifconfig

类似ipconfig,注意是if开头

3、实战

在 Linux 系统中,远程登录指的是通过网络连接到远程主机,并通过命令行或图形界面访问该主机的资源和功能。远程登录通常是通过以下几种方式实现的:

3.1、SSH(Secure Shell)

SSH 是最常用的远程登录协议,提供了加密的安全连接,可以安全地通过网络访问远程 Linux 系统。

远程登录命令:

SSH 登录远程主机:

bash 复制代码
ssh username@remote_host

username 是远程主机上的用户名。

remote_host 可以是 IP 地址或域名。

bash 复制代码
ssh user@192.168.1.100

常用参数:

-p 指定远程主机的端口(如果不是默认的 22 端口)。

bash 复制代码
ssh -p 2222 user@192.168.1.100

-i 指定用于身份验证的私钥文件。

bash 复制代码
ssh -i ~/.ssh/id_rsa user@192.168.1.100

SSH 密钥对:

为了提高安全性,建议使用 SSH 密钥对(公钥和私钥)进行身份验证,而不是通过用户名和密码。使用密钥对可以防止暴力破解密码。

生成 SSH 密钥对:

bash 复制代码
ssh-keygen -t rsa -b 2048

然后将公钥上传到远程主机的 ~/.ssh/authorized_keys 文件中。

上传公钥:

bash 复制代码
ssh-copy-id username@remote_host

3.2、VNC(Virtual Network Computing)

VNC 是一种图形化远程桌面协议,允许用户通过图形界面访问远程计算机,适用于需要图形界面交互的场景。

安装 VNC 服务:

在远程主机上安装 VNC 服务:

例如,安装 tigervnc-server:

bash 复制代码
sudo apt-get install tigervnc-standalone-server

启动 VNC 服务:

bash 复制代码
vncserver

远程登录:

使用 VNC 客户端(例如 RealVNC 或 TigerVNC)连接到远程主机的 VNC 端口(通常是 5901,对应 :1)。

3.3、RDP(Remote Desktop Protocol)

RDP 是微软开发的一种远程桌面协议,用于远程访问 Windows 系统。Linux 系统也支持通过安装 RDP 服务器来访问 Windows 计算机。

安装 RDP 服务:

在 Linux 上,你可以使用 xrdp 来连接到 Windows 系统。

安装 xrdp:

bash 复制代码
sudo apt-get install xrdp

启动 xrdp 服务:

bash 复制代码
sudo systemctl start xrdp

使用 RDP 客户端(如 Remmina 或 Microsoft Remote Desktop)连接到远程主机的 RDP 端口(默认是 3389)。

3.4、Telnet(不推荐)

Telnet 是一种较旧的远程登录协议,提供明文传输,因而不安全,已被 SSH 取代。除非在一个完全受信的网络环境中,通常不建议使用 Telnet。

Telnet 登录命令:

bash 复制代码
telnet remote_host

Telnet 并没有加密传输数据,容易受到中间人攻击,因此不推荐在公共网络中使用。

3.5、FTP(File Transfer Protocol)

虽然 FTP 主要用于文件传输,但也可以作为远程访问的一种方式。可以通过 FTP 客户端(如 FileZilla 或命令行中的 ftp)连接到远程主机进行文件管理。

总结

SSH 是最常用、最安全的远程登录方式,适用于大多数场景。

VNC 适用于需要图形界面远程访问的场景。

RDP 主要用于访问 Windows 系统,但 Linux 上也可以用 xrdp 来提供类似服务。

Telnet 和 FTP 较为过时,不推荐在不安全的网络环境中使用,尤其是 Telnet。

推荐使用 SSH 进行大多数远程登录操作,既安全又高效。

二、Vi和Vim编辑器

1、概念

Vim 是一种强大的文本编辑器,通常用于 Linux 和类 Unix 系统。它是 vi 编辑器的增强版,具有许多扩展功能,如语法高亮、自动补全、插件支持等。

vi和vim是两个东西,vim是vi的增强版本



注意默认进去就是一般模式,/或者:才能进入命令模式,命令模式回到一般模式的时候,按了esc 反应会慢点

这些命令大部分是在 默认模式下面搞

命令行1:vim one.txt 没有就创建,有就编辑这个one.txt文件

命令行2:按i字母进入编辑模式,这个时候随便输入编辑

命令行3:按esc退出编辑模式,和命令行1输入完的情况一样

命令行4:先按英文:,然后按wq(w是保存文件,q是退出),:wq之后整个退出了vim编辑

:q!(不保存退出) , /输入单词 可以查询这个单词,回车后定位到找到的位置



2、总结

Vim 的基本模式:

普通模式:用于导航和执行命令。

插入模式:用于输入文本。按 i 进入插入模式,按 Esc 返回普通模式。

命令模式:用于执行文件操作、搜索、替换等命令。按 : 进入命令模式。
常用命令:

打开文件:vim filename

保存文件:在命令模式下输入 :w。

退出 Vim:在命令模式下输入 :q(如果没有修改过文件)或 :wq(保存并退出)。

搜索:在命令模式下输入 /search_term,按 n 查找下一个,按 N 查找上一个。
复制和粘贴:

复制(yank):yy 复制一行,y$ 复制到行尾。

粘贴:p 粘贴到光标后,P 粘贴到光标前。
高级功能:

插件:Vim 支持通过插件扩展功能,如文件浏览器、Git 集成等。

语法高亮:默认支持多种编程语言的语法高亮显示。

自动补全:通过配置和插件,Vim 可以提供代码补全功能。

Vim 虽然有较高的学习曲线,但一旦掌握,它可以极大地提高文本编辑效率,特别是用于编程和系统管理。

三、开机重启和用户登录注销


在 Linux 系统中,"开机重启"和"用户登录注销"是两种不同的系统操作,它们涉及系统和用户会话的管理。以下是它们的详细介绍:

1. 开机与重启

开机(Boot)和重启(Reboot)是指系统启动或重新启动的过程。

开机:指的是系统从关闭状态启动并加载操作系统。当你按下计算机的电源按钮时,硬件会开始自检(POST),然后加载启动引导程序(例如 GRUB)和操作系统内核,最终进入操作系统的图形或命令行界面。

重启:指的是系统重新启动的过程。重启时,操作系统会先关闭当前的进程、卸载文件系统并清理资源,然后重新加载操作系统,重新启动服务和进程。常见的重启方式有:

通过命令行:sudo reboot 或 sudo shutdown -r now

通过图形界面:点击菜单中的重启选项。

注意:重启与关机不同,关机会完全断电,而重启则会直接重新启动操作系统,不断电。

2. 用户登录与注销

用户登录和用户注销是涉及用户会话管理的操作。

用户登录:指的是用户输入正确的凭据(用户名和密码)后,进入操作系统的过程。通常有以下几种方式:

图形界面登录:通过显示管理器(如 GDM, LightDM 等)进行图形界面登录。

命令行登录:通过终端输入用户名和密码登录。例如,在命令行界面上,你可能会看到类似于以下的

bash 复制代码
login: username
Password: ****

用户注销:指的是用户退出当前会话,系统结束该用户的所有进程和会话。注销的方式有:

图形界面注销:在桌面环境中,通常可以通过点击用户头像或系统菜单中的"注销"选项来退出当前用户会话。

命令行注销:在命令行界面下,可以使用 exit 或 logout 命令注销当前会话。对于 SSH 连接,则可以直接输入 exit 或按 Ctrl+D。

总结

开机:系统从关机状态启动操作系统。

重启:系统重新启动,通常是为了应用系统更新或修复故障。

用户登录:用户输入凭据并进入系统。

用户注销:用户退出当前会话并关闭相关进程。

这四个操作分别涉及操作系统层面和用户会话层面的管理。

相关推荐
EverydayJoy^v^13 分钟前
RH134学习进程——八.管理存储堆栈
linux·运维·服务器
哪里不会点哪里.20 分钟前
Spring MVC 核心原理解析:从请求到响应到底发生了什么?
java·spring·mvc
WKP941822 分钟前
线程并行控制CompletableFuture
java·开发语言
九皇叔叔26 分钟前
application.yml 文件无 Spring 图标 + 无自动提示
java·spring boot·spring
爱编码的傅同学37 分钟前
【线程同步】信号量与环形队列的生产消费模型
linux·windows·ubuntu·centos
马猴烧酒.1 小时前
JAVA后端用户登录与鉴权详解
java·数据库·sql
乐之者v1 小时前
软件开发常规流程的版本缩写
java
DN20201 小时前
靠谱的AI销售机器人哪家好
java·人工智能·机器人
Nick.Q1 小时前
CentOS 8 离线安装beyond compare
linux·centos
鹿鸣天涯1 小时前
openEuler学习笔记1-openEuler前世今生
linux·openeuler