100分寻求一段shell脚本
时间:2011-08-25
来源:互联网
需要传入两个参数: username和passwd。
第一步:在/etc/passwd文件的最后一行添加一行文字:username:x:500:500:::/bin/bash //username为传进来的那个参数。
第二步:以参数username为用户名,参数passwd为密码添加一个samba用户。
注:添加samba用户的命令为:smbpasswd -a 用户名
然后会提示输入密码, 按照它的提示输入参数passwd的值并确认输入即可。
删除samba用户的命令为 :smbpasswd -x 用户名
第三步:在/opt/samba目录下面创建一个以该用户名命名的文件夹。
第四步:然后将下面一段文字写入/etc/samba/smb.conf文件的末尾:
[username]
path = /opt/samba/username
writeable = yes
browseable = yes
public = no
valid users = username
注: 红色的文字username为传进来的参数
第五步: 执行/etc/init.d/smb restart命令来重启samba服务。
以上是这个脚本需要执行的工作,要求具有容错功能,不要堆叠命令, 如果用堆叠命令的方式就不用麻烦各位了,我自己就会。关键是不会写容错。另外还有一个非常重要的要求是当后续步骤出错时,前面执行的操作需要回滚。譬如:在第3步创建文件夹失败的话,需要删除第2步添加的samba用户和第一步中在/etc/passwd文件的最后一行添加的一行文字。
要求基本就是这样,哪位高手能帮我写一下啊? 万分感激!!!!
作者: linux_6 发布时间: 2011-08-25
作者: linux_6 发布时间: 2011-08-25
echo $1:x:500:500:::/bin/bash //$2 >> /etc/passwd
作者: zmlovelx 发布时间: 2011-08-25
开个头:
echo $1:x:500:500:::/bin/bash //$2 >> /etc/passwd
呵呵, 你这个我会的, 但是没有判断是否成功啊
作者: linux_6 发布时间: 2011-08-25

作者: linux_6 发布时间: 2011-08-25
引用 2 楼 zmlovelx 的回复:
开个头:
echo $1:x:500:500:::/bin/bash //$2 >> /etc/passwd
呵呵, 你这个我会的, 但是没有判断是否成功啊
我接着
if [ $?=0 ] then
作者: rucypli 发布时间: 2011-08-25
作者: jianzhibeihang 发布时间: 2011-08-25
作者: yyysss520 发布时间: 2011-08-25
把各步的处理、回退写成函数,自己把逻辑弄好就ok了。谁没事会蛋疼给你写个容错的。
汗!!! 我说的容错也就是判断文件是否存在, 命令是否成功之类的, 要是我会的话还蛋疼的在这里发帖???
作者: linux_6 发布时间: 2011-08-25
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28