Newsgroup: it.comp.os.linux.ubuntu
Titolo: creare cartelle con tutti i permessi

Buongiorno a tutti,
mi sto arrovellando per una sciocchezza ma non ci trovo soluzione.
Ho la scrivania condivisa con lettura e scrittura. Avrei bisogno, ogni 
volta che creo una cartella sulla scrivania, che questa fosse leggibile 
e modificabile da tutte le altre macchine in rete ( tutte con xp ).
Visto che le cartelle le generano i miei genitori, che non sono molto 
avvezzi, mi farebbe comodo che questa soluzione fosse apportata 
inmaniera automatica quando scelgono " crea cartella " con il dx del mouse.
Il sistema ï¿œ xubuntu 10.qualcosa , si avvia con utente amministratore.
Dai pc con xp vedo le cartelle fino al secondo livello ma non le 
sottocartelle successive  il loro contenuto.
Grazie a chi mi puï¿œ dare una mano
Fabio

sottocartelle successive  il loro contenuto.
 
Vediamo se riesco a capire la domanda.
 
0) tu usi Linux in rete con macchine XP; la tua scrivania è condivisa
   con le macchine XP (con Samba), che quindi montano la tua scrivania
   e la vedono come una loro cartella
 
1) quando crei una cartella sulla tua scrivania, questa non appare
   leggibile dalle macchine XP
 
2) quando sulle macchine XP viene creata una cartella nella cartella
   condivisa, questa non è leggibile né da te né dalle altre macchine XP
 
3) tu usi Xubuntu come utente root
 
4) quando crei una cartella sulla scrivania di Xubuntu, questa è
   visibile dalle macchine XP, ma il suo contenuto non è visibile
 
Dovresti confermare o correggere ognuna delle affermazioni di sopra.  O
aspettare che qualcun altro capisca cosa vuoi dire.

 aspettare che qualcun altro capisca cosa vuoi dire.
     Per ora ti ringrazio per l'attenzione ! Fabio

     Yesss
 
Sono quasi certo che il problema è questo.  Hai dei motivi particolari
per usare root come utente normale?

 Fabio
 
 
 
1) Fatti un utente normale non root
2) imposti in questo utente un gruppo
3) a tutti gli altri utenti gli imposti lo stesso gruppo
4) al tuo utente imposti in .bashrc o in .profile  il comando umask=002
 


No assolutamente, per me un'utente vale l'altro. L'importante sarebbe 
poter intervenire per aprire, mettere togliere cancellare...insomma 
gestire la cartella da un'altro pc con xp come se fossi sulla macchina 
con xubuntu.
Grazie Francesco
 
Fabio


Ciao, purtroppo non conosco/capisco quanto mi indichi al punto 4.
L'utente di xubuntu è uno solo, gli altri sono accessi da xp alla 
specifica cartella della scrivania e le sue sottocartelle e relativi file.
Grazie per l'attenzione
Fabio

:

Allora comincia a seguire i passi che ti indica enoquick.  Quando non
sai più come andare avanti di' cos'hai fatto e vedrai che qualcuno ti
saprà indicare come proseguire.


Gli accessi da xp che suppongo avvengono attraverso samba useranno uno o 
piu  utenti che per default sono mappati su utenti unix
La corrispondenza tra utente samba e utente unix sta in /etc/samba/smbusers
 
Quindi imposti a questi utenti unix + il tuo utente lo stesso gruppo
 
 
Per l' umask apri con un editor il file .profile o .bashrc e aggiungi il 
comando
umask 002
 
 
 
 
 
 

Allora : sono riuscito a fare in modo che la cartella sia visibile ed 
esplorabile, i file riesco a leggerli. Se però copio una cartella dentro 
alla cartella ( es. scaricandola da una chiavetta ) il contenuto della 
"sottocartella" non è esplorabile dalle altre macchine.


Che permessi ha e chi sono il proprietario ed il gruppo ?
 


Ciao,
l'utente del sistema è fabio. da xp la cartella la vedo ma non mi fa 
accedere
 
La cartella scaricata da usb ha queste proprietà :
proprietario : Fabio (fabio)    **( quella fra parentesi è minuscola)
accesso : lettura e scrittura
gruppo : fabio      **( con la minuscola )
(2) accesso: nessuna
Altri: nessuna
 
