网站存储错误_磁盘空间不足清理扩容方法
网站存储错误排查通用流程。网站提示存储错误时,按以下流程系统排查:1.确认错误现象——a.什么操作时报错(上传图片/附件/视频?发布文章?数据库写入?登录session?缓存?备份?);b.错误提示是什么(完整复制错误信息,如『上传失败:目录不可写』『磁盘空间不足』『No space left on device』『Permission denied』『存储配额超限』);c.什么时候开始的(突然/渐变/最近操作后/上传大文件时);d.影响范围(所有上传/特定类型/特定目录/所有写入操作)。2.检查磁盘空间——a.df -h看各分区使用率(100%满会导致各种存储错误:上传失败/数据库写入失败/session失败/日志写不进/网站500);b.du -sh /* | sort -h看哪个目录占空间大(网站上传目录/数据库目录/日志/备份/缓存);c.常见占空间:上传文件(图片/视频/附件)、数据库(ibdata1/ib_logfile/大表)、日志(Nginx/PHP/MySQL/程序日志,没轮转)、备份(本地备份没清理)、缓存(程序缓存/OPcache/CDN回源)、binlog(MySQL没设过期)、回收站/临时文件。3.检查目录权限——a.上传目录(/upload、/data/upload、/public/uploads)权限755,属主Web服务器用户(www-data/nginx/apache),PHP可写;b.session目录(/var/lib/php/sessions、程序runtime/session)权限733/777或属主Web用户,可写;c.缓存目录(程序runtime/cache、/tmp、/var/cache)可写;d.日志目录可写;e.数据库目录(/var/lib/mysql)属主mysql,权限700/755;f.检查方法:ls -la 目录看权限/属主,touch 目录/test.php测试是否可写(能创建=可写,Permission denied=不可写)。4.检查存储配额——a.虚拟主机/云主机有存储配额(如10G空间),超出后上传失败/网站异常;b.主机面板看空间使用率(cPanel/宝塔/云控制台),或du -sh网站根目录看占用;c.解决:清理无用文件(旧备份/旧日志/未使用的上传文件/缓存)、压缩图片/视频、删除未使用的插件/主题/模板、升级主机空间。5.检查inode(文件数)——a.df -i看inode使用率(100%满也会导致存储错误,即使磁盘空间还有剩余,因为每个文件占一个inode,小文件过多inode耗尽);b.常见原因:缓存目录大量小文件(程序缓存/会话/session)、上传目录大量小图片(缩略图)、日志分割过细、邮件队列;c.解决:find 目录 -type f | wc -l看哪个目录文件多,清理缓存/旧session/旧日志,合并小文件,调整缓存策略(减少缓存文件数),inode不足无法扩容(格式化时决定),只能清理文件或迁移到新盘。6.检查上传配置——a.PHP上传限制:upload_max_filesize(单文件最大)、post_max_size(POST最大)、max_execution_time(超时)、memory_limit(内存),大文件上传需要调大这些参数;b.程序上传配置:后台上传大小限制、上传类型白名单、上传路径配置;c.Web服务器配置:Nginx client_max_body_size(请求体最大,默认1M,大文件上传需要调大)、Apache LimitRequestBody;d.超时:大文件上传需要调大fastcgi_read_timeout/proxy_read_timeout。7.检查云存储对接——a.如果用云存储(阿里云OSS/腾讯云COS/七牛/又拍),上传失败可能是:API密钥错(AccessKey/SecretKey)、Bucket名错/区域错、域名绑定错(CDN域名)、权限错(Bucket私有/公共读)、网络不通(服务器到云存储API网络)、SDK版本不兼容、配额/流量超限;b.解决:检查密钥/Bucket/区域/域名配置,测试API连通(curl云存储API),检查云存储控制台配额/权限,更新SDK,查看云存储错误码(每个云存储有错误码文档)。8.检查磁盘IO/硬件——a.磁盘IO瓶颈(iostat -x 1看%util接近100%=IO瓶颈,await高=响应慢)会导致写入慢/超时/存储错误;b.硬件错误(dmesg看磁盘错误/坏道/SMART告警,smartctl -a /dev/sda看健康状态)会导致写入失败/数据损坏;c.解决:IO瓶颈→换SSD/RAID/优化写入(批量写入/缓存)/分盘(数据库/上传/日志分不同盘);硬件错误→立即备份数据+更换磁盘(RAID可热替换)。9.检查NFS/网络存储——a.如果用NFS/网络存储(挂载远程目录),存储错误可能是:挂载断开(mount看是否挂载,df -h看是否卡住)、网络不通(ping NFS服务器)、权限错(NFS export权限/本地挂载权限)、NFS服务端故障;b.解决:重新挂载(mount -a)、检查网络、检查NFS服务端、NFS不稳定建议用本地存储(性能和稳定性更好)。10.检查被黑/恶意文件——a.上传目录被黑客利用上传木马(图片马/webshell),大量恶意文件占空间/导致存储异常;b.解决:扫描木马(ClamAV/在线扫描/手动检查最近修改的文件),删除恶意文件,加固上传目录(禁PHP执行/文件类型验证/权限),改密码+升级程序。排查顺序:确认错误现象→df -h磁盘空间→目录权限→存储配额→df -i inode→上传配置→云存储→磁盘IO/硬件→NFS→被黑。90%的存储错误是磁盘空间不足或目录权限问题,先查这两个。
常见存储错误详解与解决。1.磁盘空间不足(最常见)——a.现象:上传失败、发布文章失败、数据库写入失败(MySQL报错No space left on device)、session无法写入(登录失败)、日志写不进、网站500/白屏、备份失败;b.排查:df -h看哪个分区100%(网站根目录所在分区、/tmp、/var/lib/mysql、/var/log),du -sh /* 2>/dev/null | sort -h看大目录,du -sh 网站目录/*看网站内哪个目录大;c.常见占空间:上传目录(图片/视频/附件,用户上传积累)、数据库(大表/ibdata1/ib_logfile,没优化)、日志(Nginx access.log/error.log、PHP日志、MySQL慢查询/错误日志,没logrotate轮转,可能几十G)、备份(本地备份没清理,多个旧备份)、缓存(程序缓存/OPcache/页面缓存,没清理)、binlog(MySQL没设expire_logs_days,无限增长)、临时文件(/tmp、上传临时文件、压缩包没删)、回收站/旧版本;d.解决:清理日志(>压缩旧日志,当前日志用echo '' > 清空,不要rm(进程还在写,rm后空间不释放),配置logrotate自动轮转)、清理binlog(MySQL内PURGE BINARY LOGS BEFORE '日期',设expire_logs_days=7)、清理备份(确认有新备份后删旧备份,备份建议存异地/云存储不要占本地)、清理缓存(程序后台清缓存/删除缓存目录,会自动重建)、清理上传(删除未使用/测试/重复的上传文件,图片压缩,视频转码,大文件移到云存储)、清理数据库(DELETE旧数据+OPTIMIZE TABLE释放空间,大表分表/归档,清理日志表/会话表)、清理/tmp(删除旧临时文件)、扩容磁盘(云主机扩容/加硬盘,物理机加盘/换大盘);e.预防:监控磁盘>80%告警,配置logrotate日志轮转,设expire_logs_days,备份存异地,定期清理缓存/旧文件,上传图片压缩/云存储。2.目录权限错误——a.现象:上传失败提示『目录不可写』『Permission denied』、session无法写入(登录失败/验证码不刷新)、缓存无法生成(页面慢/不更新)、日志写不进、图片生成缩略图失败;b.排查:ls -la 目录看权限(rwxr-xr-x=755)和属主(应该是Web服务器用户www-data/nginx/apache,或777但不推荐),touch 目录/test.php测试可写性(Permission denied=不可写);c.常见目录:上传目录(/upload、/data/upload、/public/uploads、/static/upload)、session目录(/var/lib/php/sessions、程序runtime/session、/tmp)、缓存目录(程序runtime/cache、/tmp、/var/cache/nginx)、日志目录(程序runtime/log、/var/log/nginx)、配置目录(部分程序需要写配置文件)、数据库目录(/var/lib/mysql,属主mysql);d.解决:chmod 755 目录(目录可执行可进入,文件644),chown -R www-data:www-data 目录(属主改为Web用户,Debian/Ubuntu是www-data,CentOS是nginx或apache,看php-fpm运行用户ps aux | grep php),上传目录内文件chmod 644,特殊目录(session)可chmod 733(属主可读写执行,其他可写不可读,安全);e.注意:不要用chmod 777(不安全,任何用户可写,被黑风险),正确设置属主+755即可;虚拟主机用面板设置权限(文件管理器→权限);SELinux开启时(CentOS),除了权限还要设SELinux上下文(chcon -R -t httpd_sys_rw_content_t 目录,或setsebool -P httpd_unified 1)。3.存储配额超限(虚拟主机)——a.现象:虚拟主机提示『空间不足』『存储配额超限』,上传失败,网站可能异常;b.排查:主机面板(cPanel/宝塔/云虚拟主机控制台)看空间使用率,du -sh网站根目录看实际占用,du -sh 网站目录/*看哪个目录大;c.解决:清理无用文件(旧备份/旧日志/未使用的上传文件/测试文件/安装包/压缩包)、删除未使用的插件/主题/模板(很多人装了一堆不用的)、压缩图片(TinyPNG/批量压缩,图片通常占上传目录60%+)、视频/大附件移到云存储(OSS/COS,不占主机空间)、清理数据库(优化表/删除旧数据/清理日志表,数据库也占空间)、清理邮件(虚拟主机邮件账户占空间)、升级主机空间(清理后还是不够,升级套餐/换更大的主机);d.预防:定期清理,图片上传时自动压缩(程序插件/七牛云图片处理),大文件用云存储,监控空间使用率。4.inode不足(文件数过多)——a.现象:df -h看磁盘空间还有剩余,但df -i看inode 100%,上传/创建文件失败(No space left on device但实际空间够),新文件无法创建;b.原因:每个文件/目录/符号链接占一个inode,小文件过多耗尽inode(缓存目录几十万小文件、session目录大量会话、上传目录大量缩略图、日志分割过细、邮件队列);c.排查:df -i看inode使用率,find 目录 -type f | wc -l看哪个目录文件数多(常见:程序缓存目录、session目录、/tmp、上传缩略图目录、/var/spool);d.解决:清理大量小文件的目录(缓存目录rm -rf 缓存目录/*,会自动重建;旧session删除;/tmp旧文件;未使用的缩略图),调整缓存策略(用Redis/Memcached代替文件缓存,减少文件数;session存数据库/Redis),合并小文件(日志合并,不要按小时/分钟分割),inode不足无法通过扩容解决(格式化时决定inode数量),只能清理文件或迁移到新盘(重新格式化时调整inode比例mkfs.ext4 -i);e.预防:用Redis/Memcached做缓存和session(不占文件inode),监控inode使用率,定期清理缓存/session。5.上传配置错误(大文件上传失败)——a.现象:小文件能上传,大文件上传失败(提示『上传失败』『文件过大』『超时』『413 Request Entity Too Large』);b.排查:phpinfo看upload_max_filesize/post_max_size/max_execution_time/memory_limit,Nginx看client_max_body_size,程序后台看上传大小限制;c.解决:PHP配置(php.ini):upload_max_filesize=100M(单文件最大)、post_max_size=105M(比upload大,含表单其他字段)、max_execution_time=300(超时5分钟,大文件上传需要)、memory_limit=256M(内存);Nginx配置(nginx.conf或server块):client_max_body_size=100M(默认1M,超过报413)、fastcgi_read_timeout=300(PHP处理超时)、proxy_read_timeout=300(反代超时);Apache:LimitRequestBody 104857600(100M)、TimeOut 300;程序配置:后台上传大小限制调大,上传类型白名单加需要的类型;d.注意:配置改完重启PHP-FPM和Nginx(service php-fpm restart、nginx -s reload),用phpinfo确认配置生效,超大文件(>500M)建议用分片上传(JS分片/程序插件)或FTP上传后导入,不要直接HTTP上传(不稳定)。6.云存储对接错误——a.现象:配置了云存储(阿里云OSS/腾讯云COS/七牛/又拍),上传失败/图片不显示/同步失败;b.常见原因:API密钥错(AccessKey ID/Secret AccessKey填错/过期/禁用)、Bucket名错(拼写错/区域错,如oss-cn-hangzhou和oss-cn-beijing不同)、域名绑定错(CDN加速域名没绑定/没备案/解析错)、权限错(Bucket私有但没签名URL,或公共读但设了私有)、网络不通(服务器到云存储API网络被防火墙拦截/延迟高)、SDK版本不兼容(程序插件版本老,不支持新API)、配额/流量超限(云存储容量/流量用完)、跨域配置(CORS,前端直传需要配置Bucket跨域规则);c.解决:检查密钥(重新生成密钥,确认有OSS/COS权限)、检查Bucket名+区域(控制台复制,不要手敲)、检查域名(绑定CDN域名+备案+解析CNAME)、检查权限(公共读=直接访问,私有=签名URL)、测试网络(curl https://oss-cn-hangzhou.aliyuncs.com看连通)、更新SDK/插件(到最新版)、检查云存储控制台配额/流量(充值/升级)、配置跨域(控制台→Bucket→跨域设置,允许来源/方法/头);d.排查技巧:看程序错误日志(云存储SDK会返回具体错误码,如InvalidAccessKeyId/SignatureDoesNotMatch/NoSuchBucket/AccessDenied),查云存储官方错误码文档对应解决,用云存储官方工具(ossutil/coscmd)测试上传(排除程序问题,命令行能传=程序配置错,命令行也不能=云存储/网络/密钥问题)。
存储监控、优化、迁移、安全与备份。存储监控:1.监控指标——a.磁盘空间使用率(df -h,>80%告警,>95%紧急);b.inode使用率(df -i,>80%告警);c.磁盘IO(iostat -x,%util>80%/await>50ms告警);d.目录大小(关键目录:上传/数据库/日志/备份,异常增长告警);e.上传成功率(程序监控,上传失败率突增告警);f.配额使用率(虚拟主机空间,>80%告警)。2.监控工具——a.命令行脚本(cron定时执行df -h/du -sh,超过阈值发邮件/钉钉通知);b.监控系统(Zabbix/Prometheus+Grafana/云监控,专业监控,可视化+告警);c.主机面板(宝塔/cPanel自带空间监控和告警);d.程序监控(应用性能监控APM,如听云/博睿,监控上传/数据库写入错误率)。3.告警方式——邮件/短信/钉钉/企业微信/电话,紧急告警(磁盘>95%/网站不可用)用短信/电话,普通告警用邮件/钉钉。存储优化:1.图片优化——a.上传时压缩(程序插件自动压缩,如TinyPNG API/七牛云图片处理,上传时自动压缩到合适质量);b.使用WebP格式(比JPG小30%,现代浏览器支持,程序插件自动转换);c.懒加载(图片滚动到可视区域才加载,减少首屏请求和带宽);d.缩略图(列表页用小缩略图,详情页用大图,不要列表页加载原图);e.CDN加速(图片存CDN,就近访问,减轻源站存储和带宽);f.云存储(图片/视频/附件存阿里云OSS/腾讯云COS/七牛,不占网站服务器空间,按需付费,弹性扩容)。2.数据库优化——a.清理旧数据(定期DELETE过期数据:日志表/会话表/统计数据/回收站,+OPTIMIZE TABLE释放空间);b.大表分表(单表>500万行,按时间/ID分表,减小单表体积);c.归档冷数据(不常用的旧数据归档到历史表/对象存储,主库只存热数据);d.优化字段类型(INT不用BIGINT,VARCHAR长度合理,不用TEXT存短字符串,DECIMAL精度合理);e.删除未使用的表/字段(插件卸载后残留的表/字段,备份后删除);f.定期OPTIMIZE TABLE(碎片整理,释放空间,InnoDB可在线DDL);g.binlog设过期(expire_logs_days=7,不要无限保留);h.慢查询日志轮转(不要一个慢日志文件几十G,logrotate按天轮转+压缩)。3.日志优化——a.logrotate自动轮转(按天/按大小分割,压缩旧日志,保留N天,自动删除超期);b.降低日志级别(生产环境error_log级别warn/error,不要debug,access_log可关或采样);c.日志存独立盘(/var/log挂独立分区,日志满不影响系统/网站);d.集中日志(ELK/Loki,日志存远程服务器,不占本地空间);e.定期清理(手动删除超期旧日志,不要让日志占满磁盘)。4.缓存优化——a.用Redis/Memcached代替文件缓存(不占磁盘空间/inode,性能更好);b.session存Redis/数据库(不占文件inode);c.缓存设过期时间(自动清理,不要无限积累);d.定期清理缓存目录(cron定时删除N天前的缓存文件);e.OPcache用内存(不占磁盘)。5.备份优化——a.备份存异地/云存储(不占本地服务器空间,防止服务器故障丢备份);b.增量备份(只备份变化的数据,减小备份体积);c.压缩备份(gzip/zstd,减小体积50-70%);d.多版本保留(7天每天+4周每周+3月每月,不要只留一个最新,也不要无限保留);e.定期删除超期备份(自动清理脚本)。存储迁移:1.迁移场景——a.换服务器(数据从旧服务器迁到新服务器);b.换存储(本地存储迁到云存储OSS/COS);c.扩容(数据迁到更大的磁盘/新分区);d.换主机商(虚拟主机迁移)。2.迁移方法——a.文件迁移:rsync -avz 旧目录 用户@新服务器:新目录(增量同步,可多次执行,最后一次切换时同步),或打包tar.gz+scp传输+解压(小网站),或FTP下载上传(虚拟主机);b.数据库迁移:mysqldump导出→传输→新服务器导入(小库),或主从同步(大库,不停机迁移),或物理备份(xtrabackup,大库快速);c.云存储迁移:ossutil/coscmd批量同步本地文件到云存储(ossutil cp -r 本地目录 oss://bucket/路径),或程序插件一键迁移;d.注意:迁移前备份,迁移中保持旧服务器运行(双写/同步),迁移后测试(文件完整性md5校验、数据库连接/数据、网站功能、图片/附件访问),DNS切换/配置更新后观察,确认无误再停旧服务器;e.大文件/大量文件迁移用rsync增量(比打包快,可断点续传),数据库大库用主从同步(不停机)。存储安全:1.上传目录安全——a.禁PHP执行(上传目录只存文件,不允许执行PHP,Nginx location ~ .php$ { deny all; } 在上传目录,Apache .htaccess php_flag engine off);b.文件类型验证(白名单允许的扩展名jpg/png/gif/pdf等,禁止php/exe/sh等可执行文件,检查文件头/内容不是图片马);c.文件名重命名(上传后重命名为随机字符串,不要用原文件名,防止路径遍历/覆盖);d.存储路径不要Web可访问(敏感文件存Web目录外,通过PHP读取输出,不要直接URL访问);e.上传目录权限755(不要777),文件644。2.数据安全——a.数据库权限最小化(应用用户只SELECT/INSERT/UPDATE/DELETE,不要FILE/SUPER/GRANT);b.敏感数据加密(密码bcrypt/argon2,手机号/身份证AES加密);c.数据库端口不对外开放(3306只本地/应用服务器IP,防火墙限制);d.定期备份+异地存储(数据丢失/被黑/勒索时能恢复);e.数据库审计日志(记录登录/危险操作,发现异常)。3.防勒索/被黑——a.定期备份(被黑勒索时,有备份就能恢复不用付钱);b.及时更新程序/插件/系统(修复漏洞,减少被黑入口);c.强密码+定期更换(后台/数据库/FTP/SSH,不同账号不同密码);d.WAF防护(拦截SQL注入/上传漏洞/扫描);e.文件完整性监控(监控核心文件被篡改,及时发现被黑);f.不要随便执行不明脚本/安装不明插件(可能带后门)。存储备份:1.备份策略——a.3-2-1原则:3份数据(生产+2份备份)、2种介质(磁盘+云存储/磁带)、1份异地(不同机房/地区,防止火灾/地震/机房故障);b.全量+增量:每周全量备份+每天增量备份,平衡备份时间和恢复速度;c.多版本保留:7天每天+4周每周+3月每月+1年每年,满足不同恢复需求(误删昨天的数据/上个月的数据/一年前的数据都能恢复);d.自动备份:cron定时执行备份脚本,不要手动备份(容易忘);e.备份加密:敏感数据备份用gpg加密,防止备份泄露。2.备份内容——a.网站文件(程序代码+上传文件+主题/插件+配置文件,tar.gz打包);b.数据库(mysqldump全库导出,或xtrabackup物理备份);c.配置文件(Nginx/Apache/PHP/MySQL配置,SSL证书,crontab任务,便于新服务器快速恢复环境);d.日志(重要日志备份,用于审计/排查)。3.备份验证——a.定期恢复演练(每季度在测试环境恢复一次备份,确认备份可用、数据完整、能正常运行,备份不可用=没有备份);b.备份后校验(md5sum校验文件完整性,检查备份文件大小/时间,确认不是0字节/损坏);c.监控备份任务(备份失败告警,不要等需要恢复时才发现备份一直失败)。4.恢复流程——a.评估损失(哪些数据丢了/损坏了,从什么时候开始的);b.选择备份版本(选择丢失前最近的正常备份,注意备份时间点的数据完整性);c.恢复到测试环境(先在测试环境恢复验证,确认没问题再上生产,不要直接覆盖生产);d.生产恢复(停网站→备份当前状态(即使损坏也备份,可能有用)→恢复备份→验证数据/功能→开网站);e.事后分析(为什么丢数据?备份是否及时?恢复是否顺利?优化备份策略和预防措施)。存储是网站的数据基础,做好监控+优化+迁移+安全+备份,确保数据安全、存储稳定、成本合理。
用户真实体验:「虚拟主机空间满了,清理了旧备份+未使用的插件+压缩了图片,腾出了5G空间,图片占了大部分,定期清理+压缩很有必要」「大文件上传失败,查了是Nginx client_max_body_size默认1M(报413),改成100M+PHP upload_max_filesize改大,重启后就能传了,大文件上传要同时改Nginx和PHP配置」。
经验总结:存储是网站的数据基础(所有内容/用户数据/上传文件都存在存储上),存储错误直接影响网站功能和数据安全,核心经验:1.磁盘空间是第一杀手——90%的存储错误是磁盘满(日志没轮转/binlog没过期/备份没清理/上传积累),df -h先看空间,监控>80%告警,配置logrotate日志轮转+expire_logs_days binlog过期+备份存异地+定期清理,从源头防止磁盘满;2.权限问题第二常见——上传/session/cache/日志目录属主不是Web用户导致不可写,chown -R www-data:www-data + chmod 755即可,不要用chmod 777(不安全),SELinux环境还要设上下文,虚拟主机用面板设权限;3.大文件上传要改多处配置——Nginx client_max_body_size(默认1M,超过413)+PHP upload_max_filesize/post_max_size/max_execution_time/memory_limit都要调大,改完重启PHP+Nginx,超大文件用分片上传或FTP,不要直接HTTP传;4.inode不足容易被忽略——df -h看空间还有但df -i看inode满,小文件过多(缓存/session/缩略图)耗尽inode,用Redis/Memcached代替文件缓存和session(不占inode+性能好),定期清理缓存/session,inode无法扩容只能清理或迁移;5.云存储对接看错误码——OSS/COS/七牛上传失败,SDK会返回错误码(InvalidAccessKeyId/NoSuchBucket/AccessDenied/SignatureDoesNotMatch),查官方文档对应解决,用命令行工具(ossutil/coscmd)测试区分是程序配置错还是云存储/网络/密钥问题,比瞎改快;6.存储优化降本增效——图片压缩+WebP+懒加载+CDN+云存储(图片占上传60%+,优化后空间和带宽大降),数据库清理旧数据+分表+归档+OPTIMIZE,日志logrotate轮转+集中存储,缓存用Redis,备份存异地+增量+压缩,优化后存储占用降50-70%;7.上传目录安全是被黑重灾区——很多网站被黑是通过上传漏洞上传webshell,必须禁PHP执行+文件类型白名单+重命名+权限正确,上传目录定期扫描木马,不要只做表面(允许上传php就等于给黑客开门);8.备份是数据安全最后防线——3-2-1原则(3份/2介质/1异地),自动备份+加密+多版本保留+每季度恢复演练,被黑/勒索/误删/磁盘故障时能恢复,没有备份数据丢了就是真丢了,备份不可用=没有备份(一定要恢复演练);9.存储迁移要稳——换服务器/换存储/扩容,用rsync增量同步(可多次+断点续传),数据库大库用主从同步(不停机),迁移前备份,迁移后校验完整性(md5/文件数/行数),观察几天再删旧数据,不要贸然大迁移;10.监控告警早发现——磁盘空间>80%+inode+IO+目录大小+上传成功率+备份任务状态,异常及时告警(邮件/钉钉/短信),早发现早处理(磁盘80%时清理很从容,100%时网站已经挂了紧急处理);11.硬件故障要立即处理——磁盘坏道/SMART告警/dmesg磁盘错误,立即备份数据+更换磁盘(RAID热替换,无RAID尽快备份换盘),不要等磁盘完全挂(数据可能无法恢复),用RAID/SSD提升可靠性和性能;12.不要忽视日志占空间——Nginx access.log/error.log、PHP日志、MySQL慢查询/错误日志,没配置logrotate可能几十G占满磁盘,配置logrotate按天轮转+压缩+保留30天,日志存独立盘/集中存储,当前日志用echo '' > 清空(不要rm,进程还在写空间不释放);13.虚拟主机注意配额——虚拟主机空间有限(5G/10G),图片/视频/附件容易满,定期清理+压缩+大文件移云存储,监控配额,不够就升级,不要等满了网站挂了才处理;14.存储成本优化——冷热数据分离(热数据SSD,冷数据归档到对象存储/低成本盘),云存储按需付费(比买大服务器划算,弹性扩容),删除未使用的数据(测试文件/旧备份/未使用的上传/插件残留表),不要为用不到的存储付费;15.持续学习新存储技术——对象存储(OSS/COS/S3)、分布式存储(Ceph/MinIO)、NVMe SSD、存储分级、数据湖,根据业务选择合适存储,不要一直用老方法(本地磁盘满了就扩容,不如用云存储弹性扩容)。掌握这些,存储从『经常出问题的麻烦』变『稳定安全低成本的数据基础』,网站数据安全和业务连续性有保障。

更新时间:2026-08-26 20:20:32