笔记
0工具
0此页用于记录用户反馈问题后的每一次改进
关于
“写笔记”支持四种格式——Word 文档、Excel 表格、Markdown、纯文本,起稿或二次编辑时都能随时切换,同一篇笔记想用哪种形态来记,都由你说了算。
md、txt、csv、json 这类纯文本则原样载入,不做多余加工。拿一张现成的表倒进来、改几笔、再导出去,等于白用一台免费的格式转换器。
要带走就在右上角点“下载”,可导出 PDF、Word、Markdown、Excel、TXT 等格式;列表卡片“⋯”菜单里,也有同样的下载入口。
在“工具”页点“+ 上传工具”即可发布:填好名称与链接,再用 Markdown 把使用方法写清楚——能解决什么问题、怎么装、怎么用,比堆介绍实在。
要分发安装包就一并上传压缩包(ZIP、RAR、7Z、TAR.GZ,最大 35MB),别人在详情页一键下载;只放链接不带附件也可以。
工具按大家的收藏热度排序,好用的自然会被顶上来。发布后可在详情页或卡片菜单里编辑、下架。
写笔记时勾上“隐藏”,这篇就只存在于你自己的账号里:不进列表、不进搜索、不上首页精选,也不会出现在任何公开的页面,链接发给别人同样打不开。
适合放密码、草稿、日记这类只给自己看的内容;想公开,去“发布”打开它,把“隐藏”的勾去掉再保存,之后编辑会默认保持原状态,不会悄悄变回公开。
不想公开、只想临时给人看:点“分享”生成一条带密码和有效期的链接,到期自动失效,你也能随时撤销。
你的内容会同时保存在多个副本上,系统定期做备份与完整性校验,再配合异地容灾机制:就算某台机器出问题,数据也不会丢,可以长期放心存放;特别重要的资料,仍建议你另外再留一份备份。
全站跑在容器化、模块化的现代架构上,更新、部署、回滚都很快,扩展性和稳定性都按长期运营的标准来设计(Built for reliability, designed to scale)。
这个网站最早只是一个人的笔记仓库,后来慢慢长成现在的知识中枢。设计上很克制——没有广告、没有追踪、没有推荐算法,只是干干净净地存放一些东西;既然做好了,就公开出来,万一有人用得上呢。
不做大而全,不做平台梦,保持简单、保持克制、保持好奇。所有内容都由用户贡献、由用户维护:不会突然冒出付费墙,不会在角落塞广告位,也不会把你的数据卖给第三方。
产品会持续迭代,站内日志页记录着每一次改动,改了什么都有迹可循;想了解这个站是怎么一步步走到今天的,翻翻日志就能看到来龙去脉。
如果在这里看到涉嫌违规的内容,点对应卡片右侧的“举报”按钮就能提交,我们会尽快核实处理;也谢谢你花一点时间,一起把这里维护干净。
趋势
rm 删了大文件 df 却不见空间释放:八成是还有进程握着文件句柄
磁盘满了,找到一个大日志文件直接 rm -f /var/log/xxx.log,df -h 一看空间一分没释放。第一反应是删错了或还有别的大文件,其实大概率是:文件还在被某个进程打开着。
Linux 里 rm 删除的是目录项(让文件名不可见),但只要还有进程持有这个文件的 fd(文件描述符),文件本身不会被真正释放,磁盘空间会一直占着直到那个进程关闭 fd。这是新手最容易踩的"删了等于没删"。
排查:用 lsof 找出谁还握着被删的文件:
lsof +L1 | grep deleted
+L1 专门列出"link count 为 0 但仍被打开"的文件,也就是被删掉但还占着空间的文件。看到类似:
rsyslogd 12345 root 5w REG 253,0 2147483648 123456 /var/log/xxx.log (deleted)
说明 rsyslogd 还握着这个日志文件的写句柄。
处理方式按情况:
1. 如果是日志文件被服务握着(最常见),正确做法不是 rm 而是让服务重新打开。用 logrotate 的 copytruncate 策略,或者直接重启服务释放 fd:
systemctl restart rsyslog # 或对应的写日志的服务
df -h # 再看空间就释放了
2. 如果服务不能随便重启,用 truncate 而不是 rm,把文件"从头部清空",句柄还开着但文件大小为 0,空间立刻释放:
truncate -s 0 /var/log/xxx.log
这样服务继续写也不受影响(它接着从 offset 写,文件继续增长但重新从 0 开始),适合 logrotate 之外的临时瘦身。注意:文件是 sparse/被追加写的话 truncate 效果要看场景,日志场景一般没问题。
3. 真不能再等,也可以 kill 掉持有者进程强制释放,但生产上影响业务,属于最后手段。
几个相关认知:
df看到的是文件系统层占用,被删但没释放的文件在 df 里依旧算占着;du是按目录统计,看不到已删除的文件。所以会出现"df 满了但 du 加起来对不上"的现象——差的那些空间全是被删未释放的文件。判断工具:du 算目录,df 算整个 fs,中间差就是 deleted 文件。- 日志类进程尤其爱踩这个坑:日志滚动脚本如果只是 mv+新建(不带 copytruncate),mv 之后原进程还握着旧文件,滚动多少次旧文件就占多少空间,直到重启。所以配 logrotate 记得对持续写日志、不支持 reopen 的服务用 copytruncate。
排查完整套路:
df -h # 看哪个分区满了
du -sh /* 2>/dev/null | sort -rh | head # 按目录找大头
lsof +L1 | grep deleted # 找被删但被占的文件
总结:rm 删了大文件 df 不减,先 lsof +L1 | grep deleted 找谁握着句柄,日志服务用 truncate 或重启释放,别在 delete 文件上反复 rm。这是"df 和 du 对不上"的最常见原因。