Linux Can';t获取BASH脚本以填写密码
我有一个Ubuntu12.04服务器虚拟机,通过Hyper-V安装为媒体服务器。我的服务器2012操作系统上有一个共享驱动器,我想在启动时安装在Ubuntu上 现在,我可以通过键入Linux Can';t获取BASH脚本以填写密码,linux,bash,ubuntu,samba,Linux,Bash,Ubuntu,Samba,我有一个Ubuntu12.04服务器虚拟机,通过Hyper-V安装为媒体服务器。我的服务器2012操作系统上有一个共享驱动器,我想在启动时安装在Ubuntu上 现在,我可以通过键入sudosmbmount//host\u ip/media~/media 输入后,系统会提示我输入共享的密码,输入密码后会正确装入驱动器 我已经编写了一个脚本,但无法让它在提示时写入密码 有没有一种方法可以编写一个简单的BASH脚本,并在启动时以root权限运行它 如何让脚本填写密码 如果您安装了expect,这非常
sudosmbmount//host\u ip/media~/media
输入后,系统会提示我输入共享的密码,输入密码后会正确装入驱动器
我已经编写了一个脚本,但无法让它在提示时写入密码
- 有没有一种方法可以编写一个简单的BASH脚本,并在启动时以root权限运行它
- 如何让脚本填写密码
expect
,这非常简单
下面是一个使用expect
的示例。来源-
执行上述expect程序,如下所示
guest@host1 $ ./ssh.exp 192.168.1.2 root password
spawn ssh root@192.168.1.2
Password:
Last login: Sat Oct 9 04:11:35 2010 from host1.geetkstuff.com
root@host2 #
通常在(
/etc/fstab
)中设置永久安装。操作系统引导时,将创建/etc/fstab
中指定的所有装载。以下是Ubuntu上的一些信息。正如Daniel所指出的,在启动时装载Samba共享的一个好方法是将共享名放在/etc/fstab文件中
用于在后备箱安装的“一个衬里”是:
//主机名/share/mnt/samba smbfs用户名=用户,密码=密码0
最后两个参数应为零。它们仅用于本地文件系统,与dump命令的使用和fsck的执行顺序有关。您能给我们看一下您的脚本吗(显然隐藏了您的密码/详细信息)?这样,我们可以为您添加建议:)正如我提到的。。。这是一个非常简单的脚本。。。但到目前为止我得到的是:#/bin/bash echo“***装载共享***”echo“sudo smbmount//192.168.1.176/media~/media echo”“expect”密码:“发送”mysecretpassword“echo”
guest@host1 $ ./ssh.exp 192.168.1.2 root password
spawn ssh root@192.168.1.2
Password:
Last login: Sat Oct 9 04:11:35 2010 from host1.geetkstuff.com
root@host2 #