Anduin Xue

let today = new Beginning();

Ubuntu


在服务器中部署单独的Docker应用

本文针对在虚拟机(VM)中部署Docker应用的场景进行了详细的讨论。这种场景可能出现在数据中心仍基于VM部署,而某些业务只提供Docker映像的情况下。文章首先讨论了这种混合部署的挑战,包括管理复杂性的提升,以及未来发展方向的确定。然后,文章详细介绍了在VM中安装Docker、确定容器需要穿透的卷、确定端口映射、管理容器和VM、确保容器会随着主机开启、对容器升级以及直接操作容器的方法。文章指出,虽然容器的升级相对容易,但在实际部署中,我们还需要采用一些“笨办法”以确保新版本的容器能正确加载和使用持久化卷,并与之前的版本兼容。最后,文章强调在混合部署中,需要对容器和VM进行分别管理,并需要对容器的持久化卷和端口映射进行规划和管理,以确保系统的稳定性和可靠性。同时,也需要考虑未来的发展方向,逐步向基于容器的部署模式转变。那么,你是否已经准备好在VM中部署Docker应用了呢?--GPT 4

bash Linux Ubuntu Docker VM Container

Make Gnome looks like Windows 11

在这篇博客中,我们将探索如何将 Gnome 桌面环境定制成 Windows 11 的外观。这是一种有趣的尝试,可以让我们看到 Linux 桌面环境的强大自定义性,无论是 KDE 还是 Gnome,都可以通过一些简单的设置,让它们看起来像任何一个系统。首先,我们需要安装一些必要的依赖,如 gnome-tweaks 和几个 Gnome 扩展。接着,我们将设置壁纸,选择一个类似于 Windows 11 的壁纸。然后,我们会设置图标和主题,这里推荐的图标方案和主题方案都具有很高的仿真度。最后,我们会设置 Dock to Panel 和 ArcMenu,这两个扩展可以让我们的 Gnome 桌面更像 Windows 11。在这个过程中,我们还会详细介绍每个步骤的具体操作。那么,Linux 桌面环境的自定义性能有多强?我们能否真正做到让 Gnome 看起来像 Windows 11?这就需要你亲自尝试,亲自体验了。--GPT 4

Ubuntu Gnome

Install GitLab behind a reverse proxy on a Ubuntu 20.04\22.04 server

本篇博客详细介绍了如何在Ubuntu 20.04/22.04服务器上安装GitLab,并将其部署在反向代理之后。首先,博客讲述了如何安装和配置GitLab,接着演示了如何配置Nginx作为反向代理。为了解决SSH端口冲突的问题,文章还讨论了如何在GitLab服务器上使用2202端口作为克隆端口,并在代理服务器上进行端口转发。此外,博客还介绍了如何为GitLab实例添加运行器,并提供了一个示例项目,用于测试运行器的功能。最后,博客提供了一个完整的`.gitlab-ci.yml`配置文件示例,用于实现项目的构建、代码分析、测试和发布等任务。 在阅读本篇博客后,您将了解如何在Ubuntu服务器上部署GitLab,并配置反向代理以实现安全的访问。同时,您还可以借助本文提供的示例项目和`.gitlab-ci.yml`配置文件,快速实现项目的自动化构建和测试。在实践中,您可能需要根据自己的需求对配置进行调整,以满足不同的项目类型和技术栈。 那么,在配置GitLab和反向代理的过程中,可能会遇到哪些问题?如何确保GitLab运行器能够正确地执行任务?如何根据项目需求定制`.gitlab-ci.yml`配置文件?阅读全文,自己找到答案吧!--GPT 4

bash git Linux Ubuntu Proxy SSH Caddy GitLab nginx

How to install CUDA and cuDNN on Ubuntu 22.04 and test if its installed successfully

本篇博客详细介绍了如何在Ubuntu 22.04上安装CUDA和cuDNN,并测试它们是否安装成功。首先,博客提供了安装CUDA的下载链接以及具体的安装步骤。接下来,博客提供了安装cuDNN的下载链接和详细的安装步骤。文章还介绍了如何确认驱动程序是否已安装,以及如何检查CUDA和cuDNN是否已安装。 为了测试CUDA是否安装成功,博客提供了一个简单的“Hello CUDA”程序,并展示了如何编译和运行它。同样,博客也展示了如何测试cuDNN是否安装成功,通过运行一个简单的示例程序。 在阅读本篇博客后,读者应该能够顺利地在Ubuntu 22.04上安装CUDA和cuDNN,并确保它们已成功安装。此外,本文还提供了一些有用的命令来检查驱动程序、CUDA和cuDNN的安装状态和版本信息。 最后,你是否知道如何在自己的Ubuntu系统上安装CUDA和cuDNN?如何确保它们已成功安装并运行?阅读全文以获取详细的操作步骤和示例代码。--GPT 4

