diff --git a/lib/private/Share20/Manager.php b/lib/private/Share20/Manager.php
index d45a376b71972fec90cd3aae5272df7cef1a722a..1300245f32497abdb7ecb7f84dc307d9404f2d60 100644
--- a/lib/private/Share20/Manager.php
+++ b/lib/private/Share20/Manager.php
@@ -564,9 +564,10 @@ class Manager implements IManager {
 				//Shares are not identical
 			}
 
-			// Identical share already existst
+			// Identical share already exists
 			if ($existingShare->getSharedWith() === $share->getSharedWith() && $existingShare->getShareType() === $share->getShareType()) {
-				throw new AlreadySharedException('Path is already shared with this user', $existingShare);
+				$message = $this->l->t('Sharing %s failed, because this item is already shared with user %s', [$share->getNode()->getName(), $share->getSharedWithDisplayName()]);
+				throw new AlreadySharedException($message, $existingShare);
 			}
 
 			// The share is already shared with this user via a group share
@@ -576,7 +577,8 @@ class Manager implements IManager {
 					$user = $this->userManager->get($share->getSharedWith());
 
 					if ($group->inGroup($user) && $existingShare->getShareOwner() !== $share->getShareOwner()) {
-						throw new AlreadySharedException('Path is already shared with this user', $existingShare);
+						$message = $this->l->t('Sharing %s failed, because this item is already shared with user %s', [$share->getNode()->getName(), $share->getSharedWithDisplayName()]);
+						throw new AlreadySharedException($message, $existingShare);
 					}
 				}
 			}
diff --git a/tests/lib/Share20/ManagerTest.php b/tests/lib/Share20/ManagerTest.php
index 372f49ddf87eef1a0be80d18859e7e4101c1b910..e6042ca8445ca70ebee0d6ab1a21cb2c44076574 100644
--- a/tests/lib/Share20/ManagerTest.php
+++ b/tests/lib/Share20/ManagerTest.php
@@ -50,6 +50,7 @@ use OCP\Mail\IMailer;
 use OCP\Security\Events\ValidatePasswordPolicyEvent;
 use OCP\Security\IHasher;
 use OCP\Security\ISecureRandom;
+use OCP\Share\Exceptions\AlreadySharedException;
 use OCP\Share\Exceptions\ShareNotFound;
 use OCP\Share\IProviderFactory;
 use OCP\Share\IShare;
@@ -1415,10 +1416,11 @@ class ManagerTest extends \Test\TestCase {
 
 
 	public function testUserCreateChecksIdenticalShareExists() {
-		$this->expectException(\Exception::class);
-		$this->expectExceptionMessage('Path is already shared with this user');
+		$this->expectException(AlreadySharedException::class);
+		$this->expectExceptionMessage('Sharing name.txt failed, because this item is already shared with user user');
 
 		$share = $this->manager->newShare();
+		$share->setSharedWithDisplayName('user');
 		$share2 = $this->manager->newShare();
 
 		$sharedWith = $this->createMock(IUser::class);
@@ -1435,13 +1437,16 @@ class ManagerTest extends \Test\TestCase {
 			->with($path)
 			->willReturn([$share2]);
 
+		$path->method('getName')
+			->willReturn('name.txt');
+
 		self::invokePrivate($this->manager, 'userCreateChecks', [$share]);
 	}
 
 
 	public function testUserCreateChecksIdenticalPathSharedViaGroup() {
-		$this->expectException(\Exception::class);
-		$this->expectExceptionMessage('Path is already shared with this user');
+		$this->expectException(AlreadySharedException::class);
+		$this->expectExceptionMessage('Sharing name2.txt failed, because this item is already shared with user userName');
 
 		$share = $this->manager->newShare();
 
@@ -1455,6 +1460,7 @@ class ManagerTest extends \Test\TestCase {
 		$share->setSharedWith('sharedWith')
 			->setNode($path)
 			->setShareOwner('shareOwner')
+			->setSharedWithDisplayName('userName')
 			->setProviderId('foo')
 			->setId('bar');
 
@@ -1477,6 +1483,9 @@ class ManagerTest extends \Test\TestCase {
 			->with($path)
 			->willReturn([$share2]);
 
+		$path->method('getName')
+			->willReturn('name2.txt');
+
 		self::invokePrivate($this->manager, 'userCreateChecks', [$share]);
 	}