Normalement, lorsque je veux ajouter un utilisateur pour le dossier partagé Samba, j'utilise cette commande:
Sudo smbpasswd -a <username>
et puis cela apparaît
New SMB password:
Retype new SMB password:
et maintenant je veux le faire dans un script mais pour que cela ne s'arrête pas là et me demande d'insérer un mot de passe
c'est mon script:
##################################################################
#!/bin/bash
mkdir /var/www/html/test
tee -a /etc/samba/smb.conf << EOF
[test]
comment = Test folder
path = /var/www/html/test
browsable = yes
valid users = tester
read only = no
EOF
smbpasswd -a tester
password
password
... Comment puis-je coder en dur le mot de passe?
J'ai trouvé la solution par moi-même depuis ce site web
Le principe de base est donc que si vous souhaitez créer un script pour ajouter un utilisateur spécifique au partage samba, procédez comme suit:
Cette partie du script est "standard" et ne nécessite aucune modification, à l'exception du chemin du dossier que vous souhaitez partager:
##################################################################
#!/bin/bash
# make a folder if it doesn't exist
[ ! -d /var/www/html/test ] && mkdir -p /var/www/html/test
# append these lines at the end of the /etc/samba/smb.conf file
tee -a /etc/samba/smb.conf << EOF
[test]
comment = Test folder
path = /var/www/html/test
browsable = yes
valid users = tester
read only = no
EOF
et maintenant si vous voulez:
username='<existing_user_name>'
(echo "<password_for_user>"; sleep 1; echo "<password_for_user>" ) | Sudo smbpasswd -s -a $username
username='<new_user_name>'
useradd -m $username
(echo "<password_for_user>"; sleep 1; echo "<password_for_user>";) | passwd $username
(echo "<password_for_user>"; sleep 1; echo "<password_for_user>" ) | Sudo smbpasswd -s -a $username