Ubuntu NVIDIA vGPU CUDA cuDNN GPU

让你的数据中心使用 GPU 算力!

本文介绍了如何在数据中心中使用 GPU 算力。首先,文章详细描述了安装并配置 NVIDIA Grid 驱动的过程,包括修改配置文件、添加许可等。接着,介绍了如何安装 CUDA,并给出了一些注意事项。文章还讨论了如何确保虚拟机可以在主机之间平滑迁移,并给出了在 VCenter Server 中开启迁移的方法。此外,文章提及了如何划分 SKU,以便提前规划每个物理 GPU 的切分方式。最后,文章介绍了如何开始炼丹,包括安装 cuDNN、使用 GPU 进行硬件加速编码以及运行 AI 应用。文章还提供了一些监控温度的方法,以便在家中服务器降低噪音。如果遇到问题,文章给出了一些建议和检查事项。那么,在这个过程中,哪些因素可能会影响 GPU 算力的使用?如何确保充分利用 GPU 算力以提高数据中心的性能?--GPT 4

Ubuntu VMware Vsphere Server NVIDIA Ai vGPU Python Tesla CUDA

MySQL allow remote connection (For root and other users)

本篇博客主要讲述了如何在MySQL数据库中允许远程连接,无论是对于root用户还是其他用户。首先,我们可以通过运行SQL查询来检查数据库的当前状态。接着,确保防火墙允许3306端口,并允许MySQL绑定到所有端口。然后,对于root用户,需要在本地登录root,替换主机值,并重启服务。对于其他用户,如果用户不存在,需要先登录MySQL,创建新数据库和新用户,并为新用户分配必要的权限。如果用户已存在,只需更新用户的主机值即可。 本文详细介绍了每个步骤所需的命令和操作,为您在实际操作中提供了便利。如何确保远程连接的安全性?是否还有其他方法可以实现远程连接?阅读全文以获取更多信息并找到答案。--GPT 4

bash Database Linux Ubuntu Remote Management MySQL

Ubuntu resize an ext4 partition without LVM

本篇博客详细介绍了如何在Ubuntu系统下调整ext4分区的大小,而无需使用LVM。文章首先提醒读者在进行分区调整之前确保已卸载所有文件系统并关闭所有交换分区,以防止数据损失。接着,博客通过一系列命令展示了如何使用fdisk工具删除旧分区并创建一个新的、更大的分区。在创建新分区后,文章解释了如何使用resize2fs命令在线调整文件系统大小,以适应新的分区大小。最后,通过df命令展示了调整后的分区和文件系统的大小。 在阅读本文后,你可能会思考如何在不同的文件系统和操作系统下进行类似的操作。此外,你可能会好奇在这个过程中是否存在数据丢失的风险,以及如何确保数据的安全性。在实践中,你可能会遇到哪些问题,又如何解决这些问题呢?--GPT 4

Linux Ubuntu Disk ext4 fdisk Partition

If a Ubuntu server should run apt upgrade automatically?

本文讨论了是否应该让Ubuntu服务器自动运行apt升级。首先,作者提到自动升级的优点:节省时间、尽快获得安全更新、始终保持软件包的清洁和新颖、历史上apt升级非常安全且不会删除现有库。然而,自动升级并不适用于所有场景。在问题调查阶段,自动更新可能会掩盖真正的问题;对于需要极度稳定的客户而言,服务器的任何更改都可能带来风险;自动升级可能导致软件的较大功能更新,从而引发业务中断;此外,更新过程通常需要重启,而某些程序在重启后可能难以恢复正常运行。 尽管如此,仍有一些情况下可以考虑自动升级:系统可容忍降低可用性;系统是无状态的,重启不会影响其正常运行;系统已配置完善的备份/快照;系统始终连接到互联网;系统需要获得最新的功能更新。作者建议仅在满足以上所有条件时才使用自动更新功能。 当然,文章还提供了如何配置Ubuntu服务器以每周自动升级的方法。首先编写一个`upgrade.sh`脚本,然后使用`crontab -e`编辑计划任务。但在实施自动升级之前,请务必权衡好利弊,确保自动升级不会给您的业务带来不必要的麻烦。--GPT 4

bash Linux Ubuntu Upgrade Crontab Update

Install Cockpit on Ubuntu 22.04

