在有CSS transform属性的元素内position fixed定位错误的解释

当容器元素具有CSS transform定义时,会隐式地生成定位容器,transform容器及其子元素都会相对于该隐式容器做transform变换,即便内部元素具有position:fixed也无法逃脱,其行为就好像设置了position:absolute,详见参考资料。

参考资料

https://stackoverflow.com/questions/9115880/css-transform-translate-moves-postionfixed-inner-div

https://meyerweb.com/eric/thoughts/2011/09/12/un-fixing-fixed-elements-with-css-transforms/

卸载ECS上阿里云盾程序

卸载套路云方法一

wget http://update.aegis.aliyun.com/download/uninstall.sh 
chmod +x uninstall.sh 
./uninstall.sh 

卸载套路云方法二

wget http://update.aegis.aliyun.com/download/quartz_uninstall.sh 
chmod +x quartz_uninstall.sh 
./quartz_uninstall.sh 

卸载残留

pkill aliyun-service 
rm -fr /etc/init.d/agentwatch /usr/sbin/aliyun-service 
rm -rf /usr/local/aegis* 
iptables -I INPUT -s 140.205.201.0/28 -j DROP 
iptables -I INPUT -s 140.205.201.16/29 -j DROP 
iptables -I INPUT -s 140.205.201.32/28 -j DROP 
iptables -I INPUT -s 140.205.225.192/29 -j DROP 
iptables -I INPUT -s 140.205.225.200/30 -j DROP 
iptables -I INPUT -s 140.205.225.184/29 -j DROP 
iptables -I INPUT -s 140.205.225.183/32 -j DROP 
iptables -I INPUT -s 140.205.225.206/32 -j DROP 
iptables -I INPUT -s 140.205.225.205/32 -j DROP 
iptables -I INPUT -s 140.205.225.195/32 -j DROP 
iptables -I INPUT -s 140.205.225.204/32 -j DROP 
屏蔽套路云盾 IP 

内容来源:https://www.v2ex.com/t/388454#r_4718005

MS17-010 for 已停止支持系统的补丁

更新MS17-010补丁可以避免受勒索病毒的感染,以下是微软破例为已停止支持的系统提供的补丁:

http://www.catalog.update.microsoft.com/Search.aspx?q=kb4012598

有关Windows 10累积补丁获取,请访问:

https://support.microsoft.com/en-us/help/4043454

Win10 14393.321 更新失败删了分区表

今天更新14393.321失败了,在撤销更改后重启,结果系统进不去了,发现连分区表都删了。由于是SSD,不存在磁盘损坏一说,网上流传一种说法,Win10安装会删Linux分区,不过我的情况更狠,所有的分区都被删除。

磁盘分区如下,为mbr格式分区:
1. Linux boot 分区,含Grub
2. Ntfs, Win 10 单一分区,含Win 10启动加载程序
3. Ntfs, 数据分区
4. 扩展分区
4.1. Linux 根分区
4.2. Linux Swap

用GParted刻录成的U盘启动后,查看磁盘情况,发现除了/dev/sda,并无下挂分区,说明分区表已被破坏。

由于之前在linux 根分区备份了mbr,所以当务之急是要找回mbr备份,用另一U盘刻录WinPE启动后,用R-Studio扫描全盘后恢复出该文件。还原后分区找回, /dev/sdaX也回来了,但系统依旧不能启动,估计是连各个分区上的Boot loader程序都被删了,用Gparted U盘启动后,挂载Linux根分区,文件都在,执行分区下的usr/sbin/grub-install,发现执行不了,估计是内核版本不匹配,只好重新再刻录一个Debian 8.6的LiveCD到U盘,这样内核版本和发行版就与硬盘上的一致了。

接下来要做的是把Grub重新安装到硬盘上,先把硬盘挂载到liveCD系统里,挂在后的结构如下

Live CD文件系统 /
    \- mnt/linux  挂载硬盘 Linux根分区
        \- boot 挂载硬盘boot分区

接下来用apt安装grub2,然后执行命令

grub-install --root-directory=/mnt/linux /dev/sda

grub会自动安装boot loader 1阶段到/mnt/linux/boot/grub/stage1,重启电脑后终于恢复。折腾了3小时……


后续跟踪:由于该电脑先安装Windows,再安装Linux,导致MBR活动分区被标记到Linux Boot分区,在把活动分区重新指向Windows分区后,问题可以得到解决。

[转发+推荐]深入图解字符集与字符集编码

深入图解字符集与字符集编码(一)——charset vs encoding

http://my.oschina.net/goldenshaw/blog/304493

深入图解字符集与字符集编码(二)——字符集及其编号

http://my.oschina.net/goldenshaw/blog/305805

深入图解字符集与字符集编码(三)——定长与变长

http://my.oschina.net/goldenshaw/blog/307708

深入图解字符集与字符集编码(四)

http://my.oschina.net/goldenshaw/blog/310331

深入图解字符集与字符集编码(五)——Unicode的代码单元

http://my.oschina.net/goldenshaw/blog/311848