Packet Tracer 7 no Debian 10

Este artigo demonstra a instalação do Packet Tracer na versão 10 do Debian.

[ Hits: 1.703 ]

Por: Sérgio Abreu em 22/08/2019


Instalação



Olá, caros colegas!

Me deparei com algumas dificuldades para instalar o Packet Tracer no Debian 10. A instalação é simples, mas há uma dependência que não é tão simples assim de executar, pelo menos não foi.

Venho com o intuito de auxiliar a instalação da aplicação.

Instalação básica

O primeiro passo aqui, vai ser efetuar o download e isso só é feito dentro do site da CISCO, onde é necessário fazer o cadastro para ter acesso. Eu resolvi não fazer essa parte, porque é de praxe e não há uma relação direta com a instalação, com exceção do fato de que o download deve ser feito por lá.

Feito isso, vamos criar uma pasta para extrair o arquivo baixado:

mkdir packet

Feito isso, vamos dar o comando para extrair o arquivo para dentro daquela pasta:

tar zxvf packet_tracer_7.2.1_for_linux_64_bit.tar.gz -C packet
Linux: Packet Tracer 7 no Debian 10
Vamos acessar a pasta e dar o comando de instalação:

./install

Aparecerá a tela de EULA, que são os termos de uso do Packet Tracer.

Pressione Enter para entrar na EULA.
Linux: Packet Tracer 7 no Debian 10
Uma vez aberta a EULA, é só apertar a letra q do seu teclado que vai direto para o aceite, com a tecla Y.
Linux: Packet Tracer 7 no Debian 10
Linux: Packet Tracer 7 no Debian 10
Será informado o local de instalação padrão. Eu deixei assim e pressionei Enter para dar continuidade:
Linux: Packet Tracer 7 no Debian 10
Logo depois, será criado um link simbólico com o nome "packettracer" dentro de /usr/local/bin.

Pressione Y e dê um Enter para confirmar:
Linux: Packet Tracer 7 no Debian 10
O packet Tracer foi instalado, mas não vai rodar ainda.
Linux: Packet Tracer 7 no Debian 10

Instalação das dependências

Existem 2 dependências que darão dor de cabeça para instalar, mas aqui está a sua solução!

Baixe a primeira dependência, que é a "libpng12-0". Ela terá que ser baixada e instalada de uma forma não muito utilizada:

wget http://ftp.us.debian.org/debian/pool/main/libp/libpng/libpng12-0_1.2.50-2+deb8u3_amd64.deb

# dpkg -x libpng12-0_1.2.50-2+deb8u3_amd64.deb /tmp
# cp tmp/lib/x86_64-linux-gnu/libpng12.so.0 /opt/pt/bin/
Linux: Packet Tracer 7 no Debian 10
Repare que o comando DPKG foi instalado com o argumento "-x", onde ele fica executável.

Depois dessa primeira dependência, você já consegue abrir o Packet Tracer, mas ele não abrirá a tela de login e nem passará a rodar com Guest.

Então, instalamos a segunda dependência, dessa vez de forma normal.

wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb

# dpkg -i libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb
Linux: Packet Tracer 7 no Debian 10
Por fim, vamos criar um atalho para que você possa executar o pack Tracer direto do seu menu iniciar.

Para isso, vamos criar o arquivo "PT.desktop" dentro do diretório onde ficam os atalhos.

# nano /usr/share/applications/PT.desktop

Cole os dados a baixo, para que fique igual à imagem:

[Desktop Entry]
Name=Cisco Packet Tracer
Comment=Simulatore di reti
GenericName=Simulatore
X-GNOME-FullName=Cisco Packet Tracer 7.2
Exec=/opt/pt/packettracer
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=/opt/pt/art/app.png
Categories=Network;
StartupWMClass=PT
StartupNotify=true

Linux: Packet Tracer 7 no Debian 10
Salve o arquivo e rode feliz seu Packet Tracer!
Linux: Packet Tracer 7 no Debian 10
Espero ter ajudado a todos!
Abraço!

   

Páginas do artigo
   1. Instalação
Outros artigos deste autor

Indicador de Caps Lock

Instalação do GLPI no Debian 8

Leitura recomendada

Proxy Squid com SquidGuard + Controle de Banda e Autenticação NTLM no Samba 4 (CentOS 6.5 - 64 bits Minimal)

