Bekijk de volledige versie : Upgrade samba to Version 3

16-10-2006, 11:35
I have a Wl-500GP oleg pre7 and followd the howto-s but they dont work with SAMBA as they says . ( i have samba running but i get just secound partitionhdd in my share )
what i tried to upgrade to samba 3 by using ipkg but it dosnt run , samba 2 is still running , i seted it off from web interface and now i have no samaba ! re enabling it means v2 again.
any way to run v3
if i have to use v2 , do you know a good howto ! there is no one for v2.2.x on samba.org

17-10-2006, 10:14
i have made the 2 v working and maybe will uppgrade later to 3 but , any help i GOOD

15-03-2007, 02:01
I upgraded today to samba 3, but I got a segmentation fault when starting both smbd and nmbd. So its back to v2 :-(

15-03-2007, 03:54
I found on some webboard (sorry I can't remember)
He say if you don't want to face "segmentation fault".
You will install samba3.0.23c-4 instead of samba3

ipkg install samba3-0.23c-4

But I have not try yet.

16-03-2007, 00:15
Thanx for your reply. I will give it a try sometime this weekend. I'll post a feedback if it helped.

20-04-2007, 15:19
for me Works 3.0.23b-1 fine, after install you have to link some files, to newer versions like liblber.so i reinstall today, i can make a little script for it

10-05-2007, 00:10
for me Works 3.0.23b-1 fine, after install you have to link some files, to newer versions like liblber.so i reinstall today, i can make a little script for it

Could you please provide any information on how to get Samba3 running with Oleg's firmware? I tried to install it from the new repository (http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable), but no luck. Please help.

10-05-2007, 09:39
samba3 is broken. I'did not managed to find time for it.

23-07-2007, 13:55
the newest version 3.0.25b-1 works fine. you must have smbpasswd -a admin ... or other user to work.

Here is my smb.conf

domain master = no
local master = no
preferred master = no
os level = 0
netbios name = ROUTER
hosts allow = 192.168.1.
read only = no
browsable = yes
security = user

path = /tmp/harddisk
writeable = yes
force user = admin

path = /tmp/harddisk2
force user = admin
writeable = yes

i hope it would be helpful

24-07-2007, 09:35
the newest version 3.0.25b-1 works fine. you must have smbpasswd -a admin ... or other user to work.

Here is my smb.conf

i hope it would be helpful

Thank you Kunariu, will try this later today.

10-02-2008, 13:00
How should I configure smb.conf to see correct (czech)(central Europe) chars in shared folders? Maybe it isn't problem of samba3.

Samba3 codepage FAT disk
smb.conf :
display charset = (utf-8,cp1250,iso8859-2,cp852,utf8)
dos charset = (cp852,852,utf8)
unix charset = (utf-8,cp1250,iso8859-2,cp852,utf8)
is it case sensitive?
nvram parametry usb_vfat_options=?????
(usb_vfat_options=codepage=852,iocharset=cp1250) ???????
list of /usr/codepages/
codepage.1251 codepage.850 unicode_map.1251 unicode_map.852
codepage.437 codepage.852 unicode_map.437 unicode_map.861
codepage.737 codepage.861 unicode_map.737 unicode_map.866
codepage.775 codepage.866 unicode_map.850
____________________ oleg firmware
is this important?
I don't use samba from oleg firmware. I install samba3 to /opt
in syslog you can see:
MSDOS FS: Using codepage 852
MSDOS FS: IO charset cp1250
How to mount it (i have tried cifs, smbfs, everything)
Kubuntu,Vista, WinXP
i really don't know.
i cannot use Ext3.

10-02-2008, 14:01
you may try to use a preview version of the firmware available here: http://oleg.wl500g.info/preview/
In these versions Oleg fixed utf8 support in built-in samba (and ftp) clients. (And I think vista support too).
It is expected that a single setting in the web-interface should be enough to switch code pages.
Russian page with its discussion: http://wl500g.info/showthread.php?t=12200

In addition, if you test it, your feedback possibly will be useful for Oleg to identify if it works with non-Russian charsets correctly.

10-02-2008, 18:35
I've tried the latest preview, but there is a lot of changes (not mounted to
/opt but /tmp/mnt) so I 'm back on latest stable release.
I prefer Samba3 installed to /opt by me.

30-01-2009, 19:07
I know this is my first post on this board and I hope I am not overstepping my bounds by making it a tutorial. I went through every tutorial that was on the web trying to find some concise instructions about using one of the latest revisions of Samba on my Asus WL-500W router. What I found were pieces of information in many forum posts and in various old tutorials. In every case following the instructions to the letter did not result in a seamless deployment of Samba. It took me parts of three days to finally piece together enough information to get Samba up and running on the Asus. This is the reason for this tutorial.

There is a working version of Samba 2 embedded within the firmware but this tutorial will not use that version, instead installing Samba 3.

Working WL-500 family router
Oleg Firmware
USB Storage device

You must have a working Asus WL-500W Router. In my case it is set up as a residential gateway but these instructions should work whether you are using it as a router or access point also.

Your router must be properly flashed with the latest stable version of Oleg's firmware. This tutorial will not demonstrate how to flash your router, there are others better suited for that. Oleg's firmware page is located here:


You must have a USB storage device attached to your router. I would recommend a hard disk drive to provide a large enough place to store everything you might want to either archive or move from computer to computer in your home network.

There are a few things that you must do in order to prepare for the Samba installation. I will mention them in passing. This tutorial will assume you are at a point where you can download and install packages onto your router.
You will be installing optional packages on your router so make sure you have your external USB storage device installed, partitioned, formatted and mounted correctly beforehand.

Make sure that you have Samba disabled in the web interface. The following screen shot will show you where that is.


Once off you can exit out of the web interface as you will no longer be using it and will instead be doing everything from telnet or SSH (if installed).
At this point telnet into your router and log in. You will be at the root directory. I have my USB drive installed with two partitions, the first is a primary partition used for storage mounted as /opt, the second is a small Linux swap partition.

The first thing we need to do is to download a new version of ipkg and supporting components. You can find it here:


At the telnet command line issue the following commands:

wget http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/uclibc-opt_0.9.28-13_mipsel.ipk
ipkg.sh install uclibc-opt_0.9.28-13_mipsel.ipk

The first thing we must upgrade is the uclibc package, as the options package will not install on the current version. Once installed download and install the options with the following telnet command:

wget http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk
ipkg.sh install ipkg-opt_0.99.163-10_mipsel.ipk

At the time of this writing uclibc-opt_0.9.28-13_mipsel.ipk and ipkg-opt_0.99.163-10_mipsel.ipk were the most current versions, please check the URL listed above to verify the correct files.

Once installed ipkg must be updated and all upgrades applied. Issue the following commands:

ipkg update
ipkg upgrade

You can list all packages that are installed along with their version numbers with the following optional command:

ipkg list_installed

On your attached USB drive create a folder for the latest version of Samba, download and install it now.

mkdir /opt/sambaNew
cd /opt/sambaNew
wget http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/samba_3.2.7-1_mipsel.ipk
ipkg install samba_3.2.7-1_mipsel.ipk

Now that everything is installed we need to create some configuration files create some shares and configure Samba to start at boot up after the drive is mounted. If you have not installed a text editor I would recommend you install nano. It is a mini version of VI and works very well in a telnet or SSH session. To install nano issue the following command: ipkg install nano

At this point we will assume nano has been installed. Now you will need to create a working configuration file for Samba. That file will be located in /opt/etc/samba. To create that file using nano issue the following command:

nano /opt/etc/samba/smb.conf

The following code is an example of a working smb.conf file please not that some things need to be changed to match your particular configuration.

workgroup = WORKGROUP
guest account = nobody
security = share
browseable = yes
guest ok = yes
guest only = no
log level = 1
max log size = 100
encrypt passwords = yes
dns proxy = no
netbios name = ASUS_SAMBA
server string = Asus WL-500W
bind interfaces only = yes
interfaces =
hosts allow =

read only = no
writeable = yes
browseable = yes
public = yes

read only = no
writeable = yes
browseable = yes
public = yes

A few things to note here, in the global section change WORKGROUP to the name of the actual workgroup you are using, you may also change the netbios name and server string. You must include the interfaces line as this version of Samba cannot automatically find the interface it must bind to. This took quite some time to figure out and inserting it will alleviate hours of searching for reasons why your samba deployment does not work. The second and third sections are there for example and illustrate the actual setup of shares. Please note the shares in this example are called share1 and pictures and that is exactly how they will appear in your network list. I would suggest that you give each one a meaningful name. Also note that each is a separate path, we will configure the paths shortly.
One more file needs to be created before we finish up with all the directory creation and configuration. Issue the following command, again using nano as our text editor:

nano /opt/etc/init.d/S08Samba

Here is an example of a typical S08Samba file:


# set samba_active=1 to activate samba

[ 1 = $samba_active ] || exit 0

if [ -n "`pidof smbd`" ] ; then
echo "Stopping smbd:"
killall smbd

if [ -n "`pidof nmbd`" ] ; then
echo "Stopping nmbd:"
killall nmbd

sleep 2
/opt/sbin/smbd -D -l /opt/var/log/smbd.log -s /opt/etc/samba/smb.conf
/opt/sbin/nmbd -D -o -l /tmp -s /opt/etc/samba/smb.conf

Now we move on to creating directories and making sure all the files have the appropriate attributes. At the telnet prompt issue the following commands:

mkdir /opt/share/samba1
mkdir /opt/share/samba2
chmod 777 /opt/share/samba1
chmod 777 /opt/share/samba2
chmod 755 /opt/etc/init.d/S08Samba

At this point all of our changes need to be stored and committed to the flash ram. If you do not do this next step you will need to redo much of what we have done here. In order to make these changes permanent issue the following commands, and reboot your router:

flashfs save
flashfs commit
flashfs enable

If everything works the way it should you should have working Samba shares. to verify that Samba is running telnet back into the router and issue the following command:

ps |grep "smb"

By upgrading to this or newer versions of Samba you also eliminate the need to run secpol.msc or registry edit anything on Windows Vista.

Additional Notes:
There seems to be another command that some people have found necessary to execute in order to get Samba up and running properly. I am not sure if I did this or not in my implementation as I had to try a lot of different things before it was working for me.

smbpasswd -a admin

Another user mentioned that using guest account = nobody in smb.conf might not work and should be changed to a user that specifically has access to the files.

There are other forum posts and tutorials online to do things like having specific user access configured for Samba shares and WAN access. I did not want or need these features so this tutorial restricts itself to setting up Samba the way I wanted to use it. Please note that I am not a Linux user or even knowledgeable about Linux in general. The information presented here is to simply outline the steps that I was able to collect from various sources on the web into a concise guide for others to use. If there are corrections or easier ways to do some of these things, please let everyone know your experience.

I have also included this tutorial as a .PDF file you can download, you may view and/or print out if you cannot stay attached to the internet while performing these operations.

19-08-2011, 16:33
a few things I'd like to point out:

Your router must be properly flashed with the latest stable version of Oleg's firmware.
http://oleg.wl500g.info/ contains old oleg firmware, the development of this particular firmware has stopped.
Development has continued on google code: http://code.google.com/p/wl500g/

as the main page says:

Currently, we have two branches: - mainstream, 2.4.37 kernel based - experimental, 2.6.22 kernel based, for RT-N16, RT-N12, RT-N10, WL-500gP, WL-500W devices
it's your choice.
you can download both download from that website, or a nightly build site such as my own: http://wpte.kicks-ass.net/downloads/Oleg%20Firmware/Nightlys/

Apart from newer software on the rtn branch, the main thing that needs to be reconfigured after flashing are the harddrive mounts. discs are numbered in kernel 2.4, but in kernel 2.6 they get a letter, like:

#device Mountpoint FStype Options Dump Pass#
/dev/discs/disca/part1 none swap sw 0 0
/dev/discs/disca/part2 /opt ext3 rw,noatime 1 1
/dev/discs/disca/part3 /mnt ext3 rw,noatime 1 1

Next point is that you tell the user how to set up a basic ipkg package but don't tell them how to mount things properly, nor how to set up the basic boot scripts.
Instead you could tell the user to follow the wengi guide on how to set up ipkg by reading chapter 1-6: http://wl500g.info/showthread.php?t=10307

1-3 http://wl500g.info/showpost.php?p=60930&postcount=1
4-5 http://wl500g.info/showpost.php?p=60931&postcount=2
6-7 http://wl500g.info/showpost.php?p=60932&postcount=3

next thing is a small point...
after you've set up ipkg you could just use

ipkg install samba35 #newer version than you use
just like any other linux package manager.

At this point all of our changes need to be stored and committed to the flash ram. If you do not do this next step you will need to redo much of what we have done here. In order to make these changes permanent issue the following commands, and reboot your router:
you haven't changed a single thing to the flashfs, and thus ONLY reboot is required... if you desperatly want to reboot...
or you could simply start samba:


apart from that, good how-to.
Also the configuration seems allright, I'd like to point out that

not all of those options give better performance, as can be read here on the official samba howto: http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/speed.html#id2690596

01-06-2013, 02:12
Very straightforward manual, thank you!
I configured my Wl-500gp according to it with the last versions of the packages, added admin password, used exactly the same smb.conf file (with my IP address but I cannot see shared disc neither from WinXP nor from Win7. I also tried Samba installation by simple command

ipkg install samba36
but nothing works. I can see smbd and nmbd running:

151 admin 1976 S /opt/sbin/nmbd -D
153 admin 3600 S /opt/sbin/smbd -D
165 admin 3480 S /opt/sbin/smbd -D
but that is all. Would you have a hint for me what I can check?