cacls,被icacls接班的Windows权限命令,为什么普通人也该懂一点?

admin

前几天帮朋友小杨收拾一个“烂摊子”,他们公司共享盘里有个合同文件夹,某天早上突然发现里面两份合同被改了名,还有一份被挪到了“临时资料”目录,小杨第一反应是:“谁这么手欠?”我问了一圈,没人承认,后来我远程连上去,打开命令提示符,敲了一句:

cacls "D:\共享\合同"

结果屏幕上跳出来一串权限信息,里面赫然有Everyone:(OI)(CI)F,翻译成人话就是:这个文件夹及子文件,对所有登录用户几乎都是完全控制,也就是说,不是某个人“手欠”,而是权限一开始就给得太宽了,大家都能改、都能删,出问题只是早晚的事。

这件事让我特别想聊聊cacls,现在很多人一听到命令行就头大,觉得那是程序员的事,可cacls其实是一个很典型的Windows权限查看和修改命令,老归老,但它背后的东西一点都不老:文件到底谁能看、谁能改、谁能删,这个问题,办公室里、家庭电脑上、甚至给孩子用的旧笔记本上,都会遇到。

cacls是Windows里用来显示或修改文件访问控制列表的命令,简单说,就是看一个文件或文件夹的“门禁名单”,常见用法比如cacls 路径是查看权限;/g是授予某个用户或组权限;/e是在原有权限上编辑;/r是撤销某人的权限;/p是替换权限;/d是拒绝权限;/t是递归到子目录,权限字母里,F是完全控制,C是更改,R是读取,W是写入,听起来有点技术,但核心逻辑很朴素:谁能进门,谁能动东西,谁只能看看。

我再讲一个生活里的例子,我一个亲戚家孩子上网课,用的是家里那台旧笔记本,孩子喜欢把桌面上的学习资料拖来拖去,有一次把一整个学期的错题照片删了,回收站还清空了,亲戚问我能不能“把删除功能锁死”,我先用cacls看了看那个资料文件夹的权限,发现当前账户就是完全控制,删不删全看手滑不滑,后来我们没急着用命令硬锁,而是做了两件事:一是给孩子建了标准用户账户,二是重要资料定期备份,再对个别文件夹做只读权限,这里我得说句实话:cacls能帮忙,但它不是万能保险箱,权限设置错了,自己也可能进不去;递归改权限之前不备份,风险更大,工具是扳手,不是魔法棒。

我个人对cacls的态度挺明确:它像工具箱里那把老式扳手,不新,但值得知道,第一,图形界面点属性、点安全、点编辑,当然直观,可一旦要批量处理、要留记录、要在远程会话里快速确认,命令行就很顺手,第二,权限问题最怕“大家都以为”,你以为共享盘只给部门用,结果Everyone都能进;你以为离职同事的权限早清了,结果他的账号还在某个组里,用cacls看一眼,很多问题会立刻现形,第三,我不建议普通用户一上来就背命令、乱改系统盘权限。cacls已经被更现代的icacls逐步接班,新环境里优先用icacls或PowerShell更稳妥,但知道cacls能查看权限、能撤销授权、能递归处理,已经能帮你避开不少坑。

说到底,权限管理不是技术炫耀,而是一种边界感,共享盘别图省事给Everyone完全控制;离职交接别只收电脑不清权限;家庭电脑别天天用管理员账户上网;改权限之前先查看、先备份、先小范围试,这些听起来不酷,但特别管用。cacls老不老不重要,重要的是我们脑子里有没有那根弦:文件不是“能打开就行”,它还有“谁能改、谁能删、谁只能看”的规矩。

你有没有被权限坑过?是共享盘里莫名其妙少了的文件,还是家里电脑被误删的照片?欢迎聊聊,也许下一次,先敲一句cacls,就能少一次手忙脚乱。

目录[+]