前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >使用国产操作系统作为开发系统

使用国产操作系统作为开发系统

作者头像
云水木石
发布于 2024-07-18 09:45:38
发布于 2024-07-18 09:45:38
34900
代码可运行
举报
运行总次数:0
代码可运行

长期以来,我一直是在 Ubuntu 系统上做开发。近一年来,由于为信创系统(统信 UOS、银河麒麟等)开发应用软件,免不了使用国产操作系统。使用下来,发现国产系统在易用性、稳定性方面已经相当不错,而且用户界面比起 Ubuntu 还美观很多。系统集成的应用商店,里面的应用非常全面,基本上满足了作为系统开发的需求。

某一天,一个念头出现在我的脑海,何不使用国产操作系统作为开发机系统?说干就干。我立即上京东买了一块 500G 的固态硬盘,作为系统盘。至于数据盘,和原来的 Ubuntu 系统共用。之前在 Ubuntu 系统下下载了不少大模型和源码(Chromium、Android等),在新系统可以直接使用。在统信 UOS银河麒麟之间,我选择了统信 UOS,主要是统信 UOS 背后的社区(Deppin Community)更加活跃。

统信 UOS 有多个版本,我选择社区版(Deepin系统)。一般来说社区版本更新比较快,社区更加活跃,作为一名专业开发人员,有问题也方便去社区交流,碰到问题,相信有办法解决。

image

Deepin 是一个基于 Linux 的操作系统,早期基于 Debian 构建。从 2022 年开始,Deepin 脱离 Debian 社区,从 Linux kernel 和其他开源组件而构建,不依赖上游发行版社区,研发出全新架构的Deepin 23版本。当前 Deepin V23 还是 RC2 版本,离正式发布不远。本着旧不如新的原则,我选择了这个最新版本。

虽然 Deepin v23 不再基于 Debian 系统,但其依然沿用了 Debian 的那套包管理系统,所以从 Ubuntu 切换过来,使用体验上没有感觉差异,常用的软件安装、使用命令都大致相同。

Deepin 的安装过程相对简单,从官方网站下载 ISO 镜像文件,制作启动 U 盘进行安装,这里不赘述。

值得注意的是,在安装方式那一步,要选择高级安装,自己选择分区划分。如果选择推荐的全盘安装,Deepin 系统会自动进行分区,但是分给根分区的空间过小(只有 15G),这对于开发来说远远不够。有很多软件,特别是 deb 包,会将程序和库安装在 /usr 目录下,如果空间不足,会导致安装失败。我选择将 500 G 的空间,除了 32 G 的交换分区,其它全部挂载在根分区。两块数据盘,则挂载在 /data 和 /work 分区下。

安装 CUDA

Deepin 系统安装过程中会自动安装 Nvidia 驱动,一般情况下会安装开源的 Nvidia 驱动,如果勾选了安装专有的 Nvidia 驱动,也可能安装的是闭源的 Nvidia 驱动。如果是普通使用,使用系统安装的显卡驱动即可。但对于 AI 应用开发来说, CUDA 是必须安装的。

CUDA 是 Compute Unified Device Architecture(计算统一设备架构)的简称。它是由 NVIDIA 公司开发的一种并行计算平台和编程框架,允许软件工程师利用 NVIDIA 图形处理器(GPU)的强大计算能力进行通用计算。

CUDA 由 CUDA核心库、CUDA编译器(nvcc)及 CUDA 运行时(runtime)和驱动程序组成。CUDA 带的驱动程序可能和系统安装的版本不兼容,所以安装 CUDA 时,最好卸载系统的 Nvidia 驱动,使用 CUDA 带的驱动程序。

下载 CUDA

Nvidia 提供了 Ubuntu 和 Debian 各种版本的 CUDA deb 包,但没有提供 Deepin 系统的。虽然说 deb 包基本上是通用的,但是对于驱动来说,可能还是有所区别。所以在选择安装包时,选择可执行的二进制包(runfile)。

当前最新版本是 12.5.1,可以使用如下命令下载:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wget https://developer.download.nvidia.com/compute/cuda/12.5.1/local_installers/cuda_12.5.1_555.42.06_linux.run

删除 Nvidia 驱动

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ dpkg -l | grep nvidia | awk '{ print $2 }' | xargs sudo apt -y remove
$ sudo apt -y autoremove

禁用开源驱动

编辑 blacklist 文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo vi /etc/modprobe.d/blacklist-nouveau.conf

加入如下内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

