Home | History | Annotate | Download | only in cifs-client
      1 #
      2 # CDDL HEADER START
      3 #
      4 # The contents of this file are subject to the terms of the
      5 # Common Development and Distribution License (the "License").
      6 # You may not use this file except in compliance with the License.
      7 #
      8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
      9 # or http://www.opensolaris.org/os/licensing.
     10 # See the License for the specific language governing permissions
     11 # and limitations under the License.
     12 #
     13 # When distributing Covered Code, include this CDDL HEADER in each
     14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     15 # If applicable, add the following below this CDDL HEADER, with the
     16 # fields enclosed by brackets "[]" replaced with your own identifying
     17 # information: Portions Copyright [yyyy] [name of copyright owner]
     18 #
     19 # CDDL HEADER END
     20 #
     21 
     22 #
     23 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
     24 # Use is subject to license terms.
     25 #
     26 # ident	"@(#)README	1.5	09/05/21 SMI"
     27 #
     28 
     29 1.   INTRODUCTION
     30 2.   HOW TO CONFIGURE CIFS CLIENT
     31 3.   HOW TO CONFIGURE SAMBA SERVER
     32 4.   HOW TO CONFIGURE SUN CIFS SERVER
     33 5.   HOW TO CONFIGURE WINDOWS 2003/2008 SERVER(MANUAL)
     34 6.   HOW TO CONFIGURE NAS SERVER(MANUAL)
     35 7.   HOW TO RUN THE TESTS 
     36 8.   HOW TO CLEAN TEST ENVIRONMENT
     37 9.   HOW TO GET TEST RESULT AND LOGS
     38 10.  CONTACT US
     39 
     40 1. INTRODUCTION
     41 
     42 This test suite is designed for CIFS client testing. It needs
     43 two machines (a test client and a CIFS server) and the test suite runs
     44 on the client machine. 
     45 
     46 Client machine must run snv_84 or later. Server machine can 
     47 be one of the following five systems:
     48 
     49    1. Samba Server (snv_84 or later)
     50    2. Sun CIFS Server (snv_84 or later)
     51    3. Windows 2003
     52    4. Windows 2008
     53    5. Sun NAS system
     54 
     55 User must run the test suite as root 
     56 
     57 2. HOW TO CONFIGURE CIFS CLIENT
     58 
     59 a. Select a client that runs on snv_84 or later
     60 
     61 b. Install the SUNWstc-dtet package
     62 
     63   - Create a text file named /tmp/INET_TET which only contain one word 'root'.
     64   - Check this file content by using cat or more command. E.g.
     65      # cat /tmp/INET_TET
     66      root
     67 
     68    - Add the SUNWstc-dtet package
     69      # pkgadd -d <package-location> SUNWstc-dtet
     70 
     71 c. Make sure the user has rsh access to server as root
     72 
     73    - Create .rhosts file. 
     74      # echo "+" > ~root/.rhosts
     75 
     76     CAUTION: THIS WILL MAKE THE SYSTEM TOTALLY INSECURE (any user
     77     on any system can remote-login to the CIFS server as root) 
     78 
     79    - Modify /etc/default/login file to allow remote root access
     80      # grep console /etc/default/login
     81      #CONSOLE=/dev/console
     82 
     83    - Enable rlogin service
     84      # svcadm enable svc:/network/login:rlogin
     85      # svcadm enable svc:/network/shell:default
     86 
     87 d. Compile and install the test suite
     88    There are two ways to set up the test environment. 
     89    1. Install the pre-built package, 
     90    2. Compile the source code and execute it.
     91 
     92   1. Install test suite package 
     93    In majority of the cases, the test suite can be installed from
     94    packages.
     95 
     96      # pkgadd -d <package-location> SUNWstc-fs-cifs-client
     97 E.g. # pkgadd -d  /ws/stcnv-gate/packages/`uname -p` SUNWstc-fs-cifs-client
     98 
     99    Always install a fresh copy of the test suite package.  If a version
    100    of the package is already installed on the system, first remove it:
    101 
    102      # pkgrm SUNWstc-fs-cifs-client
    103    
    104    ALTERNATIVELY, the test suite can be compiled from source.  To do
    105    this, perform the following steps.
    106 
    107    - obtain the test suite source as a non-root user
    108 
    109      Obtain the test suite source code from your source code repository 
    110      which will contain the following directory structure 
    111      <WS_ROOT>/usr/src/suites/fs/cifs-client
    112 
    113      where <WS_ROOT> is the root of the workspace under which the
    114      cifs-client test suite resides.
    115 
    116    - set up CTI-TET environment variables and PATH
    117 
    118      $ export CTI_ROOT=/opt/SUNWstc-dtet/contrib/ctitools
    119      $ export PATH=$CTI_ROOT/bin:$PATH
    120 
    121    - compile the test suite and create the test suite package
    122 
    123      $ cd <WS_ROOT>/usr/src/suites/fs/cifs-client
    124      $ /usr/ccs/bin/make package
    125 
    126      This will create the installable test suite package corresponding
    127      to the machine architecture of the build system.  The package will
    128      be placed in <WS_ROOT>/packages/<arch>
    129 
    130    - install the test suite package
    131 
    132      # pkgadd -d <WS_ROOT>/packages/<arch> SUNWstc-fs-cifs-client
    133 
    134   2. Compile test suite source code(need not install package)
    135    To do this, perform the following steps.
    136 
    137    - obtain the test suite source as a non-root user
    138    
    139    Obtain the test suite source code from your source code repository
    140    which will contain the following directory structure
    141    <WS_ROOT>/usr/src/suites/fs/cifs-client
    142    
    143    where <WS_ROOT> is the root of the workspace under which the
    144    cifs-client test suite resides.
    145 
    146    - set up CTI-TET environment variables and PATH
    147 
    148      $ export CTI_ROOT=/opt/SUNWstc-dtet/contrib/ctitools
    149      $ export PATH=<PATH-of-cc>:$CTI_ROOT/bin:$PATH
    150 
    151    - compile the test suite and create the test suite package
    152 
    153      $ cd <WS_ROOT>/usr/src/suites/fs/cifs-client
    154      $ /usr/ccs/bin/make 
    155   After compiling the source, any test case can be executed directly.
    156 
    157 e. Setup the client for testing
    158 
    159    - Setup local test directory.  You need to have a free disk slice
    160      larger than 11G. If you want to test UFS, run the following 
    161      command to create a UFS directory:
    162      # run_test -v test_disk="c1t0d0s7" cifs-client ufs_create
    163 
    164      If you want to test ZFS, run the following command to create 
    165      zfs test directory:
    166      # run_test -v test_disk="c1t0d0s7" cifs-client zfs_create
    167 
    168    - Create test users
    169      # run_test cifs-client user_create
    170 
    171    - Edit /opt/SUNWstc-dtet/systems.equiv file and add server
    172      hostname int this file if it is Samba Server.
    173 
    174 f. This testsuite also uses filebench, which is a framework of 
    175    file system workloads for measuring and comparing file system performance.
    176    You can find more information about filebench and configuration on
    177    opensolaris.org at 
    178    http://opensolaris.org/os/community/performance/filebench/
    179 
    180    This testsuite uses the default configuration of filebench.
    181 
    182 
    183 3. How TO CONFIGURE SAMBA SERVER
    184 
    185 Do all the steps in section 2, except adding client's hostname
    186 in /opt/SUNWstc-dtet/systems.equiv in last step. 
    187 
    188 Then run the following command:
    189      # run_test cifs-client smbs_setup
    190 
    191 4. HOW TO CONFIGURE THE SUN CIFS SERVER
    192 
    193 Do all the steps in section 2, except adding client's hostname
    194 in /opt/SUNWstc-dtet/systems.equiv in last step. 
    195 
    196 Then run the following command:
    197      # run_test cifs-client cifss_setup
    198 
    199 5. HOW TO CONFIGURE WINDOWS 2003/2008 SERVER(MANUAL)
    200 
    201 a. Create test users
    202    - Create user cifs_user and use "C_sun_123" as its password
    203    - Create user cifs_user1 and use "C_sun_123" as its password
    204    - Create user a_share and use "A_sun_123" as its password
    205    - Create user b_share and use "B_sun_123" as its password
    206 
    207 b. Create test directories
    208    - Create three windows share directories in a partition which has
    209     more than 4G free space. The directory names are public,
    210     a_share and b_share.
    211 
    212 c. Set permissions
    213    - Assign read/write permission for the "public" share directory
    214     to the following users: cifs_user, cifs_user1, a_share and 
    215     b_share.
    216    - Assign read/write permission for the "a_share" share directory
    217     to the following user: a_share.
    218    - Assign read/write permission for the "b_share" share directory
    219     to the following user: b_share. 
    220 
    221 d. Disable firewall
    222 
    223 6. HOW TO CONFIGURE NAS SERVER(MANUAL)
    224 
    225 On the browser, use "https://[NAS_Server]" url to login "Sun 
    226 StorageTek NAS OS Web Admin". Or on the Solaris terminal, telnet
    227 the NAS Server and use menu command to open the "StorageTek 
    228 [NAS_model_No] NAS Menu" to do the following operations:
    229 
    230 a. Create test users
    231    -  Create user cifs_user and use "C_sun_123" as its password
    232    -  Create user cifs_user1 and use "C_sun_123" as its password
    233    -  Create user a_share and use "A_sun_123" as its password
    234    -  Create user b_share and use "B_sun_123" as its password
    235 b. Create test directories
    236    -  Create three share directories: public, a_share and b_share.
    237 c. Configure the Domain
    238    -  Select "Domain Configuration" (CIFS/SMB Configuration on telnet)
    239       or "Configure Domains and Workgroups" (on Web Admin) 
    240 d. Reboot the system
    241    -  Reboot the NAS Server to make the configuration effective.
    242 
    243 7. HOW TO RUN THE TESTS
    244 
    245 a. Export the environment variables
    246    - same as step 2.c
    247 
    248 b. Run tests
    249 
    250    - To run the tests against a Samba server
    251      # run_test -R <Server's host name> cifs-client all
    252 
    253    - To run the tests against a CIFS server
    254      # run_test -v SRV=<Server's host name> cifs-client all
    255 
    256    - To run the tests against a  Windows server
    257      # run_test -v SRV=<Server's host name> cifs-client all
    258 
    259    - To run the tests against Sun NAS server (We just run smbfs
    260      tests for NAS Server)
    261      # run_test -v SRV=<Server's host name> cifs-client smbfs
    262      # run_test -v SRV=<Server's host name> cifs-client performance/filebench
    263 
    264    - To run a single test case 
    265      # run_test -v SRV=<Server's host name> cifs-client \
    266          <test_case_name>:<testcase_id>
    267      For example:
    268      # run_test -v SRV=<Server's host name> cifs-client smbfs/mvtest:1
    269 
    270 8. HOW TO CLEAN UP TEST ENVIRONMENT
    271 
    272 Here is the procedure to clean up test setup on client and server:
    273 
    274 a. Client
    275 
    276    - delete the users
    277      # run_test cifs-client user_delete
    278 
    279    - delete test directories
    280      To delete UFS test directories:
    281      # run_test cifs-client ufs_delete
    282      To delete ZFS test directories:
    283      # run_test cifs-client zfs_delete
    284 
    285 b. Samba server
    286 
    287    - clean up server setup
    288      # run_test cifs-client smbs_clean
    289 
    290    - delete test directories
    291      To delete UFS test directories:
    292      # run_test cifs-client ufs_delete
    293      To delete ZFS test directories:
    294      # run_test cifs-client zfs_delete
    295 
    296    - delete test users
    297      # run_test cifs-client user_delete
    298 
    299 c. CIFS server
    300 
    301    - clean up server setup
    302      # run_test cifs-client cifss_clean
    303    - delete the test directory
    304      To delete UFS test directories:
    305      # run_test cifs-client ufs_delete
    306      To delete ZFS test directories:
    307      # run_test cifs-client zfs_delete
    308 
    309    - delete the users
    310      # run_test cifs-client user_delete
    311 
    312 9. HOW TO GET THE TEST RESULT AND LOGS
    313 
    314 Test results are saved in a directory under /var/tmp, e.g. 
    315 /var/tmp/results.195672. 
    316 
    317 10.   CONTACT US
    318 
    319 If you have questions or comments on the test suite, please 
    320 send email to the STC_CONTACT alias mentioned in the STC.INFO
    321 file of this test suite. Details on filing bugs against the test
    322 suite are also included in the STC.INFO file.
    323