Bug 1250660
Summary: | Local storage can't be added | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Retired] oVirt | Reporter: | jniederm | ||||||||
Component: | vdsm | Assignee: | Greg Padgett <gpadgett> | ||||||||
Status: | CLOSED WORKSFORME | QA Contact: | Kevin Alon Goldblatt <kgoldbla> | ||||||||
Severity: | unspecified | Docs Contact: | |||||||||
Priority: | unspecified | ||||||||||
Version: | 3.6 | CC: | acanan, amureini, bazulay, bugs, ecohen, gklein, gpadgett, jniederm, lsurette, mgoldboi, rbalakri, ycui, yeylon | ||||||||
Target Milestone: | m1 | ||||||||||
Target Release: | 3.6.0 | ||||||||||
Hardware: | Unspecified | ||||||||||
OS: | Unspecified | ||||||||||
Whiteboard: | storage | ||||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2015-08-12 14:06:45 UTC | Type: | Bug | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | Storage | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Attachments: |
|
Description
jniederm
2015-08-05 17:27:32 UTC
Created attachment 1059576 [details]
engine log
Created attachment 1059577 [details]
vdsm.log
Greg, you recently handled some issues in this area. Can you take a look please? (In reply to jniederm from comment #0) > Steps to Reproduce: > 1. (In webadmin, clean engine installation:) Set DC Default to local. > 2. (Set architecture in cluster) > 3. Add host > 4. Make a directory for domain at the host > 4. Add local storage, path like '/home/user/localdomain' > > Actual results: > Error popup in webadmin (see screenshot): Error while executing action Add > Storage Connection: Permission settings on the specified path do not allow > access to the storage. > Verify permission settings on the specified storage path. Hi Jakub, Can you verify the permissions for your directory? The local storage should be owned by vdsm:kvm (36:36) and have permissions 0750 or higher, and each component of the path should also be navigable by that user/group. The safest test would be something like /localstorage, just to make sure it's not really a permissions issue. The 'path = <somepath>' error looks a little odd, but the 'path =' prefix was added by the exception code and so that shouldn't be an issue. Let me know what you find. Thanks. $ ll -d ~/localdomain/ drwxrwxrwx. 2 vdsm kvm 6 Aug 5 12:02 /home/jakub/localdomain/ ... so I guess permissions should be ok. IMHO: I'd be really suspicious about the code: 574 def checkTarget(self): 575 if not os.path.isdir(self._path): 576 raise se.StorageServerLocalNotDirError(self._path) It looks like the string thrown in exception is the same as the string that is tested for being a directory i.e. the string with 'path = ' prefix. (In reply to jniederm from comment #5) > $ ll -d ~/localdomain/ > drwxrwxrwx. 2 vdsm kvm 6 Aug 5 12:02 /home/jakub/localdomain/ > ... so I guess permissions should be ok. Can you check /home/jakub also, and ensure it's at least rx for the group? By default it would be 0700 owned by your user, which would prevent vdsm from accessing that path. > IMHO: I'd be really suspicious about the code: > > 574 def checkTarget(self): > 575 if not os.path.isdir(self._path): > 576 raise se.StorageServerLocalNotDirError(self._path) > > It looks like the string thrown in exception is the same as the string that > is tested for being a directory i.e. the string with 'path = ' prefix. Agreed, it looks suspicious--however the exception itself is doing the magic :) class StorageServerLocalNotDirError(StorageException): code = 469 message = "The specified local path is not a directory." def __init__(self, targetPath): self.value = "path = %s" % targetPath $ ll -d ~ drwx--x---+ 47 jakub jakub 4096 Aug 11 18:25 /home/jakub Missing 'x' permission on my home directory was really the cause of the problem. Thank you for explanation. Feel free to close. (In reply to jniederm from comment #7) > $ ll -d ~ > drwx--x---+ 47 jakub jakub 4096 Aug 11 18:25 /home/jakub > > Missing 'x' permission on my home directory was really the cause of the > problem. > Thank you for explanation. > Feel free to close. Happy it now works! |