Standalone backup agents for Linux, Mac, AIX & Solaris workloads on-premises or in the public cloud
Post Reply
FLS_Nick
Influencer
Posts: 18
Liked: 2 times
Joined: Mar 06, 2019 2:49 pm
Full Name: Nick Mahlitz
Contact:

Error: Failed to change permissions for path: /tmp/Veeam.Mount

Post by FLS_Nick »

Case #06045711

Strange issues this.

I have two servers...server A is Oracle Linux 7.9 with Oracle Database 12C software installed and hosts several databases. This server has VAL version 6 integrated with Veeam B&R version 12 installed.

Backups and restores are successful with the Veeam Explorer for Oracle.

Server B is a new server...still Oracle Linux 7.9 and also has Oracle Database software 12C installed but has no databases on it at all.

Running the restore wizard via the Veeam Explorer for Oracle to restore a database from Server A to Server B fails with this error:

Code: Select all

Failed to change permissions for path: /tmp/Veeam.Mount.FS.520a30db-24ba-494c-8c50-055dba6dc599/ol-root/u01/redo2/<DBNAME>
Noting KB article 2099 where you can add Registry Strings to Veeam B&R to not use the /tmp none of the "LinAgentFolder" or "LinAgentExecutableFolder"makes a difference and there is no NOEXEC attribute on the /tmp folder. Veeam is connecting to Server B via SSH using root.

Modifying the /etc/veeam/veeam.ini to use /opt/veeam instead of /tmp still does not change this error.

Support advise restore the databases via RMAN which requires access to do so which we do not want, we want the UI of Veeam with the Explorer for Oracle to do so.

With Advanced Logging turned on in the Veeam Explorer for Oracle you get more info like:

Code: Select all

