Lubuntu 22.04下提取内核归档后脚本默认无执行权限的问题排查求助
Lubuntu 22.04下提取内核归档后脚本默认无执行权限的问题排查求助
先贴出你的系统环境信息:
I am using Lubuntu 22.04 OS. abhishek@abhishek:~/test_OS_proj/linux-6.0.19$ neofetch .-/+oossssoo+/-. abhishek@abhishek `:+ssssssssssssssssss+:` ----------------- -+ssssssssssssssssssyyssss+- OS: Ubuntu 22.04.1 LTS x86_64 .ossssssssssssssssssdMMMNysssso. Host: MS-7A33 3.0 /ssssssssssshdmmNNmmyNMMMMhssssss/ Kernel: 5.15.0-58-generic +ssssssssshmydMMMMMMMNddddyssssssss+ Uptime: 23 mins /sssssssshNMMMyhhyyyyhmNMMMNhssssssss/ Packages: 1942 (dpkg), 7 (snap) .ssssssssdMMMNhsssssssssshNMMMdssssssss. Shell: bash 5.1.16 +sssshhhyNMMNyssssssssssssyNMMMysssssss+ Resolution: 1920x1080 ossyNMMMNyMMhsssssssssssssshmmmhssssssso Terminal: /dev/pts/0 ossyNMMMNyMMhsssssssssssssshmmmhssssssso CPU: AMD Ryzen 7 1800X (16) @ 3.600GHz +sssshhhyNMMNyssssssssssssyNMMMysssssss+ GPU: AMD ATI Radeon RX 470/480/570/570X/580/580X/590 .ssssssssdMMMNhsssssssssshNMMMdssssssss. Memory: 4377MiB / 32046MiB /sssssssshNMMMyhhyyyyhdNMMMNhssssssss/ +sssssssssdmydMMMMMMMMddddyssssssss+ /ssssssssssshdmNNNNmyNMMMMhssssss/ .ossssssssssssssssssdMMMNysssso. -+sssssssssssssssssyyyssss+- `:+ssssssssssssssssss+:` .-/+oossssoo+/-. abhishek@abhishek:~/test_OS_proj/linux-6.0.19$
根据你描述的情况——之前提取内核归档后scripts目录下的文件默认有执行权限,现在必须手动执行chmod +x linux-6.0.19/scripts/*才能正常使用make或make menuconfig,还伴随其他脚本的执行权限异常,结合你提到之前操作过cpuset,我整理了几个可能的排查方向:
- 检查内核归档文件本身:有可能是你下载的内核包损坏或者权限本身异常。建议重新下载一份linux-6.0.19的归档文件,用
md5sum校验哈希值确保文件完整后,再重新解压测试。 - 验证解压工具的行为:如果你用的是图形化解压工具,部分工具默认会忽略归档中的执行权限设置。试试用终端的
tar命令重新解压:tar -xvf linux-6.0.19.tar.xz,看是否能保留脚本的执行权限。 - 检查当前用户的umask设置:umask会影响新建/解压文件的默认权限。执行
umask命令查看当前值,正常情况下默认是0022,这样解压后的文件应该能保留原有的执行位。如果你的umask是0077这类严格的值,会导致执行权限被屏蔽。可以临时设置umask 0022后再解压试试。 - 排查cpuset相关配置:既然你之前操作过cpuset,有可能修改了cgroup的相关设置,间接影响了文件权限。可以先重启系统,看是否是临时配置导致的问题;也可以检查
/sys/fs/cgroup/cpuset/下的权限和参数,看有没有异常限制。 - 检查文件系统挂载选项:如果内核源码所在的分区(比如你的
~/test_OS_proj在/home分区)被设置了noexec挂载选项,所有文件都会失去执行权限。执行mount命令查看分区挂载信息,确认/home分区没有noexec标记。 - 检查AppArmor的影响:Lubuntu默认启用AppArmor,有可能某个profile误限制了文件权限。可以临时关闭AppArmor试试:
sudo systemctl stop apparmor,然后重新解压内核归档,看权限是否恢复正常。
备注:内容来源于stack exchange,提问作者Abhishek Ghosh
相关产品推荐
相关产品推荐

