Bug 275297 - Smb4K asks for superuser auth in forked terminal instead of via kdesu, cannot enter password; cannot mount shares, program currently unusable
Summary: Smb4K asks for superuser auth in forked terminal instead of via kdesu, cannot...
Status: RESOLVED NOT A BUG
Alias: None
Product: unknown
Classification: Bugzilla Internals
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR major
Target Milestone: ---
Assignee: Alexander Reinholdt
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-09 18:24 UTC by JR
Modified: 2012-10-18 08:17 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description JR 2011-06-09 18:24:17 UTC
Version:           unspecified (using KDE 4.6.3) 
OS:                Linux

Kubuntu 11.04, running KDE 4.6.3 from kubuntu ppas. Smb4K package version is 0.10.9-1. I could not find a Smb4K product to file this bug against.

I have set up Smb4K to ask me for superuser privileges whenever I mount a share, but everytime I try it seems to use the terminal sudo instead of the graphical kdesu. Since Smb4K forks and runs in the background, the terminal doesn't have focus so no password can be entered. As a result, the program cannot complete its main function. :<

Error details output in Smb4K proper;
    Sorry, try again.
    Sorry, try again.
    Sorry, try again.
    sudo: 3 incorrect password attempts

Terminal output;
    $ smb4k
    $ [sudo] password for zorael: 
    [sudo] password for zorael: 
    [sudo] password for zorael: 
    [sudo] password for zorael: 
    [sudo] password for zorael: 
    [sudo] password for zorael:
    $    <waiting for new input>

Reproducible: Always

Steps to Reproduce:
1. Start Smb4K
2. Configure Smb4K -> Super User section, tick Use super user privileges to mount and unmount shares
3. Hit OK
4. Double-click an available share in your local network

Actual Results:  
5. Error message thrown with details as above
6. Share does not get mounted due to insufficient privileges

Expected Results:  
5. kdesu spawns and asks for superuser authentication
6. Share gets mounted upon successful password input

The Kubuntu team renames the kdesu binary to kdesudo (likely since Canonical wants *sudo homogenity), but I have a kdesu symlink in /usr/local/bin, so that file should be available to Smb4K via PATH.

(As for severity, the fields description page[1] suggests bugs that cause major loss of function should be tagged Major, whereas the dropdown menu in the bug report form suggests that tag should be used for bugs that causes data loss.)

[1]: https://bugs.kde.org/page.cgi?id=fields.html#bug_severity
Comment 1 Alexander Reinholdt 2011-06-10 12:55:17 UTC
Thank you for reporting this issue. However, I cannot reproduce it on my Kubuntu 11.04 machine. I followed the steps you described, but Smb4K worked as expected. I even created a symlink /usr/local/bin/kdesu -> /usr/bin/kdesudo (which is not needed, BTW).

The only thing I can imagine that might cause this problem is that the needed entries are missing in the sudoers file. Could you please verify that the /etc/sudoers contains something like

# Entries for Smb4K users.
# Generated by Smb4K. Please do not modify!
User_Alias      SMB4KUSERS = <your_username>
Defaults:SMB4KUSERS     env_keep += "PASSWD USER"
SMB4KUSERS      <your_hostname> = NOPASSWD: /usr/bin/smb4k_kill
SMB4KUSERS      <your_hostname> = NOPASSWD: /usr/bin/smb4k_umount
SMB4KUSERS      <your_hostname> = NOPASSWD: /usr/bin/smb4k_mount
# End of Smb4K user entries.

with <your_username> being your username and <your_hostname> the one of your computer?
Comment 2 JR 2011-06-10 16:53:44 UTC
The sudoers entries curiously weren't there on my desktop machine. However, when I installed Smb4K on my laptop and configured the Super User section, it properly asked for authentication and wrote those lines.

Pardon the pastes;
    [...]
    User_Alias      SMB4KUSERS = zorael
    Defaults:SMB4KUSERS     env_keep += "PASSWD USER"
    SMB4KUSERS      lethe = NOPASSWD: /usr/bin/smb4k_kill
    SMB4KUSERS      lethe = NOPASSWD: /usr/bin/smb4k_umount
    SMB4KUSERS      lethe = NOPASSWD: /usr/bin/smb4k_mount

However, the entries don't seem to work?
    <new bash session>
    zorael@lethe:~$ sudo -k  # to be safe
    zorael@lethe:~$ sudo /usr/bin/smb4k_kill  # to try it out
    [sudo] password for zorael:

Unlike the defaults, my user group is not the same as the hostname, if that makes any difference.
Comment 3 Alexander Reinholdt 2011-06-14 16:30:57 UTC
The entries in your sudoers file look alright. And I think having a group name that differs from the user name has no influence of the behavior of sudo...

At the moment I really do not know what might cause this problem. Have you applied some additional modifications to the sudoers file that might lead to this issue?
Comment 4 JR 2011-11-23 21:09:53 UTC
(In reply to comment #3)
> At the moment I really do not know what might cause this problem. Have you
> applied some additional modifications to the sudoers file that might lead to
> this issue?

Apologies for the late reply. No, my sudoers file was completely unmodified.

Curiously it works if I don't use the SMB4KUSERS alias.

># Entries for Smb4K users.
># Generated by Smb4K. Please do not modify!
>User_Alias  SMB4KUSERS = zorael
>Defaults:SMB4KUSERS env_keep += "PASSWD USER"
>zorael  ALL = NOPASSWD: /usr/bin/smb4k_kill
>zorael  ALL = NOPASSWD: /usr/bin/smb4k_umount
>zorael  ALL = NOPASSWD: /usr/bin/smb4k_mount
># End of Smb4K user entries.
Comment 5 Jekyll Wu 2012-10-18 08:17:25 UTC
Sorry, smb4k is not tracked here. Try http://sourceforge.net/p/smb4k/tickets/