执行如下命令,禁用Nvidia开源驱动

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo update-initramfs -u

安装 CUDA

重启系统,使用如下命令,验证是否禁用成功,无输出即成功禁用。这个时候系统分辨率可能不正常,先暂时忽略。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ lsmod | grep nouveau

按 CTRL + ALT + F2,进入命令行控制台,需要输入用户名及密码,然后输入如下命令停止桌面系统:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo service lightdm stop

最后一步,安装 CUDA:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo sh cuda_12.5.1_555.42.06_linux.run

如果一切顺利,不需要做特别选择,按照默认选项安装即可,完毕后重启系统。

如果系统显示分辨率正常,且执行 nvdia-smi 命令输出如下内容,大功告成。

安装 Anaconda

Deepin 系统默认已经安装了 3.10 版本的 Python,但对于一名开发者来说,推荐使用 Anaconda。

Anaconda 是一个开源的 Python 和 R 编程语言的发行版本,常用于科学计算、数据科学、机器学习、以及数据分析等领域。它包括了大量的科学计算库和工具,并提供了一个方便的包管理和环境管理系统。

我选择 Anaconda 主要是看中它提供了强大的包管理和环境管理功能,解决了 Python 生态系统中常见的依赖冲突问题。这个对于不同的 AI 应用程序运行非常重要。通常我们为 AI 应用程序安装 Python 包,可能会指定具体的版本,但不同的 AI 应用指定的版本可能不同,可能产生冲突。Anaconda 通过建立不同的 Python 虚拟环境,解决这一问题,相比 Python 自身提供的 venv,使用上更加方便,也更容易管理。

我之前在 Ubuntu 上安装了 Anaconda,安装在数据盘上,在 Deepin 系统下可以直接使用。比如我之前为 ComfyUI 建立了 Python 虚拟环境,切换到 Deepin 上后,激活 comfyui 虚拟环境,ComfyUI 直接就可以运行了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(base) alex@alex-deepin-os:~$ conda activate comfyui
(comfyui) alex@alex-deepin-os:~$ cd /data/ai/ComfyUI/
(comfyui) alex@alex-deepin-os:/data/ai/ComfyUI$ python main.py
[START] Security scan
[DONE] Security scan
## ComfyUI-Manager: installing dependencies done.
** ComfyUI startup time: 2024-07-14 23:25:44.481099
** Platform: Linux
** Python version: 3.10.14 (main, May  6 2024, 19:42:50) [GCC 11.2.0]
** Python executable: /data/ai/anaconda3/envs/comfyui/bin/python
** Log path: /data/ai/ComfyUI/comfyui.log

Prestartup times for custom nodes:
   5.5 seconds: /data/ai/ComfyUI/custom_nodes/ComfyUI-Manager

Total VRAM 10823 MB, total RAM 32031 MB
pytorch version: 2.0.1+cu117
xformers version: 0.0.20
Set vram state to: NORMAL_VRAM
Device: cuda:0 NVIDIA GeForce RTX 2080 Ti : cudaMallocAsync
Using xformers cross attention
/data/ai/anaconda3/envs/comfyui/lib/python3.10/site-packages/diffusers/models/transformers/transformer_2d.py:34: FutureWarning: `Transformer2DModelOutput` is deprecated and will be removed in version 1.0.0. Importing `Transformer2DModelOutput` from `diffusers.models.transformer_2d` is deprecated and this will be removed in a future version. Please use `from diffusers.models.modeling_outputs import Transformer2DModelOutput`, instead.
  deprecate("Transformer2DModelOutput", "1.0.0", deprecation_message)
flash_attn import failed: No module named 'flash_attn'
### Loading: ComfyUI-Manager (V2.41)
### ComfyUI Revision: 2279 [2f360ae8] | Released on '2024-06-22'
Torch version too old for FP8

Import times for custom nodes:
   0.0 seconds: /data/ai/ComfyUI/custom_nodes/websocket_image_save.py
   0.1 seconds: /data/ai/ComfyUI/custom_nodes/ComfyUI_ExtraModels
   0.2 seconds: /data/ai/ComfyUI/custom_nodes/ComfyUI-Manager
   2.0 seconds: /data/ai/ComfyUI/custom_nodes/comfyui-hydit

Starting server

To see the GUI go to: http://127.0.0.1:8188

安装 IDE

Deepin 的应用商店有 Qt Creator,但我更建议去 Qt 官网下载 Qt Community 版本。Qt 是一套开发工具和开发框架的集合,Qt Creator 只是 Qt 的工具之一。使用 Qt 安装程序,可以选择 Qt 库的版本,可以安装 Qt 扩展库、Qt Creator等工具,可以根据需要选择。

