Skip to content

Operating System

使用shred工具彻底粉碎文件

引言

shred - overwrite a file to hide its contents, and optionally delete it

Overwrite the specified FILE(s) repeatedly, in order to make it harder for even very expensive hardware probing to recover the data.

很多时候删除一个文件,实际上只是在文件系统里面将该文件所在存储位置标记为可用、可覆盖状态,这个时候是可以通过恢复工具来进行恢复的;但如果这块存储位置之后反复被其他内容填充、覆盖的话,恢复的难度就增加了。

shred工具在coreutils软件包中,一般Linux系统都自带有这个工具。它通过多次覆盖的方式来删除文件,避免文件被恢复工具重新恢复,达到彻底粉碎的效果。但实际使用中,还是有一些需要注意的地方,并不能保证任何情况下都可以覆盖、删除干净,还是可能被恢复回来。

使用Dockerfile和CMake编译LLVM程序

引言

Docker是非常方便使用的虚拟容器技术,为自己的项目或程序提供一个Dockerfile文件可以快速的建立对应的开发或部署环境,减少因为环境或工具链缺失而痛苦、漫长的前期准备工作。

LLVM是备受瞩目的编译器项目,提供了一系列工具链,但要将其引入自己的代码中进行编译的过程却也不是那么容易,甚至会导致很多人放弃尝试。

这篇通过Dockerfile建立一个开发环境,然后在这个环境中通过CMake配置以顺利使用LLVM工具链完成项目构建,以后想继续学习或使用LLVM就可以在这个环境中拿这个模板直接操作了。

Docker镜像里为什么Linux无法安装Man Pages?

引言

Man Pages是Linux系统常用的在线文档手册。

常说在Linux里不需要记住软件命令的用法,只要会找男人就行了,指的就是查看这个man pages文档。

Docker是比较常用的容器,常用于部署应用或作为开发环境,但一般的Docker镜像为了减少体积,不会带有Man Pages文档手册。

有时候哪怕按照一般的做法使用yum安装了man-pages软件包,发现还是没有按预期安装文档,这是怎么回事呢?

Linux如何通过PAM管理授权?

引言

https://github.com/linux-pam/linux-pam

PAM指的是Pluggable Authentication Modules,以可插拔模块的形式来帮助Linux管理系统的授权。

PAM将系统授权相关的逻辑功能做成共享链接库(/usr/lib64/security/)的形式,然后其他需要授权操作的程序只需要调用这个共享库即可。

对于管理员来说,正确的设置复杂授权等工作就变成了一个简单的管理配置文件的工作了。

Linux如何设置用户长时间不操作就自动登出?

引言

当我们登录Linux系统后,如果长时间不操作,比如忘记关闭终端窗口了,怎么做到用户自动退出登录呢?

$ ls -l /etc/profile
-rw-r--r-- 1 root root 1819 Apr  1  2020 /etc/profile

这个文件是系统环境变量的配置文件,并且只有root有修改权限;如果能够在这个文件里面做一些设置,那么每个用户登录后都会加载里面的配置。