【发布时间】:2020-05-08 05:54:24
【问题描述】:
[hadoop@worker-18 tmp]$ ./sysupdate
-bash: ./sysupdate: Operation not permitted
[hadoop@worker-18 tmp]$ chmod +x ./sysupdate
[hadoop@worker-18 tmp]$ ./sysupdate
-bash: ./sysupdate: Operation not permitted
[hadoop@worker-18 tmp]$ sudo ./sysupdate
sudo: unable to execute ./sysupdate: Operation not permitted
[hadoop@worker-18 tmp]$ ls -l ./sysupdate
-rwxrwxrwx 1 hadoop hadoop 1102480 Apr 28 07:48 ./sysupdate
[hadoop@worker-18 tmp]$ stat ./sysupdate
File: ‘./sysupdate’
Size: 1102480 Blocks: 2160 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 402520 Links: 1
Access: (0777/-rwxrwxrwx) Uid: ( 1001/ hadoop) Gid: ( 1000/ hadoop)
Access: 2020-05-08 13:02:31.919594048 +0800
Modify: 2020-04-28 07:48:11.962969475 +0800
Change: 2020-05-08 13:02:29.883603300 +0800
Birth: -
[hadoop@worker-18 tmp]$ cp /usr/bin/ls ./
[hadoop@worker-18 tmp]$ ./ls --version
ls (GNU coreutils) 8.22
Written by Richard M. Stallman and David MacKenzie.
[hadoop@worker-18 tmp]$ chmod --reference=./sysupdate ./ls
[hadoop@worker-18 tmp]$ ls -l ./ls
-rwxrwxrwx 1 hadoop hadoop 117656 May 8 13:02 ./ls
[hadoop@worker-18 tmp]$ ./ls --version
ls (GNU coreutils) 8.22
Written by Richard M. Stallman and David MacKenzie.
这很奇怪……
但是当我将它上传到我自己的服务器时,我可以执行它:
➜ ~ ./sysupdate --version
screen 2.8.5
built on Mar 8 2020 with GCC 4.8.5
features: 64-bit AES
libuv/1.34.0
那么为什么我不能在服务器worker-18 中执行sysupdate?
操作系统是 CentOS Linux release 7.4.1708 (Core)
【问题讨论】:
-
可能文件设置为不可变。试试
sudo chattr -i ./sysupdate -
您可以使用
lsattr ./sysupdate检查属性 -
@DigvijayS 结果是
-------------e-- ./sysupdate -
@DigvijayS 好的,superuser.com/questions/1549793/…
-
@DigvijayS 为什么是超级用户? unix.stackexchange.com 不是更合适吗?