您尚未登录。

#1 2020-06-08 08:44:19

xtricman
エクス·トリクマン
注册时间: 2012-12-26
帖子: 1,267

软件包的安装是原子性的吗?

仅针对pacman系统而言,如果没有安装脚本要保障单个包的原子性应该是很容易的,但是很多软件包包含安装脚本,也可能会触发pacman hook,pacman能否在这些条件下保持原子性?


反社会,精神极其不稳定,随时可能炸碎身边所有人

离线

#2 2020-06-08 09:05:15

farseerfc
会员
注册时间: 2013-07-30
帖子: 210
个人网站

Re: 软件包的安装是原子性的吗?

pacman 應該是不保證原子性,即使沒有 pacman hook 和 post install 腳本。裝包過程中遇到意外情況(比如文件系統寫錯誤,突然斷電)pacman 只會報錯退出,需要用戶識別出沒有完成的包並重新安裝。 pacman 不會試圖回滾轉到一半已經安裝了的文件。


computerは神様だと信じていて
だからVIMの上でずっと指が舞って
自ら恋愛相手を作り出して

离线

#3 2020-06-08 09:54:41

xtricman
エクス·トリクマン
注册时间: 2012-12-26
帖子: 1,267

Re: 软件包的安装是原子性的吗?

farseerfc 说:

pacman 應該是不保證原子性,即使沒有 pacman hook 和 post install 腳本。裝包過程中遇到意外情況(比如文件系統寫錯誤,突然斷電)pacman 只會報錯退出,需要用戶識別出沒有完成的包並重新安裝。 pacman 不會試圖回滾轉到一半已經安裝了的文件。

可能就因为有脚本,他们觉得反正也实现不了就不实现了,Windows上的是做到了文件系统层的,在内核里面做的Transactional NTFS。

其实文件系统没有这个功能,自己写日志文件应该也做得出来,就是不能有脚本。


反社会,精神极其不稳定,随时可能炸碎身边所有人

离线

页脚