乱码三千 – 分享实用IT技术

乱码三千 – 码出一个新世界


  • 首页

  • 归档

  • 搜索

Ubuntu系统如何运行exe程序

发表于 2021-09-02

前言

exe文件是windows平台下的应用程序, 需要在Windows环境下才能运行

如果你想在Linux系统运行Windows程序, 那么就要给大家介绍一个工具了

其名为wine

关于Wine

Wine(“Wine Is Not an Emulator” 的递归缩写)是一个能够在多种 POSIX-compliant操作系统(诸如 Linux,Mac OSX及 BSD 等)上运行 Windows 应用的兼容层

那么 话不多说, 我们直接来实现一下:

实现步骤

  1. 下载并安装Wine:

    1
    2
    sudo dpkg --add-architecture i386 && sudo apt-get update &&
    sudo apt-get install wine32 && sudo apt-get install wine
  2. 运行exe程序, 如果装有桌面环境 那么直接双击, 或者在命名窗口执行以下命令:

    1
    wine xxx.exe

    如果是64位程序则使用wine64:

    1
    wine64 xxx.exe

问题集锦

如果在桌面环境中双击exe没有反应, 同时命令行执行wine报错Application tried to create a window, but no driver could be loaded.

那么可以进入wine配置窗口, 添加相应的依赖库, 具体操作如下:

运行winecfg指令:

image-20210902122022293

image-20210902122045500

回车后弹出wine配置窗口, 在Libraries选项中添加一下三个依赖库:

image-20210902122005234

添加完成后点击OK, 此时再双击exe文件即可正常运行

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

Mac系统如何运行exe程序

发表于 2021-09-02

前言

之前给大家介绍了如何在Ubuntu系统运行exe程序, 具体可查看:

《buntu系统如何运行exe程序》

这次, 给大家介绍如何在Mac平台运行exe程序, 本次测试是在Mac 10.15.4环境下进行

实现步骤

  1. 首先下载并安装XQuartz支持库:

    1
    brew install --cask xquartz
  2. 下载并安装wine

    1
    brew install --cask --no-quarantine wine-stable

    wine给我们提供了很多可用工具:

    image-20210902142316211

  3. 运行exe程序

    1
    wine xxx.exe

    如果报错bad CPU type in executable: wine, 则有可能是因为exe文件是64位的, 此时使用wine64执行即可:

    1
    wine64 xxx.exe

    如果是.net开发的程序, 会提示需要安装支持包, 点击安装即可:

    image-20210902141949081

    image-20210902142203820

  4. 如果要卸载wine

    1
    brew uninstall --cask

更多使用以及其他版本下载可参考wine官网

内容补充

目前mac高版本使用wine会出现报错现象, 如果要运行exe程序的话, 这里给大家推荐另一款产品 CrossOver, 免费版试用期14天,和谐版在文章尾部

除了内置一些常用软件之外, 可以运行单独的exe程序, 步骤如下:

  1. 双击运行命令选项

    image-20211105162353517

  2. 点击浏览按钮选择相应的程序文件直接运行即可

    image-20211105162832862

    image-20211105162927610

点击下载CrossOver (访问密码: 312306)

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

如何使用Web浏览器访问Ubuntu环境下的vnc桌面

发表于 2021-09-02

前言

一般我们在服务端安装后vncserver后, 主机端通过vnc客户端程序输入ip端口和密码后即可远程登录桌面

为了方便使用, 我希望可以使用浏览器直接访问, 那么接下来给大家介绍其实现方法:

实现概述

想要实现浏览器访问桌面, 首先我们需要安装桌面程序, 至于如何安装ubuntu桌面程序 可以参考以下文章:

《给Multipass容器安装桌面环境》

《Ubuntu系统安装LXDE+VNC桌面环境》

在桌面程序安装完毕的前提下, 我们只需要在服务器中安装novnc程序即可

novnc相当于是一个中间代理, 充当了vnc viewer的一个角色, 使得我们无需安装本地vnc客户端即可访问桌面