本篇博客详细介绍了如何在Ubuntu 22.04上安装Cockpit,以及如何解决安装过程中可能遇到的问题。首先,我们需要使用命令行安装Cockpit。接下来,为了确保安全性,我们需要创建一个非root用户,并将其添加到sudo组中。本文提供了一个关于身份验证的最佳实践的链接,供读者参考。 在安装过程中,可能会遇到“packagekit无法在离线状态下刷新缓存”的错误。为了解决这个问题,我们需要在/etc/netplan/目录下创建一个新的网络配置文件,并将renderer设置为NetworkManager。然后,将其他配置文件的优先级调整为更高的数字,最后应用网络配置并重启Cockpit服务。 此外,本文还介绍了如何安装Cockpit的导航插件。首先,我们需要安装jq工具,然后从GitHub上获取插件的最新版本,并安装到本地。 安装完成后,可以在浏览器中访问Cockpit。为了确保HTTPS安全性,我们可以使用Caddy对Cockpit服务器进行反向代理。本文提供了一个关于Caddy的使用技巧的链接,以及一个示例配置文件。 通过阅读本文,您将能够顺利地在Ubuntu 22.04上安装并使用Cockpit。那么,您准备好尝试Cockpit了吗?在安装过程中,您是否遇到了其他问题?欢迎在阅读全文后,分享您的经验和解决方案。--GPT 4

bash Linux Ubuntu Remote Management Cockpit NetworkManager

CaddyV2 tips and examples (How to correctly get user's IP address after a reverse proxy)

本篇博客主要介绍了如何在Caddy V2中正确获取用户的IP地址,以及一些实用的Caddy V2技巧和示例。文章首先讲述了如何在Debian系统上安装Caddy V2及其插件,接着展示了如何修改Caddy V2文件以支持Proxy Protocol。此外,还提供了一些实用的Caddy V2配置示例,包括托管静态文件服务器、直接渲染HTML、在特定地址上进行反向代理、执行永久重定向、反向代理并移除/添加自定义头部、忽略证书问题的反向代理、仅允许局域网访问的反向代理、仅允许局域网进行登录的反向代理、覆盖HTTP Host头部的反向代理、通过基本身份验证保护反向代理以及在两个节点之间进行负载均衡的反向代理等。最后,文章给出了一个完整的示例配置,包括外部IP地址的基本身份验证保护、局域网直接访问、覆盖HTTP Host、允许不安全的HTTPS、移除头部“x-frame-options”等功能。阅读这篇博客,您将了解到Caddy V2的强大功能以及如何灵活运用这些功能进行网站配置。那么,如何在实际应用中根据需求选择合适的Caddy V2配置呢?这将取决于您的实际需求和场景,欢迎尝试这些示例并进行实践。--GPT 4

Reverse Proxy Linux Ubuntu Proxy FRP Caddy CaddyV2 IP Address Proxy Protocol

Build a new NFS server with WinServer or Ubuntu and mount it

本篇博客详细介绍了如何在Windows Server和Ubuntu系统中搭建新的NFS服务器,并进行挂载。首先在Windows Server中,通过安装相关组件并设置文件夹属性来创建NFS服务器。接着在Ubuntu系统上,使用命令行工具安装nfs-kernel-server,创建共享文件夹并对其进行权限设置。配置完成后,需要编辑exports文件以允许特定子网访问服务器。 在Windows系统中,通过PowerShell启用NFS客户端功能,并在CMD中使用mount命令挂载远程NFS。对于Ubuntu系统,需要安装nfs-common包,并使用mount命令挂载远程NFS。此外,还介绍了如何在VMware ESXI中将远程NFS作为数据存储挂载。 本文详细阐述了在不同操作系统中搭建NFS服务器的步骤,以及在各个平台上挂载远程NFS的方法。通过阅读本文,你将能够了解到在Windows Server和Ubuntu系统中创建和使用NFS服务器的过程。那么,你是否想知道在其他操作系统中如何搭建NFS服务器呢?对于不同的场景和需求,你会选择哪种方式进行远程文件共享?--GPT 4

Linux Ubuntu File Windows Server Share NFS VMware ESXI Vsphere NAS

Mount Windows SMB folder to Ubuntu

本篇博客教你如何将远程SMB文件夹挂载到本地Ubuntu服务器。首先,安装cifs-utils工具,然后创建一个新文件夹。接下来,使用mount命令将远程SMB文件夹挂载到本地文件夹。你可能需要输入密码来完成挂载操作。挂载完成后,你可以在本地文件夹中查看远程SMB文件夹的内容。需要注意的是,挂载命令中的`your-name`、`your-server`和`your-path`分别代表你的Windows用户名、服务器IP地址或域名以及SMB共享文件夹的名称。 如果你希望在开机时自动挂载远程SMB文件夹到Ubuntu,可以编辑`/etc/fstab`文件并添加相应的配置行。在配置行中,将`<your-server>`、`<your-path>`、`<your-name>`和`<your-password>`替换为实际值。 通过阅读本文,你将学会如何在Ubuntu系统中挂载和卸载远程SMB文件夹,以及如何配置开机自动挂载。在实际操作中,你可能会遇到哪些问题?有哪些需要注意的地方?希望本文能为你提供有益的启示。--GPT 4

bash Linux Ubuntu Windows Server SMB Share