se da gestione file cambio manualmente i permessi della cartella "(2) 
accesso e altri " selezionando lettura e scrittura allora va tutto come 
vorrei. Avrei bisogno invece che questo succedesse quando scaricano la 
cartella da usb
Ti chiedo veramente scusa per quanto rompo le scatole e ti ringrazio 
moltissimo per il tempo che mi stai dedicando.
Fabio
 


Questo succede perchè l' utente samba non è lo stesso utente che ha 
creato la cartella e tra l' altro non dà nessun accesso al proprio gruppo
Quindi:
apri un terminale sulla linux box con l' utente che usi normalmente
e dai il comando id
$id
ti risponde con una cosa di questo genere:
uid=1000(pippo) gid=1001(pluto)...
 
questo significa che l' utente è pippo che appartiene al gruppo primario 
pluto
 
ora prendiamo l' utente samba che devi sapere qual' è avendo letto il 
file smb.conf e ricavato il file  utenti seguendo le istruzioni di ieri
 
chiamerò questo utente sambauser:
 
da root o con sudo  imposta il gruppo  pluto come primario all' utente 
sambauser
 
#usermod sambauser -g pluto
oppure
$sudo usermod sambuser -g pluto
 
Ora l' utente della linux box e l' utente sambauser condividono lo 
stesso gruppo
 
Nella seconda parte,che possiamo vedere dopo, si impostano i permessi di 
creazione con umask
 
 
 
 
 
 
 


Ok.   ho fatto un bel copia incolla
 
fabio@ubuntu:~$ id
 
uid=1000(fabio) gid=1000(fabio) 
gruppi=0(root),4(adm),20(dialout),21(fax),24(cdrom),25(floppy),26(tape),29(audio),30(dip),44(video),46(plugdev),104(fuse),105(lpadmin),112(netdev),118(admin),120(nopasswdlogin),121(sambashare),1000(fabio),1001(normale)
 
fabio@ubuntu:~$ sudo usermod sambauser -g fabio
 
[sudo] password for fabio:
 
usermod: nessuna modifica
 
fabio@ubuntu:~$ sudo usermod sambauser -g fabio
 
usermod: nessuna modifica
 
fabio@ubuntu:~$
 
 

 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
 
########## Printing ##########
 
# If you want to automatically load your printer list rather
 
# than setting them up individually then you'll need this
 
#load printers = yes
 
# lpr(ng) printing. You may wish to override the location of the
 
# printcap file
 
;printing = bsd
 
;printcap name = /etc/printcap
 
# CUPS printing.See also the cupsaddsmb(8) manpage in the
 
# cupsys-client package.
 
;printing = cups
 
;printcap name = cups
 
############ 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
 
#======================= Share Definitions =======================
 
# Un-comment the following (and tweak the other settings below to suit)
 
# to enable the default home directory shares.This will share each
 
# user's home directory as \\server\username
 
;[homes]
 
;comment = Home Directories
 
;browseable = yes
 
# By default, the home directories are exported read-only. Change the
 
# next parameter to 'no' if you want to be able to write to them.
 
;read only = yes
 
# File creation mask is set to 0700 for security reasons. If you want to
 
# create files with group=rw permissions, set next parameter to 0775.
 
;create mask = 0700
 
# Directory creation mask is set to 0700 for security reasons. If you 
want to
 
# create dirs. with group=rw permissions, set next parameter to 0775.
 
;directory mask = 0700
 
# By default, \\server\username shares can be connected to by anyone
 
# with access to the samba server.Un-comment the following parameter
 
# to make sure that only "username" can connect to \\server\username
 
# This might need tweaking when using external authentication schemes
 
;valid users = %S
 
# Un-comment the following and create the netlogon directory for Domain 
Logons
 
# (you need to configure Samba to act as a domain controller too.)
 
;[netlogon]
 
;comment = Network Logon Service
 
;path = /home/samba/netlogon
 
;guest ok = yes
 
;read only = yes
 
;share modes = yes
 
# Un-comment the following and create the profiles directory to store
 
# users profiles (see the "logon path" option above)
 
# (you need to configure Samba to act as a domain controller too.)
 
# The path below should be writable by all users so that their
 
# profile directory may be created the first time they log on
 
;[profiles]
 
;comment = Users profiles
 
;path = /home/samba/profiles
 
;guest ok = no
 
;browseable = no
 
;create mask = 0600
 
;directory mask = 0700
 
wins support = no
 
