|
|
요즘 리눅스는 x86형태만 있는 것이 아니고 x86_64 등 다양한 리눅스가 버젼별로 존재합니다.
저 x86_64라는 놈이 좀 이상해서 32비트 패키지와 64비트 패키지를 모두 가지고 있습니다.
이때문에
# rpm -e mysql
이렇게 하면
error: "mysql-4.1.12-3.RHEL4.1" specifies multiple packages
위와 같은 오류를 뱉어 냅니다. 이때 활용하는 방법입니다.
구글신에서 열심히 뒤졌습니다. 1년전에 분명이 사용한 방법인데
기억이 안나서 ㅎㅎㅎ
/etc/rpm/macros.local
위 파일을 만들어 줍니다. 내용은 다음과 같습니다.
%_query_all_fmt %%{name}-%%{version}-%%{release}.%%{arch}
그렇게 해놓고
rpm -qa | grep mysql
이렇게 해보시면
libdbi-dbd-mysql-0.6.5-10.RHEL4.1.x86_64
mysqlclient10-3.23.58-4.RHEL4.1.i386
mysql-4.1.12-3.RHEL4.1.i386
mysqlclient10-3.23.58-4.RHEL4.1.x86_64
mysql-4.1.12-3.RHEL4.1.x86_64
위와 같이 명확한 버젼이 나타납니다. 풀 패키지명을 다 써주시면 제거가 됩니다.
또다른 한가지는
--allmatches remove all packages which match <package>
(normally an error is generated if
<package> specified multiple packages)
위의 옵션을 사용하는것입니다.
저는 위의 옵션 보다는 앞서 말한 파일 변경법을 선호 하고 권장합니다.
왜냐면 명확하게 제거 할 수 있기 대문입니다.
그래서 실제로 mysql 패키지를 지울때는
rpm -e --nodeps mysql-4.1.12-3.RHEL4.1.i386
저렇게 지우시면 됩니다.
[원본글 : 가야태자 님의 블로그 'RPM2']
http://www.dulihana.com:8000/blog/114