Description ~~~~~~~~~~~ This is a build of Samba 3.0.25rc3 for the Buffalo TeraStation. (It will be updated to the 3.0.25 general release version when available) It provides a significant increase in functionality and performance over Samba 2 which is what is included as standard with TeraStations. This update should work on all models of PPC based TeraStation. It has been tested against the following firmware releases: TeraStation (original) 2.13 and 2.14 TeraStation Home Server 2.11 TeraStation Pro 1.01 and 1.04 (with AD support) 1.07 and 1.09 without AD support. It will probably also work on other earlier firmware versions for each model, and if anyone tries it I would like feedback on their success/failure. Features are: - AD support (although you do not have to use it) - Integration with Buffalo Web GUI (updates pages for AD support if required). I expect most people will use this method for configuring Samba as it is easy to use. - SWAT configuration tool. This is an alternative to the Buffalo GUI for those who want more control but you have to use one or the other - you cannot use both. However even if you are not using SWAT for configuring, you will still probably want to use it for accessing the extensive Samba documentation or for simply viewing the configuration files. - The Archive attribute on files are now mapped, and option to map System and Hidden attributes. The Archive bit in particular is often needed for Windows based backup utilities to work correctly. - A full set of additional Samba utilities. For example smbclient which make it easy to access shares on other machines; smbtar to back up Windows shares and many more. Some of the utilities provided (e.g. smbmount) require an updated kernel to work correctly, but they are provided here to keep everything as a single package. - Act as domain controller (someone was asking about this). I did only cursory testing of this but it seemed to work although all configuring had to be via SWAT rather than the Buffalo GUI. Change History ~~~~~~~~~~~~~~ 2007-04-05 - Release made without AD support 2007-04-23 - Initial release with AD support 2007-05-06 - Inclusion of README file to give further information. - Fixes for Buffalo GUI when using Domain and AD support. - Samba package updated to 3.0.25rc3 - Samba package rebuilt with new locations for files to help GUI integration. - Change so only the Archive file attribute emulated as standard, but user told how to activate others in this README file. 2007-05-14 - Added some missing perl scripts for Buffalo GUI when trying to view Share details. 2007-05-19 - Added files for /usr/lib/samba that were omitted from binaries package - Samba package updated to 3.0.25 - Samba package can be installed on LS1 and LS-HG (albeit with no GUI integration) Installation ~~~~~~~~~~~~ The Samba 3 update is provided as a ZIP file. This ZIP file should be unzipped to a folder on your Terastation. This samba release is then installed by establishing a telnet connection to your TeraStation; logging in with root access; changing to the directory where you put the unzipped files and issuing the command ./Update_Samba.sh This will install the relevant files for this release, and remove any binaries used by the earlier samba releases. Your current Samba settings will be retained. Removal ~~~~~~~ There is no automated removal process. If you want to remove this release of Samba 3 then you will have to reflash the firmware in your TeraStation which will reset everything back to its initial state. If you have applied any other updates since you last flashed your TeraStation that you want to keep, then these will need to be re-applied. Hidden, System and Archive file attributes ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This release is set up to support the Archive attribute setting on files, and to give you the option of also supporting the System and Hidden attributes. If you want the System and Hidden attributes to be supported as well, then edit the file /etc/samba/smb2smb3.pl and uncomment the following two lines # print SMB3_CONF " map hidden = yes\n"; # print SMB3_CONF " map system = yes\n"; by removing the # from the front of each line. Then remove the file /usr/lib/samba/smb.conf (to force it to be regenerated) and restart Samba or reboot the teraStation. Note that if you do this, then any existing files will be treated as if they already have the System and Hidden attributes set, so they do not show up in Windows Explorer unless you have enabled viewing of Hidden and/or System files. You can remove the System and Hidden attributes from existing files by going into a Windows command prompt and running the following commands: cd x: (where x is a mapped drive to a TeraStation share) attrib * -h -s /s New files will not suffer from this problem as they will be created with the correct attributes in the first place. If you want to revert to the original behaviour and not have these attributes supported, then you can edit the file /etc/samba/smb2smb3.pl and comment out the lines print SMB3_CONF " map hidden = yes\n"; print SMB3_CONF " map archive = yes\n"; print SMB3_CONF " map system = yes\n"; by adding a # to the front. As a final point, it is worth pointing out that the way Samba handles the emulation of these attributes is to use the linux 'x' bit for the owner, group and world permissions. If you are also accessing these files from linux rather than via a Samba share you may want these bits to have their normal linux meaning, and if so you will need to disable the Samba emulation of these file attributes. Configuration File ~~~~~~~~~~~~~~~~~~ The Buffalo GUI generates a Samba 2 compatible configuration file under the name /etc/samba/smb.conf. This is then converted to a Samba 3 compatible configuration file /usr/lib/samba/smb.conf by the /etc/samba/smb2smb3.pl script. The /usr/lib/samba location is where this build of Samba 3 was configured to look for its configuration file by default. The lmhosts file is expected to be at the same location as the configuration file, while the Buffalo GUI assumes /etc/samba/ as location. To handle this the Samba start-up script checks to see which is newer and synchronises that copy to the so taht if you edit either copy the chagnes will get replciated to the other copy. Other files such as the smbpasswd file and the secrets.tdb file are at the expected to be at /etc/samba location which is the sambr for both the Buffalo GUI and this Samba 3 build. Using SWAT ~~~~~~~~~~ The Samba SWAT configuration tool is installed as part of this release. You use it by a URL of the form: http://terastation_ip_or_name:901 You should be prompted for a username/password. You want to use a username with root privileges (e.g. myroot). if you do not get prompted, but instead get a SWAT screen with no icons for the buttons, etc then you may need to change your browser security settings to force this prompt. If you are using Internet Explorer, then this is done by - Selecting the Internet Options from the Tools menu - Clicking on the Security Tab - Select the Local Intranet zone and then click on the Custom level button - Go to the User Authentication part and select "Prompt for user name and Password" (it will probably be set for Automatic logon) Other browsers should have similar facilities. I have found that sometimes you also have to reboot the PC and/or TeraStation before you get the necessary prompt for username/password when you try to use SWAT. Note that in the default installation although you can use SWAT to view the current configuration and the Samba documentation, you cannot use it to actually change the current configuration unless you disable the Buffalo GUI integration facility. This is because the Buffalo GUI is not aware of SWAT and changes made via the Buffalo GUI would overwrite changes made via SWAT. If you do want to use SWAT as the Samba configuration tool, then edit the file /etc/init.d smbd and you will see a few lines clearly marked as being the ones you need to comment out to disable the Buffalo GUI integration and use SWAT for configuration. Rebuilding Samba ~~~~~~~~~~~~~~~~ For those who would like to rebuild Samba themselves the file configure_ts is provided. You can download the source to Samba from http://www.samba.org. The configure_ts file shows what options were used to the Samba configure script to produce this Samba build tailored to the TeraStation. I would be interested if anyone has suggestions for changing any of the options and the rationale behind the suggestion. Note that if you want to be able to rebuild Samba you will need the following additional packages installed: - Development Tools - Busboxy update - Libraries update - Libraries update for Developers - GNU Grep