Nagios Core 4.0.8 com Debian 7 e Client Windows Server

Criando regras simples com IP6Tables

Conexões Wireless com DHCP no Slackware - Configuração à moda antiga

VLAN Tagging nos sistemas GNU/Linux derivados do Red Hat

  
Comentários
[1] Comentário enviado por alison_rmx em 26/08/2019 - 09:37h

Show de bola amigo! parabens atire a primeira pedra quem nunca sofreu para instalar packet no linux haha


0100000101101100011010010111001101101111011011100010000001001101011000010111001001101001011011100110100001101111

Ideas For Life.

[2] Comentário enviado por ssdabreu em 07/09/2019 - 11:30h


[1] Comentário enviado por alison_rmx em 26/08/2019 - 09:37h

Show de bola amigo! parabens atire a primeira pedra quem nunca sofreu para instalar packet no linux haha


0100000101101100011010010111001101101111011011100010000001001101011000010111001001101001011011100110100001101111

Ideas For Life.


Muito obrigado meu nobre... Foi sofrido para entender o que havia de errado mas desse jeito ai deu certo!

[3] Comentário enviado por romulloalves em 09/09/2019 - 20:36h

Olá, ssdabreu. Primeiramente parabéns pelo artigo!

Estava seguindo os passos para realizar a instalação em questão, no passo da instalação da primeira dependência, me deparo com a mensagem abaixo:

root@debian:/home/romullo/packet# cp tmp/lib/x86_64-linux-gnu/libpng12.so.0 /opt/pt/bin/
cp: não foi possível obter estado de 'tmp/lib/x86_64-linux-gnu/libpng12.so.0': Arquivo ou diretório inexistente

Pelo que analisei no meu diretório /lib, o x86_64-linux-gnu trata-se de um arquivo, e não um diretório. Pelo que entendi, por isso não consigo encontrar o libpng12.so.0.

Alguma sugestão de como devo passar desse passo?

Desde já agradeço.

[4] Comentário enviado por brunopvh em 17/09/2019 - 22:48h

Olá Rômulo Alves tenho a solução deste problema, recentemente tive problemas com a instalação do packettracer fiz um Script para resolver este problema não só da ibpng12.so.0, mas de todas as outras dependencias do packettracer no debian buster e ubuntu bionic. Funciona tanto para antiga instalação da versão 7.2 com ".tar.gz" quanto na nova com ".run"

Copie o contéudo abaixo, salve em um arquivo como por exemplo: ciscopt-buster.sh
de permissão de execução no arquivo, e em seguida rode o comando ./ciscopt-buster.sh

No menu PC com debian 10 Resolveu tudo. Poste um comentário novamente caso algo der errado


#!/usr/bin/env bash
#
#
# Versão: 2.2
# Ultima modificação: 2019-09-17
#
# Repositório:
# https://github.com/Brunopvh/cisco-pt-buster
# https://github.com/Brunopvh/cisco-pt-buster.git
#
# Execução:
#
# wget https://raw.githubusercontent.com/Brunopvh/cisco-pt-buster/master/ciscopt-buster.sh -O - ciscopt-buster.sh
#
#
#

clear


# Cores
amarelo="\e[1;33m"
Amarelo="\e[1;33;5m"
vermelho="\e[1;31m"
Vermelho="\e[1;31;5m"
verde="\e[1;32m"
Verde="\e[1;32;5m"
fecha="\e[m"

esp="------------------------------------------"

# Detectar sistema.
codinome_sistema=$(grep '^VERSION_CODENAME' /etc/os-release | sed 's|.*=||g')
nome_sistema=$(grep '^ID=' /etc/os-release | sed 's|.*=||g')

[[ $codinome_sistema == buster ]] || { echo -e "${vermelho}Seu sistema não e Debian buster $fecha"; exit 1; }

if [[ $USER == root ]] || [[ $UID == 0 ]]; then
echo -e "${vermelho}Usuário não pode ser o [root] $fecha"
exit 1
fi


# Links
ftp_us="http://ftp.us.debian.org/debian/pool/main"
security="http://security.debian.org/debian-security"

