Re: [Samba] deleting symlinks only

2003-02-04 Thread Kurt Weiss
sorry antonio - i did not know, that u use unix clients...

i've tested it on my linux box...
following interresting situation:

1) i've created a directory /test, there i putted in a file data.1
2) i've created a symbolic link test in a directory /net/win/data,
which results in a samba share netdata.

3) i mounted //localhost/netdata to /ttt

4) now i tested:
- if my actual directory was /net/win/data, linux checked, that test 
was a symbolic link. = i could delete test without problems.
(e.g. rm ./test = ok)
- if my actual directory was /ttt, linux thought that test is a 
directory!!! (as u descripted)
(e.g. rm ./test = could not delete, test is a directory)
- *but* if my actual directory is *not* /net/win/data (e.g. /home) and i 
look to /net/win/data/, linux *also* thinks, that test is a 
directory!!!
(e.g. rm /net/win/data/test = could not delete, test is a directory)

result: linux *only* recognizes the symbolic link, when you stand in the 
original directory!! (no matter if the access is with samba or not)
so i think, it's a problem of the filesystem/linux/unix, and not from samba.
i don't know if it's the same on your unix system, but i think so.

so again please: excuse my stupid answer cause i thought, that all 
users work over windows clients. mea culpa big guru ;-) and greetings 
from tyrol to germany...


Antonio Nikolic schrieb:
thank you, kurt
hello list
hello samba-team

well, maybe for most application this workaround would work. But from
the unix-point of view replacing a symbolic link with a windows-link is
like replacing a car with a donkey... Why should someone create a
symlink on a sambaserver which let's say is used by windowsclients only,
if one just could have created a windows-link even more easily. It's the
total difference between both. With a unix-link, you don't have to
worry whether your application is able to follow windows-links the way you
expect it, it simply works, and you don't need to maintain additional
shares, it's accessrights etc - ok, but this is not the point [this indeed
could be extended to a debate on principles ;-) ]
The point is, that sometimes you just effectively need directories and
no links, but there is no way to copy stuff - as it is in our case:
the samba-server is a former nfs-server and the application running on
windows formerly used to run on IRIX and now was ported to windows using
hummingbird (btw.: the app. now beats the expensive SGIs in speed
immensively), which means that in fact it still is a unix-application
which has no idea of how to treat windows-links.

So: Is there not a way, to teach samba (maybe in a future-release) to
first check on recieving a deletion request whether or not a directory
possibly is a link and delete the link only? One could introduce an
per-share-option which allows to switch on this feature. I doubt this
could be that hard to realize, is it?

greetings
Antonio Nikolic


Kurt, Tuesday, February 04, 2003, 1:40:09 PM:


==





Antonio Nikolic wrote:


hello list,

is it possible to delete a symlinked directory over a samba-share, without deleting
it's content but leaving the link-target as it is and deleting the
symlink only? If I interpret samba's behaviour correctly, on deletion samba does not
recognize the link as a link but as a directory, descends into it and deletes the





the problem is, that the client does not recognize, that this is only a 
link:
the files in there will be deleted *first*. then it deletes the link...
but u can try a workaround (e.g.):
u have a directory all and a share home. u want to point from all 
homes to all:



create a share all in samba. - then create a link in *windows* to 
\\server\all
this link u copy to all home shares. - the client can change to all, 
 but if he deletes the link - nothing will happen...
disadvantage: he only comes back with the back button in his browser, 
not with the up button.



i hope it helped
gk




content recursively, finally tries to delete the directory which is none
and stops. So all what is left in the end, is an empty directory and a
link pointing to it...

Setting the userpermissions is no solution for us as users have
to have full access to the content. We are using samba 2.2.7a on IRIX.

The symlinked directories are used as libraries, which are being linked
to from different project-directories. If a project is finished, the
link to the libraries must be deleted by the users.

any hint would be helpful,
thx

Antonio Nikolic



eMail: [EMAIL PROTECTED]
  [EMAIL PROTECTED]

Internet:  http://www.ibk-consult.com

IBK Ingenieurconsult für Maschinenbau GmbH
Kornstr. 17-21
30167 Hannover








==







--
To unsubscribe from this list go to the following URL and read the
instructions:  

Re: [Samba] deleting symlinks only

2003-02-04 Thread Herb Lewis
The problem is not in teaching samba anything. When you delete a
directory in windows explorer it doesn't just send a command to 
delete the directory. It recurses down the directory and first
sends commands to delete each individual file and then sends a 
command to delete the directory. Samba has no way of knowing when
it starts getting these delete commands that the user is trying
to delete the upper directory until all the files have already
been deleted.

Antonio Nikolic wrote:
 
 
 So: Is there not a way, to teach samba (maybe in a future-release) to
 first check on recieving a deletion request whether or not a directory
 possibly is a link and delete the link only? One could introduce an
 per-share-option which allows to switch on this feature. I doubt this
 could be that hard to realize, is it?
 

-- 
==
Herb Lewis   Silicon Graphics 
Networking Engineer  1600 Amphitheatre Pkwy MS-510
Strategic Software Organization  Mountain View, CA  94043-1351
[EMAIL PROTECTED] Tel: 650-933-2177
http://www.sgi.com   Fax: 650-932-2177  
PGP Key: 0x8408D65D
==
-- 
To unsubscribe from this list go to the following URL and read the
instructions:  http://lists.samba.org/mailman/listinfo/samba



Re: [Samba] deleting symlinks only

2003-02-04 Thread Herb Lewis
The problem is not in teaching samba anything. When you delete a
directory in windows explorer it doesn't just send a command to 
delete the directory. It recurses down the directory and first
sends commands to delete each individual file and then sends a 
command to delete the directory. Samba has no way of knowing when
it starts getting these delete commands that the user is trying
to delete the upper directory until all the files have already
been deleted.

Antonio Nikolic wrote:
 
 
 So: Is there not a way, to teach samba (maybe in a future-release) to
 first check on recieving a deletion request whether or not a directory
 possibly is a link and delete the link only? One could introduce an
 per-share-option which allows to switch on this feature. I doubt this
 could be that hard to realize, is it?
 

-- 
==
Herb Lewis   Silicon Graphics 
Networking Engineer  1600 Amphitheatre Pkwy MS-510
Strategic Software Organization  Mountain View, CA  94043-1351
[EMAIL PROTECTED] Tel: 650-933-2177
http://www.sgi.com   Fax: 650-932-2177  
PGP Key: 0x8408D65D
==