Conectando um celular Nokia ao Ubuntu sem complicações

Iniciado por xluisfernando, 23 de Fevereiro de 2011, 15:25

tópico anterior - próximo tópico

xluisfernando

Até recentemente, a operação de se conectar um celular Nokia ao PC ou Notebook com Sistema Operacional Linux era muito complicada. A Nokia, que é reconhecida pela qualidade dos aparelhos e pelo suporte aos seus usuários disponibiliza o Nokia PC Suite e o OVI Suite apenas para Sistemas Operacionais Windows (XP e 7). Para o Mac OS X existe uma versão do Nokia PC Suite, embora com menos recursos.

No entanto, para outros sistemas e particularmente para distros Linux a empresa não oferece nenhum tipo de suporte.

Para alguns usuários isso não seria propriamente um problema, já que os aparelhos fabricados a partir de 2007 oferecem a opção de escolha entre os modos Nokia, Impressão de Mídia e Transferência de dados, sendo que os dois últimos funcionam razoavelmente no Ubuntu, pelo menos a partir da versão 10.04 LTS.

No entanto, essa função é limitada, pois permite não permite o acesso aos dados da memória interna do aparelho, limitando-se a troca de informações com o cartão de memória, como se o mesmo fosse um pen drive.

Desde então, algumas soluções apareceram. Uma bem conhecida foi publicada por Júlio César Bessa Monqueiro em 6 de setembro de 2007, no Guia do Hardware http://www.hardware.com.br/dicas/celulares-linux-nokia.html

Essa solução é bem versátil, pois serve para diversos modelos de celulares e principalmente para várias algumas Linux, como Debian, Ubuntu e seus derivados, e Fedora. Basicamente, por essa solução e pela instalação de pacotes adicionais é possível acessar os dados da memória do aparelho pelo Terminal, sendo necessário decorar os códigos numéricos relacionados às pastas.

Então, visando elaborar uma solução mais amigável, a comunidade ubuntuforum dos italianos começou a desenvolver a partir de 2008 um aplicativo gráfico para esse fim. Trata-se do Nokinux.

https://launchpad.net/nokinux

O aplicativo, que ainda é Alpha, visa realizar a interface de comunicação entre o celular e o Ubuntu por meio do nautilus, a semelhança do que faz o gestor de arquivos (ficheiros) do Nokia PC Suite para Windows.

O aplicativo está na versão 0.0.8.6. Testei essa versão e no meu sistema não funcionou. A versão que funcionou em meu Netbook foi a 0.0.8.2, que está em espanhol (as outras estão em italiano e especificamente a última, que nem passou da instalação, apresenta um script para outras línguas)

Versão recente: http://launchpad.net/nokinux/trunk/0.0.8.6/+download/nokinux-0.0.8.6.tar.gz
Versão que funcionou: http://sourceforge.net/projects/nokinuxspanishv/files/Nokinux-0.0.8.2_spanish.tar.gz/download

O pacote de instalação é um tradicional tar.gz, que deve ser descompactado na pasta de usuário /home/$USER

Após baixar o arquivo e estando conectado à internet, navegue pelo terminal até a pasta em que o baixou:
Citar
cd Download
mv Nokinux-0.0.8.2_spanish.tar.gz /home/$USER
cd
tar -vzxf Nokinux-0.0.8.2_spanish.tar.gz
cd Nokinux-0.0.8.2
sudo chmod +x setup
./setup

Feito isso, o programa abrirá uma janela em italiano solicitando a senha root. Depois, o programa baixa dependências da internet e instala o aplicativo em Aplicativos>Acessórios>Nokinux

Para acessar o conteúdo da memória do celular é preciso abrir o aplicativo Nokinux e escolher "Vincular un celular Nokia"

Com isso, aparecerá uma outra janela de aviso: "Conecta celular con la computadora a través del USB y presiona OK"

Só então, deve-se conectar o celular ao cabo USB e em seguida ao PC, para escolher no aparelho o modo Nokia e então clicar no OK da janela de aviso.

Com isso, abre-se uma outra janela do nautilus com as pastas do celular, que é montado em /home/$USER/Nokia

Para sair e remover o aparelho em segurança, basta fechar a janela do nautilus e seguir as opções até "salir".

Existe um tutorial detalhado sobre esse procedimento disponível em: http://www.filhosdaweb.net/2010/06/nokinux-alternativa-ao-nokia-pc-suite.html

Particularmente, eu testei aqui e funcionou muito bem, sendo possível até copiar do aparelho Nokia para o PC aqueles arquivos protegidos, como o Nokia tune. A janela do nautilus permite acesso às outras pastas e discos do PC e na mesma janela de pastas do aparelho aparecem as pastas da memória interna do aparelho e do cartão de memória.