link_libpng12_deb8_amd64="${ftp_us}/libp/libpng/libpng12-0_1.2.50-2+deb8u3_amd64.deb"
link_libpng12_deb8_i386="${ftp_us}/libp/libpng/libpng12-0_1.2.50-2+deb8u3_i386.deb"
link_libssl1_deb8_amd64="${security}/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb"
link_libssl1_deb8_i386="${security}/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_i386.deb"

# Diretórios
DIR_APPS_LINUX="${HOME}"/"${codinome_sistema}"
DIR_INTERNET="${DIR_APPS_LINUX}/Internet"
dir_tmp_pt="${DIR_INTERNET}/cisco-pt72-amd64"
dir_libs="${HOME}/.local/tmp/libs"

arq_libssl1_deb8_amd64="${DIR_INTERNET}"/libssl1.0_deb8_amd64.deb
arq_libssl1_deb8_i386="${DIR_INTERNET}"/libssl1.0_deb8_i386.deb
arq_libpng12_deb8_amd64="${DIR_INTERNET}"/libpng12-0_deb8_amd64.deb

mkdir -p "$DIR_APPS_LINUX" "$DIR_INTERNET" "$dir_tmp_pt" "$dir_libs"

# export local_trab=$(dirname $0)
export readonly local_trab=$(dirname $(readlink -f "$0")) # Path do programa no sistema.

[[ ! -w "$local_trab" ]] && {
echo -e "Você não tem permissão de escrita em: $local_trab"
exit
}

# Função para verificar ou instalar os programas necessários.
function _apps_exist()
{
# $1 = programa a verificar ou instalar.
local msg="Necessário instalar : "
local msg_falha="Falha ao tentar instalar : "

[[ -x $(which $1) ]] || {
echo -e "${amarelo}$msg $1 ${fecha}"
sudo apt install -y $1
[[ $? == 0 ]] || { echo -e "${vermelho}$msg_falha $1 ${fecha}"; exit 1; }
}
}

_apps_exist 'zenity' # Zenity

_apps_exist 'gdebi' # Gdebi

_apps_exist 'wget' # Wget

#-------------------------[ Função para exibir mensagens com zenity ]----------#
function msgs_zenity()
{

# (Sim Não) --question --title="Abrir" --text="Abrir ePSxe agora ?"
#
# (Senha) --password --title="[sudo: $USER]"
#
# (Arquivo) --file-selection --title="Selecione o arquivo .bin" --file-filter="*.bin"
#
#(Erro) --error --title="Falha na autênticação" --text="Senha incorrenta"
#
# (Lista) --list --text "Selecione uma configuração" --radiolist --column "Marcar" --column "Configurar" FALSE Bios TRUE Sair
#
# (Info) --info --title="Reiniciar" --text="Reinicie seu computador para aplicar alterações"
#
# Resolução [--width="550" height="200", --width="300" height="150" ]

case "$1" in
--question) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5";;
--info) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5";;
--error) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5";;
--file-selection) zenity "$1" --title="$2" --file-filter="$3" --file-filter="$4";;
--list) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5" --column "$6" $7;;
esac

}

