Bug 8810 - sudo kate makes not-sudo programs crash (changes owner of ~.ICEauthority)
: sudo kate makes not-sudo programs crash (changes owner of ~.ICEauthority)
Status: CLOSED WORKSFORME
: Sisyphus
(All bugs in Sisyphus/kdeaddons-kate)
: unstable
: all Linux
: P2 major
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2006-01-07 22:17 by
Modified: 2006-01-14 20:47 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2006-01-07 22:17:34
zsh 573 % sudo kate /etc/X11/xorg.conf
....
zsh 574 %  kate /etc/X11/xorg.conf 
Session management error: Authentication Rejected, reason : None of the 
authentication protocols specified are supported and host-based authentication 
failed
DCOPClient::attachInternal. Attach failed Could not open network socket
kdeinit: Aborting. No write access to '/home/bdv/.ICEauthority'.
.....

zsh 580 % sudo chown bdv:bdv .ICEauthority


zsh 581 % kate /etc/X11/xorg.conf         
kbuildsycoca running...
QObject::disconnect: Unexpected null parameter
kio (KDirWatch): WARNING: KDirWatch::removeDir can't handle '/etc/samba/smb.
conf'
kio (KDirWatch): WARNING: KDirWatch::removeDir can't handle '/etc/security/
fileshare.conf'
kio (KDirWatch): WARNING: KDirWatch::removeDir can't handle '/etc/exports'



Actual Results:  
details:

zsh 573 % sudo kate /etc/X11/xorg.conf
Error: "/tmp/.private/bdv/ksocket-bdv" is owned by uid 504 instead of uid 0.
Link points to "/tmp/.private/bdv/ksocket-root"
Error: "/root/.kde/socket-localhost.localdomain" points to "/tmp/.private/bdv/
ksocket-root" instead of "/tmp/ksocket-root".
Creating link /root/.kde/socket-localhost.localdomain.
Created link from "/root/.kde/socket-localhost.localdomain" to "/tmp/ksocket-
root"
Error: "/tmp/.private/bdv/ksocket-bdv" is owned by uid 504 instead of uid 0.
Link points to "/tmp/ksocket-root"
Error: "/tmp/.private/bdv/kde-bdv" is owned by uid 504 instead of uid 0.
Link points to "/tmp/.private/bdv/kde-root"
Error: "/root/.kde/tmp-localhost.localdomain" points to "/tmp/.private/bdv/kde-
root" instead of "/tmp/kde-root".
Creating link /root/.kde/tmp-localhost.localdomain.
Created link from "/root/.kde/tmp-localhost.localdomain" to "/tmp/kde-root"
kbuildsycoca running...
Error: "/tmp/.private/bdv/kdecache-bdv" is owned by uid 504 instead of uid 0.
Link points to "/var/tmp/kdecache-root"
Error: "/tmp/.private/bdv/kde-bdv" is owned by uid 504 instead of uid 0.
Link points to "/tmp/kde-root"
Error: "/tmp/.private/bdv/kdecache-bdv" is owned by uid 504 instead of uid 0.
Link points to "/var/tmp/kdecache-root"
Error: "/tmp/.private/bdv/kdecache-bdv" is owned by uid 504 instead of uid 0.
Link points to "/var/tmp/kdecache-root"
Error: "/tmp/.private/bdv/kdecache-bdv" is owned by uid 504 instead of uid 0.
Link points to "/var/tmp/kdecache-root"
Error: "/tmp/.private/bdv/kde-bdv" is owned by uid 504 instead of uid 0.
Link points to "/tmp/kde-root"
Error: "/tmp/.private/bdv/ksocket-bdv" is owned by uid 504 instead of uid 0.
Link points to "/tmp/ksocket-root"
Error: "/tmp/.private/bdv/kde-bdv" is owned by uid 504 instead of uid 0.
Link points to "/tmp/kde-root"
QObject::disconnect: Unexpected null parameter
kio (KDirWatch): WARNING: KDirWatch::removeDir can't handle '/etc/samba/smb.
conf'
kio (KDirWatch): WARNING: KDirWatch::removeDir can't handle '/etc/security/
fileshare.conf'
kio (KDirWatch): WARNING: KDirWatch::removeDir can't handle '/etc/exports'
------- Comment #1 From 2006-01-07 23:34:13 -------
Просьба закрыть баг как INVALID по причине невозможности перевешивания его на 
компонент "руки репортера".

