forcing networking in case it fails
This commit is contained in:
parent
17feef94c6
commit
4c562f7be6
@ -7,3 +7,44 @@ chmod 700 /var/db/sudo/lectured
|
||||
chgrp bdisk /var/db/sudo/lectured/bdisk
|
||||
chmod 600 /var/db/sudo/lectured/bdisk
|
||||
chmod 4755 /usr/bin/sudo
|
||||
|
||||
function fuck_you_gimme_net() {
|
||||
IFACE=$(ifconfig -a -s | egrep -E '^((en|wl)p?|em)' | awk '{print $1}' | tr '\n' ' ' | sed -e 's/\ $//g')
|
||||
for i in ${IFACE};
|
||||
do
|
||||
|
||||
LINK_STATE=$(ethtool ${i} | egrep '^[[:space:]]*Link' | sed -re 's/^[[:space:]]*Link detected:(.*)/\1/g')
|
||||
DEV=$(echo ${i} | sed -re 's/^([A-Za-z]{1}).*/\1/g' | tr '[[:upper:]]' '[[:lower:]]' )
|
||||
if [ "${DEV}" == "e" ];
|
||||
then
|
||||
if [ "${LINK_STATE}" != "no" ];
|
||||
then
|
||||
DEV='ethernet-dhcp'
|
||||
else
|
||||
# skip disconnected ethernet
|
||||
continue
|
||||
fi
|
||||
else
|
||||
DEV='wireless-open'
|
||||
fi
|
||||
|
||||
ifconfig ${i} down
|
||||
cp -a /etc/netctl/examples/${DEV} /etc/netctl/${i}
|
||||
sed -i -re "s/^([[:space:]]*Interface[[:space:]]*=).*/\1${i}/g" /etc/netctl/${i}
|
||||
if [ "${DEV}" == "wireless-open" ];
|
||||
then
|
||||
ifconfig ${i} up && \
|
||||
ESSID=$(iwlist ${i} scanning | egrep -A5 -B5 '^[[:space:]]*Encryption key:off' | egrep '^[[:space:]]*ESSID:' | sed -re 's/^[[:space:]]*ESSID:(.*)/\1/g')
|
||||
sed -i -re "s/^([[:space:]]*ESSID[[:space:]]*=).*/\1${ESSID}/g" /etc/netctl/${i}
|
||||
ifconfig ${i} down
|
||||
fi
|
||||
netctl start ${i} > /dev/null 2>&1
|
||||
done
|
||||
}
|
||||
|
||||
ping -c1 google.com | grep -q '1 received'
|
||||
if [[ "${?}" != "0" ]];
|
||||
then
|
||||
fuck_you_gimme_net
|
||||
systemctl restart openvpn@*
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user