2022.19 linux中的危险命令
公司测试环境服务器上,被人不小心执行了chmod -R 777,结果服务器上所有文件都变成了777,很多服务都出问题了,只好找了另外一台相同环境的服务器,备份了所有文件的访问权限,然后在这台服务器上恢复后正常,命令如下:
getfacl -R / >backup.bak setfacl --restore =backup.bak
幸好这是测试环境,并且有相同环境的服务器在,否则就要花不少时间对一个个对用到的服务根据要求来恢复权限才行。
因为命令行主要是给懂它的技术人员用的,所以在防止犯错尤其是致命错误方面考虑不足,linux中还有不少这样危险的操作,如:
rm -rf 删除文件夹及其内容,强制删除没有提示;
mv 文件夹 /dev/null 将文件夹下的内容移动到null设备(相当于删除);命令> /dev/sda 将命令输出到块设备sda中,会导致整个块设备的数据丢失;mk fs.ext3 /dev/sda,格式化块设备sda,导致磁盘被格式化;
类似上面这些命令操作不当都可能会导致数据丢失、系统崩溃等问题。因此,使用起来要慎重,尽量不要直接用root用户操作,尤其是对于命令行不熟悉的用户。
从根本上讲,架构设计是需求驱动的,而不是模型驱动的。架构设计是一门艺 术,你不可能把“一桶需求”倒进某台神秘机器,然后等着架构设计自动被“加工”生 产完毕,这里缺的是架构师的因素。 架构设计实际上是一个“质疑驱动的过程”:需求被架构师的大脑有节奏的引入架构设计一波接一波的思维活动中。
作为架构师,首先要面对的风险就是需求。既要关注功能需求,又要平衡相互矛盾的质量属性需求,还不能遗漏各方的约束性需求。架构师不仅要考虑支持功能、满足质量要求,还要重视各种约束性需求。