Linux远程连接实操:Xshell、Xftp连接Ubuntu完整教程(附报错解决方案)
一、前言
本次实训借助Xshell实现Ubuntu系统的远程终端控制,Xftp完成Windows主机与Linux虚拟机之间的文件双向传输,完整实操Shell常用基础命令、SSH远程服务配置全流程。本文完整记录实操用到的全部命令、参数用法、实操现象,同时梳理Linux远程操作知识体系,汇总实操中遇到的故障、错误原因以及对应的解决办法。
二、实验环境准备
- 虚拟化软件:VMware Workstation,搭载Ubuntu 22.04操作系统
- 客户端工具:Windows端安装Xshell 7(远程命令终端)、Xftp 7(图形化文件传输工具)
- 核心底层协议:SSH安全远程连接协议,Ubuntu需要安装openssh-server服务才能被远程访问
三、Ubuntu系统SSH服务配置(核心Shell命令实操)
- 安装SSH远程服务
bash
sudo apt update
sudo apt install openssh-server -y
参数释义:
- sudo :超级权限前缀,临时获取管理员root权限执行指令
- apt update :刷新系统软件源索引,同步最新的软件包列表
- apt install :系统软件安装命令, -y 参数自动确认安装确认项,省去手动输入yes的步骤
- SSH服务状态管理命令
bash
查看ssh当前运行状态
systemctl status ssh
设置ssh开机自动启动
systemctl enable ssh
手动启动ssh服务
systemctl start ssh
手动停止ssh服务
systemctl stop ssh
参数释义:
- systemctl :Linux标准的系统服务管理器
- status :查看服务运行状态,显示running代表服务正常运行
- enable :配置服务开机自启;start/stop用于手动启停服务
- 查询虚拟机IP地址(远程连接必备地址)
bash
ip a
兼容旧版本Linux的查看命令
ifconfig
知识点:找到网卡ens33对应的inet字段,后面的IP地址(192.168开头)就是远程连接的主机地址。
- 防火墙放行SSH默认22端口
bash
sudo ufw allow 22/tcp
sudo ufw enable
sudo ufw status
参数释义:ufw是Ubuntu内置简易防火墙,SSH协议默认占用22端口,不放行端口会导致外部设备无法连接虚拟机。
四、Xshell远程连接Ubuntu操作步骤
- 打开Xshell软件,新建会话,自定义会话名称,主机填写刚刚查到的Ubuntu IP地址,端口保持默认22;
- 身份验证方式选择密码登录,输入Ubuntu系统的用户名和登录密码,完成连接;
- 连接成功后即可在Xshell终端内执行所有Linux Shell命令,远程操控虚拟机。
实操常用Shell命令汇总
- 文件与目录操作命令
bash
切换工作目录
cd /home
cd ~ # 回到当前用户家目录
cd … # 返回上一级目录
pwd # 查看当前所在完整路径
ls # 列出目录下文件
ls -l # 查看文件详细权限、大小、修改时间
ls -a # 显示所有文件(包含隐藏文件)
mkdir test # 创建单个文件夹
mkdir -p dir1/dir2 # 递归创建多级目录
rm test.txt # 删除文件
rm -rf testdir # 强制删除文件夹,无确认提示
cp test.txt /home # 复制文件
cp -r testdir /home # 复制整个文件夹
mv test.txt new.txt # 文件重命名
mv new.txt /home # 移动文件位置
- 文件查看与编辑命令
bash
vim test.txt # vim编辑器新建/修改文件
nano test.txt # 简易文本编辑器
cat test.txt # 一次性查看全部文件内容
less test.txt # 分页浏览长文档
tail test.txt # 默认查看文件最后10行
tail -f test.txt# 实时监听文件新增内容,常用于查看日志
- 系统状态查看命令
bash
lsb_release -a # 查看Ubuntu系统版本
free -h # 人性化格式查看内存使用情况
df -h # 查看磁盘分区占用空间
ps aux # 查看系统全部进程
top # 动态实时查看进程资源占用
sudo shutdown now # 立刻关机
sudo reboot # 重启系统
- 用户与权限管理命令
bash
sudo -i # 切换至root管理员账号
sudo adduser testuser # 创建新的系统用户
chmod 755 test.txt # 修改文件读写执行权限
chown testuser:testuser test.txt # 修改文件所属用户和用户组
五、Xftp文件传输实操流程
- 打开Xftp,新建会话,填写和Xshell完全一致的Ubuntu IP、22端口、系统账号密码;
- 界面左侧为Windows本地电脑文件夹,右侧为Linux远程服务器目录;
- 直接拖拽文件即可完成双向传输:从本地拖到远程为上传,远程文件拖到本地为下载。
六、实操过程常见错误、原因及解决方案
报错1:Xshell连接超时,无法建立会话
错误原因:
- Windows和Ubuntu虚拟机不在同一个局域网网段;
- openssh服务未正常启动;
- 防火墙没有放行22端口;
- 填写的IP地址有误。
解决方案: - Windows打开CMD执行ping 虚拟机IP,ping不通则将VMware网卡模式改为桥接模式;
- 执行 systemctl start ssh 启动SSH服务;
- 执行 sudo ufw allow 22/tcp 开放SSH端口;
- 重新执行ip a核对正确IP地址。
报错2:账号密码正确,但提示权限拒绝登录失败
错误原因:Ubuntu系统默认禁止root账号直接远程SSH登录。
解决方案:使用日常登录系统的普通用户账号登录,不要直接使用root账户。
报错3:Xftp上传文件提示权限不足
错误原因:目标文件夹没有写入权限。
解决方案:
方案1:上传到用户家目录 /home/你的用户名 ,该目录拥有全部读写权限;
方案2:修改文件夹权限 sudo chmod 777 文件夹路径 。
报错4:apt update更新软件源失败
错误原因:默认官方源访问速度慢或者无法连通。
解决方案:替换为阿里云、清华大学的Ubuntu国内镜像源。
七、整体知识框架总结
- SSH协议:安全远程登录协议,默认端口22,依靠openssh-server服务实现远程终端访问;
- Xshell:Windows端远程终端工具,替代虚拟机自带终端,支持会话保存、批量执行命令;
- Xftp:基于SFTP协议,图形化实现Windows和Linux之间文件上传下载;
- Shell命令分类:目录文件管理、文本编辑、系统监控、权限管理、系统服务管理五大类;
- 故障排查逻辑:先测试网络连通性→检查对应服务运行状态→检查防火墙端口→核对账号和文件权限。
