LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - General (https://www.linuxquestions.org/questions/linux-general-1/)
-   -   Samba File Server - Hardware & Software Recommendations Needed (https://www.linuxquestions.org/questions/linux-general-1/samba-file-server-hardware-and-software-recommendations-needed-4175444505/)

Prabagaran 01-07-2013 08:46 AM

Samba File Server - Hardware & Software Recommendations Needed
 
Hi Everyone,

I have been asked to build a new Samba File Server with LDAP - Need configuration help.

I need suggestions on suitable hardware to build this.

Also, need suggestions to use which software RAIDs on it.

Thanks,


legolasthehansy 01-07-2013 09:52 AM

Depends on what workload the server is going to have.

You could start with 1 CPU, 4 GB RAM, a partition primarily for SAMBA with a minimal installation.
As for a your choice for RAID, I suggest RAID 6 (where data can be recovered even if 2 drives fail)
Be warned RAID is not ticket to shun backups!

Again it all depends on the requirements - If the data to be served from the share is small (100 GB and 10-20 users) then you should start small (2 GB RAM/RAID 5 and backups) and then grow big..

suicidaleggroll 01-07-2013 10:25 AM

We need to know the intended usage first. How much throughput will there be? How much storage/how big does the RAID need to be?

Quote:

Originally Posted by legolasthehansy (Post 4864671)
As for a your choice for RAID, I suggest RAID 6 (where data can be recovered even if 2 drives fail)

6? We don't even know how many drives there are going to be or how big this RAID is. Not to mention he said it's going to a software RAID, which makes 6 a bad choice due to the incredible processor overhead required. There are other RAID levels with double-drive redundancy without the overhead or complexity of RAID 6, or even 5 for that matter.

Don't get me wrong, I love RAID 6 for big hardware-driven arrays, but throwing it out there without even knowing how big this array will be or how many drives it will consist of is very premature. RAID 1 or 10 might be a much better match for his requirements.

legolasthehansy 01-08-2013 08:44 AM

Quote:

6? We don't even know how many drives there are going to be or how big this RAID is. Not to mention he said it's going to a software RAID, which makes 6 a bad choice due to the incredible processor overhead required.
I completely agree and stand corrected.

m1rr0rm3 01-21-2013 09:21 PM

Samba File Server - Hardware & Software Recommendations Needed
 
I am not to sure if you have ever built a file server before but try this on for size.

Hardware:
1. use a gigabyte motherboard with dual processors (if it is going to be heavily used)
2. use a minimum of 16gb of ram
3. use sata II hard drives capable of 500gb or greater. 1TB is preferred.
If you have the money use Non-Volitale Hard Drives.
4. use red sata II cables for "live" drives, use blue sata II cable for fail over
"rescue" drives.
5. use a rack mount server that has multiple drives (8 - 16) for ease of front side access (preferred Chenbro).
6. use low rise rack mount server case (4U) with ball bearing cooling fans that are quiet. check around
7. make sure to have a DVD-R slimline player on the front of the server
8. make sure that the server chasis comes with a USB front side port

Software:
1. Preferred: (RHEL v6.3, CentOS v6.x, Fedora vX, CloudLinux)

amenities for server:
1. fiber optic network card.
2. fiber optic cable to switch.

(if you can swing it)

Software configuration
1. /swap needs to be 20% of your actual available drive space so that the server does not choke on inbound traffic
2. /user alotment (if server is a certain size) alot space to users and when full ask them for removal of non-essential files.

- Chris

suicidaleggroll 01-22-2013 12:29 AM

Quote:

Originally Posted by m1rr0rm3 (Post 4875090)
I am not to sure if you have ever built a file server before but try this on for size.

Hardware:
1. use a gigabyte motherboard with dual processors (if it is going to be heavily used)
2. use a minimum of 16gb of ram
3. use sata II hard drives capable of 500gb or greater. 1TB is preferred.
If you have the money use Non-Volitale Hard Drives.
4. use red sata II cables for "live" drives, use blue sata II cable for fail over
"rescue" drives.
5. use a rack mount server that has multiple drives (8 - 16) for ease of front side access (preferred Chenbro).
6. use low rise rack mount server case (4U) with ball bearing cooling fans that are quiet. check around
7. make sure to have a DVD-R slimline player on the front of the server
8. make sure that the server chasis comes with a USB front side port

Software:
1. Preferred: (RHEL v6.3, CentOS v6.x, Fedora vX, CloudLinux)

amenities for server:
1. fiber optic network card.
2. fiber optic cable to switch.

(if you can swing it)

Software configuration
1. /swap needs to be 20% of your actual available drive space so that the server does not choke on inbound traffic
2. /user alotment (if server is a certain size) alot space to users and when full ask them for removal of non-essential files.

- Chris

What? Where are you getting this? I'm not going to go into each one, but almost all of your points raise some serious red flags. Especially considering we still don't even know the OP's usage requirements, size requirements, or budget.

m1rr0rm3 01-22-2013 12:55 AM

@suicidaleggroll

All the above information is common knowledge if you read the manuals and specifications
For a 64-bit system running virtuozzo. If you use samba your requirements are less.

The need for red flags is not necessary it just shows you might need
More technical time.

suicidaleggroll 01-22-2013 10:47 AM

Actually, to be honest, it sounds like you're reading off of a checklist that was written 5 years ago by somebody who didn't really know what they were doing or why for a server that is nothing like what the OP is asking about.

Besides, I'm pretty sure the OP has abandoned this thread anyway.

Prabagaran 04-07-2013 10:27 AM

Hardware setup completed - Need some samba configuration help
 
Hi Everyone,

Thanks for the info shared to my query. And sorry, I couldn't reply to anyone all these days.

Meanwhile I was suggested by a known network & system vendor to get an IBM System x3100 M4 Tower base server for my requirement and here are the configurations.

Model : Intel(R) Xeon(R) CPU E3-1220 V2 @ 3.10GHz

RAM : 16 GB DDR3

HDD : 2TB * 4 - Out of which, 1 no. is used only for Ubuntu and Samba Configurations, rest 3(2TB) HDDs are being used to store share data, using software RAID 5.

I have installed samba in a very simple way, as everyone does.

#sudo apt-get install samba samba-common
#sudo apt-get install python-glade2 <== Found through google that this is necessary, i am not sure for what :(
#sudo apt-get install system-config-samba

Added linux users and as well as Samba users, as mentioned here:

#useradd username1
#passwd username1

#smbpasswd -a username1
Samba user password has been set similar to linux user.

I had followed this step for about ~50 users and added their shares with right permissions to their respective shares.

Eg. of username1's folder permission.

drwx------ username1 username1 username1sharefolder/

None of the users are able to access their respective shares on this server from their Windows machines(XP, Win7, Win8), but everyone is able to view the shares. When they click on their respective share, they get the following error.

\\samba-server\username1sharefolder is not accessible. You might not have permissions to use this network resource. Contact the administrator of this server to find out if you have access permissions. Access is denied.

Here is my smb.conf, how it looks now. I didn't geeked too much, left almost default.
#################################################################################################### ##
[global]

## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
workgroup = Workgroup

# server string is the equivalent of the NT Description field
server string = %h server (Samba, Ubuntu)

# Windows Internet Name Serving Support Section:
# WINS Support - Tells the NMBD component of Samba to enable its WINS Server
# wins support = no

# WINS Server - Tells the NMBD components of Samba to be a WINS Client
# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
; wins server = w.x.y.z

# This will prevent nmbd to search for NetBIOS names through DNS.
dns proxy = no

# What naming service and in what order should we use to resolve host names
# to IP addresses
; name resolve order = lmhosts host wins bcast

#### Networking ####

# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
; interfaces = 127.0.0.0/8 eth0

# Only bind to the named interfaces and/or networks; you must use the
# 'interfaces' option above to use this.
# It is recommended that you enable this feature if your Samba machine is
# not protected by a firewall or is a firewall itself. However, this
# option cannot handle dynamic or non-broadcast interfaces correctly.
; bind interfaces only = yes



#### Debugging/Accounting ####

# This tells Samba to use a separate log file for each machine
# that connects
log file = /var/log/samba/log.%m

# Cap the size of the individual log files (in KiB).
max log size = 1000

# If you want Samba to only log through syslog then set the following
# parameter to 'yes'.
# syslog only = no

# We want Samba to log a minimum amount of information to syslog. Everything
# should go to /var/log/samba/log.{smbd,nmbd} instead. If you want to log
# through syslog you should set the following parameter to something higher.
syslog = 0

# Do something sensible when Samba crashes: mail the admin a backtrace
panic action = /usr/share/samba/panic-action %d

####### Authentication #######

# "security = user" is always a good idea. This will require a Unix account
# in this server for every user accessing the server. See
# /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
# in the samba-doc package for details.
security = user
; client signing = yes
; client use spnego = yes
# You may wish to use password encryption. See the section on
# 'encrypt passwords' in the smb.conf(5) manpage before enabling.
; encrypt passwords = yes

# If you are using encrypted passwords, Samba will need to know what
# password database type you are using.
; passdb backend = tdbsam
; smb passwd file = /usr/bin/smbpasswd
obey pam restrictions = yes

# This boolean parameter controls whether Samba attempts to sync the Unix
# password with the SMB password when the encrypted SMB password in the
# passdb is changed.
unix password sync = yes

# For Unix password sync to work on a Debian GNU/Linux system, the following
# parameters must be set (thanks to Ian Kahan <<kahan@informatik.tu-muenchen.de> for
# sending the correct chat script for the passwd program in Debian Sarge).
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .

# This boolean controls whether PAM will be used for password changes
# when requested by an SMB client instead of the program listed in
# 'passwd program'. The default is 'no'.
pam password change = yes

# This option controls how unsuccessful authentication attempts are mapped
# to anonymous connections
map to guest = bad user
########## Domains ###########

# Is this machine able to authenticate users. Both PDC and BDC
# must have this setting enabled. If you are the BDC you must
# change the 'domain master' setting to no
#
; domain logons = yes
#
# The following setting only takes effect if 'domain logons' is set
# It specifies the location of the user's profile directory
# from the client point of view)
# The following required a [profiles] share to be setup on the
# samba server (see below)
; logon path = \\%N\profiles\%U
# Another common choice is storing the profile in the user's home directory
# (this is Samba's default)
# logon path = \\%N\%U\profile

# The following setting only takes effect if 'domain logons' is set
# It specifies the location of a user's home directory (from the client
# point of view)
; logon drive = H:
# logon home = \\%N\%U

# The following setting only takes effect if 'domain logons' is set
# It specifies the script to run during logon. The script must be stored
# in the [netlogon] share
# NOTE: Must be store in 'DOS' file format convention
; logon script = logon.cmd

# This allows Unix users to be created on the domain controller via the SAMR
# RPC pipe. The example command creates a user account with a disabled Unix
# password; please adapt to your needs
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u

# This allows machine accounts to be created on the domain controller via the
# SAMR RPC pipe.
# The following assumes a "machines" group exists on the system
; add machine script = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u

# This allows Unix groups to be created on the domain controller via the SAMR
# RPC pipe.
; add group script = /usr/sbin/addgroup --force-badname %g

############ Misc ############

# Using the following line enables you to customise your configuration
# on a per machine basis. The %m gets replaced with the netbios name
# of the machine that is connecting
; include = /home/samba/etc/smb.conf.%m

# Most people will find that this option gives better performance.
# See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
# for details
# You may want to add the following on a Linux system:
# SO_RCVBUF=8192 SO_SNDBUF=8192
# socket options = TCP_NODELAY

# The following parameter is useful only if you have the linpopup package
# installed. The samba maintainer and the linpopup maintainer are
# working to ease installation and configuration of linpopup and samba.
; message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &

# Domain Master specifies Samba to be the Domain Master Browser. If this
# machine will be configured as a BDC (a secondary logon server), you
# must set this to 'no'; otherwise, the default behavior is recommended.
# domain master = auto

# Some defaults for winbind (make sure you're not using the ranges
# for something else.)
; idmap uid = 10000-20000
; idmap gid = 10000-20000
; template shell = /bin/bash

# The following was the default behaviour in sarge,
# but samba upstream reverted the default because it might induce
# performance issues in large organizations.
# See Debian bug #368251 for some of the consequences of *not*
# having this setting and smb.conf(5) for details.
; winbind enum groups = yes
; winbind enum users = yes

# Setup usershare options to enable non-root users to share folders
# with the net usershare command.

# Maximum number of usershare. 0 (default) means that usershare is disabled.
; usershare max shares = 100

# Allow users who've been granted usershare privileges to create
# public shares, not just authenticated ones
usershare allow guests = yes
; guest ok = no
; guest account = nobody
username map = /etc/samba/smbusers

[username1sharefolder]
path = /xyz/username1sharefolder
writeable = yes
; browseable = yes
valid users = username1

Any help would be appreciated.

If you find my information is half-way or incomplete, please query me to give more info from my end.

Regards,
PL.

Prabagaran 04-08-2013 09:26 AM

Hi,

Could some one help me here. Really I would be in trouble, if I couldn't resolve this issue.

Badly need someone's guidelines here.

Thanks in advance.


All times are GMT -5. The time now is 06:43 AM.