O único inconveniente que encontrei foi o fato de que na versão 10.04 e na 10.10 o meu aparelho Nokia 6555 é reconhecido automaticamente como modem 3G. Como eu uso um modem 3G Huawei E226, da mesma operadora que o plano de voz, toda vez que conecto o celular ao PC ou Notebook, estando ele conectado à internet, antes e depois da instalação do Nokinux, o sistema encerra a conexão e conecta à internet pelo celular. Considerando os custos da conexão 3G do modem e do plano de voz, um descuido poderia trazer efeitos catastróficos ao bolso... Isso, se eu desavisadamente não perceber que a conexão caiu e retornou, mas agora pelo celular em vez do modem.
Samsung Ativ Book i3 - Ubuntu 20.04LTS

navegantesdailusao

Olá, já consegui usar alguns softwares

da nokia via wine... mais agora parece que

ficou bem mais fácil.

o/
J.E.S.U.S. - Juntos Estaremos Sendo Um Só.

clcampos

Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

bentodaniel

Eu estava pesquisando e achei um aplicativo chamado "Nokuntu" (Nokia + Ubuntu) promete trazer recursos que aparecem no pc suite alguém já testou?

xluisfernando

#4
Quando escrevi esse tópico, há dois anos, eu usava um Nokia 6555, que possui sistema Symbian S40. Nesse intervalo, testei e passei a usar o Nokuntu, uma vez que o nokinux deixou de funcionar quando migrei do Ubuntu 10.04LTS para o 11.10.
Comparando os dois, apesar de ser Alpha, o Nokinux me pareceu mais estável e tranquilo, cumprindo uma função básica de gerenciar arquivos do celular. Além disso, o Nokuntu trazia o inconveniente de acessar o arquivo do celular como super usuário, de forma que depois de copiada uma foto do celular para o uma pasta não era possível movê-la ou apagá-la, sem usar o nautilus ou terminal como superusuário.

Recentemente, depois que passei a usar um Nokia 500 com Symbian Belle, o Nokuntu se mostrou ineficiente, uma vez que não reconhecia o sistema de arquivos dessa versão Symbian. Passei então a procurar por outras alternativas, como Wammu, Xgokii e series60-remote e até protocolo obex via terminal, mas nenhuma delas funcionou.

Quando eu estava quase desistindo, depois de pesquisar soluções, acabei revendo esse tópico e decidi tentar. Inicialmente, tentei a versão 0086. Não consegui instalar essa versão, pois os arquivos executáveis que vem no pacote não tem nada haver com o descrito no leia-me. Tentei executar os arquivos sh da vida e o processo de instalação até foi iniciado, mas não foi concluído por falta de dependência.

Então, decidi tentar com versão 0082 em espanhol (a mesma que deixou de funcionar no primeiro unity) Para a minha surpresa, essa versão foi instalada com êxito e até agora parece ser a única alternativa de gerenciamento de arquivos entre o Ubuntu e um celular Nokia com Symbian Belle.


Se desejar que o Nokinux-0.0.8.2 seja traduzido para o Português, copie o conteúdo da caixa de diálogo abaixo e cole no lugar do conteúdo do arquivo /usr/share/nokinux/run.sh . Será preciso fazer isso como privilégios de superusuário e marcar a opção "permitir que o arquivo seja executado como programa", no menu de propriedades.

Simplificando:
Citarsudo gedit /usr/share/nokinux/run.sh
Copie, cole o conteúdo do script abaixo, salve e feche o editor
sudo chmod +x /usr/share/nokinux/run.sh

