fab-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Fab-user] First Fabric connected but got 'Permission denied' error


From: Jeff Forcier
Subject: Re: [Fab-user] First Fabric connected but got 'Permission denied' error
Date: Mon, 16 Aug 2010 13:37:39 -0400

On Mon, Aug 16, 2010 at 1:21 PM, Peter Bee <address@hidden> wrote:
>
> I also tried to use 'upload_template()', but got errors as following.

> If I used 'fabric.contrib.files.upload_template()', I got NameError on 
> 'fabric' as below.

You must be new to Python :D What you want to do is:

    from fabric.contrib.files import upload_template

    # then, elsewhere...

    upload_template(arguments here)

Regarding the permissions issue, what is your local computer's login
username? I.e. what you've logged in as. Does that username also exist
on the remote server? I'm guessing that Fab may not be properly using
your env.user value. You might want to try sticking it into the hosts
declaration, as that's a bit more solid.

So instead of:

    env.user = "foo"
    env.hosts = ['10.0.0.1']

You would do:

    env.hosts = ['address@hidden']

(See http://docs.fabfile.org/0.9.1/usage/execution.html#hosts [as well
as the rest of that page] for details.)

That should eliminate any possibility of the username being the problem.

-Jeff

>
> Thanks
>
> --- On Sun, 8/15/10, Jeff Forcier <address@hidden> wrote:
>
> From: Jeff Forcier <address@hidden>
> Subject: Re: [Fab-user] First Fabric connected but got 'Permission denied' 
> error
> To: "Peter Bee" <address@hidden>
> Cc: address@hidden
> Date: Sunday, August 15, 2010, 5:42 AM
>
> On Sun, Aug 15, 2010 at 12:48 AM, Peter Bee <address@hidden> wrote:
> >
> > I used my account credentials in the fabric file. Using the credentials, I 
> > can log on and do almost all the operations (wget, mkdir, create file, cp, 
> > and so on) without 'sudo'.
>
> Try printing out env.host_string immediately before your put() call,
> and see what its value is. If your env.user isn't the same as your
> local account name, then you should see "<the value you put in
> env.user>@<the IP address in your hosts list>".
>
> If you only see the IP address, then it may be that it's connecting
> with your local user's username, which (if it exists on the remote end
> as a legit user) might not have the right permissions. This is a long
> shot but something to check anyways.
>
> > What special rights does 'put' require? Also, how can I use 'sudo' on the 
> > remote system in the fabric file? For example, what's the code for 'put' 
> > with a 'sudo'?
>
> Right now put() can't do sudo things, but there's a contrib method
> that can be used as a workaround until we upgrade put():
> fabric.contrib.files.upload_template(). It has a "use_sudo" Boolean
> kwarg. Check the API docs for details.
>
> -Jeff
>
> >
> > --- On Sat, 8/14/10, Jeff Forcier <address@hidden> wrote:
> >
> > From: Jeff Forcier <address@hidden>
> > Subject: Re: [Fab-user] First Fabric connected but got 'Permission denied' 
> > error
> > To: "Peter Bee" <address@hidden>
> > Cc: address@hidden
> > Date: Saturday, August 14, 2010, 5:44 AM
> >
> > Hi Peter,
> >
> > On Sat, Aug 14, 2010 at 4:04 AM, Peter Bee <address@hidden> wrote:
> >
> > > Underlying exception message:
> > >     Permission denied
> >
> > This usually means exactly what it says: the user you're connecting as
> > does not have permission to write files to the destination directory
> > you specified. You'll want to double check that on the remote server
> > to see what's up.
> >
> > Best,
> > Jeff
> >
> >
> > --
> > Jeff Forcier
> > Unix sysadmin; Python/Ruby developer
> > http://bitprophet.org
> >
>
>
>
> --
> Jeff Forcier
> Unix sysadmin; Python/Ruby developer
> http://bitprophet.org
>



--
Jeff Forcier
Unix sysadmin; Python/Ruby developer
http://bitprophet.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]