mirror of
https://github.com/PirateBox-Dev/PirateBoxScripts_Webserver.git
synced 2023-12-14 07:22:58 +01:00
46 lines
1.5 KiB
Bash
Executable file
46 lines
1.5 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
# Find a vfat partition and configure it as an external share
|
|
MOUNTPOINT="/mnt/usbshare"
|
|
FS="vfat"
|
|
UUIDS=$(blkid | grep "/dev/sd*.*TYPE=\"${FS}\"" | egrep -o " UUID=\"([a-zA-Z0-9-])*\"" | sed 's/ //g')
|
|
|
|
if [ $(echo "${UUIDS}" | wc -l) -gt 1 ]; then
|
|
echo "You seem to have more than one valid ${FS} partition for a USB share:"
|
|
echo "${UUIDS}\n"
|
|
echo "Please make sure you have a USB thumb drive attached with a single ${FS} partition."
|
|
exit 1
|
|
fi
|
|
|
|
if [ $(echo "${UUIDS}" | wc -l) -lt 1 ] || [[ $UUIDS == "" ]]; then
|
|
echo "You seem to have no valid ${FS} partition for a USB share."
|
|
echo "Please make sure you have a USB thumb drive attached with a single ${FS} partition."
|
|
exit 1
|
|
fi
|
|
|
|
UUID=$(echo "${UUIDS}" | cut -f2 -d" " | sed s/"\""/""/g)
|
|
grep "${UUID}" /etc/fstab > /dev/null
|
|
if [ $? -eq 0 ]; then
|
|
echo "Error: This disk is already configured as an USB share..."
|
|
exit 1
|
|
fi
|
|
|
|
echo "## Adding USB share..."
|
|
mkdir -p "${MOUNTPOINT}" > /dev/null
|
|
echo "${UUID} ${MOUNTPOINT} vfat umask=0,noatime,rw,user,uid=nobody,gid=nogroup 0 0" >> /etc/fstab
|
|
mount "${MOUNTPOINT}" > /dev/null
|
|
|
|
if [ $? == 0 ]; then
|
|
echo "## Moving files..."
|
|
mv /opt/piratebox/share "${MOUNTPOINT}/share" > /dev/null 2>&1
|
|
ln -s "${MOUNTPOINT}/share" /opt/piratebox/share > /dev/null
|
|
else
|
|
echo "Error: Mounting file system failed, will not move files..."
|
|
cat "/etc/fstab"
|
|
fi
|
|
|
|
# Force update diskwirte
|
|
touch -t 197001010101 /opt/piratebox/www/diskusage.html
|
|
wget http://127.0.0.1/cgi-bin/diskwrite.py -q -O -
|
|
|
|
exit 0
|