具体操作如下:

安装步骤

  1. 下载并安装novnc程序:

    1
    sudo snap install novnc
  2. 启动novnc连接vncserver 同时设置web访问端口为6081

    1
    sudo novnc --listen 6081 --vnc localhost:5901

    image-20210902110019439

  3. 浏览器输入以下地址访问

    1
    http://ip:6081/vnc.html

    如下:

    image-20210902105804968

    输入密码:

    image-20210902111100228

    进入后长这样:

    image-20210902111148950

  4. 为了保持novnc常驻在后台, 我们可以启动novnc后台服务:

    1
    sudo snap set novnc services.n6082.listen=6082 services.n6082.vnc=localhost:5902

    参数说明:

    • services.n6082.listen=6082 :表示名为n6082的服务web监听端口设为6082, 服务名称可以随便起, 但是前后要保持一致
    • services.n6082.vnc=localhost:5902: 表示名为n6082的服务连接的vncserver端口设为6082

    那么 也就是说, novnc可以同时连接多个vncserver, 比如这样:

    1
    sudo snap set novnc services.n1.listen=6081 services.n1.vnc=localhost:5901 services.n2.listen=6082 services.n2.vnc=localhost:5902

    同时连接了两个vncserver, 对应的端口分别为6081和6082` , 也就是不同的端口访问不同的桌面

novnc指令补充

  1. 查看当前开启的服务数量:

    1
    sudo snap get novnc services

    打印结果长这样:

    1
    2
    3
    Key             Value
    services.n1 {...}
    services.n2 {...}
  2. 关闭服务

    1
    sudo snap set novnc services.n1.listen='' services.n1.vnc=''
  3. 查看具体某个服务的信息

    1
    sudo snap get novnc services.n1

补充

  1. 如果你需要设置vncserver开机自启动:

    1
    systemctl start vncserver@:1.service && systemctl enable vncserver@:1.service
  2. 你想查看vnserver服务是否开启:

    1
    2
    3
    4
    systemctl status vncserver@:.service

    或者
    systemctl is-enabled vncserver@.service
  3. 你想重启vncserver:

    1
    systemctl restart vncserver@:1.service
  4. 你想设置vnc分辨率:

    1
    vncserver -geometry 1280x1024
  5. 你想修改vncserver登录密码:

    1
    vncpasswd

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

Ubuntu系统安装LXDE+VNC桌面环境

发表于 2021-09-02

前言

在众多linux桌面环境中, LXDE属于非常轻量的一款, 占用系统资源小, 适合小型服务器使用

接下来介绍该桌面环境的安装步骤

快速安装

  1. 更新源

    1
    sudo apt-get update
  2. 安装图形驱动 否则内置和下载的应用无法启动

    1
    sudo apt-get install xorg
  3. 安装lxde桌面程序

    1
    sudo apt-get install lxde-core

    安装过程中会让你选择显示管理器, 选择gdm3即可

    image-20210831172358907

  4. 安装VNCServer 用于远程桌面连接

    1
    sudo apt-get install tightvncserver

    更多关于tightvncserver可参考中文文档

  5. 启动vnc服务

    1
    vncserver

    提示我们输入访问密码:

    image-20210901175901616

    这里的密码用于接下来的远程登录用

开始远程访问

第一种 vnc客户端访问模式

Mac平台可直接执行以下指令安装:

1
brew install Caskroom/cask/vnc-viewer

或者下载安装包:

点击下载(访问密码:312306)

安装vnc客户端后在地址栏输入目标ip和端口, 端口默认为5901

image-20210901180352068

输入密码登录后发现只有灰屏幕:

image-20210901180441212

接下来我们需要配置一下vncserver的环境:

  1. 首先关闭vncserver

    1
    vncserver -kill :1
  2. 修改前对配置文件进行备份

    1
    cp ~/.vnc/xstartup ~/.vnc/xstartup.bak
  3. 修改配置文件

    1
    vim ~/.vnc/xstartup

    将以下内容添加至文本末尾:

    1
    2
    lxterminal &
    /usr/bin/lxsession -s LXDE &
  4. 修改配置文件权限

    1
    chmod +x ~/.vnc/xstartup
  5. 重新启动vnc服务

    1
    vncserver

最后重新连接远程桌面, 如下:

image-20210902104141960

第二种 浏览器访问模式

具体参考:

《如何使用Web浏览器访问Ubuntu环境下的vnc桌面》

补充

  1. 如果重复执行vncserver指令会开启多个vnc服务它们并行运行 互不干扰

  2. 除了使用tightvncserver搭建vnc服务器之外 还可以使用x11vnc, 详情查看文档:

    点击进入

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

服务器之间传输文件的方式都有哪些

发表于 2021-09-01

前言

如果有图形界面的话 我们可以直接使用FileZilla或者 SecureCRT 进行文件传输

但Linux服务器都是不带图形界面的, 这个时候我们需要通过相关指令来处理

假设有两台公网的Linux机器A和B, 我们需要从A传输文件至B

可以采用以下几种方式:

第一种 使用nc指令

操作如下:

服务器B开启文件端口监听:

1
nc -l 3300 > aaa.tar //将接受的文件取名为aaa.tar

服务器A传输文件:

1
nc 服务器Bip 3300 < 需要传送的文件

第二种 使用scp指令

操作如下:

1
scp -r 需要传输的目录 root@服务器ip:目标存放目录

第三种 使用rsync指令

操作如下:

1
rsync -r 需要传输的目录 root@服务器Bip:目标存放目录

和scp很相似, 比scp多了一个排除子目录的功能:

1
rsync -r -v --exclude 需要排除不进行传输的子目录 需要传输的目录 root@服务器Bip:目标存放目录

如果要同时排除多个目录 那么需要指定多次--exclude 如下:

1
rsync -r -v --exclude 排除目录1 --exclude 排除目录2 需要传输的目录 root@服务器Bip:目标存放目录

第四种 使用wget工具

操作如下:

首先服务器B需要开启http服务, 这里以python为例:

1
python -m http.server 3300

服务器A开始从B下载文件:

1
sudo wget -bc --limit-rate=6M 0.0.0.0:3300/需要下载的文件

参数说明:

  • -b : 后台执行
  • -c: 断点续传
  • –limit-rate=6M: 限速6M

总结

工具 优点 缺点
nc 采用tcp协议 占用系统资源小 速度快 安全性不高 操作相对繁琐
wget 采用tcp协议 支持子目录排除 支持限速 断点续传 安全性不高操作相对繁琐
scp 采用ssh协议 传输安全 支持限速 占用系统资源小 不支持子目录排除
rsync 采用ssh协议 传输安全 速度比scp快 支持子目录排除 支持限速和本地复制 和断点续传 小文件众多时比较消耗资源

本地传输

使用scp和rsync不仅可以对两台服务器上的数据进行相互传输 还可以进行本地数据传输 比如将服务器上的数据下载到本地:

1
rsync -r root@服务器IP:服务器目录 本地目录

或者

1
scp -r root@服务器IP:服务器目录 本地目录

还可以将本地的数据上传到服务器 只需将前后两者反过来即可 比如:

1
rsync  -r  本地目录 root@服务器IP:服务器目录

或者

1
scp -r  本地目录 root@服务器IP:服务器目录

断点续传

如果传输的文件比较大 可以采用断点续传的方式 然而scp并不支持断点续传, wget只能实现服务器之间数据传输以及本地从服务器拉取数据 无法做到将本地数据推到服务器

好在rsync工具给我们提供一个用于断点续传的指令, 如下:

1
rsync -r  --partial --progress 本地目录 root@服务器IP:服务器目录

参数解释:

  • --partial:保留因故没有完全传输的文件,以加快随后的再次传输,即断点续传
  • --progress : 在传输时显示传输过程

rsync还允许我们这样写:

1
rsync -r  -P 本地目录 root@服务器IP:服务器目录

参数解释:

  • -P :等价于--partial和--progress

关于rsync目录排除不生效的问题

这种情况通常是目录路径不对的问题 比如:

1
rsync -r -P  --exclude=/root/songjian/auto  root@服务器IP:/root/songjian songjian

上面这种写法并不能正确排除目录 正确的写法应该如下:

1
rsync -r -P  --exclude=/songjian/auto  root@服务器IP:/root/songjian songjian

B站入口

打赏通道

本文为作者原创 转载时请注明出处 谢谢

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

一个非常强大的网络工具NC使用详解

发表于 2021-09-01

nc是netcat的简写 是一个非常强大的网络工具

它可以:

  • 模拟服务端侦听指定端口
  • 模拟客户端对服务端进行连接
  • 机器之间传输文件
  • 机器之间网络测速
模拟服务端和客户端

我们在使用阿里云服务器的时候, 除了要在服务器给应用部署端口之外 还需要再阿里云后台安全组中开放端口映射 这样外网才能对服务器程序进行访问

有时候 我们需要测试安全组策略是否打通, 假设我们在安全组中配置外网4001端口映射到服务器80端口, 这个时候我们可以在服务端模拟一个80侦听端口:

1
nc -l 80

然后外网主机同样使用nc进行模拟访问:

1
nc -zv 服务器ip 4001

当然你想使用telnet模拟客户端也可以:

1
telnet 服务器ip 4001

如果连接成功 表示端口策略打通 连接拒绝则不通 倘若连接超时 有可能服务端程序有问题

利用nc同时开启多个侦听端口:

1
nc -l 80 &

只需在尾部加上&重复执行该命令即可

image-20210901122029161

文件传输

首先在服务端启动一个接收文件的监听,格式如下:

1
nc -l port >file

意思是把接收到的数据都写到file文件里(这里文件名随意取)

image-20210901122707802

然后在主机上将文件发过去:

1
nc 服务器ip 端口 < 需要传送的文件

image-20210901122816765

文件传输完毕后服务端侦听自动断开

当然 我们也可以先发送文件 然后再在服务端接收文件 效果也是一样的

目录传输

如果需要将目录下多个文件同时传输, 可以采用以下指令

服务端 端口监听到文件后解压操作:

1
nc -l port | tar xfvz -

主机端 将当前目录下所有文件打包 然后传输:

1
tar cfz - * | nc 服务器ip 端口
网速测试

服务端开启文件传输监听:

1
nc -l 端口 >/dev/null

null表示数据都输出给空设备(这样不写磁盘,测试网速更准确)

主机端开始传输数据:

1
nc 服务器ip 端口 </dev/zero

把无限个0发送给服务端 模拟真实传输

此时 主机新开一个窗口 使用dstat命令查看当前网速

image-20210901143339010

dstat可以查看当前cpu,磁盘,网络,内存页和系统的一些当前状态指标

我们通过关注recv 和send两列即可查看当前接收和发送的网络速率 注意数字后面的单位B,KB,MB

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

测试服务器端口是否打通的若干种方法

发表于 2021-09-01

前言

有时候我们会碰到服务端程序连接不上的情况, 要么是ip有问题 要么是端口有问题

ip我们可以使用ping的方式检测是否正常

那么端口检测 可以通过以下几种方式检测:

1.使用ssh

我们知道 连接服务器环境直接使用ssh指令:

1
ssh  用户名@ip -p 端口

示例:

1
ssh  root@117.21.33.45 -p 22

那么我们可以利用ssh来测试 端口通与不通

比如测试端口5900是否打通:

1
ssh -v root@117.21.33.45 -p 5900 //-v表示打印连接日志

如果连接日志中出现Connection established.字样表示端口是通的, 否则不通

image-20210901113602398

2.使用wget

wget是linux下的下载工具,需要先安装.

用法:

1
wget ip:port

如果端口存在 则连接成功:

image-20210901114002996

否则 连接失败:

image-20210901114035402

3.使用telnet

telnet是windows平台自带指令,windows机器可以直接用 如果是linux机器,需要先安装telnet.

用法:

1
telnet ip port

如果端口存在 则连接成功:

image-20210901114244225

否则连接失败:

image-20210901114304583

4.使用nc

nc是netcat的简写 是一个非常强大的网络工具

直接使用以下指令即可测试端口是否打通:

1
nc -zv 服务器ip 端口

nc的能力除此之外 它还可以:

  • 模拟服务端侦听指定端口
  • 模拟客户端对服务端进行连接
  • 机器之间传输文件
  • 机器之间网络测速
模拟服务端和客户端

我们在使用阿里云服务器的时候, 除了要在服务器给应用部署端口之外 还需要再阿里云后台安全组中开放端口映射 这样外网才能对服务器程序进行访问

有时候 我们仅仅是需要测试安全组策略是否打通, 假设我们在安全组中配置外网4001端口映射到服务器80端口, 这个时候我们可以在服务端模拟一个80侦听端口:

1
nc -l 80

然后外网主机同样使用nc进行模拟访问:

1
nc -zv 服务器ip 4001

当然你想使用telnet模拟客户端也可以:

1
telnet 服务器ip 4001

如果连接成功 表示端口策略打通 连接拒绝则不通 倘若连接超时 有可能服务端程序有问题

5.使用traceroute

traceroute可以用来探测主机和目标机的路由节点, 同样可以用来检测端口是否打通

用法:

1
traceroute -n ip -p 端口

6. 使用nmap

nmap可以扫描机器端口

用法:

1
nmap ip -p 端口

以下状态表示扫描成功:

image-20210901121229352

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

linux中安装vscode实现在线IDE远程开发

发表于 2021-08-31

前言

一台服务器, 一个浏览器 就能实现远程随时随地开发, 无论是在公司 家里 出差 甚至在地铁使用手机

接下来介绍两种在线IDE的实现方式:

第一种 使用docker模式

首先服务端需要安装Docker环境, 然后拉取相关镜像, 步骤如下:

  1. 拉取镜像

    1
    docker pull codercom/code-server
  2. 创建并启动容器

    1
    2
    3
    4
    5
    6
    7
    8
    9
    docker run -id \
    -u root \
    -p 4001:4000 \
    -p 8443:8080 \
    --name=code_server \
    -e PASSWORD=1234 \
    -h code_server \
    -v $PWD/coder:/home/coder \
    codercom/code-server

    参数说明:

    • -u root 表示启用root用户权限 这一步很关键 不然很多文件无法操作
    • -p 8443:8080 将容器的8080端口映射到主机的8443端口 用于浏览器访问
    • -p 4001:4000 将容器的4000端口映射到主机的4001端口 用于开发过程中代码修改后实时更新查看
    • -e PASSWORD=1234 设置远程登录密码
    • -v $PWD/coder:/home/coder将主机中当前目录挂载到容器
    • -h 设置容器的hostname
    • –name=code_server 给容器取个名称
    • $PWD表示当前所在目录

容器成功启动后, 直接在浏览器地址栏输入服务端ip和8443端口即可进入ide

1
http://ip:8443

输入密码后:

image-20210901153731968

远程登录密码修改

code-server中有一个配置文件config.yaml里面存储着登录密码 端口等相关信息:

1
2
3
4
bind-addr: 127.0.0.1:8080
auth: password
password: 1234
cert: false

该配置文件路径为:

1
/root/.config/code-server/config.yaml

直接对该文件进行修改即可

为了方便随时修改配置文件, 我们在启动容器的时候可以对容器配置文件进行挂载:

首先将配置文件拷贝至宿主机中:

1
docker cp code_server:/root/.config/code-server/config.yaml $PWD/config

然后创建并启动容器:

1
2
3
4
5
6
7
8
9
10
docker run -id \
-u root \
-p 4001:4000 \
-p 8443:8080 \
--name=code_server \
-e PASSWORD=1234 \
-h code_server \
-v $PWD/config/config.yaml:/root/.config/code-server/config.yaml \
-v $PWD/coder:/home/coder \
codercom/code-server

这样 直接在宿主机中修改配置文件就可以了

第二种 使用第三方服务

第一种方式相对来说比较吃系统资源, 除此之外我们还可以使用第三方的在线IDE服务, 比如使用coding.net提供的CloudStudio工作空间

其实就是在线vscode, 长这样:

image-20210901165231064

CloudStudio提供了多种环境预设模板, 非常方便, 省下了安装环境的时间

image-20210901165820056

而且还支持预览调试:

预览窗口

coding.net提供两种服务器环境:

  • 一种是官方免费的服务器: 每天4个小时的使用时间 机器性能还不错 使劲造
  • 一种的使用自己的服务器: 没有时间限制

看个人需求了, 如果临时测试用的话 用免费的就行, 如果开发重心转移到远程的话 建议还是使用自己的服务器:

image-20210901170414332

可以通过ssh或者用户名密码的方式连接我们自己的服务器:

image-20210901170155859

相比第一种Docker自建IDE, 从体验和便捷度上来说完胜

而且IDE本身程序是托管于coding.net, 不占用我们服务器资源, 对于小型服务器的用户而言, 优先考虑采用CloudStudio

唯一让人感觉坑爹的是coding.net改版太频繁, 没过几周估计你连入口都找不到

阿里云在线IDE

现在阿里云也推出了Web在线编辑器,名叫 DevStudio和CloudStudio类似:

image-20220916140455968

针对Java语言, 阿里云这边使用的是在线Idea, 这对Java开发者而言算是非常便利了

image-20220916140732637

目前DevStudio 公测周期是2021 年 6 月 23 日 ~ 2022 年 12 月 30 日, 估计公测结束后就开始收费了 坑~

国外的在线IDE

  1. Codesandbox

    支持多平台, 云端协作, Github仓库拉取等

    官网: 点击进入

    image-20230418152244210

  2. CodeOpen

    界面和启动速度一般 只能说能用

    官网: 点击进入

    image-20230427101606222

  3. Stackblitz

    以Web开发为主, 支持团队协作和Github仓库拉取, 界面美观, 响应速度快, 个人比较喜欢

    官网: 点击进入

    image-20230427101949813

    image-20230427101712754

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

docker中安装ubuntu桌面环境

发表于 2021-08-31

前言

使用docker, 总会碰到需要桌面环境的时候, 这里介绍docker中安装ubuntu桌面环境的方法, 非常方便, 只需要一个浏览器就能访问

安装步骤

  1. 拉取镜像

    1
    docker pull dorowu/ubuntu-desktop-lxde-vnc
  2. 创建并启动容器

    1
    2
    3
    4
    5
    6
    7
    8
    docker run -id \
    -p 6080:80 \
    -p 8900:5900 \
    -e VNC_PASSWORD=1234 \
    --name=c_desktop \
    -h c_desktop \
    -v $PWD/dev/shm:/dev/shm \
    dorowu/ubuntu-desktop-lxde-vnc

    参数说明:

    • -p 6080:80 将容器的80端口映射到主机的6080端口 用于浏览器访问
    • -p 8900:5900 将容器的5900端口映射到主机的8900端口 用于vnc客户端访问
    • -e VNC_PASSWORD=1234 设置远程登录密码
    • -v $PWD/dev/shm:/dev/shm将主机中当前目录挂载到容器
    • -h 设置容器的hostname
    • –name=c_desktop 给容器取个名称
    • $PWD表示当前所在目录

容器运行成功后, 接下来可以通过两种方式进入ubuntu桌面:

第一种 浏览器访问

在浏览器地址栏输入

1
http://容器ip:6080

image-20210901102900618

然后输入密码即可进入

image-20210901103136185

第二种 使用VNC客户端访问

地址栏输入目标ip和端口, 注意这里端口是8900而不是6080

image-20210901145352885

输入密码登录后长这样:

image-20210901145321808

另外 如果你主机端使用的是mac平台, 还可以直接使用其自带的屏幕共享工具充当VNC工具使

全局搜索Screen Sharing :

image-20210901105353641

image-20210901145607320

输入密码登录后界面:

image-20210901145708985

相比使用vnc客户端, Mac自带的工具虽然方便 但是流畅度会弱一些

特别注意

vnc连接端口默认是5900我们在外网映射的时候不建议直接使用5900端口映射, 可能会出现连接不上的情况, 本文采用的是8900

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

给Multipass容器安装桌面环境

发表于 2021-08-31

前言

linux环境下的桌面程序多达十几种, 比较流行的有Unity、Gnome3、kde、mate、xfce、lxde

我们来看看它们分别都长什么样:

Unity:

img

Gnome2:

img

Gnome3:

img

KDE:

img

mate:

ubuntu_mate_1510

xfce:

img

lxde:

img

不过上面这前四个体量都不小, 对于寄生于主机的小容器系统而言, 我希望找一个轻量简洁满足正常功能的桌面即可

img

于是在lxde和xfec之中进行选择 最后我选择了xfec

xfec安装步骤

  1. 更新源

    1
    sudo apt-get update
  2. 安装Xfce桌面程序

    1
    sudo apt-get install xfce4

安装过程中会让你选择显示管理器, 选择gdm3即可

image-20210831172358907

  1. 安装VNCServer 用于远程桌面连接

    1
    sudo apt-get install tightvncserver
  2. 启动vnc服务

    1
    vncserver

    提示我们输入访问密码:

    image-20210901175901616

    这里的密码用于接下来的远程登录用

开始远程访问

第一种 vnc客户端访问模式

Mac平台可直接执行以下指令安装:

1
brew install Caskroom/cask/vnc-viewer

或者下载安装包:

点击下载(访问密码:312306)

安装vnc客户端后在地址栏输入目标ip和端口, 端口默认为5901

image-20210901180352068

输入密码登录后发现只有灰屏幕:

image-20210901180441212

接下来我们需要配置一下vncserver的环境:

  1. 首先关闭vncserver

    1
    vncserver -kill :1
  2. 修改前对配置文件进行备份

    1
    cp ~/.vnc/xstartup ~/.vnc/xstartup.bak
  3. 修改配置文件

    1
    vim ~/.vnc/xstartup

    内容替换为如下:

    1
    2
    xrdb $HOME/.Xresources
    startxfce4 &
  4. 修改配置文件权限

    1
    chmod +x ~/.vnc/xstartup
  5. 重新启动vnc服务

    1
    vncserver

最后重新连接远程桌面, 如下:

image-20210901181507448

第二种 浏览器访问模式

具体参考:

《如何使用Web浏览器访问Ubuntu环境下的vnc桌面》

指令补充

  1. 如果你需要设置vncserver开机自启动:

    1
    systemctl start vncserver@:1.service && systemctl enable vncserver@:1.service
  2. 你想查看vnserver服务是否开启:

    1
    2
    3
    4
    systemctl status vncserver@:.service

    或者
    systemctl is-enabled vncserver@.service
  3. 你想重启vncserver:

    1
    systemctl restart vncserver@:1.service
  4. 你想设置vnc分辨率:

    1
    vncserver -geometry 1280x1024
  5. 你想修改vncserver登录密码:

    1
    vncpasswd

本文为作者原创 转载时请注明出处 谢谢

B站入口

打赏通道

微信公众号二维码如下:

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

1…212223…48

乱码三千

android程序员一枚,擅长java,kotlin,python,金融投资,欢迎交流~

479 日志
139 标签
RSS
© 2024 乱码三千
本站总访问量次
由 Hexo 强力驱动
|
主题 — NexT.Muse v5.1.4
0%