Cara menambahkan pengguna untuk berbagi samba melalui skrip shell

1

Biasanya ketika saya ingin menambahkan pengguna untuk folder bersama samba saya menggunakan perintah ini:

sudo smbpasswd -a <username>

dan kemudian ini muncul

New SMB password:
Retype new SMB password:

dan sekarang saya ingin melakukan ini dalam skrip tetapi agar tidak berhenti di situ dan meminta saya untuk memasukkan kata sandi

ini skrip saya:

##################################################################
#!/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

... Bagaimana saya bisa mengode kata sandi?

lewis4u
sumber
itu adalah paket besar 169 MB yang harus saya beri saya 2 baris kode .... itu terlalu banyak .... sampai seseorang memberikan solusi yang lebih baik saya akan mengetiknya secara manual
lewis4u
Jangan gunakan sudo dalam skrip Anda, panggil skrip itu dengan sudo sudo /path/to/script. , uji apakah direktori ada [ ! -d /var/www/html/test ] && mkdir -p /var/www/html/test, perhatikan -popsi. Anda juga dapat menguji apakah / var / www / html / test sudah ada dalam file conf dan jika tidak menambahkannya (Anda harus bisa mengetahuinya).
Panther
Coba google samba + scritp + ke + add + user
Panther

Jawaban:

2

Saya telah menemukan solusinya sendiri dari situs web ini

Jadi hal mendasarnya adalah jika Anda ingin membuat skrip untuk menambahkan pengguna tertentu ke share samba seperti ini:

Bagian skrip ini 'standar' dan tidak perlu diubah kecuali jalur folder yang ingin Anda bagikan:

##################################################################
#!/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

dan sekarang jika Anda ingin:

tambahkan pengguna yang ada: tambahkan ini ke 'skrip standar' di atas:

username='<existing_user_name>'
(echo "<password_for_user>"; sleep 1; echo "<password_for_user>" ) | sudo smbpasswd -s -a $username

tambahkan pengguna baru yang tidak ada di OS: tambahkan ini ke 'skrip standar' di atas:

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
lewis4u
sumber
Baiklah saya akan melakukannya hari ini. Saya baru saja bangun
lewis4u
Saya harap ini dijelaskan lebih baik dan bahwa pengguna yang memilih saya akan memberikan umpan balik jika itu masih tidak baik?
lewis4u