Bug 651878 - cifs: mfsymlinks support
cifs: mfsymlinks support
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel (Show other bugs)
6.0
Unspecified Unspecified
low Severity medium
: rc
: ---
Assigned To: Jeff Layton
Jian Li
:
Depends On:
Blocks: 677190 1053389
  Show dependency treegraph
 
Reported: 2010-11-10 09:40 EST by Jeff Layton
Modified: 2014-05-14 09:46 EDT (History)
10 users (show)

See Also:
Fixed In Version: kernel-2.6.32-112.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 670819 677190 1053389 (view as bug list)
Environment:
Last Closed: 2011-05-23 16:28:51 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Jeff Layton 2010-11-10 09:40:45 EST
Support for Minshall-French symlinks was added upstream. Backport it for RHEL6:

http://www.spinics.net/lists/linux-cifs/msg00485.html
Comment 1 RHEL Product and Program Management 2010-11-18 13:19:40 EST
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux maintenance release. Product Management has 
requested further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed 
products. This request is not yet committed for inclusion in an Update release.
Comment 3 Jeff Layton 2010-12-01 13:18:21 EST
To sanity test, mount a cifs share with '-o mfsymlinks,nounix'. Try to create and read a symlink on the share. After you create it, look at it on the server and verify that the file is of the correct size (1067 bytes).

You can also mount without -o nounix. If you do, then the client will be able to see "normal" symlinks on the share as well as mfsymlinks. If the client creates a symlink in this case, it will be mfsymlink however (IOW, you'll be unable to create a "normal" symlink when using the mfsymlinks mount option).
Comment 4 Aristeu Rozanski 2011-02-03 10:28:35 EST
Patch(es) available on kernel-2.6.32-112.el6
Comment 7 Jian Li 2011-04-12 01:28:03 EDT
The bug is verified in RHEL-6.1. Test steps and results is as follows:

1. environment:
[root@ibm-hs22-04 ~]# uname -a
Linux ibm-hs22-04.rhts.eng.brq.redhat.com 2.6.32-130.el6.x86_64 #1 SMP Tue Apr 5 19:58:31 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux
[root@ibm-hs22-04 test]# ls -la
total 12
drwxrwxrwx. 3 root root 4096 Apr 12 01:16 .
drwxrwxrwx. 4 root root 4096 Apr 12 00:02 ..
lrwxrwxrwx. 1 root root    4 Apr 12 01:16 linkfromserver -> test
drwxr-xr-x. 2 root root 4096 Apr 12 01:16 test
[root@ibm-hs22-04 test]# pwd
/tmp/test

2. share '/tmp/test' with name of 'public' in smb.conf

3. create a smb user named root

4. mount and test with nounix
========MOUNT
[root@ibm-hs22-04 test]# mount.cifs //`hostname`/public /mnt -o user=root,nounix,mfsymlinks
Password: 
========MAKE LINK
[root@ibm-hs22-04 test]# cd /mnt[root@ibm-hs22-04 mnt]# ln -s test linkfromclient
========CHECK CLIENT
[root@ibm-hs22-04 mnt]# ls -la
total 12
drwxr-xr-x.  1 root root    0 Apr 12 01:23 .
dr-xr-xr-x. 22 root root 4096 Apr 11 23:41 ..
lrwxrwxrwx.  1 root root    4 Apr 12 01:18 linkfromclient -> test
drwxr-xr-x.  0 root root    0 Apr 12 01:21 linkfromserver
drwxr-xr-x.  0 root root    0 Apr 12 01:21 test
=======CHECK SERVER
[root@ibm-hs22-04 mnt]# ls -l /tmp/test
total 8
-rwxr--r--. 1 root root 1067 Apr 12 01:18 linkfromclient
lrwxrwxrwx. 1 root root    4 Apr 12 01:16 linkfromserver -> test
drwxr-xr-x. 2 root root 4096 Apr 12 01:16 test

5. mount and test without nounix
========MOUNT
[root@ibm-hs22-04 ~]# mount.cifs //`hostname`/public /mnt -o user=root,mfsymlinks
Password: 
========MAKE LINK
[root@ibm-hs22-04 mnt]# ln -s test linkfromclientwithoutnonunix
========CHECK CLIENT
[root@ibm-hs22-04 mnt]# ls -la
total 12
drwxrwxrwx.  3 root root    0 Apr 12 01:23 .
dr-xr-xr-x. 22 root root 4096 Apr 11 23:41 ..
lrwxrwxrwx.  1 root root    4 Apr 12 01:18 linkfromclient -> test
lrwxrwxrwx.  1 root root    4 Apr 12 01:23 linkfromclientwithoutnonunix -> test
lrwxrwxrwx.  1 root root    4 Apr 12 01:16 linkfromserver -> test
drwxr-xr-x.  2 root root    0 Apr 12 01:21 test
[root@ibm-hs22-04 mnt]# touch test/test
[root@ibm-hs22-04 mnt]# ls linkfromserver/
test
========CHECK SERVER
[root@ibm-hs22-04 mnt]# ls -la /tmp/test
total 20
drwxrwxrwx. 3 root root 4096 Apr 12 01:23 .
drwxrwxrwx. 4 root root 4096 Apr 12 00:02 ..
-rwxr--r--. 1 root root 1067 Apr 12 01:18 linkfromclient
-rwxr--r--. 1 root root 1067 Apr 12 01:23 linkfromclientwithoutnonunix
lrwxrwxrwx. 1 root root    4 Apr 12 01:16 linkfromserver -> test
drwxr-xr-x. 2 root root 4096 Apr 12 01:21 test
Comment 8 errata-xmlrpc 2011-05-23 16:28:51 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2011-0542.html

Note You need to log in before you can comment on or make changes to this bug.