Ubuntu部署CasaOS:打造轻量级NAS的避坑实践

张开发
2026/5/19 19:23:08 15 分钟阅读
Ubuntu部署CasaOS:打造轻量级NAS的避坑实践
1. 为什么选择UbuntuCasaOS搭建NAS最近两年个人数据存储需求爆发式增长网盘限速、隐私泄露等问题让越来越多人开始自建NAS。我在尝试过TrueNAS、OMV等专业系统后发现对老旧电脑和入门用户来说UbuntuCasaOS的组合才是真正的甜点方案。这个组合有三大优势首先是硬件要求极低我实测十年前的i3处理器4GB内存就能流畅运行其次是管理界面友好CasaOS的图形化操作完全不需要命令行基础最重要的是生态丰富Docker应用商店里Nextcloud、Jellyfin等常用服务都能一键安装。不过国内用户直接照搬国外教程经常会卡在软件源更新、依赖安装这些环节。下面我就结合自己三次重装的经验把关键步骤和避坑要点完整梳理出来。2. 准备工作系统与环境的正确姿势2.1 Ubuntu版本选择建议推荐使用Ubuntu Server 22.04 LTS版本长期支持维护周期到2032年。注意一定要选amd64架构版本除非你用树莓派之类的ARM设备。我最初尝试用Ubuntu Desktop版发现会占用额外1GB内存对老旧设备很不友好。安装时有个细节要注意在分区环节建议单独划分/boot分区300MB和/var分区10GB以上。这是因为后续Docker容器日志都会存储在/var目录独立分区能避免系统盘爆满。2.2 必做的初始配置系统装好后第一件事是更换软件源这个坑我踩了三次。执行以下命令备份原有源并替换为阿里云源sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo sed -i s|http://.*archive.ubuntu.com|https://mirrors.aliyun.com|g /etc/apt/sources.list sudo sed -i s|http://.*security.ubuntu.com|https://mirrors.aliyun.com|g /etc/apt/sources.list接着更新软件包并安装基础工具sudo apt update sudo apt upgrade -y sudo apt install -y curl vim net-tools注意如果遇到Hash Sum mismatch错误可能是缓存问题运行sudo apt clean再重试3. CasaOS安装的完整流程3.1 官方脚本安装与问题排查执行官网的一键安装命令curl -fsSL https://get.casaos.io | sudo bash这个脚本会自动完成以下操作添加CasaOS的APT仓库安装Docker引擎如果尚未安装部署CasaOS核心组件但国内环境常见两个问题卡在Docker安装因为默认使用docker.com的源可以提前配置国内镜像下载速度慢建议在凌晨网络空闲时段操作我总结的优化方案是先手动安装Docker# 设置Docker阿里云镜像 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json -EOF { registry-mirrors: [https://xxxx.mirror.aliyuncs.com] } EOF # 安装Docker sudo apt install -y docker.io sudo systemctl enable --now docker3.2 安装后的必要调整首次访问http://服务器IP:80进入控制台建议立即在设置中修改默认端口比如改成8080创建新的管理员账户设置时区为Asia/Shanghai有个隐藏设置很有用在/etc/casaos/gateway.ini中调整上传限制默认的100MB对于视频备份太小[server] upload_limit 2048M4. 存储配置与权限管理4.1 硬盘挂载最佳实践新插入的硬盘需要手动挂载。建议用UUID方式而非设备名如/dev/sda1避免硬盘顺序变化导致问题# 查看磁盘UUID sudo blkid # 创建挂载点 sudo mkdir -p /mnt/storage # 修改/etc/fstab sudo vim /etc/fstab添加如下内容以ext4格式为例UUID你的硬盘UUID /mnt/storage ext4 defaults 0 2然后执行sudo mount -a测试配置是否正确。4.2 权限设置技巧CasaOS默认用www-data用户运行需要给存储目录赋权sudo chown -R www-data:www-data /mnt/storage sudo chmod -R 775 /mnt/storage如果有多用户访问需求可以创建用户组并设置SGID位sudo groupadd nas-users sudo usermod -aG nas-users www-data sudo usermod -aG nas-users 你的用户名 sudo chown -R www-data:nas-users /mnt/storage sudo chmod -R 2775 /mnt/storage # 2表示设置SGID5. 必备应用部署指南5.1 文件管理方案推荐组合使用FileBrowser轻量级网页文件管理器Nextcloud全功能私有云Syncthing多设备同步在CasaOS应用商店直接搜索安装时注意修改两个参数绑定存储目录到容器内的/data设置PUID33和PGID33对应www-data用户5.2 媒体服务器配置Jellyfin是开源媒体服务器的首选安装后需要特别处理硬件加速Intel核显用户需要加载i915驱动sudo apt install -y intel-media-va-driver sudo usermod -aG render www-data在Jellyfin播放设置中开启VAAPI加速对于4K视频转码建议在Docker compose中添加设备映射devices: - /dev/dri:/dev/dri6. 日常维护与问题排查6.1 日志查看方法CasaOS所有组件日志都通过journalctl管理常用命令# 查看实时日志 journalctl -f -u casaos # 筛选错误信息 journalctl -u casaos --since 1 hour ago | grep -i error6.2 备份策略建议我采用的自动化备份方案配置备份每天定时打包/etc/casaos目录sudo tar -czvf /mnt/storage/backup/casaos_conf_$(date %Y%m%d).tgz /etc/casaos应用数据备份对每个Docker容器使用--volume参数映射数据目录整机备份使用Timeshift创建系统快照遇到无法启动的情况时可以尝试重置数据库sudo systemctl stop casaos sudo rm -rf /var/lib/casaos/db/* sudo systemctl start casaos7. 性能优化实战7.1 内存占用控制默认安装后内存占用约1.2GB通过以下调整可降至800MB修改Docker守护进程配置{ default-ulimits: { nofile: { Name: nofile, Hard: 65535, Soft: 65535 } }, log-driver: json-file, log-opts: { max-size: 10m, max-file: 3 } }限制容器内存使用docker update --memory 512m --memory-swap 1g 容器名7.2 网络传输加速Samba共享速度慢可以调整smb.conf[global] socket options TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF65536 SO_SNDBUF65536 min receivefile size 16384 write cache size 524288 getwd cache yes对于无线网络用户建议启用MTU优化sudo ip link set wlan0 mtu 1500

更多文章