Visual Studio Code 差不多是开发人员必备,这个从 Deepin 的应用商店安装即可。

Deepin 应用商店有一个开发工具类别,里面有 PyCharm、IDEA、Android StudioEclipse等集成开发工具,一键安装,相比去官网下载,还是方便不少。

编译 Chromium 浏览器

Deepin 用于基本的软件开发,毫无压力,开发大型软件,能否胜任呢?这里试一试 Chromium 浏览器的编译。

Chromium 浏览器的代码及其庞大,其代码量不亚于 Android 系统。其源码采用自己独特的 depot_tool 进行管理。所以第一步就是下载 depot_tool。

安装 depot_tool

克隆 depot_tools 库:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

depot_tools 加入到环境变量PATH ,如果不想每次都输入如下命令,可以将其加入到~/.bashrc

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ export PATH="/path/to/depot_tools:$PATH"

需要注意的是,在 Ubuntu 下我经常将用户特有的设置放在 ~/.profile 文件,但这个在 deepin 下是不生效的。

获取 Chromium 源码

Chromium 源码超级庞大,为了节省时间和空间,我就没有全库克隆,没有拉取历史提交,只克隆最新代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fetch --nohooks --no-history chromium

运行钩子

Chromium 源码不仅包含代码,还包含一些编译所需的二进制文件,这些是通过钩子脚本从服务器上下载的。在前面的命令中,我加上了 --nohooks,就是下载代码时,不运行钩子脚本。但这个脚本是必须运行的,否则会缺少一些二进制文件和编译器,这个步骤可以单独运行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ gclient runhooks

编译代码

在 Chromium 的说明文档中,还需要运行一个 install-build-deps.sh 脚本,用来安装所依赖的系统包,但这个脚本在 deepin 下执行会出错,其实不执行这个脚本也没有关系,因为 deepin 已经安装了比较全的包,仅仅需要再补充以下两个包就可以:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo apt install build-essential gperf

Chromium 使用 Ninja 作为其主要构建工具,并使用名为 GN 的工具来生成 .ninja 文件。您可以创建任意数量的具有不同配置的构建目录。要创建构建目录,请运行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ gn gen out/Default

编译 Chromium 浏览器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ autoninja -C out/Default chrome

经过漫长的编译,自己的 Chromium 浏览器就生成了。

小结

总结一下,使用 deepin 作为开发系统,具有如下优点:

  • 美观的用户界面:Deepin Linux 以其优雅和现代的界面设计著称,提供了良好的用户体验。
  • 易于使用:Deepin Linux 注重用户体验,提供了简洁直观的界面和操作方式。
  • 丰富的预装软件:Deepin Linux 自带了许多常用的软件和工具,减少了用户在初期安装和配置软件的时间。
  • 良好的中文支持:作为中国开发的操作系统,Deepin Linux 对中文支持非常好,适合中国开发者使用。
  • 基于 Debian:Deepin Linux 基于 Debian,这意味着你可以访问大量的 Debian 软件包和资源,确保开发所需的工具和库能得到很好的支持。

