All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gene Czarcinski <gene@czarc.net>
To: Roman Mamedov <rm@romanrm.ru>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH] Btrfs-progs: Exit if not running as root
Date: Fri, 25 Jan 2013 07:29:44 -0500	[thread overview]
Message-ID: <51027AB8.6030901@czarc.net> (raw)
In-Reply-To: <20130125175530.75402fb5@natsu>

On 01/25/2013 06:55 AM, Roman Mamedov wrote:
> On Fri, 25 Jan 2013 06:32:30 -0500
> Gene Czarcinski <gene@czarc.net> wrote:
>
>> This patch hits a lot of files but adds little code.  It
>> could be considered a bugfix,  Currently, when one of the
>> btrfs user-space programs is executed by a regular user,
>> the result if oftem a number of strange error messages
>> which do not indicate the real problem.  This patch changes
>> that situation.
>>
>> A test is performed as to whether the program is running
>> as root.  If it is not, issue an error message and exit.
>> Signed-off-by: Gene Czarcinski <gene@czarc.net>
> $ ls -la /dev/sda
> brw-rw---T 1 root disk 8, 0 Jan 15 12:11 /dev/sda
>
> The user does not have to be root, they can be a member of the group "disk" to
> manage this device.
>
> Also some or all of the tools accept not just a block device, but also a
> regular file as their parameter.
>
> Wouldn't it be better to check whether or not the running user has
> *write access* to the device or file to be operated on, before failing?
I knew there would be corner cases where root was not required for 
execution.  After all, I do not need to be root to execute "btrfs 
--version".  Now, is it worth the effort to determine the corner cases 
and do you have a proposed solution as to determining what privileges 
are needed when?  I can understand when it could be a regular file but 
is it all that common for users to be part of group disk?

If there is a case where it is difficult to figure out if root is 
needed, then my solution would be to turn it into a warning message and 
remove the exit for that specific program.

However, I believe the real answer is to use sudo.

Gene
>
>> ---
>>   btrfs-corrupt-block.c | 5 +++++
>>   btrfs-image.c         | 5 +++++
>>   btrfs-map-logical.c   | 5 +++++
>>   btrfs-select-super.c  | 5 +++++
>>   btrfs-show-super.c    | 5 +++++
>>   btrfs-show.c          | 5 +++++
>>   btrfs-vol.c           | 5 +++++
>>   btrfs-zero-log.c      | 5 +++++
>>   btrfs.c               | 6 ++++++
>>   btrfsck.c             | 5 +++++
>>   btrfsctl.c            | 5 +++++
>>   btrfstune.c           | 5 +++++
>>   calc-size.c           | 5 +++++
>>   convert.c             | 6 ++++++
>>   debug-tree.c          | 5 +++++
>>   dir-test.c            | 5 +++++
>>   find-root.c           | 5 +++++
>>   ioctl-test.c          | 6 ++++++
>>   mkfs.c                | 5 +++++
>>   quick-test.c          | 6 ++++++
>>   restore.c             | 5 +++++
>>   21 files changed, 109 insertions(+)


  reply	other threads:[~2013-01-25 12:29 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-25 11:32 [PATCH] Btrfs-progs: Exit if not running as root Gene Czarcinski
2013-01-25 11:41 ` Stefan Behrens
2013-01-25 12:03   ` Gene Czarcinski
2013-01-25 12:17     ` Stefan Behrens
2013-01-25 13:22       ` Gene Czarcinski
2013-01-25 11:55 ` Roman Mamedov
2013-01-25 12:29   ` Gene Czarcinski [this message]
2013-01-25 12:43     ` Hugo Mills
2013-01-25 15:19       ` Brendan Hide
2013-01-25 13:00     ` Roman Mamedov
2013-01-25 13:52   ` Russell Coker
2013-01-25 15:04 ` Gene Czarcinski
2013-01-25 15:10   ` Gene Czarcinski
2013-01-25 15:30   ` cwillu
2013-01-25 16:06   ` Eric Sandeen
2013-01-26  2:18   ` Russell Coker
2013-01-26  7:46     ` Goffredo Baroncelli
2013-01-25 15:07 ` Eric Sandeen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51027AB8.6030901@czarc.net \
    --to=gene@czarc.net \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=rm@romanrm.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.