Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2506 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  réseaux et sécurité

  Partage samba monté, mais lecture/ecriture impossible

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Partage samba monté, mais lecture/ecriture impossible

n°1366754
Merome
Chef des blorks
Posté le 23-10-2014 à 14:39:11  profilanswer
 

Je bloque depuis ce matin sur ce truc.
 
J'ai un disque dur derrière ma box SFR avec le partage de fichiers activé.
Depuis mes 2 PC, j'accède bien à ce disque en lecture écriture en tapant simplement smb://192.168.1.1/racine dans PCMANFM (le dossier partagé s'appelle racine), sans donner aucun identifiant ni workgroup ou autre.
 
Je viens d'installer un serveur (Ubuntu server) qui est sur le même réseau, j'aimerais qu'il accède à ce même disque en lecture écriture.
J'ai mis dans mon fstab :
 
//192.168.1.1/racine /mnt/box cifs username=username,password=password,rw,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
 
(j'ai essayé aussi sans username/password , avec guest, et ... un nombre incroyable de combinaisons sans plus de succès)
 
Le montage se fait bien, j'ai accès au partage, je vois les fichiers dedans, je peux même créer des répertoires, mais je ne peux pas lire un fichier, ni écrire un fichier : Permission non accordée
 
Je n'ai pas de messages d'erreur dans dmesg ni dans syslog au moment du montage.  
 
Est-ce que vous avez des idées ?


---------------
Ceci n'est pas une démocratie
mood
Publicité
Posté le 23-10-2014 à 14:39:11  profilanswer
 

n°1367003
Merome
Chef des blorks
Posté le 27-10-2014 à 17:48:29  profilanswer
 

:bounce:


---------------
Ceci n'est pas une démocratie
n°1367120
Suzkaw
Posté le 28-10-2014 à 22:08:58  profilanswer
 


Dans ton fixhier conf ta des lignes du genre : allow users : nom des users


---------------
Pas le temps de niaiser. Suzkaw sur le trombi
n°1367127
Merome
Chef des blorks
Posté le 29-10-2014 à 07:45:26  profilanswer
 

Suzkaw a écrit :


Dans ton fixhier conf ta des lignes du genre : allow users : nom des users


 
J'ai ça : usershare allow guests = yes
 
C'est tout.


---------------
Ceci n'est pas une démocratie
n°1367132
Suzkaw
Posté le 29-10-2014 à 09:04:38  profilanswer
 

Je n'ai pas mes cours de linux sur moi ( bts technicien sup ) donc je débute pas mal en linux mais j'ai justement fait un cour de samba la semaine dernière et j'ai aussi eu l’erreur " accès interdit " et je l'ai réglé en autorisant mon utilisateur. Je fait des recherches je reviens vers toi.


---------------
Pas le temps de niaiser. Suzkaw sur le trombi
n°1367133
Suzkaw
Posté le 29-10-2014 à 09:07:33  profilanswer
 

Ajoute ça dans ton smb.conf :
write list = utilisateur1, utilisateur2, @groupe12000 .  Tu autorise les users à écrire
read list = utilisateur1, utilisateur2, @groupe12000 .   Tu autorise les users à lire

 

Et tien moi au jus !

Message cité 1 fois
Message édité par Suzkaw le 29-10-2014 à 09:08:51

---------------
Pas le temps de niaiser. Suzkaw sur le trombi
n°1367145
Merome
Chef des blorks
Posté le 29-10-2014 à 10:03:52  profilanswer
 

Suzkaw a écrit :

Ajoute ça dans ton smb.conf :
write list = utilisateur1, utilisateur2, @groupe12000 .  Tu autorise les users à écrire
read list = utilisateur1, utilisateur2, @groupe12000 .   Tu autorise les users à lire
 
Et tien moi au jus !


 
Marche pas.
 
J'ai ajouté mes users, y compris root, dans le smb.conf comme tu le préconies, j'ai redémarré samba, j'ai refait le montage, toujours pas moyen d'accéder même en lecture aux fichiers.


---------------
Ceci n'est pas une démocratie
n°1367151
Suzkaw
Posté le 29-10-2014 à 10:13:27  profilanswer
 

Tu vois les fichiers mais tu a l’erreur quand tu veux les ouvrir ?
 


---------------
Pas le temps de niaiser. Suzkaw sur le trombi
n°1367153
Merome
Chef des blorks
Posté le 29-10-2014 à 10:15:21  profilanswer
 

Suzkaw a écrit :

Tu vois les fichiers mais tu a l’erreur quand tu veux les ouvrir ?
 


 
Exactement. Et je peux aussi créer des répertoires et aller dedans, mais pas mettre des fichiers dedans.


---------------
Ceci n'est pas une démocratie
n°1367154
Suzkaw
Posté le 29-10-2014 à 10:16:22  profilanswer
 

Rajoute ces lignes la.

 

writable = yes  tu autorise à écrire

 

browseable = yes  

 

valid users = user @group1   tu autorise des users

 

Voici la partie qui te pose probléme à mon avis :
[partage_commun]
 path = /share/commun comment = Partage pour tous force
directory mode = 777
force create mode = 777
writeable = yes
browseable = yes
valid users =
write list =  
# fin du fichier

Message cité 1 fois
Message édité par Suzkaw le 29-10-2014 à 10:19:46

---------------
Pas le temps de niaiser. Suzkaw sur le trombi
mood
Publicité
Posté le 29-10-2014 à 10:16:22  profilanswer
 

n°1367187
Merome
Chef des blorks
Posté le 29-10-2014 à 15:09:50  profilanswer
 

Suzkaw a écrit :

Rajoute ces lignes la.
 
writable = yes  tu autorise à écrire
 
browseable = yes  
 
valid users = user @group1   tu autorise des users
 
Voici la partie qui te pose probléme à mon avis :  
[partage_commun]
 path = /share/commun comment = Partage pour tous force  
directory mode = 777
force create mode = 777  
writeable = yes  
browseable = yes  
valid users =  
write list =  
# fin du fichier


 
 
Toujours pas. Pas de changement.


---------------
Ceci n'est pas une démocratie
n°1367191
Suzkaw
Posté le 29-10-2014 à 15:18:11  profilanswer
 

Ya moyen que tout nous copie/colle ton smb.conf ?


---------------
Pas le temps de niaiser. Suzkaw sur le trombi
n°1367194
Merome
Chef des blorks
Posté le 29-10-2014 à 15:22:50  profilanswer
 

#======================= Global Settings =======================
 
[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
 
#### 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 #######
 
# Server role. Defines in which mode Samba will operate. Possible
# values are "standalone server", "member server", "classic primary
# domain controller", "classic backup domain controller", "active
# directory domain controller".  
#
# Most people will want "standalone sever" or "member server".
# Running as "active directory domain controller" will require first
# running "samba-tool domain provision" to wipe databases and create a
# new domain.
   server role = standalone server
 
# If you are using encrypted passwords, Samba will need to know what
# password database type you are using.  
   passdb backend = tdbsam
 
   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 ###########
 
#
# The following settings only takes effect if 'server role = primary
# classic domain controller', 'server role = backup domain controller'
# or '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
 
# 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
 
# 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 = no
 
# 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
 
# 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
 
[printers]
   comment = All Printers
   browseable = no
   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 = no
# 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
write list=merome,root,@root,@merome
read list=merome,root,@root,@merome
writable = yes  
browseable = yes
valid users = merome root @merome @root  
directory mode = 777
force create mode = 777  
path = /192.168.1.1/RACINE


---------------
Ceci n'est pas une démocratie
n°1367205
Suzkaw
Posté le 29-10-2014 à 16:13:04  profilanswer
 

Renomme ton fichier smb.conf.

 

#mv /etc/samba/smb.conf /etc/samba/smb.conf.old

 

Aprés tu ouvre ton smb.conf avec ton éditeur et il vas te recrée un jolie smb.conf vierge tout vide.

 

Se qui vas te permettre de repartir sur des bases claires et tu n'aura pas besoin de re-crée ton partage.

 

Copie/colle juste ça :

 

[global]
server string = prend pour valeur le nom qui identifiera votre machine.
public = yes
encrypt passwords = true

 

[projects]
path = Le chemin de ton partage
read only = no
writeable = yes
valid users = Merome
comment = Voici mon partage

 

Apres tu relance #/etc/init.d/samba restart

 

Apres tu crée ton utilisateur samba ( Samba a besoin que tu crée des users aussi pour lui si tu veux que KEvin utilise le partage il ne suffit pas de le crée dans ton linux il faut le crée sur ton samba aussi ) ( Ici Merome ) #smbpasswd -a merome

 

Le programme smbpassword demande alors que tu définisse le mot de passe de l'utilisateur que tu a crée .

 

Et normalement c'est bon. Tien moi au courant sa me fait réviser en même temps ! ( désolé pour les fautes je suis au travail je me dépêche :p ) :bounce:

  

Message cité 1 fois
Message édité par Suzkaw le 29-10-2014 à 16:18:17

---------------
Pas le temps de niaiser. Suzkaw sur le trombi
n°1367210
ttyb0
sysadmin, libriste, hacker
Posté le 29-10-2014 à 16:38:56  profilanswer
 

Ben en fait il manque juste une section pour ton nouveau partage...
 


[section]
  param = value
  param = value
  ...

n°1367212
Merome
Chef des blorks
Posté le 29-10-2014 à 16:43:42  profilanswer
 

Suzkaw a écrit :

Renomme ton fichier smb.conf.
 
#mv /etc/samba/smb.conf /etc/samba/smb.conf.old
 
Aprés tu ouvre ton smb.conf avec ton éditeur et il vas te recrée un jolie smb.conf vierge tout vide.
 
Se qui vas te permettre de repartir sur des bases claires et tu n'aura pas besoin de re-crée ton partage.
 
Copie/colle juste ça :  
 
[global]
server string = prend pour valeur le nom qui identifiera votre machine.
public = yes
encrypt passwords = true
 
[projects]
path = Le chemin de ton partage
read only = no
writeable = yes
valid users = Merome
comment = Voici mon partage
 
Apres tu relance #/etc/init.d/samba restart
 
Apres tu crée ton utilisateur samba ( Samba a besoin que tu crée des users aussi pour lui si tu veux que KEvin utilise le partage il ne suffit pas de le crée dans ton linux il faut le crée sur ton samba aussi ) ( Ici Merome ) #smbpasswd -a merome
 
Le programme smbpassword demande alors que tu définisse le mot de passe de l'utilisateur que tu a crée .
 
Et normalement c'est bon. Tien moi au courant sa me fait réviser en même temps ! ( désolé pour les fautes je suis au travail je me dépêche :p ) :bounce:  


 
Toujours pas de changement.
 
Rappel :
- Depuis mes 2 PC, j'accède au partage en lecture/écriture à travers l'explorateur de fichiers pcmanfm en tapant simplement dans la barre d'adresse : smb://192.168.1.1/RACINE Pas besoin de mot de passe dans ce cas, ça marche tout seul du premier coup.
- Le dossier partagé est sur un disque USB géré par ma box SFR où je définis certes un Workgroup mais aucun utilisateur/mot de passe.  
 
Du coup, je ne sais pas s'il faut chercher du côté du login/password. Le problème est "ailleurs".


---------------
Ceci n'est pas une démocratie
n°1367213
Merome
Chef des blorks
Posté le 29-10-2014 à 16:49:00  profilanswer
 

ttyb0 a écrit :

Ben en fait il manque juste une section pour ton nouveau partage...
 


[section]
  param = value
  param = value
  ...



 
 
Juste une question : le smb.conf, il n'a d'influence que sur la partie "serveur" de samba, non ?
Parce que j'ai l'impression que je peux mettre n'importe quoi dans le smb.conf, ça ne change strictement rien à la façon dont va se monter le répertoire partagé par ma box.
 
Quand on fait, sans passer par fstab, un mount -t cifs, il va pas chercher la config dans smb.conf ? Si ?


---------------
Ceci n'est pas une démocratie
n°1367214
kisscoolz
Posté le 29-10-2014 à 17:18:03  profilanswer
 

En effet le smb.conf sert uniquement pour la configuration du serveur.  
 
Si tu éxecute la commande à la main sur le nouveau serveur, est ce que tu as bien les droits que tu veux ?


---------------
http://lacabanedeladmin.trickip.net/
n°1367215
Merome
Chef des blorks
Posté le 29-10-2014 à 17:27:23  profilanswer
 

kisscoolz a écrit :

En effet le smb.conf sert uniquement pour la configuration du serveur.  
 
Si tu éxecute la commande à la main sur le nouveau serveur, est ce que tu as bien les droits que tu veux ?


 
Le nouveau serveur ?  :??:  
 
- J'ai une box SFR, avec un disque USB au cul, partagé via la box.
- J'ai 2 PC qui y accède en lecture/écriture à travers Pcmanfm (smb://192.168.1.1/RACINE dans la barre d'adresse), mais pas moyen de monter le partage en ligne de commande ou via fstab avec les droits (le montage se fait bien et sans erreur, mais ni lecture, ni écriture possible)
- J'ai un serveur qui n'a pas d'interface graphique (donc pas de pcmanfm) et qui ne sait pas davantage monter le partage en lecture/ecriture, ni via mount.cifs, ni via fstab ... Là aussi, le montage se passe bien et sans erreur, mais au moment de lire ou d'écrire sur le disque, pas moyen : permission non accordée.


---------------
Ceci n'est pas une démocratie
n°1367216
kisscoolz
Posté le 29-10-2014 à 17:49:40  profilanswer
 

Merome a écrit :


 
Le nouveau serveur ?  :??:
 
- J'ai une box SFR, avec un disque USB au cul, partagé via la box.
- J'ai 2 PC qui y accède en lecture/écriture à travers Pcmanfm (smb://192.168.1.1/RACINE dans la barre d'adresse), mais pas moyen de monter le partage en ligne de commande ou via fstab avec les droits (le montage se fait bien et sans erreur, mais ni lecture, ni écriture possible)
- J'ai un serveur qui n'a pas d'interface graphique (donc pas de pcmanfm) et qui ne sait pas davantage monter le partage en lecture/ecriture, ni via mount.cifs, ni via fstab ... Là aussi, le montage se passe bien et sans erreur, mais au moment de lire ou d'écrire sur le disque, pas moyen : permission non accordée.


 