Script run.sh traduzido:
Citar#!/bin/bash
which zenity
if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]; then
       zenity --info --text="Atenção! Você deve ter desinstalado o Zenity, que é uma dependência essencial para o Nokinux! Sem ele nada pode trabalhar! Reinstale-o e tente reiniciar o Nokinux.." --title="Dependência faltando!"
    exit 1
    fi

    title="Nokinux Pre Alpha 0.0.8.2 Script"
    user=`whoami`
    log_apt="$HOME/.nokinux/nokinux_log_apt"
    log_install="$HOME/.nokinux/nokinux_log_install"
    pass=""


    if [ ! -e "$HOME/.nokinux" ]
       then
          zenity --info --text="Nokinux não foi instalado corretamente! Tente novamente!" --title="$title"
                    exit 0
    fi

    function AddCell {

           zenity --info --text="Conecte seu telefone ao computador via cabo USB e pressione OK. . ." --title="$title"

           lsusb | grep Nokia

           if [ $? -eq 0 ];
             then
                   echo "Erro: Dispositivo não encontrado. Verifique se o aparelho está ligado e se está conectado ao PC via cabo USB antes de repetir a operação. . ."
             else
                   until [ $? -eq 0 ]
                    do
                           zenity --question --text="Erro: Dispositivo não encontrado. Verifique se o aparelho está ligado e se está conectado ao PC via cabo USB antes de repetir a operação. . ." --title="$title"
                           if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
                                   then
                                           sudo -k
                                           Start
                                           exit
                           fi

                           lsusb | grep Nokia
                    done
            fi
           idVendor=`lsusb | grep Nokia | cut -d: -f2| cut -d" " -f3`
           idProduct=`lsusb | grep Nokia | cut -d: -f3| cut -d" " -f1`

           cp /etc/udev/rules.d/40-permissions.rules $HOME/.nokinux/
           stringa='BUS=="usb", SYSFS{idVendor}=="'$idVendor'", SYSFS{idProduct}=="'$idProduct'", GROUP="dialout"'
           echo "$pass" | sudo -S echo $stringa >> $HOME/.nokinux/40-permissions.rules

    da_inserire=$stringa

    controlla ()
    {
    cat /etc/udev/rules.d/40-permissions.rules | while read linea;
       do  {
           if [ "$1" == "$linea" ]
               then
                   return 1
           fi
           }
       done
    }
    controlla "$da_inserire"
    if [ $? -eq 1 ]
       then
          echo "O aparelho $idVendor:$idProduct já está instalado. . ."
       else
          echo "O aparelho $idVendor:$idProduct será instalado agora. . ."
          echo "$pass" | sudo -S cp $HOME/.nokinux/40-permissions.rules /etc/udev/rules.d/

           echo "$pass" | sudo chgrp fuse /bin/fusermount && sudo chmod u+s /bin/fusermount && sudo adduser $USER fuse

           echo "$pass" | sudo -S /etc/init.d/udev restart
           touch $HOME/.nokinux/NokiaInstalled
           echo status="installed" >> $HOME/.nokinux/NokiaInstalled
    fi
    }

    function Mount {

           if [ -d $HOME/Nokia ];
            then
                   obexfs -u 1 $HOME/Nokia
            else
                   mkdir $HOME/Nokia
                   obexfs -u 1 $HOME/Nokia
           fi
    zenity --question --text="Você deseja abrir o conteúdo de seu telefone agora?" --title="$title"
                   if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 0 ]
                      then
                          pcmanfm $HOME/Nokia
                   fi
    zenity --question --text="Você optou por não exibir o conteúdo de seu telefone. Deseja remover o dispositivo?" --title="$title"
                   if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 0 ]
                      then
                          Umount
                          echo "Dispositivo Nokia desmontado do sistema."
                          Start
                      else
                          Start
                        fi
    }

    function Umount {
           fusermount -u $HOME/Nokia
             if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
                                   then
                                          echo "Nenhum dispositivo montado. . ."
             fi
    }

    function Modem {
           nm-connection-editor
    }

    function Start {
           choose=`zenity  --height=400 --width=380 --title="Nokinux" --text="Selecione um item e pressione OK.
    As escolhas marcados com * podem danificar
    se o sistema utilizado por um usuário iniciante." --list --column="Escolha" "Conectar um celular Nokia" "Desconectar um celular Nokia" "Conectar outro celular Nokia" "Configurar celular Nokia como modem de banda larga" "** Editar o arquivo de configuração manualmente" "Desinstalar o NOKINUX do PC" "** Fazer ou Restaurar Backup" "Sobre NOKINUX" "Sair" `

           case "$choose" in
              "Conectar um celular Nokia")
                   AddCell
                   Mount
                   Start
                   ;;
              "Desconectar um celular Nokia")
                   Umount
                   Start
                   ;;
              "Conectar outro celular Nokia")
                   AddCell
                   Start
                   ;;
              "Configurar celular Nokia como modem de banda larga")
                   zenity --info --text="Selecione a opção 'Banda Larga Mobile' para configurar a conexão de internet do seu celular!" --title="Como configurar:"
                   Modem
                   Start
                   ;;
              "** Editar o arquivo de configuração manualmente")
                   echo "$pass" | sudo -S gedit /etc/udev/rules.d/40-permissions.rules
                   Start
                   ;;
              "Desinstalar o NOKINUX do PC")
                   zenity --question --text="Você realmente deseja desinstalar $title?" --title="! ! ! Atenção ! ! !"
                   if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
                      then
                           Start
                      else

                    xterm -e 'echo "$pass" | sudo -S apt-get remove -y openobex-apps libopenobex1 obexftp bwidget obexfs pcmanfm tree 2> $log_apt'
           echo "$pass" | sudo -S rm -rf sudo rm -rf $HOME/.nokinux/* $HOME/.nokinux/
           echo "$pass" | sudo -S rm -rf sudo rm -rf /usr/share/nokinux/*
           echo "$pass" | sudo -S rm -rf sudo rm -rf /usr/share/applications/Nokinux-Icon.desktop
                    cd /usr/share/nokinux
                    make clean 
                    zenity --info --text="Desinstalação completa! Agora você pode fechar o programa."
                    exit 0
                        fi
                   
                   ;;
              "** Fazer ou Restaurar Backup")
                   zenity --info --text="Esta função é ainda altamente experimental. Sugerimos que você faça um Backup pelo Nokia PC Suite do Windows antes de testar esse recurso! Nós não nos responsabilizamos ​​pela perda de dados. Atualmente, o backup é limitado a apenas fotos, áudio, vídeo ...
    ATENÇÃO: Infelizmente, você ainda não pode salvar SMS, MMS ou Contatos!
    Recomendamos que esta função seja usada apenas por programadores e testadores beta, uma vez que ainda não está pronto para uso e tem muitos bugs!" --title="$title"
                   backup
                   Start
                   ;;
               "Sobre NOKINUX")
                   zenity --info --text="Script NOKINUX By Team $title (Licenza GPL)" --title="$title"
                   zenity --question --text="Quer ver o site oficial do projeto NOKINUX?" --title="$title"
                   if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 0 ]
                      then
                         firefox www.nokinux.it
                   fi
                   
                   Start
                   ;;
               "Sair")
                   zenity --question --text="Você realmente quer sair do NOKINUX?" --title="$title"
                   if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 0 ]
                      then
                          Umount
                          exit 0
                      else
                          Start
                        fi
                   ;;
           esac
          zenity --question --text="Você realmente quer sair do NOKINUX?" --title="$title"
                   if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 0 ]
                      then
                          Umount
                          exit 0
                      else
                          Start
                        fi
    }

    function backup {
           choose=`zenity  --height=400 --width=380 --title="Menu Principal" --text="Selecione um item e pressione OK" --list --column="Escolha" "Backup C:" "Backup E:" "Restaurar Backup C:" "Restaurar Backup E:" "Voltar" `

           case "$choose" in
              "Backup C:")
                   if [ -d $HOME/Nokia ];
                        then
                   obexfs -u 1 $HOME/Nokia
                        else
                   mkdir $HOME/Nokia
                   obexfs -u 1 $HOME/Nokia
                   fi
                   cartella_scelta=`zenity --file-selection --title="Onde deseja salvar o Backup?" --directory --filename=$HOME/`
                   # prende il valore di ritorno del comando precedente
                   ritorno=$?
                   # controlla se si è premuto OK o Annulla
                   if [ "$ritorno" -ne 0 ]; then
                   # è stato premuto annulla o chiusa la finestra
                       zenity --warning --title="Parada não prevista!" --text="Você cancelou a operação"
                   backup
                   fi
                   nome_backup=`zenity --entry --text="Digite o nome do arquivo de backup (recomendamos citar a data do backup)" --title="Qual o nome?"`
                   zenity --info --title="Localização selecionada!" --text="Você optou por salvar o arquivo em: $cartella_scelta/$nome_backup.tar.gz"
                   cd $cartella_scelta
                   tar cvzPf "${nome_backup}.tar.gz" "$HOME/Nokia/C:" | zenity --progress --pulsate --text="Criando um backup (memória interna) ..."  --title="Lendo dados do dispositivo e criando arquivo de backup. . ." --auto-close
                   zenity --info --text="Parece que tudo ocorreu bem! Verifique o arquivo recém-criado." --title="$title"
                   fusermount -u $HOME/Nokia
             if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
                                   then
                                          echo "Nenhum dispositivo montado. . ."
             fi
                   backup
                   ;;
              "Backup E:")
                    if [ -d $HOME/Nokia ];
                        then
                   obexfs -u 1 $HOME/Nokia
                        else
                   mkdir $HOME/Nokia
                   obexfs -u 1 $HOME/Nokia
                   fi
                   cartella_scelta=`zenity --file-selection --title="Onde deseja salvar o Backup?" --directory --filename=$HOME/`
                   # prende il valore di ritorno del comando precedente
                   ritorno=$?
                   # controlla se si è premuto OK o Annulla
                   if [ "$ritorno" -ne 0 ]; then
                   # è stato premuto annulla o chiusa la finestra
                       zenity --warning --title="Parada não prevista!" --text="Você cancelou a operação."
                   backup
                   fi                 
                   nome_backup=`zenity --entry --text="Digite o nome do arquivo de backup (recomendamos citar a data do backup):" --title="Qual o nome?"`
                   zenity --info --title="Localização selecionada!" --text="Você optou por salvar o arquivo em: $cartella_scelta/$nome_backup.tar.gz"
                   cd $cartella_scelta
                   tar cvzPf "${nome_backup}.tar.gz" "$HOME/Nokia/E:" | zenity --progress --pulsate --text="Criando um backup (memória externa) ..."  --title="Lendo dados do dispositivo e criando arquivo de backup. . ." --auto-close
                   zenity --info --text="Parece que tudo ocorreu bem! Verifique o arquivo recém-criado" --title="$title"
                   fusermount -u $HOME/Nokia
             if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
                                   then
                                          echo "Nenhum dispositivo montado. . ."
             fi
                   backup
                   ;;
             "Restaurar Backup C:")
                   if [ -d $HOME/Nokia ];
                        then
                   obexfs -u 1 $HOME/Nokia
                        else
                   mkdir $HOME/Nokia
                   obexfs -u 1 $HOME/Nokia
                   fi
                   file_backup=`zenity --file-selection --title="Onde está o arquivo de backup a ser restaurado?" --filename=$HOME/`
                   tar xvzPf $file_backup -C "$HOME/Nokia/C:" | zenity --progress --pulsate --text="Restaurar o backup (memória externa)..."  --title="Lendo dados do dispositivo e restaurando arquivo de backup. . ." --auto-close
                   zenity --info --text="O processo está completo. Verifique se está tudo em ordem no seu telefone Nokia." --title="$title"
                   fusermount -u $HOME/Nokia
             if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
                                   then
                                          echo "Nenhum dispositivo montado. . ."
                                           
             fi
                   backup
                   ;;
              "Restaurar Backup E:")
                   if [ -d $HOME/Nokia ];
                        then
                   obexfs -u 1 $HOME/Nokia
                        else
                   mkdir $HOME/Nokia
                   obexfs -u 1 $HOME/Nokia
                   fi
                   file_backup=`zenity --file-selection --title="Onde está o arquivo de backup a ser restaurado?" --filename=$HOME/`
                   tar xvzPf $file_backup -C "$HOME/Nokia/E:" | zenity --progress --pulsate --text="Restaurar o backup (memória externa)..."  --title="Lendo dados do dispositivo e restaurando arquivo de backup. . ." --auto-close
                   zenity --info --text="O processo está completo. Verifique se está tudo em ordem no seu telefone Nokia." --title="$title"
                   fusermount -u $HOME/Nokia
             if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
                                   then
                                          echo "Nenhum dispositivo montado. . ."
                                           
             fi
                   backup
                   ;;
               "Voltar")
                   Start
                   ;;
           esac
                  if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 1 ]
                      then
                          Start
                      else
                          backup
                         
                        fi

    }



    function GetRoot {

    if [ "$pass" == "" ]
    then
            pass=`zenity --entry --hide-text --text="Digite a senha de root:" --title="Privilégios de Superusuário"`
            if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 1 ]
                then
                    zenity --question --text="Você realmente quer sair do NOKINUX?" --title="$title"
                    if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -eq 0 ]
                            then
                                    exit
             else
                GetRoot
                exit
                    fi
            fi


            echo "$pass" | sudo -S -l

            if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 2` -ne 0 ]
                    then
                            pass=""
                            zenity --warning --title="Senha Errada!" --text="Atenção! Este aplicativo tem acesso restrito. Entre em contato com o administrador do Sistema. Caso tenha digitado errado; tente novamente!"
                            GetRoot

            fi
    fi
    }

    if [ "$(id -u)" == "0" ]; then
        zenity --info --text="Executar script sem permissões de root! Não use SUDO!" --title=$title
        exit 1
    fi
    # Visualizzazione del logo!
    cd /usr/share/nokinux
    ./splash 3     
    # Avvio del programma vero e proprio
    sudo -k

    fusermount -u $HOME/Nokia
    if [ `echo ${PIPESTATUS
  • } | cut -d " " -f 1` -ne 0 ]
       then
          echo "Nenhum dispositivo montado. . ."
    fi

    GetRoot
    Start
Samsung Ativ Book i3 - Ubuntu 20.04LTS