为什么cp改变了文件的属主

linux-337q:/home/suse/program/shell # ls -l systemrun
-rw-r–r-- 1 suse users 32 5 月 21 19:18 systemrun
linux-337q:/home/suse/program/shell # rm -rf /usr/bin/systemrun
linux-337q:/home/suse/program/shell # cp systemrun /usr/bin
linux-337q:/home/suse/program/shell # ls -l /usr/bin/system
linux-337q:/home/suse/program/shell # ls -l /usr/bin/systemrun
-rw-r–r-- 1 root root 32 5 月 21 21:38 /usr/bin/systemrun
linux-337q:/home/suse/program/shell #

systemrun 本属于 suse,一用 cp, 成 root 的了。

因为 cp 是一个 读取 -> 写入 的操作,目标文件是由执行命令的用户写入到目标位置的,所以属主是执行命令的用户