Merome a écrit :


Je viens d'installer un serveur (Ubuntu server) qui est sur le même réseau, j'aimerais qu'il accède à ce même disque en lecture écriture.
J'ai mis dans mon fstab :
 
//192.168.1.1/racine /mnt/box cifs username=username,password=password,rw,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
 
(j'ai essayé aussi sans username/password , avec guest, et ... un nombre incroyable de combinaisons sans plus de succès)
 
Le montage se fait bien, j'ai accès au partage, je vois les fichiers dedans, je peux même créer des répertoires, mais je ne peux pas lire un fichier, ni écrire un fichier : Permission non accordée
 
Je n'ai pas de messages d'erreur dans dmesg ni dans syslog au moment du montage.  
 
Est-ce que vous avez des idées ?


 
Quels sont les droits sur le dossier après montage ?

Message cité 1 fois
Message édité par kisscoolz le 29-10-2014 à 17:50:23

---------------
http://lacabanedeladmin.trickip.net/
n°1367225
Merome
Chef des blorks
Posté le 29-10-2014 à 19:41:05  profilanswer
 

kisscoolz a écrit :


 
Quels sont les droits sur le dossier après montage ?


 
drwxr-xr-x 2 merome root 0 mai   28  60056 RACINE


---------------
Ceci n'est pas une démocratie
n°1367252
kisscoolz
Posté le 30-10-2014 à 00:20:12  profilanswer
 

Je voulais parler du point de montage sur le "nouveau" serveur à savoir /mnt/box parce que c'est là que tu monte ton partage.


---------------
http://lacabanedeladmin.trickip.net/
n°1367268
Merome
Chef des blorks
Posté le 30-10-2014 à 09:18:05  profilanswer
 

kisscoolz a écrit :

Je voulais parler du point de montage sur le "nouveau" serveur à savoir /mnt/box parce que c'est là que tu monte ton partage.


 
idem.


---------------
Ceci n'est pas une démocratie
n°1367302
kisscoolz
Posté le 30-10-2014 à 14:31:39  profilanswer
 
n°1367314
Merome
Chef des blorks
Posté le 30-10-2014 à 15:39:36  profilanswer
 

kisscoolz a écrit :

Je vois pas alors.


 
Merci quand même pour tes recherches.


---------------
Ceci n'est pas une démocratie
n°1367337
Merome
Chef des blorks
Posté le 30-10-2014 à 18:27:09  profilanswer
 

J'ai contourné le problème en utilisant la commande "smbclient"
 
Plus d'infos ici


---------------
Ceci n'est pas une démocratie
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  réseaux et sécurité

  Partage samba monté, mais lecture/ecriture impossible

 

Sujets relatifs
samba fonera (nmbd)Samba : impossible d'exécuter des fichiers distants
SAMBA/LDAP: nouveaux utilisateurs ne peuvent plus se connecter sur w7[RESOLU] Impossible de démarrer windows depuis l'install de Ubuntu :(
Soucis samba 4.1 (deb testing) : gestion ACL via MMc Windows.Serveur avec samba dans AD : coupure réseau (wan), plus d'ACL !
Nginx / proxy_pass : impossible de faire fonctionner un sous domaineAccéder avec Samba à un disque dur ext3 depuis un mac
Problème de permission sur partage NFS 
Plus de sujets relatifs à : Partage samba monté, mais lecture/ecriture impossible


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR