http {
...
lua_shared_dict cpu_cache 1m; # 定义共享字典用于缓存 CPU 使用率
access_by_lua_block {
local cpu_cache = ngx.shared.cpu_cache
local cache_time = cpu_cache:get("cache_time") or 0
local current_time = ngx.now()
if current_time - cache_time > 5 then -- 每 5 秒更新一次
local cpu_info = io.popen("top -bn1 | grep 'Cpu(s)'"):read("*all")
local cpu_usage = cpu_info:match("(%d+%.%d+) id") -- 获取空闲 CPU 百分比
local cpu_used = 100 - tonumber(cpu_usage) -- 计算使用率
cpu_cache:set("cpu_usage", cpu_used)
cpu_cache:set("cache_time", current_time)
end
local cpu_usage = cpu_cache:get("cpu_usage")
ngx.log(ngx.INFO, "CPU 使用率: " .. cpu_usage .. "%")
-- 将 cpu_usage 发送到远程鉴权接口,可根据服务器压力来决定是否拒绝一些不重要的请求
}
}
代码解析:
共享字典:使用 lua_shared_dict 定义一个共享字典 cpu_cache,用于存储 CPU 使用率和缓存时间。
获取 CPU 使用率:在 access_by_lua_block 中,检查缓存时间,如果超过 5 秒,则重新获取 CPU 使用率,并更新共享字典。
记录日志:使用 ngx.log 将 CPU 使用率记录到 Nginx 日志中。
注意事项:
确保 Nginx 配置中已经加载了 Lua 模块(如 ngx_http_lua_module)。
根据实际需求调整缓存时间,以平衡性能和数据的实时性。
宝塔面板中-安全-系统防火墙 功能非常丰富,特别是“地区规则”用来屏蔽来自国外的请求非常有用,那些通过 URL 来找网站漏洞的恶意请求大多来自国外。但是添加规则经常无反应
于是找到这个功能对应的配置文件:/etc/firewalld/zones/public.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
<service name="ssh"/>
<service name="dhcpv6-client"/>
<port protocol="tcp" port="80"/>
<port protocol="tcp" port="443"/>
<masquerade/>
<rule family="ipv4">
<source address="43.131.232.135"/>
<drop/>
</rule>
<rule family="ipv4">
<source address="103.150.11.45"/>
<drop/>
</rule>
<rule>
<source ipset="US"/>
<drop/>
</rule>
<rule>
<source ipset="GB"/>
<drop/>
</rule>
</zone>
修改完成后重启防火墙。
但是看到的效果好像并不一致,甚至有时候服务器重启后防火墙是关闭的,但是有时候又是生效的。
关键的问题是CPU占用异常高。
反正宝塔的系统防火墙功能挺好挺强大,但是用起来不稳定不顺手,有些暴殄天物了。
相关阅读:
2024年8月30日补充 :宝塔面板中配置禁用IP等规则时,提示保存成功或未提醒是否成功,但效果是未成功。其实在宝塔自己的配置里已经记录了(包含备注),但在系统防火墙配置文件中未更改成功,手动修改系统防火墙配置文件就能完全修改成功。(系统防火墙配置文件中没有备注信息,根据IP地址等规则与宝塔自己的配置文件里的记录关联后,在宝塔面板安全模块中展示出来就有备注了。)
2024年8月30日下午补充:在宝塔的软件商店找到这个应用,看到红色的说明,啥都明白了:
于是果断关闭了系统防火墙,开始研究其它替代方案。
一、活动时间
2023年10月31日0点0分0秒至2026年3月31日23点59分59秒
二、活动对象
同时满足以下全部条件的阿里云用户:
1、阿里云注册会员用户;
2、完成阿里云实名认证;
3、符合活动规则的新老用户,均可参与。
三、活动权益参与规则
1、云服务器ECS经济型e实例(简称“99实例”或“99元e实例”)活动范围:
个人认证或者企业认证的用户购买指定配置“e实例2核2G,3M固定带宽,40G ESSD Entry 系统盘”可享受包1年99元,活动地域包含北京,杭州,上海,张家口,呼和浩特,深圳,成都,河源,乌兰察布,广州。
2、云服务器通用算力型u1实例(简称“199实例”或“199元u1实例”)活动范围:
企业认证的用户购买指定配置“u1实例2核4G,5M固定带宽,80G ESSD Entry 系统盘”可享受包1年199元,活动地域包含青岛,北京,杭州,上海,深圳,成都,河源,乌兰察布,广州,中国香港,日本(东京),新加坡,美国(硅谷),英国(伦敦),德国(法兰克福)。
3、活动说明:
在活动期间内,同一个人认证主体只可保有1个“99元e实例”;同一企业认证主体最多可同时保有1个“99元e实例”和1个“199元u1实例”,实例到期后在活动时间范围内可持续以低价续费保有,另购使用官网价。本次优惠不可与优惠券叠加使用。同一用户同一时间只能保有一个“99实例”或者“199实例”。
四、购买场景
1、新购场景:
在符合参与规则的情况下,直接低价购买指定配置产品,有效期1年。若无法购买,请确认是否存在同人或其他实例已占用等情况。
2、续费场景:
在活动时间内,指定配置每年最多可以以优惠价格续费1次,1次1年,直到活动时间结束持续享受续费优惠。
备注:若续费其他实例时使用了低价权益,原低价产品实例将无法再享受低价权益。
根据以上规则,常见场景有以下几种:
场景1:若您在2023年10月31日新购“99元e实例”,您可在2023年10月31日至2024年10月30日(即新购后的一年内)完成第一次续费(此时服务器到期时间为2025年10月30日);可在2024年10月31日至2025年10月30日完成第二次续费(此时服务器到期时间为2026年10月30日);可在2025年10月31日至2026年3月31日完成第三次续费(此时服务器到期时间为2027年10月30日);
即连续以99元1年的价格续费3年,可以使用“99元e实例”至2027年10月30日,该服务器总保有时长4年。
场景2:若您在2026年3月31日(活动截止前最后一天)新购“99元e实例”/“199元u1实例”,您可在2026年3月31日当天完成一次续费(此时服务器到期时间为2028年3月31日);
即以99元/199元1年的价格续费1年,可以使用“99元e实例”/“199元u1实例”至2028年3月31日,该服务器总保有时长2年。
场景3:若您在2024年4月1日新购“99元e实例”/“199元u1实例”,您可在2024年4月1日至2025年3月31日完成第一次续费(此时服务器到期时间为2026年3月31日);您可在2025年4月1日至2026年3月31日完成第二次续费(此时服务器到期时间为2027年3月31日);
即连续以99元/199元1年的价格续费2年,可以使用“99元e实例”/“199元u1实例”至2027年3月31日,服务器总保有时长3年。
3、退订场景:
支持五天无理由退款,退款后保留“低价长效”优惠资格,在活动时间范围内可再次使用低价购买活动配置;
4、变配场景:
变配至“低价长效优惠”指定配置时当前付费周期不享受低价权益,续费时可享受包1年99元/199元优惠;“低价长效优惠”指定配置发生变配/升级/降配操作后,变配需按照官网价补差价,请仔细阅读变配页面引导及相关资费说明,但仍占用权益资格直到该实例释放,购买相同规格产品不能再享受低价,同时续费时也不再享受包1年99元/199元优惠;
5、如用户账号有欠费,需先补足欠费再进行购买。
6、低价权益产品仅供账号本人使用,不允许过户转让。
7、如在参与“低价长效”优惠过程中,使用其他收费产品/功能,则需按照产品/功能标准资费支付超额产生的费用。
8、其他规则:
阿里云有权根据业务需求,随时调整提供给用户低价购买的产品范围、产品数量、产品配置、购买规则等,用户应以购买时相关页面的展示内容为准,但不影响用户在活动规则调整前已经获得的权益。
9、禁止使用产品来挖掘货币,如您使用产品来挖掘货币,可能会被收取费用及取消权益资格。
10、为保证活动的公平公正,如用户在活动中存在隐瞒、虚构、作弊、欺诈或通过其他非正常手段规避活动规则、获取不当利益的行为,例如:作弊领取、恶意套现、网络攻击、虚假交易等,阿里云有权收回相关权益、取消用户的活动参与资格,撤销违规交易,必要时追究违规用户的法律责任。
您应确保您对云服务器的使用不侵犯他人著作权,不会用于私服架设服务、私服程序、私服网站、私服源码、私服服务器和空间等。
五、常见FAQ:
1.用户在购买完99实例/199实例后,如果因某些原因导致需要退款或者释放实例,还可以再以99元/199元的优惠价格重新购买吗?
答:可以,99实例/199实例支持五天无理由退款,退款后仍然保留优惠资格,用户在活动时间范围内可再次使用低价购买活动配置;
2.活动规则里写的1年续费1次中,“1年”指的是自然年吗?
答:“1年”指的是云服务器购买1年的付费周期,即两次续费时间必须间隔1年以上;
3.99实例/199实例优惠套餐最多可以享受几年的优惠?
答:若您在24年3月31日前首次新购99实例/199实例优惠套餐,最多可以享受4年优惠(包含新购1次,续费3次,1次1年);
六、相关名词及解释
1、“阿里云官网”,是指包含域名为 www.aliyun.com/ 的网站以及阿里云客户端,如APP,但阿里云国际站,包括alibabacloud.com以及所有下属页面和jp.aliyun.com以及所有下属页面除外。
2、“同一用户”,是指根据不同阿里云账号在注册、登录、使用中的关联信息,阿里云判断其实际为同一用户。关联信息举例:同一手机号、同一邮箱、同一证件等。
3、“同人账号”,是指同一用户拥有多个阿里云账号的,各个账号之间互为同人账号。
4、“新用户”,是指在阿里云官网没有收费云产品购买记录的阿里云会员用户。新用户在进行首次云产品购买行为时,也被称为“首购用户”。
5、“老用户”,是指在阿里云官网已有收费云产品购买记录的阿里云会员用户。
6、“云产品”,是指阿里云官网售卖的中国大陆节点的产品和服务,但不包括域名、虚拟主机、云市场产品、专有云产品,云通信产品。
7、“指定云产品”,是指某场具体活动页面列举的活动云产品。
8、活动中涉及“打折”、“折扣”、“×折”或“省××元”,是指将本活动期间的某款产品的活动价格,与无任何活动期间的相同产品的日常最小单位售价(例如:月价),按相同购买时长进行比较后,所获得的比较结果。
9、活动涉及的“划线价”、“日常价”,通常是指该产品曾经展示过的销售价,并非原价,仅供参考。具体活动页面单独对“划线价”、“日常价”进行说明的,以其表述为准。
10、除非有相反证据证明外,用户参与活动所获得的全部权益和相应责任,均归属于参与活动的该阿里云账号所对应的实名认证主体。
11、活动中的“天”、“日”、“工作日”等均指该日的0点至24点(北京时间)。
12、阿里云可以根据活动的实际情况对活动规则进行变动或调整,相关变动或调整将公布在活动页面上,并于公布时即时生效;但不影响用户在活动规则调整前已经获得的权益。您购买阿里云单项产品时,亦应遵守该产品法律服务协议。
13、活动页面提到的“核” ,均指vcpu。
在使用 VM 的过程中,你可能遇到过虚拟机和宿主机之间需要传输文件的问题。使用共享文件夹的方式比直接复制粘贴更快速、更有效,并且可以共同编辑文件,无需拷贝文件。如果在虚拟中有下载大文件,那么可以直接下载到共享文件夹中,可有效节省虚拟机磁盘文件 .vmdk 的空间占用(虚拟机里彻底删除文件后,.vmdk 并不会变小)。
设置方法很简单:
首先在宿主机磁盘上新建一个文件夹用来共享给虚拟机,例如取名 VM_SharedFolder。若无特殊需求,尽量不要将重要文件夹共享给虚拟机。
在 VM 中选中要共享文件夹的虚拟机,右键,设置。切换到“选项”选项卡,左侧选中“共享文件夹”,右侧选择“总是启用”,勾选“在 Windows 客户机中映射为网络驱动器”。点击“添加”,选择上一步创建的文件夹,完成。
这样,在虚拟机的“此电脑”上就可以看到这个“网络位置”了,默认是 Z 盘。
以上步骤可以在虚拟机开机的时候进行设置。
老版迅雷不能把下载目录指定到这样的盘符下,可以指定到:\\vmware-host\Shared Folders\VM_SharedFolder
本文将详细介绍 stable diffusion webui 的下载、安装及问题解决。
Stable Diffusion 是 2022 年发布的深度学习文本到图像生成模型。它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如内补绘制、外补绘制,以及在提示词(英语)指导下产生图生图的翻译。它是一种潜在扩散模型,由慕尼黑大学的 CompVis 研究团体开发的各种生成性人工神经网络。它是由初创公司 StabilityAI,CompVis 与 Runway 合作开发的,并得到 EleutherAI 和 LAION 的支持。
其它问题请参考:
运行使用时问题《Windows 使用 Stable Diffusion 时遇到的各种问题整理》;
模型运用及参数《Stable Diffusion 个人推荐的各种模型及设置参数、扩展应用等合集》;
提示词生图咒语《Stable Diffusion 提示词词缀使用指南(Prompt)》;
不同类的模型Models说明《解析不同种类的 Stable Diffusion 模型 Models》;
绘制人物动作及手脚细节《Stable Diffusion 准确绘制人物动作及手脚细节(需 ControlNet 扩展)》;
各种风格对比及实际运用《AI绘图风格对照表/画风样稿详细研究记录及经验总结》;
一、环境准备
(一)硬件方面:
1. 显存
4G 起步,4G 显存支持生成 512*512 大小图片,超过这个大小将卡爆失败。
2. 硬盘
10G 起步,模型基本都在 5G 以上,有个 30G 硬盘不为过吧?现在硬盘容量应该不是个问题。
(二)软件方面:
1. Git
https://git-scm.com/download/win
下载最新版即可,对版本没有要求。
2. Python
https://www.python.org/downloads/
截止发稿(2023.3.6)时,最高版本只能用 3.10.*
,用 3.11.*
会出问题。
3. Nvidia CUDA
https://developer.download.nvidia.cn/compute/cuda/11.7.1/local_installers/cuda_11.7.1_516.94_windows.exe
版本 11.7.1,搭配 Nvidia 驱动 516.94,可使用最新版。
4. stable-diffusion-webui
https://github.com/AUTOMATIC1111/stable-diffusion-webui
核心部件当然用最新版本~~但注意上面三个的版本的兼容性。
5. 中文语言包
https://github.com/VinsonLaro/stable-diffusion-webui-chinese
下载 chinese-all-0306.json
和 chinese-english-0306.json
文件
6. 扩展(可选)
https://github.com/Mikubill/sd-webui-controlnet
下载整个 sd-webui-controlnet
压缩包
https://huggingface.co/Hetaneko/Controlnet-models/tree/main/controlnet_safetensors
https://huggingface.co/lllyasviel/ControlNet/tree/main/models
https://huggingface.co/TencentARC/T2I-Adapter/tree/main
试用时先下载第一个链接中的 control_openpose.safetensors
或 第二个链接中的 control_sd15_openpose.pth
文件
7. 模型
https://huggingface.co/models
https://civitai.com
可以网上去找推荐的一些模型,一般后缀名为 ckpt
、pt
、pth
、safetensors
,有时也会附带 VAE(.vae.pt
)或配置文件(.yaml
)。
类型 | 文件格式 | 存放目录 | 备注 |
---|---|---|---|
check point | .ckpt,.safetensors | \models\Stable-diffusion | 文件较大 |
vae | 名字带有 vae 的 | \models\vae | 细节更好地恢复,特别是眼睛和文字 |
Textual Inversion | *.pt | \embeddings | 一般文件很小,额外的 tag |
Lora | *.pt | \models\Lora | 调整模型,理解为风格化也可以 |
Hypernetworks | .pt,.ckpt,*.safetensors | \models\hypernetworks | 和 lora 工作方式相似,算法不同 |
这里可以学习一下模型的基本概念《解析不同种类的 Stable Diffusion 模型 Models,再也不用担心该用什么了》
二、安装流程
1. 安装 Git
就正常安装,无问题。
2. 安装 Python
建议安装在非 program files
、非 C 盘
目录,以防出现目录权限问题。
注意安装时勾选 Add Python to PATH
,这样可以在安装时自动加入 windows 环境变量 PATH 所需的 Python 路径。
3. 安装 Nvidia CUDA
正常安装,无问题。
4. 安装 stable-diffusion-webui
国内需要用到代理和镜像,请按照下面的步骤操作:
a) 编辑根目录下 launch.py
文件
将 https://github.com
替换为 https://ghproxy.com/https://github.com
,即使用 Ghproxy 代理,加速国内 Git。
如图将代码中所有类似地址都改掉(注意:不仅仅是图中所展示的这些)。
b) 执行根目录下 webui.bat
文件
根目录下将生成 tmp
和 venv
目录。
c) 编辑 venv
目录下 pyvenv.cfg
文件
将 include-system-site-packages = false
改为 include-system-site-packages = true
。
d) 配置 python 库管理器 pip
方便起见,在 \venv\Scripts
下打开 cmd
后执行如下命令:
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/ # 镜像
pip freeze > requirements_versions.txt # 创建文件
pip install -r requirements_versions.txt # 执行此条命令前,请检查你的剩余磁盘空间
pip install xformer # 如果不执行此条命令,启动 Stable Diffusion 时可能会出现错误。xformer 还可以在后续使用中降低显卡占用。
xformer
会安装到 \venv\Lib\site-packages
中,安装失败可以用 pip install -U xformers
命试试。
e) 安装语言包
将文件 chinese-all-0306.json
和 chinese-english-0306.json
放到目录 \localizations
目录中。
运行 webui
后进行配置,操作方法见下。
f) 安装扩展(可选)
将 sd-webui-controlnet
解压缩到 \extensions
目录中。
将 control_sd15_openpose.pth
文件复制到 /extensions/sd-webui-controlnet/models
目录中。
不同的扩展可能还需要安装对应的系统,比如 controlnet
要正常使用则还需要安装 ffmpeg
等。
g) 安装模型
下载的各种模型放在 \models\Stable-diffusion
目录中即可。
h) 再次执行根目录下 webui.bat
文件
用浏览器打开 webui.bat
所提供的网址即可运行。
其中提供了网址:http://127.0.0.1:7860
。
打开该网址后在 Settings
-> User interface
-> Localization (requires restart)
设置语言,在菜单中选择 chinese-all-0220
(前提是已经在目录中放入了对应语言包,见上),点击 Apply Settings
确定,并且点击 Reload UI
重启界面后即可。
好了,现在可以开始使用了~~
三、问题及注意点
1. python 版本错误
错误:
ERROR: Could not find a version that satisfies the requirement torch==1.13.1+cu117
ERROR: No matching distribution found for torch==1.13.1+cu117
这是由于 python 版本不对导致的(上面提过了,截止发稿时不能追求新版本),要用 python 3.10.*
版本。
解决来源:https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/7166
2. pip版本错误
警告:
[notice] A new release of pip available: 22.3.1 -> 23.0.1
[notice] To update, run: D:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install --upgrade pip
提示中已经给出了解决方案:
在 \venv\Scripts\
目录中打开 cmd
,执行
python.exe -m pip install --upgrade pip
3. 安装或执行停滞
如果在执行 webui.bat
进行包下载安装时或者生成图片时会卡很久都没反应,那么这时可以复制包名,进入 python 安装目录
或 \venv\Scripts\
目录中打开 cmd
,执行
pip install 包名
也可以通过任务管理查看网络状态,如果网络在玩命下载,那么就等着吧~~
4. xFormers 安装不上
很多同学都反应 xformers 无法安装,可以用以下的方法试试:
检查 Dreambooth 要求的 Python 版本:
如果您的 Python 版本低于 3.6,请安装最新的 Python 版本,并重复尝试安装 xformers。
# 据此可以在终端中运行以下命令,以检查您的 Python 版本:
python --version
安装依赖项:xformers 有许多依赖项,如果这些依赖项没有正确安装可能会导致升级失败。您可以尝试安装以下依赖项:
pip install numpy scipy torch torchaudio transformers
清除 pip 缓存并重新安装:
# 清除 xformers 缓存:运行以下命令清除 xformers 缓存。
pip uninstall -y xformers
pip cache purge
# 更新 pip:确保您正在使用最新版本的 pip,可以运行以下命令更新 pip。
pip install --upgrade pip
# 安装 xformers:在清除了缓存并更新了 pip 之后,重新安装 xformers。
pip install xformers
手动安装 xformers 指定版本
如果上述步骤仍然无法解决问题,可尝试手动安装 Dreambooth 所需的 xformers 版本。在 Dreambooth 的文档中,可以找到 xformers 的版本要求。
pip install xformers==0.0.17.dev465
使用 conda 环境
如果您使用的是 conda 环境,请尝试在 conda 环境中安装 xformers。
# 创建 conda 环境
conda create --name myenv
# 激活 conda 环境并安装 xformers
conda activate myenv
pip install xformers
网络问题
如果已经配置好了代理,就不要考虑这个了。
检查网络连接:请确保您的计算机与互联网连接,并且网络连接没有被防火墙或代理服务器阻止:
# 检查网络连接是否正常
ping google.com
非必要
你确定需要使用 xformers 么?如果不需要,可以在webui-user.bat
中把--xformers
去掉试试。其它
如果上述方法还是无法解决问题,请尝试在 OpenAI 的论坛或者 Dreambooth 的 GitHub 页面上寻求更多帮助。-_-!
5. 其他安装问题
删除 /tmp
和 /venv
目录后重启 webui.bat
试试。
6. 硬件问题
一般显卡不达标,就会爆卡,解决办法就是编辑根目录下 webui-user.bat
文件,试一下修改参数 COMMANDLINE_ARGS
即可。
以下几个设置逐一测试看看哪个适合自己。
set COMMANDLINE_ARGS=--lowvram --precision full --no-half --skip-torch-cuda-test
set COMMANDLINE_ARGS=--lowvram --precision full --no-half
set COMMANDLINE_ARGS=--lowvram
本机显存 4G,使用最后一个配置方法,可以烧出 2048*1080 的图,前两种方法反而会在最后爆卡。
最后,预祝各位成功~~
dog drink~~ where is dog?
参考:
【AI 繪畫】Stable-Diffusion 通過骨架分析插件 ControlNet 來製作超有意境的圖片
Stable Diffusion 2.1 + WebUI 的安装与使用(极详细)
低配显卡想玩 Stable Diffusion?修改一个配置就行
整合包
2023.5 注:可以试试在“Synology Drive 管理控制台”中删除日志,我尚未尝试,如果有效就不需要看下面的内容了。
以下是 ChatGPT 的回答:
/volume1/@synologydrive/@sync/repo/ 是 Synology NAS 系统中 Synology Drive Client 同步文件夹的本地存储路径,用于存放从云端同步下来的文件。这个目录下的文件和文件夹的占用空间大小与您在云端存储的数据量有关。当您在 Synology Drive 中创建文件夹并将文件同步到本地时,这些文件会被存储在 /volume1/@synologydrive/@sync/repo/ 目录下。
如果您发现这个目录占用空间很大,可能是因为同步的文件夹中包含了大量的文件或者文件夹,或者存在某些文件大小比较大的情况。您可以通过以下方式来清理这个目录的空间:
删除不需要的文件或文件夹。如果您发现同步的文件夹中包含了不需要的文件或文件夹,可以手动删除这些文件或文件夹来释放空间。
调整同步设置。您可以在 Synology Drive Client 中调整同步设置,例如只同步某些文件夹或文件类型,或者调整同步频率等,以减少同步的数据量。
关闭同步功能。如果您不再需要某个文件夹的同步功能,可以在 Synology Drive Client 中关闭该文件夹的同步功能,以停止该文件夹的同步并释放空间。
清理同步缓存。Synology Drive Client 会在本地缓存一些同步的文件,以提高访问速度。您可以在 Synology Drive Client 中清理同步缓存,以释放空间。
需要注意的是,如果您在 Synology Drive 中删除了某个文件夹,该文件夹的同步数据并不会自动删除。如果您需要彻底清理同步数据,可以手动删除 /volume1/@synologydrive/@sync/repo/ 目录下与该文件夹相关的文件和文件夹。
于是我听从了 ChatGPT 的指引,执行了命令:rm -rf repo
手动删除文件后发现备份速度变慢了,在 NAS 中卸载并重新安装 Synology Drive Server 恢复正常(客户端需要删除并重建任务)。
经常有人碰到这样一种情况,我的 918+ 有 4 个硬盘呢,怎么空间很快就没了,最重要的是,自己查看统计了所有文件占用情况,和实际的占用空间不符。这个首先可以肯定的就是空间必然是文件占用了。但是呢,有些文件是不能从 File Station 里面直接看到的,所以很多用户就搞不懂了,有时候文件删除了,空间也不见增加。今天,就来教大家一个大招,让这些不能直接看到的文件无处遁形。
一、SSH 登陆群晖
这里我们要用到一个叫 putty 的软件
putty下载链接:点此下载
在开始之前,我们要开启群晖的 SSH 或是 telnet 服务功能(控制台 - 终端机和 SNMP - 勾选启动 SSH 功能)。
打开 putty,在主机名称输入群晖的局域网 IP 地址,然后点击下面的【打开】。
会弹出一个黑色的窗口。登入账号输入管理员:admin,按回车,然后输入 admin 的密码,要注意的是,输入密码的时候,光标是不会动的,你尽管输就行。有些用户看到代码就头疼,其实我们用到的都是些非常简单基础的命令代码,你只要照着这个步骤一步一步去做,肯定能成功,成功把空间腾出来后,你会很有成就感,哈哈!
切换到 root 权限,输入 sudo -i,按回车,然后也是输入 admin 的密码。
MAC 电脑用终端也可以登录 :
打开终端
输入命令:ssh -p 999 admin@192.168.1.9
上面 999 为自定义端口号,admin 为自己的用户名
二、查询文件
到这里我们就登陆到群晖里面了,在这里可以执行命令。
输入 cd /volume1 命令后按回车,意思是进入存储空间 1(若您的储存空间为 2,则改成 volume2,依此类推)。
输入 du -ah --max-depth=1,可以查看当前目录文件大小,这个过程可能会需要数分钟到数小时不等,依您的文件数及空间大小而定。实测 8TB 机械硬盘耗时两个多小时。
三、删除文件
像上面图片中的 @download 就是 Download Station 的缓存文件,有时候操作不当,会造成缓存不能自动删除,这个时候就需要使用代码的方法来删除缓存,才能释放存储空间了。
比如要删除 Download Station 的缓存文件夹,就是上图的 @download 文件夹,可以使用下面这个命令:rm -rf /volume1/@download
这个命令要慎用,一旦删除就不能恢复了!
四、还有哪些文件占用存储空间而不能直接查询
除了 Download Station的缓存文件之外,还有 File Station 里面删除了文件,但启用了回收站,文件实际上还没彻底删除,也会造成删除文件,空间没有增加的情况。这个时候清空一下回收站即可。
清除某个文件夹回收站:
也可以直接一次性清空所有文件夹的回收站:
还有 Drive 的版本控制和 Drive本身自带的回收站;
@synologydrive/@sync/repo 是 Synology Drive Client 的缓存目录,我删除这个目录就释放了 5TB 的空间。
除此之外,还有 Cloud Station 保留的版本,Snapshot Replication 套件生成的快照文件等。
如果发现 /volume1/@synologydrive/@sync/repo/ 这个目录占用空间过大,请参考这篇文章。
群晖系统暂时没有类似 TreeSize 的磁盘文件管理工具,但是我们可以用磁盘映射的方式将群晖系统上的目录挂载到电脑上。这样,在电脑上就可以用 TreeSize 扫描群晖上的磁盘文件了。具体步骤如下:
一、群晖上安装 WebDAV Server
二、启用 WebDAV Server
三、新建群晖用户
千万要设置好权限。
切换到“应用程序”选项卡,关闭除 WebDAV Server 以外的所有应用程序
切换到“权限”选项卡,勾选需要访问的目录
四、在电脑上安装 RaiDrive
从官网下载,免费版即可。
五、配置 RaiDrive
打开 RaiDrive,点击顶部的“添加”,选择“NAS”,选择“Synology”,并填相应的地址和账户
技巧:将群晖提供的外部访问地址(在 控制面板-外部访问 中查看)直接在浏览器上打开,如果与群晖在同一局域网,那么会跳转到 https://[IP].[QuickConnect ID].direct.quickconnect.cn:5001/,那么参照这个地址填入到 RaiDrive 中即可在局域网中连接;如果不在同一局域网,那么会跳转到公网地址,同样可以将公网地址填入,但必须在路由器上映射端口才能在外网映射磁盘到 NAS。
六、访问文件
一切顺利,你就可以在“此电脑”中看到新建的盘符,像访问本地磁盘一样访问群晖文件。
在代码
app.Run();
处报错:
System.IO.IOException:“Failed to bind to address http://localhost:5182.”
SocketException: 以一种访问权限不允许的方式做了一个访问套接字的尝试。
原因是端口被占用,解决方法:
方法一、重启电脑可能解决该问题。
方法二、使用命令 netstat -ano 找到占用该端口的进程,关闭即可。
方法三、修改运行端口。展开解决方案资源管理器中项目根目录下的“Properties”目录,打开“launchSettings.json”,找到对应你运行方式的配置,修改相应 Url 中的端口。