Во-1-х, kate - это kdebase-wm, а не kdeaddons-kate.
Во-2-х, указанное поведение не является особенностью kate либо какой-то другой 
программы и характерно еще много для чего.
В-3-х, не запускайте иксовые программы от рута, тем более текстовые редакторы, 
тем более тогда, когда необходимости в этом нет ну совершенно никакой.
В-4-х, у меня в КДЕ вообще не подтверждается. 

Зачем вы запускаете КДЕшный текстовый редактор не из среды КДЕ для 
редактирования c правами суперпользователя небольшого системного текстового 
конфига? Учите vim.
------- Comment #2 From 2006-01-08 06:45:39 -------
1,2 - я не знаю ,какой именно компонент KDE так делает. Хорошо что перевесили.

4. Например потому что GEdit временно не работает. И потому что в Kate/KWrite 
встроенные средства перекодировок, хотя в конкретно этом случае это не было 
нужно.

3. А что бы изменилось, если бы я сделал не sudo, а sudo -u some-not-root-user
?


Так можно сказать про все что угодно. "А вы не делайте так". Про абсолютно
любой 
баг так можно сказать.
Если kdelibs принципиально несовместимуы с sudo (не только sudo -u root), то 
нужно это как-то проверять и отказывать в запуске. Или нужно исправлять. В
любом 
случае - баг есть и он ни с какойстороны не INVALID.
------- Comment #3 From 2006-01-08 06:47:48 -------
Пардон, не перевесли еще. Жаль, я сам не могу. Можно конечно закрыть и открыть 
новый - но это будет позёрство.
------- Comment #4 From 2006-01-08 10:56:15 -------
(In reply to comment #2)
> 1,2 - я не знаю ,какой именно компонент KDE так делает. Хорошо что перевесили.
Это не проблема КДЕ.

> 4. Например потому что GEdit временно не работает. И потому что в Kate/KWrite 
> встроенные средства перекодировок, хотя в конкретно этом случае это не было 
> нужно.
Еще раз: учите vim.

> 3. А что бы изменилось, если бы я сделал не sudo, а sudo -u some-not-root-user
 ?
Не случилось бы ничего, поскольку some-not-root-user не имеет права писать в ваш
 $HOME, а sudo вы пускаете без -H. Можете сами попробовать.

> Если kdelibs принципиально несовместимуы с sudo (не только sudo -u root)
Хихи.
Любая программа, запущенная через sudo без -H и пишушщая что-либо в $HOME, 
запишет это в пользовательский $HOME с правами рута. Это by design.
Так, sudo vim создаст .viminfo c 600 root:root, если его не было на момент 
запуска.
------- Comment #5 From 2006-01-10 19:02:22 -------
Пользуйтесь kdesu  
------- Comment #6 From 2006-01-14 20:47:02 -------
(In reply to comment #4)
> Это не проблема КДЕ.

Kate, kdelibs, kde-base - я не знаю чего именно это проблема.

> > встроенные средства перекодировок, хотя в конкретно этом случае это не было 
> > нужно.
> Еще раз: учите vim.

Вот это и должен говорить *Kate*.

> > Если kdelibs принципиально несовместимуы с sudo (не только sudo -u root)
> Любая программа, запущенная через sudo без -H и пишушщая что-либо в $HOME, 
> запишет это в пользовательский $HOME с правами рута. Это by design.

А что, елси я пишу в какой-то файл, я автоматическии меняю ему права ?
Т.е. sudo echo "1" >> 1.txt - кроме записи еще делает chown root:root 1.txt ?

> Так, sudo vim создаст .viminfo c 600 root:root, если его не было на момент 
> запуска.

1) этот файл помешает запуску только vim, а .ICEauthority - многим программам.
2) так значит все-таки "если его не было" ? Понятно, что файлы новые будут 
создаваться с измененными правами. Но почему для уже существующих файлов 
меняется владелец ???