【Linux】两个问题:root修改文件权限报错Operation not permitted,解决rpm conflicts with file from package问题

一、root修改文件权限报错Operation not permitted

[root@ yum.repos.d]# chmod 755 RedHat6.2.repo 
chmod: changing permissions of `RedHat6.2.repo': Operation not permitted

lsattr可用来查看文件的属性:

lsattr RedHat6.2.repo
[[email protected]]# lsattr RedHat6.2.repo
----i--------e- RedHat6.2.repo

如果文件属性中有i与a,或者有其中的一个

可以使用chattr去掉这属性:
本机是i命令是chattr -i RedHat6.2.repo

chattr -ia RedHat6.2.repo

此时再次使用chmod命令即可更改文件的权限。

该方法对于文件目录同样适用,但是文件目录使用lsattr命令查看属性的时候并没有反应,但是使用chattr命令去掉ia属性之后,能够成功使用chmod更改权限。

如果想要恢复ia属性,使用:

chattr +ia RedHat6.2.repo

二、解决rpm conflicts with file from package问题

[root@harbor opt]# rpm -ivh python27-2.7.9-1.x86_64.rpm
准备中… ################################# [100%]
file /usr/bin/python2.7 from install of python27-2.7.9-1.x86_64 conflicts with file from package python-2.7.5-76.el7.x86_64
file /usr/share/man/man1/python2.7.1.gz from install of python27-2.7.9-1.x86_64 conflicts with file from package python-2.7.5-76.el7.x86_64
file /usr/bin/python2.7-config from install of python27-2.7.9-1.x86_64 conflicts with file from package python-devel-2.7.5-76.el7.x86_64
file /usr/include/python2.7/pyconfig.h from install of python27-2.7.9-1.x86_64 conflicts with file from package python-devel-2.7.5-76.el7.x86_64
方法一
yum -y remove python-2.7.5-76.el7.x86_64
卸载掉冲突的文件,安装新的文件。如果由于由于依赖关系导致要卸载很多软件,那可以优先考虑下一个方法。

方法二
rpm -ivh python27-2.7.9-1.x86_64.rpm --replacefiles
安装的时候增加–replacefiles参数,但是不知道在yum里如何实现。

–replacepkgs 强制重新安装已经安装的软件包
–replacefiles 替换属于其它软件包的文件
rpm -e --nodeps python27-2.7.9-1.x86_64.rpm 强制删除包

参考链接:
root权限下修改文件权限遇到 chmod: changing permissions of ‘***’: Operation not permitted
解决rpm conflicts with file from package问题

你可能感兴趣的:(Linux)