[05.05.2023 15:57:15.867]   24 (12996)   Executing [13]: chown -R 'oracle':'oinstall' '/tmp/Veeam.Mount.FS.ece82a64-3f5e-496c-a16c-b9ac64f15d2d/ol-root/u01/redo2/drivetest'...
[05.05.2023 15:57:15.903]   25 (10376)    SSH output [13]: chown: cannot access ‘/tmp/Veeam.Mount.FS.ece82a64-3f5e-496c-a16c-b9ac64f15d2d/ol-root/u01/redo2/drivetest’: No such file or directory
[05.05.2023 15:57:15.903]   24 (12996)    Veeam> 
[05.05.2023 15:57:15.903]   24 (12996)   Executing [13]: echo $?...
[05.05.2023 15:57:15.936]   20 (12392)    SSH output [13]: 1
[05.05.2023 15:57:15.937]   24 (12996)    Veeam> 
[05.05.2023 15:57:15.938]   24 (12996) Warning: Failed to recursively update permissions for path: /tmp/Veeam.Mount.FS.ece82a64-3f5e-496c-a16c-b9ac64f15d2d/ol-root/u01/redo2/drivetest. Failed to change permissions for path: /tmp/Veeam.Mount.FS.ece82a64-3f5e-496c-a16c-b9ac64f15d2d/ol-root/u01/redo2/drivetest
[05.05.2023 15:57:15.938]   24 (12996) Closing shell: 13...
[05.05.2023 15:57:15.938]   24 (12996) Disconnecting from: RUATDB02.flsresource.uat...
[05.05.2023 15:57:15.938]   24 (12996)  disconnected.
[05.05.2023 15:57:15.938]   24 (12996) Disconnecting from: RUATDB02.flsresource.uat...
[05.05.2023 15:57:15.938]   24 (12996)  disconnected.
[05.05.2023 15:57:15.938]   24 (12996) SSH connection closed
[05.05.2023 15:57:15.940]   24 (12996) Error: Failed to change permissions for path: /tmp/Veeam.Mount.FS.ece82a64-3f5e-496c-a16c-b9ac64f15d2d/ol-root/u01/redo2/drivetest
[05.05.2023 15:57:15.940]   24 (12996) Type: System.Exception
[05.05.2023 15:57:15.940]   24 (12996) Stack:
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Linux.Client.ExitCodeVerify.That(ILinuxShell shell, IShellCommand command)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Linux.Client.LinuxShell.ExecuteInternal(IShellCommand command, ICommandVerify verify, ICommandOutputParser parser, CancellationToken cancellationToken, Boolean logging)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Linux.Client.LinuxShell.Execute(IShellCommand command, CancellationToken cancellationToken, Boolean logging)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Linux.Client.SecurityManager.UpdatePermissions(String from, String to, Int32 mask, Boolean recursively)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.LinuxMountDatabaseSecurityUpdater.SetPermissions(String path, Boolean recursively, SecurityManager securityManager, String permissionsSource, Boolean required)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.LinuxMountDatabaseSecurityUpdater.SetPermissions(SecurityManager securityManager, String permissionsSource, HashSet`1 setRecursively, HashSet`1 setNonRecursively, Boolean required)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.LinuxMountDatabaseSecurityUpdater.UpdatePermissions(IEnumerable`1 filePaths, SecurityManager securityManager, String permissionsSource, Boolean required)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.LinuxMountDatabaseSecurityUpdater.UpdatePermissions(IMountOracleDatabase mountedDatabase, ILinuxConnectionConfig connectionConfig)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.RestorerDependencyFactory.LinuxRestorerDependencyFactory.UpdatePermissions(IOracleBroker broker, IMountOracleDatabase mountedDatabase)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.MountedDatabaseGetter.GetMountedDatabase(IOracleMountInfo mount, IConnectionPool connectionPool, Guid databaseId, IOracleActionsObserver observer, Boolean updatePermissions)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.DatabaseMounter.MountRestorePoint(IMountStorage mountStorage, IDisposables disposables, Guid restorePointId, Guid databaseId, IConnectionPool connectionPool, LogsChainManager logsChainManager, IOracleActionsObserver observer, Boolean updatePermissions)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.DatabaseMountProcessor.MountDatabase(IConnectionPool connectionPool, IOracleActionsObserver observer, IDisposables disposables)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.DatabaseRestorer.RunRestore(IUndoStack undoStack, IDisposables disposables)
[05.05.2023 15:57:15.940]   24 (12996)    at Veeam.Oracle.Restore.DatabaseRestorerBase.RestoreDatabase(IDisposables disposables, IUndoStack undoStack)
[05.05.2023 15:57:15.940]   24 (12996) Command Output: chown: cannot access ‘/tmp/Veeam.Mount.FS.ece82a64-3f5e-496c-a16c-b9ac64f15d2d/ol-root/u01/redo2/drivetest’: No such file or directory
Veeam> 
[05.05.2023 15:57:15.944]   24 (12996)  Unmounting (ID: c0f66ce4-b280-4baa-8bd9-966ab98d818c)...
[05.05.2023 15:57:15.945]   24 (12996) Unmounting (ID: c0f66ce4-b280-4baa-8bd9-966ab98d818c)...
No luck so far with any attempt to resolve the issue. File restores for Server B using VAL is fine.

Logging this for future occurrences.
HannesK
Product Manager
Posts: 14322
Liked: 2890 times
Joined: Sep 01, 2014 11:46 am
Full Name: Hannes Kasparick
Location: Austria
Contact:

Re: Error: Failed to change permissions for path: /tmp/Veeam.Mount

Post by HannesK »

Hello,
after reading the case and this post, I'm a bit confused :-)

From the case, I understand that you are using VAL for Oracle backup and additionally you have the Oracle RMAN plugin installed. Is that correct? If yes, what's the idea behind that?

Restoring VAL backups with the Oracle RMAN via the plugin is impossible. The only option would be to do backup with RMAN and restore with RMAN. But that's not the question here as far as I see.

I would push support to fix the /tmp problem that the data is mounted to a different path if noexec or nodev mount option is the problem.

Best regards,
Hannes
Post Reply

Who is online

Users browsing this forum: Google [Bot] and 8 guests