Por favor, não faça várias perguntas em uma.
Em relação à sua primeira pergunta, você deve usar get_distro_information()
. get_lsb_information()
é usado internamente para carregar substituições de /etc/lsb-release
; get_distro_information()
usa isso, junto com outros métodos da classe, para fornecer as informações apropriadas.
Em relação à sua segunda pergunta, se SUDO_USER
não estiver realmente presente no ambiente exportado por sudo
(execute sudo env
para verificar), isso provavelmente significa que sua configuração sudoers
exclui a variável do ambiente.