你会选择国产系统作为开发系统吗?欢迎留言讨论。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-07-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云水木石 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
CloudStudio之ComfyUI上使用Wan2.1输出高质量视频
启动后默认监听8188端口,直接在空间地址例如https://xxx.ap-singapore.cloudstudio.work/修改成https://xxx--8188.ap-singapore.cloudstudio.work/即可打开项目网站。
CloudStudio
2025/03/13
9774
RTX4060+ubuntu22.04.3+cuda12.2安装验证
这款笔记本电脑因为触摸板驱动限制,需要选择ubuntu22.04.3以上版本;而RTX4060+cuda限制需要选择ubuntu22.04.3版本,更新版本的cuda并非一定不能使用,而是官方文档验证过的是此版本。
tankaro
2025/05/24
1660
Tensorflow简述和初步上手
AI这个概念好像突然就火起来了,年初大比分战胜李世石的AlphaGo成功的吸引了大量的关注,但其实看看你的手机上的语音助手,相机上的人脸识别,今日头条上帮你自动筛选出来的新闻,还有各大音乐软件的歌曲“每日推荐”……形形色色的AI早已进入我们生活的方方面面。深刻的影响了着我们,可以说,这是一个AI的时代。 其实早在去年年底,谷歌就开源了其用来制作AlphaGo的深度系统Tensorflow,相信有不少同学曾经对着这款强大的机器学习系统蠢蠢欲动,但虽然有关Tensorflow的教程其实不少,甚至谷歌官方就在Te
云时之间
2018/04/11
1K0
Tensorflow简述和初步上手
CentOS 停服!我们有哪些顶流的国产操作系统
‍大家都知道,CentOS 8 Linux 已于 2021 年底停止更新服务了(CentOS 8 将于年底终止!)。取而代之的是滚动版本 CentOS Stream 作为 RHEL 的下游分支于 2019 年推出,将持续排查漏洞,让上游版本更加稳定和安全。‍
民工哥
2022/10/27
7.6K0
国产统一操作系统UOS安装与初体验
统信操作系统(统信UOS) 是由统信软件开发的一款基于 Linux 内核的操作系统,统信桌面操作系统以桌面应用场景为主, 支持龙芯、 飞腾、 兆芯、 海光、 鲲鹏、申威、intel、amd等芯片平台的笔记本、 台式机、一体机和工作站。统信操作系统桌面版包含原创专属的桌面环境、 多款原创应用,以及数款来自开源社区的原生应用软件, 能够满足用户的日常办公和娱乐需求。
yuanfan2012
2020/04/26
4.6K0
国产系统之如意玲珑
在使用 Deepin/UOS 系统时,我注意到应用商店新增了一个“玲珑应用”的类别。经过一番了解,发现这是一种最新研发的国产软件包格式——如意玲珑。那么,什么是如意玲珑?为什么要开发这样一种全新的软件包格式?这篇文章就带大家深入探索如意玲珑的世界。
云水木石
2025/01/23
2720
国产系统之如意玲珑
deepin Linux 系统上交叉编译 ARM 架构浏览器
随着国产信创系统的逐步发展,越来越多的设备采用了非 x86 架构的 CPU,如 ARM、龙芯、申威和 RISC-V 等。其中,ARM 架构的市场份额最高,主要厂商包括飞腾和华为麒麟。在为这些国产系统开发软件时,通常需要支持上述架构。
云水木石
2025/03/03
2390
deepin Linux 系统上交叉编译 ARM 架构浏览器
Ubuntu18.04完美搭建Tensorflow-gpu
Persist in sharing and promote mutual progress
公众号guangcity
2019/09/20
3.3K0
Ubuntu18.04完美搭建Tensorflow-gpu
突围!国产统一操作系统UOS(深度)产业应用与生态
统一操作系统UOS是由包括中国电子集团(CEC)、武汉深之度科技有限公司、南京诚迈科技、中兴新支点在内的多家国内操作系统核心企业自愿发起,共同打造的中文国产操作系统。UOS支持在兆芯、鲲鹏、海光、龙芯、飞腾等芯片的笔记本,台式机,工作站,服务器上运行。
SHOUT
2022/06/01
1.7K0
突围!国产统一操作系统UOS(深度)产业应用与生态
配置CentOS7 GPU环境
我的cuda版本是9.0,cudnn版本是7.1.2,tensorflow-gpu版本是1.9.0。
故事尾音
2019/12/18
1.8K0
配置CentOS7 GPU环境
深度学习-在ubuntu16.04安装CUDA9.1-总结(问题完全解决方案)
深度学习大火,为了赶上AI的班车,许多研究生本科生们都在搞深度学习。然而深度学习环境搭建必不可少,这篇文章是我多次为实验室搭建环境所积累起来的经验总结,希望所有看到这篇文章的同志们,可以顺利解决环境搭建的问题。
老潘
2018/05/08
2.4K7
深度学习-在ubuntu16.04安装CUDA9.1-总结(问题完全解决方案)
CentOS下的CUDA安装和使用指南
Linux的版本在官网上找合适版本的软件包,然后右键复制链接地址,通过wget命令下载。 官网:https://repo.anaconda.com/archive/
SL_World
2021/09/18
7.2K0
Ubuntu sever20.04 LTS版本GPU服务器深度学习环境配置
在非图形界面的Ubuntu server20.04的GPU服务器上配置环境,包括Nvidia驱动,cuda,cuDNN的安装,Anaconda的安装和开发环境创建。最好的参考文档是各软件的官方文档。
GIS指北
2022/11/14
2.9K0
Ubuntu sever20.04 LTS版本GPU服务器深度学习环境配置
GPU云服务器ubuntu系统配置深度学习pytorch框架(一)
/etc/sysconfig/network-scripts/ifcfg-eth0的配置文件中,ONBOOT=yes必须设置,这样可以保证系统重启时进行ssh连接时,网络服务也会自启动,否则会导致网络不通。
用户9697813
2022/05/30
2K0
Ubunt16.04 搭建 GPU 显卡驱动 + CUDA9.0 + cuDNN7 详细教程
如果你的电脑安装了 Ubuntu16.04,而且电脑自带一块 NVIDIA GeForce 的 GPU 显卡,那么不用来跑深度学习模型就太可惜了!关于这方面的网上教程很多,但大都良莠不齐。这篇文章将手把手教你如何安装 GPU 显卡驱动、CUDA9.0 和 cuDNN7。值得一试!
红色石头
2022/01/12
7960
Ubunt16.04 搭建 GPU 显卡驱动 + CUDA9.0 + cuDNN7 详细教程
“苟”了多年的国产操作系统,开始“逆袭”?
中国工程院院士孙家广曾指出:“操作系统作为保障国家信息安全和产业发展的基石,不仅是整个信息安全领域的核心,也是连接芯片与应用软件的重要桥梁”。
科技云报道
2024/03/14
9170
“苟”了多年的国产操作系统,开始“逆袭”?
ubuntu22.04安装显卡驱动与cuda+cuDNN
紧接前文:Proxmox VE 8.4 显卡直通完整指南:NVIDIA 2080 Ti 实战。在R740服务器完成了proxmox的安装,并且安装了一张2080ti 魔改22g显存的的显卡。配置完了proxmox显卡直通,并将显卡挂载到了vm 301(ubuntu22.04)的虚拟机上面。现在需要安装显卡驱动与cuda以及cuDNN!
对你无可奈何
2025/05/03
1.2K0
国产芯片+国产操作系统打造办公系统
在《使用国产操作系统作为开发系统》一文中,我介绍了将开发系统从 Ubuntu 替换为 Deepin 系统的过程。经过一个多月的使用,Deepin 系统已然成为我的主力开发平台,其顺手程度让我对国产操作系统的信心大增。于是,我开始将目光瞄向公司的办公电脑。
云水木石
2025/01/23
1480
国产芯片+国产操作系统打造办公系统
【安装教程】Ubuntu16.04+Caffe+英伟达驱动410+Cuda10.0+Cudnn7.5+Python2.7+Opencv3.4.6安装教程
对于caffe的安装过程,可以说是让我终身难忘。两个星期就为了一个caffe,这其中的心路历程只有自己懂。从实验室的低配置显卡开始装Ubuntu,到编译caffe,解决各种报错,这个过程花费了一周的时间。把cuda版本和N卡驱动版本一降再降,仍然不管用。因此手剁了一台8000的高配置主机。之后为了平衡实验室项目,首先花了半天时间将win10下的相关和其他杂七杂八的软件配置。只有以为只需Ubuntu安装好,caffe编译成功即可,不想安装完Ubuntu之后,却电脑没有引导启动项,把网上的方法试了个遍,却仍无法解决。因此听到一种说法是,win10的启动路径覆盖了Ubuntu启动路径。因此,决定重新再来,将自己的固态和机械全部初始化,首先在固态上安装Ubuntu16.04,在机械上安装Win10,对于双系统的安装请参照我的另一篇博客:Win10与Ubuntu16.04双系统安装教程。在这种情况下参加那个caffe安装成功。请注意,对于双系统建议先安装Ubuntu,并将caffe编译成功之后在去机械上安装Win10。Caffe的安装教程请参照如下安装教程。
AI那点小事
2020/04/20
1.9K0
【安装教程】Ubuntu16.04+Caffe+英伟达驱动410+Cuda10.0+Cudnn7.5+Python2.7+Opencv3.4.6安装教程
手把手教你在 Ubuntu16.04 安装 GPU 驱动 + CUDA9.0 + cuDNN7
如果你的电脑安装了 Ubuntu16.04,而且电脑自带一块 NVIDIA GeForce 的 GPU 显卡,那么不用来跑深度学习模型就太可惜了!关于这方面的网上教程很多,但大都良莠不齐。这篇文章将手把手教你如何安装 GPU 显卡驱动、CUDA9.0 和 cuDNN7。值得一试!
红色石头
2022/01/12
7.2K0
手把手教你在 Ubuntu16.04 安装 GPU 驱动 + CUDA9.0 + cuDNN7
推荐阅读
相关推荐
CloudStudio之ComfyUI上使用Wan2.1输出高质量视频
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验