[printers]
 
comment = All Printers
 
browseable = yes
 
path = /var/spool/samba
 
printable = yes
 
guest ok = no
 
read only = yes
 
create mask = 0700
 
# Windows clients look for this share name as a source of downloadable
 
# printer drivers
 
[print$]
 
comment = Printer Drivers
 
path = /var/lib/samba/printers
 
browseable = yes
 
read only = yes
 
guest ok = yes
 
# Uncomment to allow remote administration of Windows print drivers.
 
# You may need to replace 'lpadmin' with the name of the group your
 
# admin users are members of.
 
# Please note that you also need to set appropriate Unix permissions
 
# to the drivers directory for these users to have write rights in it
 
;write list = root, @lpadmin
 
# A sample share for sharing your CD-ROM with others.
 
;[cdrom]
 
;comment = Samba server's CD-ROM
 
;read only = yes
 
;locking = yes
 
;path = /cdrom
 
;guest ok = yes
 
# The next two parameters show how to auto-mount a CD-ROM when the
 
#cdrom share is accesed. For this to work /etc/fstab must contain
 
#an entry like this:
 
#
 
#/dev/scd0/cdromiso9660 defaults,noauto,ro,user0 0
 
#
 
# The CD-ROM gets unmounted automatically after the connection to the
 
#
 
# If you don't want to use auto-mounting/unmounting make sure the CD
 
#is mounted on /cdrom
 
#
 
;preexec = /bin/mount /cdrom
 
;postexec = /bin/umount /cdrom
 
[Scrivania]
 
path = /home/fabio/Scrivania
 
available = yes
 
browsable = yes
 
public = yes
 
writable = yes
 
 


Nel tuo file smb.conf non esiste l' opzione username map
Questo significa che l' utente windows usato è mappato direttamente con 
l' utente unix
Ora l' utente windows usato per connettersi alla condivisione samba 
Scrivania (suppongo che sia quella) qual' è ?
Suppongo che non sia fabio altrimenti riuscirebbe a leggere le cartelle 
create da dall'utente unix fabio
 
 
 


Hai già un utente sambauser che appartiene al gruppo fabio, ecco perchè 
usermod dice nessuna modifica
E' quello (sambauser) l' utente che le macchine windows usano per 
connettersi a samba ?
 
 
 


Gli utenti delle XP della mia piccola rete si chiamano tutti fabio in 
minuscolo, tranne uno che non posso cambiare perchè è uno strumento che 
si interfaccia con altri sistemi ecc.ecc. e il suo utente di accesso si 
chiama KM.
Su xubuntu ho provato a creare anche un utente KM del gruppo fabio, con 
tutte la autiorizzazioni possibili , ma nulla di fatto. Anche se non 
credo...può essere un problema del S.O. che manca di qualcosa essendo 
più leggero di una versione Ubuntu ?

 più leggero di una versione Ubuntu ?
 
No, su questo non credo
Non mi viene in mente niente i particolare a riguardo i permessi.
 
Comunque puoi fare questa prova per vedere un po come è messa la situazione
1) apri un terminale dalla macchina xubuntu con l' utente che 
normalmente utilizzi (fabio)
2)  Ora un po di comandi di shell:
     $ umask 002
     $ cd /home/fabio/Scrivania
     $ mkdir prova
     $ ls -ld prova
       drwxrwxr-x  ... prova    #   grazie a umask 002 la directory ha i
                                #   permessi 775
     $ echo prova > prova/prova.txt
     $ ls -l prova/prova.txt
       -rw-rw-r--   ... prova.txt  # grazie a umask 002 il file
                                    # ha i permessi 664
 
 
3) da un client xp prova a leggere,modificare e cancellare  il file 
prova/prova.txt
 
 
 
 
 
 
 
 
 


perfetto ! con questa procedura ho accesso completamente libero al file 
prova della cartella prova con tutte le XP della mia rete. Se però 
scarico una cartella generata da altri e contenente un file da una 
chiavetta o similare per mezzo di una usb riusciamo a far si che succeda 
la stessa cosa ?
scusa il casino grammaticale !
 


Prova  !!
E guarda con lo stesso metodo (da terminale) i permessi,utente e gruppo 
sui file creati
 


Ok mi metto all'opera e provo a pistolare un po. Cerco di non rompere 
più le scatole.
Grazie tantissimo per la tua disponibilità !
Fabio