#---------------------------[ Instalar cisco pt ]-----------#
function _inst_ciscopkt()
{

echo 'Iniciando instalação...'

while true; do

arq_instalacao=$(msgs_zenity "--file-selection" "Selecionar arquivo" "*.tar.gz" "*.run")
nome_arq=$(echo $arq_instalacao | sed 's|.*/||g')

[[ -z "$arq_instalacao" ]] && exit 1

prosseguir=$(msgs_zenity "--list" "Usar este arquivo ?" "Continuar" "650" "250" "$nome_arq" "Sim Não")

# Descompactar e instalar packettracer.
if [[ "$prosseguir" == "Sim" ]] && [[ $(echo "$nome_arq" | egrep ".tar.gz$" ) ]]; then
echo 'Instalando .tar.gz'

sudo rm -rf "${dir_tmp_pt}"/* 1> /dev/null 2>&1s
tar xvzf "$arq_instalacao" -C "$dir_tmp_pt"
chmod +x "$dir_tmp_pt/install"
cd "$dir_tmp_pt/" && ./install
(_corrigir_arquivos)
break
elif [[ "$prosseguir" == "Sim" ]] && [[ $(echo "$nome_arq" | egrep ".run$" ) ]]; then
echo 'Instalando .run'
chmod +x "$arq_instalacao"
"$arq_instalacao"
#(_corrigir_arquivos)
break

elif [[ "$prosseguir" == "Não" ]]; then
echo 'Não...'
exit 1
break
else
echo 'Repetindo...'
continue
fi
done
} # Fim _inst_ciscopkt

#---------------------[ Função para instalar libs debian buster ]----------#
function _inst_libs_buster() {

# libssl1.0.0 deb8 amd64
[[ $(aptitude show libssl1.0.0 | grep '^Estado' | cut -d ' ' -f 2) == 'instalado' ]] || {
echo 'Instalando libssl1.0.0 amd64'
wget "$link_libssl1_deb8_amd64" -O "$arq_libssl1_deb8_amd64"
sudo gdebi-gtk "$arq_libssl1_deb8_amd64"
}

# libpng12 deb8 amd64
[[ -f '/opt/pt/bin/libpng12.so.0.50.0' ]] || {
echo 'Configurando libpng12'
wget "$link_libpng12_deb8_amd64" -O "$arq_libpng12_deb8_amd64"
sudo rm -rf "$dir_libs"/* 1> /dev/null 2>&1
sudo dpkg-deb -x "$arq_libpng12_deb8_amd64" "$dir_libs"
sudo cp -vu "${dir_libs}"/lib/x86_64-linux-gnu/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0.50.0
sudo ln -sf /opt/pt/bin/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0
}

}


#---------------------[ Função para instalar libs em ubuntu bionic ]----------#
function _inst_libs_bionic()
{

wget "$link_libpng12_deb8_amd64" -O "$arq_libpng12_deb8_amd64"
sudo apt install libssl1.0.0 -y

sudo rm -rf "$dir_libs"/* 1> /dev/null 2>&1
sudo dpkg-deb -x "$arq_libpng12_deb8_amd64" "$dir_libs"
sudo cp -vu "${dir_libs}"/lib/x86_64-linux-gnu/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0.50.0
sudo ln -sf /opt/pt/bin/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0
}



#--------------------[ Função para corrigir arquivos ]----------------#
function _corrigir_arquivos()
{

# /opt/pt/tpl.linguist
[[ -f '/opt/pt/tpl.linguist' ]] && { sudo sed -i "s|PTDIR=.*|PTDIR=/opt/pt|g" /opt/pt/tpl.linguist; }

# /opt/pt/tpl.packettracer
[[ -f '/opt/pt/tpl.packettracer' ]] && { sudo sed -i "s|PTDIR=.*|PTDIR=/opt/pt|g" /opt/pt/tpl.packettracer; }

# Arquivo pt7.desktop
[[ -f '/opt/pt/bin/Cisco-PacketTracer.desktop' ]] && {
sudo cp -u '/opt/pt/bin/Cisco-PacketTracer.desktop' '/usr/share/applications/'
[[ -f '/usr/share/applications/pt7.desktop' ]] && sudo rm '/usr/share/applications/pt7.desktop'
}
} # Fim de corrigir arquivos


#-----------------------------------[ Dependências ]----------------------#
function _inst_dependencias()
{

echo 'Instalando: gdebi aptitude multiarch-support qtmultimedia5-dev libqt5script5 libqt5scripttools5'
echo ' '

# Suporte a 32 bits disponível ?.
[[ $(dpkg --print-foreign-architectures | grep i386) == "i386" ]] || { sudo dpkg --add-architecture i386; }
sudo apt update
sudo apt install --yes gdebi aptitude multiarch-support qtmultimedia5-dev libqt5script5 libqt5scripttools5

[[ -d "$dir_tmp_pt" ]] && sudo rm -rf "$dir_tmp_pt"
}

# Instalar dependências antes de instalar o programa.
(_inst_dependencias)

# Executar a função de instalação se packettracer não estiver nas condições abaixo.
if [[ ! -x $(which packettracer) ]] || [[ ! -x /opt/pt/bin/PacketTracer7 ]]; then

instalar_agora=$(msgs_zenity "--list" "Instalar" "Selecione" "650" "250" "Instalação" "Instalar Sair")

if [[ "$instalar_agora" == "Instalar" ]]; then
(_inst_ciscopkt) # Debian/Ubuntu.
else
exit 0
fi

fi

# Checar se local de instalação é '/opt/pt/bin'
[[ -x /opt/pt/bin/PacketTracer7 ]] || { echo 'Cisco-PacketTracer não instalado em: [/opt/pt] saindo...'; exit 1; }

(_corrigir_arquivos)

case "$codinome_sistema" in
buster) (_inst_libs_buster);; # Debian.
bionic) (_inst_libs_bionic);; # Ubuntu.
esac

msgs_zenity "--info" "Reiniciar" "Reinicie seu computador para aplicar alterações" "550" "150"

sudo -K

[5] Comentário enviado por romulloalves em 18/09/2019 - 00:13h


[4] Comentário enviado por brunopvh em 17/09/2019 - 22:48h

Olá Rômulo Alves tenho a solução deste problema, recentemente tive problemas com a instalação do packettracer fiz um Script para resolver este problema não só da ibpng12.so.0, mas de todas as outras dependencias do packettracer no debian buster e ubuntu bionic. Funciona tanto para antiga instalação da versão 7.2 com ".tar.gz" quanto na nova com ".run"

Copie o contéudo abaixo, salve em um arquivo como por exemplo: ciscopt-buster.sh
de permissão de execução no arquivo, e em seguida rode o comando ./ciscopt-buster.sh

No menu PC com debian 10 Resolveu tudo. Poste um comentário novamente caso algo der errado


#!/usr/bin/env bash
#
#
# Versão: 2.2
# Ultima modificação: 2019-09-17
#
# Repositório:
# https://github.com/Brunopvh/cisco-pt-buster
# https://github.com/Brunopvh/cisco-pt-buster.git
#
# Execução:
#
# wget https://raw.githubusercontent.com/Brunopvh/cisco-pt-buster/master/ciscopt-buster.sh -O - ciscopt-buster.sh
#
#
#

clear


# Cores
amarelo="\e[1;33m"
Amarelo="\e[1;33;5m"
vermelho="\e[1;31m"
Vermelho="\e[1;31;5m"
verde="\e[1;32m"
Verde="\e[1;32;5m"
fecha="\e[m"

esp="------------------------------------------"

# Detectar sistema.
codinome_sistema=$(grep '^VERSION_CODENAME' /etc/os-release | sed 's|.*=||g')
nome_sistema=$(grep '^ID=' /etc/os-release | sed 's|.*=||g')

[[ $codinome_sistema == buster ]] || { echo -e "${vermelho}Seu sistema não e Debian buster $fecha"; exit 1; }

if [[ $USER == root ]] || [[ $UID == 0 ]]; then
echo -e "${vermelho}Usuário não pode ser o [root] $fecha"
exit 1
fi


# Links
ftp_us="http://ftp.us.debian.org/debian/pool/main"
security="http://security.debian.org/debian-security"

link_libpng12_deb8_amd64="${ftp_us}/libp/libpng/libpng12-0_1.2.50-2+deb8u3_amd64.deb"
link_libpng12_deb8_i386="${ftp_us}/libp/libpng/libpng12-0_1.2.50-2+deb8u3_i386.deb"
link_libssl1_deb8_amd64="${security}/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb"
link_libssl1_deb8_i386="${security}/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_i386.deb"

# Diretórios
DIR_APPS_LINUX="${HOME}"/"${codinome_sistema}"
DIR_INTERNET="${DIR_APPS_LINUX}/Internet"
dir_tmp_pt="${DIR_INTERNET}/cisco-pt72-amd64"
dir_libs="${HOME}/.local/tmp/libs"

arq_libssl1_deb8_amd64="${DIR_INTERNET}"/libssl1.0_deb8_amd64.deb
arq_libssl1_deb8_i386="${DIR_INTERNET}"/libssl1.0_deb8_i386.deb
arq_libpng12_deb8_amd64="${DIR_INTERNET}"/libpng12-0_deb8_amd64.deb

mkdir -p "$DIR_APPS_LINUX" "$DIR_INTERNET" "$dir_tmp_pt" "$dir_libs"

# export local_trab=$(dirname $0)
export readonly local_trab=$(dirname $(readlink -f "$0")) # Path do programa no sistema.

[[ ! -w "$local_trab" ]] && {
echo -e "Você não tem permissão de escrita em: $local_trab"
exit
}

# Função para verificar ou instalar os programas necessários.
function _apps_exist()
{
# $1 = programa a verificar ou instalar.
local msg="Necessário instalar : "
local msg_falha="Falha ao tentar instalar : "

[[ -x $(which $1) ]] || {
echo -e "${amarelo}$msg $1 ${fecha}"
sudo apt install -y $1
[[ $? == 0 ]] || { echo -e "${vermelho}$msg_falha $1 ${fecha}"; exit 1; }
}
}

_apps_exist 'zenity' # Zenity

_apps_exist 'gdebi' # Gdebi

_apps_exist 'wget' # Wget

#-------------------------[ Função para exibir mensagens com zenity ]----------#
function msgs_zenity()
{

# (Sim Não) --question --title="Abrir" --text="Abrir ePSxe agora ?"
#
# (Senha) --password --title="[sudo: $USER]"
#
# (Arquivo) --file-selection --title="Selecione o arquivo .bin" --file-filter="*.bin"
#
#(Erro) --error --title="Falha na autênticação" --text="Senha incorrenta"
#
# (Lista) --list --text "Selecione uma configuração" --radiolist --column "Marcar" --column "Configurar" FALSE Bios TRUE Sair
#
# (Info) --info --title="Reiniciar" --text="Reinicie seu computador para aplicar alterações"
#
# Resolução [--width="550" height="200", --width="300" height="150" ]

case "$1" in
--question) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5";;
--info) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5";;
--error) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5";;
--file-selection) zenity "$1" --title="$2" --file-filter="$3" --file-filter="$4";;
--list) zenity "$1" --title="$2" --text="$3" --width="$4" --height="$5" --column "$6" $7;;
esac

}

#---------------------------[ Instalar cisco pt ]-----------#
function _inst_ciscopkt()
{

echo 'Iniciando instalação...'

while true; do

arq_instalacao=$(msgs_zenity "--file-selection" "Selecionar arquivo" "*.tar.gz" "*.run")
nome_arq=$(echo $arq_instalacao | sed 's|.*/||g')

[[ -z "$arq_instalacao" ]] && exit 1

prosseguir=$(msgs_zenity "--list" "Usar este arquivo ?" "Continuar" "650" "250" "$nome_arq" "Sim Não")

# Descompactar e instalar packettracer.
if [[ "$prosseguir" == "Sim" ]] && [[ $(echo "$nome_arq" | egrep ".tar.gz$" ) ]]; then
echo 'Instalando .tar.gz'

sudo rm -rf "${dir_tmp_pt}"/* 1> /dev/null 2>&1s
tar xvzf "$arq_instalacao" -C "$dir_tmp_pt"
chmod +x "$dir_tmp_pt/install"
cd "$dir_tmp_pt/" && ./install
(_corrigir_arquivos)
break
elif [[ "$prosseguir" == "Sim" ]] && [[ $(echo "$nome_arq" | egrep ".run$" ) ]]; then
echo 'Instalando .run'
chmod +x "$arq_instalacao"
"$arq_instalacao"
#(_corrigir_arquivos)
break

elif [[ "$prosseguir" == "Não" ]]; then
echo 'Não...'
exit 1
break
else
echo 'Repetindo...'
continue
fi
done
} # Fim _inst_ciscopkt

#---------------------[ Função para instalar libs debian buster ]----------#
function _inst_libs_buster() {

# libssl1.0.0 deb8 amd64
[[ $(aptitude show libssl1.0.0 | grep '^Estado' | cut -d ' ' -f 2) == 'instalado' ]] || {
echo 'Instalando libssl1.0.0 amd64'
wget "$link_libssl1_deb8_amd64" -O "$arq_libssl1_deb8_amd64"
sudo gdebi-gtk "$arq_libssl1_deb8_amd64"
}

# libpng12 deb8 amd64
[[ -f '/opt/pt/bin/libpng12.so.0.50.0' ]] || {
echo 'Configurando libpng12'
wget "$link_libpng12_deb8_amd64" -O "$arq_libpng12_deb8_amd64"
sudo rm -rf "$dir_libs"/* 1> /dev/null 2>&1
sudo dpkg-deb -x "$arq_libpng12_deb8_amd64" "$dir_libs"
sudo cp -vu "${dir_libs}"/lib/x86_64-linux-gnu/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0.50.0
sudo ln -sf /opt/pt/bin/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0
}

}


#---------------------[ Função para instalar libs em ubuntu bionic ]----------#
function _inst_libs_bionic()
{

wget "$link_libpng12_deb8_amd64" -O "$arq_libpng12_deb8_amd64"
sudo apt install libssl1.0.0 -y

sudo rm -rf "$dir_libs"/* 1> /dev/null 2>&1
sudo dpkg-deb -x "$arq_libpng12_deb8_amd64" "$dir_libs"
sudo cp -vu "${dir_libs}"/lib/x86_64-linux-gnu/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0.50.0
sudo ln -sf /opt/pt/bin/libpng12.so.0.50.0 /opt/pt/bin/libpng12.so.0
}



#--------------------[ Função para corrigir arquivos ]----------------#
function _corrigir_arquivos()
{

# /opt/pt/tpl.linguist
[[ -f '/opt/pt/tpl.linguist' ]] && { sudo sed -i "s|PTDIR=.*|PTDIR=/opt/pt|g" /opt/pt/tpl.linguist; }

# /opt/pt/tpl.packettracer
[[ -f '/opt/pt/tpl.packettracer' ]] && { sudo sed -i "s|PTDIR=.*|PTDIR=/opt/pt|g" /opt/pt/tpl.packettracer; }

# Arquivo pt7.desktop
[[ -f '/opt/pt/bin/Cisco-PacketTracer.desktop' ]] && {
sudo cp -u '/opt/pt/bin/Cisco-PacketTracer.desktop' '/usr/share/applications/'
[[ -f '/usr/share/applications/pt7.desktop' ]] && sudo rm '/usr/share/applications/pt7.desktop'
}
} # Fim de corrigir arquivos


#-----------------------------------[ Dependências ]----------------------#
function _inst_dependencias()
{

echo 'Instalando: gdebi aptitude multiarch-support qtmultimedia5-dev libqt5script5 libqt5scripttools5'
echo ' '

# Suporte a 32 bits disponível ?.
[[ $(dpkg --print-foreign-architectures | grep i386) == "i386" ]] || { sudo dpkg --add-architecture i386; }
sudo apt update
sudo apt install --yes gdebi aptitude multiarch-support qtmultimedia5-dev libqt5script5 libqt5scripttools5

[[ -d "$dir_tmp_pt" ]] && sudo rm -rf "$dir_tmp_pt"
}

# Instalar dependências antes de instalar o programa.
(_inst_dependencias)

# Executar a função de instalação se packettracer não estiver nas condições abaixo.
if [[ ! -x $(which packettracer) ]] || [[ ! -x /opt/pt/bin/PacketTracer7 ]]; then

instalar_agora=$(msgs_zenity "--list" "Instalar" "Selecione" "650" "250" "Instalação" "Instalar Sair")

if [[ "$instalar_agora" == "Instalar" ]]; then
(_inst_ciscopkt) # Debian/Ubuntu.
else
exit 0
fi

fi

# Checar se local de instalação é '/opt/pt/bin'
[[ -x /opt/pt/bin/PacketTracer7 ]] || { echo 'Cisco-PacketTracer não instalado em: [/opt/pt] saindo...'; exit 1; }

(_corrigir_arquivos)

case "$codinome_sistema" in
buster) (_inst_libs_buster);; # Debian.
bionic) (_inst_libs_bionic);; # Ubuntu.
esac

msgs_zenity "--info" "Reiniciar" "Reinicie seu computador para aplicar alterações" "550" "150"

sudo -K



Olá Bruno! Primeiramente, obrigado pelo apoio na resolução do caso.

Segui sua orientação e rodei o script informado, porém ele me retorna a mensagem em vermelho: Usuário não pode ser o [root]

Faltou alguma coisa?

[6] Comentário enviado por tonpd em 21/09/2019 - 10:09h

Ufa, até que fim achei essa maldita dependência, obrigado.

[7] Comentário enviado por wellingtonsr em 21/09/2019 - 17:31h

brunopvh, Obrigado pelo script. Estava desde ontem tentando instalar o CPT, mas sem sucesso. Seu script funcionou perfeitamente. Valeu!!!!

[8] Comentário enviado por wellingtonsr em 21/09/2019 - 17:33h

ssdabreu, parabéns pelo artigo. O CPT realmente está complicado de instalar no Debian 10.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts