今天遇到一个问题,是这样的,我创建一个testfile文件,
touch testfile
chown root.root testfile
chmod 702 testfile
echo "this is a test file" > /test/testfile这样,我给的root的全部权限,给的other只有一个写权限
我切换到其他用户,这里有一个test用户su - test我直接vim 编写这个文件vim testfile
66666666666666
:wq!保存完退出完成后发现,原来的文件被test用户的testfile文件给覆盖了。还有 我用root给了一个读权限chmod 704 testfile
su - test
vim /test/testfile
这回事可以查看到里面的内容,但是也是可以修改的,
最后只要加上“!”就可以覆盖掉root写的文件我想问,这个有什么好的办法,能防止other权限的人修改或者覆盖这个文件吗?
touch testfile
chown root.root testfile
chmod 702 testfile
echo "this is a test file" > /test/testfile这样,我给的root的全部权限,给的other只有一个写权限
我切换到其他用户,这里有一个test用户su - test我直接vim 编写这个文件vim testfile
66666666666666
:wq!保存完退出完成后发现,原来的文件被test用户的testfile文件给覆盖了。还有 我用root给了一个读权限chmod 704 testfile
su - test
vim /test/testfile
这回事可以查看到里面的内容,但是也是可以修改的,
最后只要加上“!”就可以覆盖掉root写的文件我想问,这个有什么好的办法,能防止other权限的人修改或者覆盖这个文件吗?
解决方案 »
- bash: /usr/local/bin/apktool.jar: cannot execute binary file: 可执行文件格式错误
- openssh密钥不匹配问题
- CENTOS 7防火墙
- nohup运行shell脚本kill命令后代码不执行
- 请问Nginx的日志中文问题如何解决
- Qt的Qevent的问题
- 在CentOS上安装docker
- deepstream-app运行出错
- 请问如何让linux的云主机的网络和cpu一直活跃并可以生成镜像
- 怎么离线安装zabbix4.0
- VirtualBox安装Ubuntu完毕,启动时黑屏
- Ubuntu18.04LTS下安装tensorflow(Anaconda3+tensorflowCPU+pycharm)
sudo chattr +a testfile
通过lsattr查看文件的隐藏属性:
lsattr
效果如下:当然,想去掉这个隐藏属性:
sudo chattr -a testfile
文件的隐藏属性还有很多参数,而且是可以组合的,以下是我了解的一些参数。
+/-i 无法对文件进行修改;若对目录设置该参数,则仅能修改其中的子文件内容而不能新建或删除文件
+/-a 仅允许补充(追加)内容,无法覆盖/删除内容
(Append Only)
+/-S 文件内容在变更后立即同步到硬盘(sync)
+/-s 彻底从硬盘中删除,不可恢复(用0填充原文件所在的硬盘区域)
+/-A 不再修改这个文件或目录的最后访问时间(atime)
+/-b 不再修改文件或目录的存取时间
+/-D 检查压缩文件中的错误
+/-d 用dump命令备份时忽略本文件/目录
+/-c 默认将文件或目录进行压缩
+/-u 当删除该文件后依然保留在硬盘中,方便日后恢复
+/-t 让文件系统支持尾部合并(tail-merging)
+/-x 可以直接访问压缩文件中的内容
希望我的回答可以帮助到你~
解决方案:修改testfile所在的文件夹权限,不允许test用户可写