Compartir discos NTFS en un servidor de archivos Samba con Debian etch

El link de la página acerca de Cómo compartir discos NTFS en un servidor de archivos Samba con Debian etch

Introducción
La instalación de Samba permite compartir archivos en una red entre máquinas Linux, windows y mac. El presente texto solo aclara cómo instalar en el servidor debian etch discos y particiones NTFS y poder usarlas plenamente en una red de ordenadores con windows.

Panorama:
Una red con 4 puestos bajo indows 2k y xp.
Un servidor linux con Samba y cuatro discos. El servidor se llama "arriba", es el nombre que se usará en la red windows para llegar a los contenidos. El primero es para el sistema, con partición linux y los tres restantes, con particiones NTFS para servir datos en la red.
Cada ordenador debe poder acceder, leer y escribir, de manera transparente.

La dificultad reside en:

  1. La Debian estable (etch) instalada por defecto con kernel 2.6.18.6 no permite escribir en particiones NTFS
  2. Samba necesita configurarse para dar acceso en lectura y escritura en cada disco montado en el servidor.
  3. Los discos ya vienen con datos en particiones NTFS que hay que mantener sin tocar, sería más fácil si fueran particiones nativas de linux, no tendríamos que hacer todo lo siguiente.
  4. Configurar el juego de caracteres para que los archivos con nombres largos y acentos de NTFS se vean correctamente.
  5. No se instala por defecto el driver para lectura/escritura bajo etch.

1- Instalar los discos físicamente en el servidor. Los tres discos con particiones NTFS serán:
/dev/hdb
/dev/hdc
/dev/hdd

Siendo root, creamos tres carpetas:
mkdir -p /disco120GB
mkdir -p /disco320GB
mkdir -p /disco500GB

Le damos permisos de un usuario "almacen" creado previamente:
chown -R almacen:almacen /disco120GB
chown -R almacen:almacen /disco320GB
chown -R almacen:almacen /disco500GB

Damos permisos de escritura:
chmod -R 644 /disco120GB/
chmod -R 644 /disco320GB/
chmod -R 644 /disco500GB/

Editamos fstab:
nano /etc/fstab

Escribimos en /etc/fstab los cambios necesarios para reconocer los discos:
/dev/hdb1 /disco120GB/ ntfs-3g force,locale=es_ES.UTF-8,user 0 0
/dev/hdc1 /disco320GB/ ntfs-3g force,locale=es_ES.UTF-8,user 0 0
/dev/hdd1 /disco500GB/ ntfs-3g force,locale=es_ES.UTF-8,user 0 0

2. Instalar el driver para NTFS.
En Debian etch, por desgracia, no se puede instalar directamente la herramienta ntfs-3g, así que editamos el sources.list para añadir el repositorio backports:
deb http://www.bakports.org/debian etch-backports main contrib non-free Hacemos una actualización de paquetes y lo instalamos:
apt-get update
apt-get install ntfs-3g

Escribimos para cada disco una compartición en samba. Éste es la parte de mi archivo smb.conf que trata de los discos:

[global]
workgroup = BAR
server string = %h server
interfaces = 192.168.0/24, eth1
security = SHARE
obey pam restrictions = Yes
passdb backend = tdbsam
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
username map = /etc/samba/smbpasswd
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
load printers = No
printcap name = cups
dns proxy = No
panic action = /usr/share/samba/panic-action %d
invalid users = root
printing = cups
print command =
lpq command = %p
lprm command =

[disco160]
comment = Disco de 160GB
path = /disco160/
force user = nobody
force group = nogroup
read only = No
create mask = 0700
directory mask = 0700
guest ok = Yes
locking = No

[disco320]
comment = Disco de 320GB
path = /disco320/
force user = nobody
force group = nogroup
read only = No
create mask = 0700
directory mask = 0700
guest ok = Yes
locking = No

[disco500]
comment = Disco de 500GB
path = /disco500/
force user = nobody
force group = nogroup
read only = No
create mask = 0700
directory mask = 0700
guest ok = Yes
locking = No

Cuando este proceso haya terminado con éxito, montamos todas las unidades y verficamos que vemos los discos en los debidos puntos de montaje:
mount -a

Reiniciamos Samba:
/etc/init.d/samba restart

Ahora, a partir de cualquier estación bajo windows en la red local, podemos ver, crear, mover y borrar los archivos y carpetas del servidor. En nuestro caso, los datos están por ejemplo en:
\\arriba\disco160
\\arriba\disco320
\\arriba\disco500

Las estaciones windows pueden ahora acceder a los archivos compartidos en el servidor. Se obtiene así la estabilidad y robustez de linux sin cambiar las estaciones de trabajo.

Comentarios

Hay problemas con el

Imagen de acl

Hay problemas con el encoding del documento original, el servidor lo reporta como utf8, pero en realidad el texto está en utf16.

Otra cosa, si provees un enlace a un sitio externo a ecualug para un documento, no lo copies. Incluso si fuera tu documento (aparentemente lo es) no sirve de nada duplicar el texto entre distintos sitios, el contenido está a un solo clic de distancia.

--
haber != a ver
ha != a