(转载)vbox上ubuntu开机自动挂载共享目录

先创建vbox上ubuntu/etc/init.d/mountsharedir.sh

vi /etc/init.d/mountsharedir.sh



  1 #! /bin/sh

  2 ### BEGIN INIT INFO

  3 # Provides: mountsharedir

  4 # Required-Start:

  5 # Required-Stop:

  6 # Should-Start:

  7 # Should-Stop:

  8 # Default-Start: 2 3 4 5 S

  9 # Default-Stop: 0 6

 10 # Short-Description: Mount vbox share dir.

 11 # Description:

 12 ### END INIT INFO

 13
 14 PATH=/sbin:/bin
 15
 16 case "$1" in
 17 start|"")
 18 mount -t vboxsf -o rw software /mnt/share >> /var/log/mountsharedirlog 2>&1
 19 ;;
 20 restart|reload|force-reload)
 21 echo "Error: argument '$1' not supported" >&2
 22 exit 3
 23 ;;
 24 stop)
 25 # No-op

 26 ;;
 27 *)
 28 echo "Usage: mountsharedir.sh [start|stop]" >&2
 29 exit 3
 30 ;;
 31 esac
 32
 33 :


2. 用update-rc.d命令注册此启动脚本
sudo update-rc.d mountsharedir.sh start 99 2 3 4 5 S .

update-rc.d的一部分工作是创建/etc/init.d/mountsharedir.sh的软连接到/etc/rc*.d/中去,但这并不是它做的唯一的事情;就是说使用update-rc.d命令和手动的在/etc/rc*.d/下面创建连接,两者的效果是有区别的;手动创建往往不起作用。

另外:
A common system administration error is to delete the links with the thought that this will "disable" the service, i.e.,  that  this  will  prevent the service from being started.  However, if all links have been deleted then the next time the package is upgraded, the package's postinst script will run update-rc.d again and  this  will  rein-stall  links  at their factory default locations.  The correct way to disable services is to configure the service as stopped in all runlevels in which it is started by default.  In the System V init system  this  means  renaming
 the service's symbolic links from S to K.

关于update-rc.d的使用,摘了一些man中的example:
EXAMPLES
       Insert links using the defaults:
          update-rc.d foobar defaults

       Equivalent command using explicit argument sets:
          update-rc.d foobar start 20 2 3 4 5 . stop 20 0 1 6 .

       More typical command using explicit argument sets:
          update-rc.d foobar start 30 2 3 4 5 . stop 70 0 1 6 .

       Insert links at default runlevels when B requires A
          update-rc.d script_for_A defaults 80 20
          update-rc.d script_for_B defaults 90 10
       Insert a link to a service that (presumably) will not be needed by any other daemon
          update-rc.d top_level_app defaults 98 02
       Insert links for a script that requires services that start/stop at sequence number 20
          update-rc.d script_depends_on_svc20 defaults 21 19
       Remove all links for a script (assuming foobar has been deleted already):
          update-rc.d foobar remove
       Example of disabling a service:
          update-rc.d -f foobar remove
          update-rc.d foobar stop 20 2 3 4 5 .
       Example of a command for installing a system initialization-and-shutdown script:
          update-rc.d foobar start 45 S . stop 31 0 6 .
       Example of a command for disabling a system initialization-and-shutdown script:
          update-rc.d -f foobar remove
          update-rc.d foobar stop 45 S
.

转载于:http://blog.chinaunix.net/u3/96583/showart_1954630.html

 

posted on 2010-07-02 19:44  耕耘  阅读(1103)  评论(0编辑  收藏  举报

导航