一直想买群晖NAS,可是自己又没钱,怎么办? 自己搭建黑群晖啊(滑稽 正好家里有一堆闲置的东西,可以拿来组黑群晖 此教程不包括洗白 需要准备的东西:
- U盘,4G以上的都行,不需要太大,浪费
- 瘦客户机(某宝上有售)
- 硬盘,做黑群晖系统安装和储存文件
- 电脑,用来安装黑群晖系统
1. 下载安装需要的文件
这里提供的是32位CPU最高支持的版本 下载地址:https://pan.baidu.com/s/1EBK_bEiyQb0ROG41Dw4JTA 提取码:lgrr 下载完毕后,双击 SynologyAssistantSetup-5.0-4448.exe ,安装 SynologyAssistant
2. 写入引导镜像
将U盘插入到电脑上,双击 SynologyAssistant/Win32DiskImager.exe ,按下图操作
3. 安装黑群晖系统
安装之前,请将BIOS的硬盘模式设置为ACHI,详情可咨询卖家或自行百度 把U盘插上主机,开机,进入BIOS,将第一引导设置为你的U盘(部分机型开机时按F2选择U盘启动即可,比如华为Gi945),F10保存并重启,会自动进入U盘引导 出现选择项时选择第二项“Nanoboot DSM 5.0-4528 Install/Upgrade”,第二个菜单直接回车,等到出现“DiskStation login”字样时,打开 SynologyAssistant ,找到自己的主机 




4. 最后的设置
首次登录会提示创建QuickConnect,没有洗白和没有账号的请跳过 进入 控制面板->更新和还原->更新设置 取消自动更新 
5. 可选选项
通过外网访问NAS
有时候想在外网访问自己家的NAS传输文件,由于黑群晖无法使用 QuickConnect ,所以我们需要端口映射 电信光猫需要超级管理员密码设置端口映射,打个电话给电信就可以问到了 由于群晖需要映射的端口很多(需要映射的端口列表),我就直接映射DMZ主机了 
<?php
//error_reporting(0);
function push($text){
//错误推送
}
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$cip = $_SERVER["HTTP_CLIENT_IP"];
}elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
$cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}elseif(!empty($_SERVER["REMOTE_ADDR"])){
$cip = $_SERVER["REMOTE_ADDR"];
}else{
push("NAS IP获取失败");
$put = file_put_contents('ip.txt',$cip);
exit();
}
if(file_get_contents('ip.txt') != $cip){
function percentEncode($str)
{
$res = urlencode($str);
$res = preg_replace('/\+/', '%20', $res);
$res = preg_replace('/\*/', '%2A', $res);
$res = preg_replace('/%7E/', '~', $res);
return $res;
}
function computeSignature($parameters, $accessKeySecret)
{
ksort($parameters);
$canonicalizedQueryString = '';
foreach($parameters as $key => $value)
{
$canonicalizedQueryString .= '&' . percentEncode($key)
. '=' . percentEncode($value);
}
$stringToSign = 'POST&%2F&' . percentencode(substr($canonicalizedQueryString, 1));
$signature = base64_encode(hash_hmac('sha1', $stringToSign, $accessKeySecret . '&', true));
return $signature;
}
date_default_timezone_set("GMT");
$accessKeyId = '<accessKeyId>';
$accessKeySecret = '<accessSecret>';
$data = array(
'Format' => 'JSON',
'Version' => '2015-01-09',
'AccessKeyId' => $accessKeyId,
'SignatureVersion' => '1.0',
'SignatureMethod' => 'HMAC-SHA1',
'SignatureNonce'=> time().date("is"),
'Timestamp' => date("Y-m-d\TH:i:s\Z"),
'Action' => 'UpdateDomainRecord',
'RecordId' => '', //解析ID,先到域名解析里解析一个IP,再进入 https://api.aliyun.com/#product=Alidns&search=DescribeDomainRecords&api=DescribeDomainRecords¶ms={}&tab=DEMO&lang=PHP 查询解析ID
'RR' => '', //解析前缀
'Type' => 'A',
'Value' => $cip
);
$data['Signature'] = computeSignature($data, $accessKeySecret);
$url = 'https://alidns.aliyuncs.com/';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST,count($data));
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$result = curl_exec($ch);
if(!$result->RecordId){
push("NAS IP解析失败:".$result);
}
echo $result;
$put = file_put_contents('ip.txt',$cip);
}
?>
然后添加计划任务到NAS上就行 既然要从外网通过域名访问,那么SSL必不可少 群晖系统也自带了可免费签发并有小绿锁的SSL证书(我没试过),我就直接把自己的泛域名证书上传上去了 


已知的问题
无法设置“硬件和电源”选项
有可能是因为瘦客户机没有风扇,导致“风扇设置”没东西 





