On Dec 23, 2011, at 5:35 PM, David Newman wrote:
> On 12/23/11 2:21 PM, Dan Langille wrote:
>> On Dec 20, 2011, at 1:19 PM, David Newman wrote:
>>
>>> bacula 5.2.2, FreeBSD 8.2-RELEASE
>>>
>>> After upgrading bacula-server from 5.0.3 to 5.2.2 using FreeBSD ports
>>> and updating the (PostgreSQL) bacula database, all jobs run fine except
>>> for the final one on the bacula server, the one that dumps the catalog
>>> before making a backup.
>>>
>>> The error looks like this:
>>>
>>> 20-Dec 00:08 nye-dir JobId 8183: shell command: run BeforeJob
>>> "/home/bacula/bin/make_catalog_backup bacula bacula"
>>> 20-Dec 00:08 nye-dir JobId 8183: BeforeJob: pg_dump: SQL command failed
>>> 20-Dec 00:08 nye-dir JobId 8183: BeforeJob: pg_dump: Error message from
>>> server: ERROR: permission denied for relation restore object
>>
>> This is the key line. The PostgresSQL user, with which the script is
>> connecting to
>> the database, does not have correct permissions on that table.
>>
>>> 20-Dec 00:08 nye-dir JobId 8183: BeforeJob: pg_dump: The command was:
>>> LOCK TABLE public.restoreobject IN ACCESS SHARE MODE
>>> 20-Dec 00:08 nye-dir JobId 8183: Error: Runscript: BeforeJob returned
>>> non-zero status=1. ERR=Child exited with code 1
>>>
>>> Running the same command manually as user pgsql also fails with the same
>>> permission denied error.
>>
>> If you connect to
>> the database using psql, you'll see something like this (I did the version
>> table)
>>
>> bacula=# \dp version
>> Access privileges
>> Schema | Name | Type | Access privileges | Column access privileges
>> --------+---------+-------+-----------------------+--------------------------
>> public | version | table | bacula=arwdDxt/bacula |
>> : dan=arwdDxt/bacula
>> (1 row)
>>
>> bacula=#
>>
>> You need to grant permissions on the table appropriately. These commands
>> may be in the upgrade script… or you'll have to do them yourself. Now that
>> the
>> issue is known, others may be able to help.
>
> Thanks, Dan. In this case, it appears users pgsql and bacula have
> identical privileges:
>
> [dnewman@nye ~]$ sudo -u pgsql /usr/local/bin/psql bacula
> Welcome to psql 8.2.22, the PostgreSQL interactive terminal.
>
> Type: \copyright for distribution terms
> \h for help with SQL commands
> \? for help with psql commands
> \g or terminate with semicolon to execute query
> \q to quit
>
> bacula=# \dp version
> Access privileges for database "bacula"
> Schema | Name | Type | Access privileges
> --------+---------+-------+------------------------------------------
> public | version | table | {pgsql=arwdxt/pgsql,bacula=arwdxt/pgsql}
> (1 row)
Now, compare the version table with the table causing the problem. Try
\dp restore
I am not using 5.2.2, so I did the version table as an example of what it
should look like.
>
> bacula-# \l
> List of databases
> Name | Owner | Encoding
> -----------+--------+-----------
> bacula | bacula | SQL_ASCII
> postgres | pgsql | UTF8
> template0 | pgsql | UTF8
> template1 | pgsql | UTF8
> (4 rows)
>
> User bacula's shell is defined as /sbin/nologin, so I think it's user
> pgsql that's doing the work (at least it was prior to the upgrade). User
> bacula cannot launch psql nor can I su to that user because of the
> nologin setting.
>
> What permissions do I need to change to get this dump working?
>
> Thanks again!
>
> dn
>
>>
>>>
>>> I have restarted all bacula and postgresql daemons since the upgrade. I
>>> have not changed any permissions in the /home/bacula directory.
>>>
>>> Thanks in advance for troubleshooting clues.
>>>
>>> dn
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Write once. Port to many.
>>> Get the SDK and tools to simplify cross-platform app development. Create
>>> new or port existing apps to sell to consumers worldwide. Explore the
>>> Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
>>> http://p.sf.net/sfu/intel-appdev
>>> _______________________________________________
>>> Bacula-users mailing list
>>> Bacula-users AT lists.sourceforge DOT net
>>> https://lists.sourceforge.net/lists/listinfo/bacula-users
>>
>
--
Dan Langille - http://langille.org
------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create
new or port existing apps to sell to consumers worldwide. Explore the
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users
|