突发奇想把云服务器刷成了黑群晖 ...

大家好,我是鸟哥。一个半路出家的程序员。

前两天准备把自己10年前买的戴尔电脑刷成黑群晖改造成一台家庭存储服务器,折腾了几天后结果把电脑刷成了蓝屏,彻底报废了。后来又突发奇想,准备把手头上的服务器刷成黑群晖,本以为是无法成功的事,结果却很顺利的完成了。挺好的,也不用头疼内网穿透的事情了。今天就把过程整理一下分享给有需要的小伙伴。

首先。啥是群晖呢?相信很多读者还不太理解。这里我就不详细解释了,不理解的小伙伴就暂时把群晖理解为一种特殊的操作系统吧,这种操作系统,集成了各种套件,非常方便用于搭建存储服务器。而黑群晖就是盗版的群晖。

整个刷机流程鸟哥参照的是这篇文章:

https://i4t.com/5355.html

但是,文章稍微有点坑。故而我又按照自己的实战流程整理了一次。

  1. 前提准备

首先,要准备两台服务器。一台是要刷成黑群晖系统的服务器,文中暂且称之为群晖服务器;另外一台是作为引导盘角色的服务器,用于存储镜像文件,文中暂且称之为镜像服务器。对于这两台服务器还有两个要求。

1.这两台服务器最好在同一个内网下(同一个账号购买的服务器应该都在一个内网下),因为刷机时要进行镜像文件的下载,如果是外网下载速度相对来说会很慢,可能会影响整个刷机流程。

2.群晖服务器的操作系统必须是Debian,否则会刷机失败。镜像服务器的操作系统没有要求,但建议也刷成Debian。本文就是如此。

  1. 登录到镜像服务器,搭建能够支持下载镜像文件的环境

1.使用apt安装nginx

apt-get update 

apt-get install nginx curl

2.启动nginx

sudo service nginx start

3.访问测试

curl localhost

如下图所示,说明环境搭建成功

  1. 登录到群晖服务器,执行下面的操作。

1.检查服务器的操作系统是否支持否支持virtio_blk

lsmod | grep virtio_blk

如下图所示,则说明支持。

2.下载镜像文件,并上传到群晖服务器上。

为方面后的更新,下载链接放在公众号后台了,搜索关注菜鸟要飞,回复【镜像】即可获取。

3.解压镜像文件

gunzip cc42548225bd43ef9c239df9072bb51f.gz

4.挂载

mount -o loop,offset=$((9177088*512)) cc42548225bd43ef9c239df9072bb51f /mnt

5.获取网卡mac地址

root@VM-0-8-debian:~# ip addr|grep ether|awk -F "[ ]+" '{print $3}'|sed 's/\://g'

6.替换/mnt/中的引导文件。找到并打开/mnt/boot/grub/grub.cfg文件,如下图所示,将mac1的值修改为上一步中获取到的mac地址。注意,如果是多网卡应该有多个mac1,都需要替换哦

7.卸载镜像

umount /mnt

8.打包镜像文件

gzip cc42548225bd43ef9c239df9072bb51f

9.将新的镜像文件,推送到镜像服务器的nginx的网站根目录。

scp cc42548225bd43ef9c239df9072bb51f.gz 10.0.4.11:/var/www/html/

其中10.0.4.11是镜像服务器的内网IP,需要注意的是不同操作系统上nginx的网站根目录是不一样的哦。本文是Debian操作系统。

10.测试镜像文件能否下载。

wget 10.0.4.11/cc42548225bd43ef9c239df9072bb51f.gz

看到了吧,196MB/s。内网速度还是非常给力的。

11.执行下面的命令,开始安装群晖系统

bash <(wget --no-check-certificate -qO- 'https://cdn.jsdelivr.net/gh/MoeClub/Note/InstallNET.sh') --mirror 'https://mirrors.ustc.edu.cn/debian' -dd 'http://10.0.4.11/cc42548225bd43ef9c239df9072bb51f.gz'

如下图所示,说明安装命令正在执行。命令执行完成后,服务器会重启。

12.待命令执行完成后,进入腾讯云控制台,找到群晖服务器,如下图所示,进入到群晖服务器的管理页面

然后,如下图所示,选择VNC登录。

登录成功后,可以看到如下图的界面,说明服务器正在刷机。

耐心等待10~30分钟,直到看到如下界面。说明刷机成功。

然后,去腾讯云控制台,找到群晖服务器,进入管理页面,找到防火墙。开放5001和5000的端口。

