আমি এটিতে খুব অনুরূপ মোডের উপরের প্রস্তাবিত হয়েছিল তবে এই স্ক্রিপ্টটি প্রয়োজনীয় স্ক্রিপ্টটি তৈরি করে এবং নিম্নলিখিত স্ক্রিপ্টের সাথে ভাগ করা ফোল্ডারটিকে মাউন্ট বা আনমাউন্ট করে:
#!/bin/bash
#
# Mount automatically even shared folder on startup and unmount it at shutdown.
#
# VirtualBox (c) 2015 by Oracle Systems Inc.
#
####
# Check user privileges.
if [[ $EUID -ne 0 ]]; then
echo -e "This script must run at ROOT user!" \
"\nPlease, use 'sudo', 'visudo' or any other to run it."
exit 1
fi
# Check paramas from caller.
if [[ $# -eq 0 ]]; then
echo -e "Auto-Mount selected shared folder of VirtualBox machine." \
"\nUsage:" \
"\n VBoxShared <drive_one> <drive_two> <...>"
exit 2
fi
declare EVENT= # This set the ACTION: -m OR -u
declare -a DRIVES=()
# Processing each param:
for arg in "$@"; do
case "$arg" in
"-m"|"--mount")
if [[ -z ${EVENT} ]]; then
EVENT=-m
else
exit 318 # parameters at conflict!
fi
;;
"-u"|"--umount")
if [[ -z ${EVENT} ]]; then
EVENT=-u
else
exit 318 # parameters at conflict!
fi
;;
*)
DRIVES=("${DRIVES[@]}" "${arg}")
;;
esac
done
unset arg
[[ -z ${EVENT} ]] && exit 1 # ERROR: No se ha establecido la acción a realizar.
[[ "${#DRIVES[@]}" -gt 0 ]] || exit 1 # ERROR: No se han indicado las unidades a manejar.
# Process each shared folder stored on '${DRIVES}' array
for drive in "${DRIVES[@]}"; do
DEST="/media/sf_${drive}"
case "${EVENT}" in
"-m")
[[ -d ${DEST} ]] || (mkdir ${DEST} && chown root:vboxsf ${DEST} && chmod 770 ${DEST})
mount -t vboxsf ${drive} ${DEST}
;;
"-u")
if [[ `df --output=target | grep "${DEST}"` > /dev/null ]]; then
umount -f ${DEST}
rm -rf "${DEST}"
fi
;;
esac
unset DEST
done
unset drive
unset EVENT
unset DRIVES
exit 0
এটি হিসাবে সংরক্ষণ করুন /opt/.scripts/VBoxShared.sh
।
এটি চালানো যেতে পারে তা নিশ্চিত করুন। শেল প্রকারে:
sudo chmod a+x /opt/.scripts/VBoxShared.sh
এখন, আমরা একটি লাইন যুক্ত করব যা এই স্ক্রিপ্টটি চালায় rc.local
:
sudo nano /etc/rc.local
এবং আমরা শেষ লাইনের আগে এই লাইনটি যুক্ত করব ( exit 0
):
. /opt/.scripts/VBoxShared.sh --mount <SharedFolder1> [<SharedFolder2> <SharedFolder3> ...]
( CtrlO) সংরক্ষণ করুন এবং এটি বন্ধ করুন ( CtrlX)
এই মুহুর্তে, আমরা <SharedFolder>
শুরুতে তালিকাভুক্ত সমস্ত ভাগ করা ফোল্ডারটি স্বয়ংক্রিয়ভাবে মাউন্ট করব ।
এটি আনমাউন্ট করার জন্য আমাদের কেবল প্রকারের প্রয়োজন:
sudo nano /etc/rc6.d/K99-vboxsf-umount.sh
#!/bin/bash
. /opt/.scripts/VBoxShared --umount <SharedFolder1> [<SharedFolder2> <SharedFolder3> ...]
exit 0
সংরক্ষণ করুন ( CtrlO) এবং বন্ধ ( CtrlX)
sudo chmod a+x /etc/rc6.d/K99-vboxsf-auto.sh
এবং সব শেষ!