Why most run Microsoft, not RedHat

Zoltan Boszormenyi zboszor at freemail.hu
Mon Apr 30 16:20:31 UTC 2007


Les Mikesell írta:
> Zoltan Boszormenyi wrote:
>> Les Mikesell írta:
>>> Zoltan Boszormenyi wrote:
>>>
>>>>>>>   
>>>>>>>> He was a bit tricky to
>>>>>>>> use chattr +i on /bin/login and some other progs.
>>>>>>>> BTW, although rpm complained that it cannot replace
>>>>>>>> those, why isn't it prepared for such scenarios?
>>>>>>>> RPM is made for Linux, it should certainly know
>>>>>>>> about special filesystem flags and handle them.
>>>>>>>>
>>>>>>>>             
>>>>>>> How should rpm handle it? Rpm has no way of knowing why the
>>>>>>>         
>>>>>> How?
>>>>>>
>>>>>> 1. be able to specify special flags in the specfile and apply 
>>>>>> them upon
>>>>>> install
>>>>>> 2. detect if the filesystem doesn't handle such specials and make 
>>>>>> note
>>>>>> of it in the rpmdb
>>>>>> 3. clear them before uninstalling or upgrading
>>>>>> 4. detect if it was modified, report it with rpmv
>>>>>>     (skip this check if the rpmdb indicates it, see 2)
>>>>>>
>>>>>>
>>>>>>     
>>>>> Why? What would the advantages be? Do they overcome the drawbacks of
>>>>> rpm being able to change a file that you set the immutable flag on?
>>>>>
>>>>> Mikkel
>>>>>   
>>>>
>>>> Yes, see 3.
>>>
>>> What would be the point of having a special attribute if programs
>>> can just ignore it?
>>
>> What's the point of having a package manager if you can
>> overwrite everything by compiling from source or delete stuff?
>>
>> What's the point of setting the immutable flag on a binary, doc or data
>> file that might - and eventually will - be replaced if you upgrade 
>> its package?
>>
>> What's the point of handling Unix/SELinux permissions by rpm
>> if you can simply chmod/chown everything?
>>
>> I ran out of rhetoric questions. :-)
>
>
> It's all a matter of programmer-vs.-programmer wars to show who is in
> control.

My questions above weren't about war. Again, different POVs.
I tried to give some examples of ease of use vs manual control.

A1. you have package manager because you want easy installation
       and you don't want to wait while the stuff compiles
A3.  because it's easier to have everything have the proper permissions,
      let rpm handle it.

and

A2. the packager may consider a file to be so essential that he wants it
    immutable. but the upgrade of the package must also work without
    manual override, i.e. without clearing immutable flag first.

>   You can compare it to the person who thought that the passwd program 
> should only talk directly to a tty and that programs should not be 
> able to use it.  That lasted a few months - until another programmer 
> wanted his program to be able to change passwords and wrote 'expect' 
> to do it.  A big waste of both people's time...

Agreed, that's unfortunate.

>> But your POV in the question above is wrong.
>> The point is to take advantage of something
>> where available.
>
> Beg your pardon?  The point of adding the immutable bit was so the 
> file couldn't be changed by ordinary means. It is, again, a waste of 
> both parties efforts as soon as someone adds the programming to bypass 
> its attempt at control.

But you already have it - you can use chattr from shell scripts or manually.
But chattr works only as root and you can only run rpm -[iU] as root
successfully anyway.
Hm. You can use chattr in pre and post scriptlets in rpm today. :-)
But rpmv won't tell you whether the fs-special flags were set
by rpm or by someone else.

I can certainly remember if I set this flag myself (e.g. have it documented)
or ask the collegues. If no one authorized has set it (like it was in 
the case of
the intrusion) then I would expect that rpm were able to replace
a package with --force, even if some files have the immutable flag set.
(Or similar in case of other FSes than ext2/3/4.)

>> Actually, I have another rhetoric
>> question to back up my POV: what's the point of
>> supporting NX in the newer CPUs when you can
>> run the compiled kernel on older system where
>> the feature never activates?
>
> For kernel features it isn't a rhetorical question.  The answer is 
> always that Linus wants it to be that way.





More information about the fedora-list mailing list