此时,在浏览器中通过服务器IP地址+5000端口,访问群晖服务器。此时服务器已经是黑群晖的操作系统啦。如下图所示,一步步按照要求系统设置,即可。

至此,云服务器刷黑群晖大功造成。至于在使用过程中有没有坑呢,我暂且还不知道,后面用的时候如果发现了再说。但是呢,其实并不建议在云服务器上玩黑群晖哦,毕竟硬盘、带宽、内存都是问题,还是本地物理机器用起来更爽。这唯一的好处可能就是不需要内网穿透吧。

<think> 嗯,用户遇到了CocoaPods安装状态异常的问题,这确实是个经典又棘手的问题。从引用内容来看,用户已经尝试过官方指南但陷入死循环,说明基础安装步骤已失效。需要深入分析环境变量和依赖关系。 用户提供的四个引用很有价值:引用[1][2]证明常规安装无效;引用[3]指向Ruby环境变量配置;引用[4]则涉及Android Studio操作。这提示我解决方案需要分层处理: 首先考虑环境变量问题,这是最常见的原因。Homebrew安装的Ruby路径与系统默认不同,必须手动配置PATH。用户引用[3]中的export命令正是关键,但需要确认用户使用的是zsh还是bash——从~/.zshrc判断应该是新版macOS的zsh。 其次要考虑CocoaPods安装方式。通过sudo gem install可能导致权限问题,使用Homebrew安装更安全。但引用显示用户似乎已安装过,所以重点在状态校验:pod --version验证安装,pod setup更新仓库。 最后是Flutter关联问题。用户引用[4]提到Android Studio重新编译,这其实是通过IDE强制新依赖关系。考虑到用户上下文反复出现"flutter",需要特别强调flutter doctor --fix修复的可行性。 突发奇想:用户是否同时存在多版本Ruby冲突?rvm或rbenv版本管理工具残留可能导致路径混乱。不过首次回复不宜过度复杂化,先解决核心矛盾更稳妥。 安全方面要提醒sudo风险,特别是Catalina之后系统完整性保护(SIP)可能拦截gem写入。替代方案如brew install cocoapods更符合苹果安全策略。 检测到用户显然经历过多次失败尝试,说明理解基本概念但卡在环境细节。回复需要: 1️⃣ 明确列出终端操作命令避免歧义 2️⃣ 区分zsh/bash配置差异 3️⃣ 提供fallback方案(如Android Studio补救) 4️⃣ 给出每个步骤的验证方法 结尾的提问要聚焦可能的报错点,帮助用户定位具体故障模块。 </think> 以下是解决 CocoaPods "not installed or not in valid state" 问题的完整方案,结合环境配置、权限修复和工具链联动: ### 一、核心解决步骤 1. **修复 Ruby 环境变量**(关键步骤) 在终端执行(适用于 zsh): ```bash echo 'export PATH="/opt/homebrew/opt/ruby/bin:$PATH"' >> ~/.zshrc echo 'export LDFLAGS="-L/opt/homebrew/opt/ruby/lib"' >> ~/.zshrc echo 'export CPPFLAGS="-I/opt/homebrew/opt/ruby/include"' >> ~/.zshrc source ~/.zshrc ``` *若使用 bash 则替换为 `~/.bash_profile`* 2. **重新安装 CocoaPods** ```bash # 卸载旧版本(可选) sudo gem uninstall cocoapods # 通过 Homebrew 安装(推荐) brew install cocoapods # 或使用 RubyGems 安装 sudo gem install cocoapods ``` 3. **初始化仓库** ```bash pod setup # 检查状态(显示版本号即功) pod --version ``` ### 二、进阶验证与修复 4. **检查 Flutter 环境** ```bash flutter doctor ``` 若提示 CocoaPods 问题,执行: ```bash flutter doctor --android-licenses # 接受所有协议 flutter doctor --fix ``` 5. **Android Studio 强制新** - 通过终端启动 Android Studio: ```bash open -a "Android Studio" ``` - 打开项目后执行: `Build > Clean Project` → `Build > Rebuild Project` ### 三、故障排查清单 | 现象 | 解决方案 | |---------------------|----------------------------| | `pod setup` 卡住 | 更换 Ruby 源:`gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/` | | 权限错误 | 用 `sudo chown -R $(whoami) ~/.cocoapods` 修复仓库所有权 | | Flutter 持续报错 | 执行 `flutter clean` + `flutter pub get` | > **重要提示**: > 新版 macOS(Ventura 及以上)需在 `系统设置 > 隐私与安全性 > 开发者工具` 中为终端/IDE 授予完全磁盘访问权限[^3][^4]。
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值