#!/usr/bin/env bash ENABLED=yes [ "$ENABLED" != "yes" ] && exit 0 DEBUGMODE=no SOURCE=/usr/lib/ublinux/functions; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0 SOURCE=/usr/lib/ublinux/os-config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0 SOURCE=${SYSCONF}/config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null SOURCE=${SYSCONF}/network; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null debug_mode "$0" "$@" # mount ublinux-server ## Переделать authselect и связать с опциями домена # Name Service Switch Win Avahi nsswitch.conf # if [[ ${NSSWITCHAVAHI,,} == "yes" ]]; then # file_nss=$(grep hosts /etc/nsswitch.conf) # grep -q "mdns4_minimal" <<< "${file_nss}" || sed "/^hosts: /s/ resolve/ mdns4_minimal [NOTFOUND=return] resolve/" -i /etc/nsswitch.conf # grep -q "mdns4" <<< "${file_nss}" || sed "/^hosts: /s/ dns/ dns mdns4/" -i /etc/nsswitch.conf # fi # if [[ ${NSSWITCHWINS,,} == "yes" ]]; then # [[ -z ${file_nss} ]] && file_nss=$(grep hosts /etc/nsswitch.conf) # grep -q "wins" <<< "${file_nss}" || sed "/^hosts:/s/ dns/ dns wins/" -i /etc/nsswitch.conf # fi # Network configuration while read CONNECTION; do CON_DEVICE=${CONNECTION%%:*}; CONNECTION=${CONNECTION#*:} CON_UUID=${CONNECTION%%:*}; CONNECTION=${CONNECTION#*:} CON_NAME=${CONNECTION%%:*} CON_TYPE=${CONNECTION#*:} for NETWORK_ITEM in "${!NETWORK[@]}"; do unset NETWORK_DEVICE NETWORK_CONNECTION NETWORK_NAME=${NETWORK_ITEM%%:*} NETWORK_TYPE=${NETWORK_ITEM#*:} if [[ ${NETWORK_TYPE,,} == "device" || ${NETWORK_TYPE,,} == "dev" ]]; then [[ ${NETWORK_NAME,,} == ${CON_DEVICE,,} ]] && nmcli device modify "${CON_DEVICE}" ${NETWORK[${NETWORK_ITEM}]} else [[ ${NETWORK_NAME,,} == "all" || ${NETWORK_NAME,,} == "any" \ || ${NETWORK_NAME,,} == "connection" || ${NETWORK_NAME,,} == "con" \ || ${NETWORK_NAME,,} == ${CON_DEVICE,,} || ${NETWORK_NAME,,} == ${CON_UUID,,} \ || ${NETWORK_NAME,,} == ${CON_NAME,,} || ${NETWORK_NAME,,} == ${CON_TYPE,,} ]] \ && nmcli connection modify "${CON_UUID}" ${NETWORK[${NETWORK_ITEM}]} systemctl restart NetworkManager.service fi done done < <(nmcli -g device,uuid,name,type connection show)