staging.inyokaproject.org

Seit Nutzung von UMTS-Stick automatisch als root angemeldet

Status: Gelöst | Ubuntu-Version: Xubuntu 11.10 (Oneiric Ocelot)
Antworten |

Semreh

Anmeldungsdatum:
1. November 2008

Beiträge: 483

Hi,

seit kurzem habe ich einen "True Move" UMTS-Stick für die Internetverbindung in Thailand. Seit ich diesen Stick benutze bin ich prinzipiell als root angemeldet, dh zum Installieren oder sudo-Befehle ausführen wird kein Passwort verlangt. Nicht temporär begrenzt sondern ständig, auch bereits vor Einstecken des Sticks. Ein anderes Laptop mit Mint 11.04 (Gnome2) zeigt das gleiche Verhalten seit Nutzung dieses Sticks, nur daß sich hier das True Move-Frontend öffnet. Bei Xubuntu wird die Verbindung einfach über den Networkmanager hergestellt.

Zur Installation des Sticks habe ich mich an diese "readme"-File gehalten:

--How to Install----------------------
* You need login as root *

1. Run "tar jxvf linux_install.tar.bz2"

2. Run "./install" in TERMINAL to install MobilePartner
   eg: # bash /<path>/install
   
3. If you had installed this software in your system before, you will get a prompt: "The software is exist, do you want overwrites? ([Y]/[N])", enter "y" to overwrites or "n" to exit.

4. If you do not had installed this software in your system before, you will get a prompt: "Please input the install path[/usr/local/Mobile_Partner]:". Then you can input install path(fullpath), or you may using the default path(/usr/local/Mobile_Partner) by press ENTER direct

5. Finish installing

--How to run--------------------------
* From shortcut in desktop

* Run MobilePartner in your install path
   eg: # /<install path>/MobilePartner

* Plug in your device, it will run automatically (Not supported in Xandros)

Die "./install"-Datei mit dem Texteditor geöffnet sieht so aus, falls jemand daraus was erkennen kann?!:

#!/bin/bash
#
###############################################################################
#                                                                             #
#              »ªÎªÖÕ¶ËÊýŸÝ¿šlinux ºóÌš×¢²áÈíŒþ                               #
#              °æÈšÊôÓÚ»ªÎªŒŒÊõÓÐÏÞ¹«ËŸ£¬²»µÃµÁÓã¬Î¥Õ߱؟¿                   #
#              Huawei linux MobilePartner licensed software                   #
#              Copyright (c) 2007-2008 by Huawei Tech. Corp. Ltd..            #
#              ×÷ÕߣºÕÅÇ¬Žº 2008.7.8                                          #
#                                                                             #
###############################################################################
#

BAKCURRENTPATH=`pwd`
SOFTWARENAME="TrueMove H hi-speed connection"
# g122020 2010.01.11 modify AJ2D15737
INSTALLWORKPATH="$(dirname "$0")"
CONFIG_FILE="/etc/datacard_config"
HOOK_FILE="/etc/pm/sleep.d"
USERDATA_PATH="/usr/local/hw_mp_userdata"
# g122020 2010.01.29 AJ2D15962
PPPD_PATH="/usr/local/hw_pppd"

FULLVERSION=23.003.07.00.900

SOFTWARENAMEINDESKTOP=$SOFTWARENAME
SOFTWARENAME=$(echo $SOFTWARENAME | sed s\#\ \#_\#g)

INSTALLPATH="/usr/local/${SOFTWARENAME}"
TEMPWORKPATH="/tmp/${SOFTWARENAME}_$$"
TEMPFILE="${SOFTWARENAME}_install_$PPID"

# add by zkf20747 for printing install log  DTS2010111102824 begin
PRINTDAY=`date +%m/%d/%Y`
PRINTDETAILTIME=`date +%H:%M:%S`
PRINTWEEK=`date +%A`
PRINTTIME=`echo Date=$PRINTDAY '('$PRINTWEEK')' Time=$PRINTDETAILTIME`
INSTALLLOGFILE="/tmp/UTPSInstall.log"
#System Language
SYSLANG="$(echo $LANG | cut -d '.' -f 1)"
# add by zkf20747 for printing install log  DTS2010111102824 end
#Language String
LANGUAGESTRING[0]="zh"
LANGUAGESTRING[1]="en_US"
LANGUAGECODE[0]=0
LANGUAGECODE[1]=1


LANGCODE=${LANGUAGECODE[1]}
i=0
while [ ".${LANGUAGESTRING[${i}]}" != "." ]
do
    if [ ${LANGUAGESTRING[${i}]} = "${SYSLANG}" ] # modify by zkf20747 for printing install log DTS2010111102824
    then
        LANGCODE=${LANGUAGECODE[${i}]}
        break
    fi
    i=`expr ${i} + 1`
done
unset i

# add by zkf20747 for printing install log DTS2010111102824 begin
BEGININSTALL="Install..."
CREATETEMPWORKSPACE="Create temp work directory..."
SOFTINSTALLPATH="Installation Path is :"
EXTRACTDATABIN="Extract data.bin to install directory..."
EXTRACTDATABINRESULT="Extract data.bin success!"
EXTRACTMPBIN="Extract MobilePartner.bin to install directory..."
EXTRACTMPBINRESULT="Extract MobilePartner.bin success!"
INSTALLINGVERSION="PC will install new version is"
INSTALLHIGHVERSION="An old version  has been installed."
INSTALLSAMEVERSION="An same version has been installed."
INSTALLOLDERVERSION="An new version new has been installed."
CREATEINSTALLDIR="Create install directory ..."
PREPARECOPYFILES="Copy MobilePartner.bin,data.bin,7zr..."
PREPARECOPYFILESRESULT="Copy files success!"
EXECUTEDRIVER="Execute driver..."
CREATEDESKTOP="Create Desktop Shortcut..."
CREATEPROGRAMDESKTOP="Create ProgramGroup Shortcut..."
DELETEALLLOCALFILES="Delete all local files (tempfiles,tempdirectory)..."
ENDINSTALL="Install Success!"
# add by zkf20747 for printing install log DTS2010111102824 end
LYouMustBeRoot[0]="Äú±ØÐëÒÔrootÓû§ÔËÐбŸ°²×°³ÌÐò"
LYouMustBeRoot[1]="You must run the process by root"

LPlsInputInstallPath[0]="ÇëÊäÈë°²×°µÄŸø¶Ô·Ÿ¶"
LPlsInputInstallPath[1]="Please input the absolute path for install"

LInstallPath[0]="°²×°Â·Ÿ¶"
LInstallPath[1]="install path"

LIllegal[0]="·Ç·š"
LIllegal[1]="illegal"

LNoFile[0]="ÕÒ²»µœÎÄŒþ£º"
LNoFile[1]="Can not find file: "

LCanNotCreateDir[0]="ÎÞ·šŽŽœšÄ¿ÂŒ"
LCanNotCreateDir[1]="Can not create dir"

LMobilePartnerInstall[0]="${SOFTWARENAMEINDESKTOP}°²×°³ÌÐò"
LMobilePartnerInstall[1]="${SOFTWARENAMEINDESKTOP} installer"

LStartInstallPartner[0]="¿ªÊŒ°²×°ºóÌš, ÇëÉÔºó..."
LStartInstallPartner[1]="Installing ${SOFTWARENAMEINDESKTOP}..."

LCompleteInstallPartner[0]="ÒÑŸ­Íê³ÉºóÌš°²×°"
LCompleteInstallPartner[1]="install have completed, local path is"

LLocalPath[0]="±ŸµØ°²×°Â·Ÿ¶"
LLocalPath[1]="Local path is"

LOverwriteInstalled[0]="ÒÑŸ­°²×°ÓкóÌš, ÊÇ·ñž²žÇ"
LOverwriteInstalled[1]="The software is exist. Do you want overwrite it"

LInstallJRE[0]="°²×°JRE"
LInstallJRE[1]="install JRE"

LInstallMP[0]="°²×°ºóÌš"
LInstallMP[1]="install ${SOFTWARENAMEINDESKTOP}"

LInstallAll[0]="°²×°JREºÍºóÌš"
LInstallAll[1]="install JRE and ${SOFTWARENAMEINDESKTOP}"

LQuitInstall[0]="Í˳ö"
LQuitInstall[1]="Exit"

LPlsSelect[0]="ÇëÑ¡Ôñ£º"
LPlsSelect[1]="Please select: "

LYouMustSelect[0]="Äã±ØÐëÑ¡Ôñ£º"
LYouMustSelect[1]="You must select: "

LInstallEnd[0]="œáÊø, °ŽÈÎÒâŒüÍ˳ö"
LInstallEnd[1]="Finished, press any key to exit"

LInstallingVersionOlderThenInstalled[0]="Ÿ¯žæ£ºÕýÔÚ°²×°µÄ°æ±Ÿ±ÈϵͳÖеİ江ŸÉ¡£ÊÇ·ñž²žÇ£¿"
LInstallingVersionOlderThenInstalled[1]="WARNING: The installing version is older than installed. Do you want to overwrite it"

LInstallingVersionLaterThenInstalled[0]="ϵͳÖÐŽæÔڟɰ江¡£ÊÇ·ñÉýŒ¶£¿"
LInstallingVersionLaterThenInstalled[1]="There is a older version in your system. Do you want to update it"

LInstalledVersion[0]="ÒѰ²×°°æ±Ÿ:"
LInstalledVersion[1]="Installed version:"

LInstallingVersion[0]="ÕýÔÚ°²×°°æ±Ÿ:"
LInstallingVersion[1]="Installing version:"

LProgramRunning[0]="ÇëÏȹرճÌÐòÔÙœøÐÐÐ¶ÔØ¡£"
LProgramRunning[1]="Program is running, you need close it before uninstalling."

# add by zkf20747 for printing install log DTS2010111102824 begin
LCheckRun[0]="Program is running, you need close it before installing.";
LCheckRun[1]="³ÌÐòÕýÔÚÔËÐУ¬°²×°Ö®Ç°ÇëÏȹرÕ."
# add by zkf20747 for printing install log DTS2010111102824 end


#begin DTS2011052404155 add by d00135750 for promote user to delete the uerdata files
LDeleteUserdata[0]="ÊÇ·ñҪɟ³ýËùÓеÄÓû§ÊýŸÝÎÄŒþ"
LDeleteUserdata[1]="Do you want to delete all user data files"
#end DTS2011052404155 add by d00135750 for promote user to delete the uerdata files

# /*yes or no ¹«¹²º¯Êý, yes·µ»Ø0, no·µ»Ø1*/
yes_or_no()
{
    if [ ${#} -ne 2 ]
    then
        echo -e "yes_or_or: ${ErrorPara[${LANGCODE}]}"
        return 1
    fi
    if [ "${2}" = "Y" ]
    then
        DEFPMPT="([Y]/N):\c "
        DEFVAL="Y"
    else
        DEFPMPT="(Y/[N]):\c "
        DEFVAL="N"
    fi
    echo -e "${1} ${DEFPMPT}"
    read ANS
    while [ "${ANS}" != "Y" -a "${ANS}" != "y" -a "${ANS}" != "N" -a "${ANS}" != "n" -a ! -z "${ANS}" ]
    do
        echo -e "${1} ${DEFPMPT}"
        read ANS
    done
    : ${ANS:="${DEFVAL}"}
    if [ "${ANS}" != "Y" -a "${ANS}" != "y" ]
    then
        unset ANS
        return 1
    fi
    unset ASN
    return 0
}

#Œì²éÆô¶¯°²×°œÅ±ŸµÄÓû§ÊÇ·ñΪrootÓû§
CheckID()
{
    if [ `id | awk '{print $1}'` != "uid=0(root)" ]
    then
        echo -e "${LYouMustBeRoot[${LANGCODE}]}"
        echo -e "\n${LInstallEnd[${LANGCODE}]}"
        read -n 1
	clear
        exit
    fi
}

#Œì²éµ±Ç°ÊÇ·ñÓкóÌšÕýÔÚÔËÐÐ
CheckRunning()
{
    RUNJAR=`ps -ef |grep -v grep |grep MobilePartner.jar | awk '{print $2}'`
    RUNBIN=`ps -ef |grep -v grep |grep MobilePartner.bin | awk '{print $2}'`
    if [ "x${RUNJAR}" != "x" ]
    then
        echo -e "${LCheckRun[${LANGCODE}]}" # modify by zkf20747 for printing install log DTS2010111102824
        read RESP
        exit
    fi

    if [ "x${RUNBIN}" != "x" ]
    then
        echo -e "${LCheckRun[${LANGCODE}]}" # modify by zkf20747 for printing install log DTS2010111102824
        read RESP
        exit
    fi
}

#Œì²éÏà¹ØÎÄŒþ£¬ÔÚÓ²ÅÌÉÏœšÁ¢Žæ·Å°²×°ÎÄŒþµÄÁÙʱĿŒ£¬²¢¿œ±Ž°²×°ÎÄŒþµœžÃĿŒ
PreInstall()
{
    # add by zkf20747 for printing install log DTS2010111102824 begin
    echo -e "========================================================" >> ${INSTALLLOGFILE}
    echo -e $PRINTTIME '    ' ${BEGININSTALL} >> ${INSTALLLOGFILE}
    # add by zkf20747 for printing install log DTS2010111102824 end
    #Œì²é°²×°°üÎÄŒþ
    if [ ! -f "${INSTALLWORKPATH}"/MobilePartner.bin ]
    then
        echo -e "${LNoFile[${LANGCODE}]}MobilePartner.bin"
        exit
    fi
    if [ ! -f "${INSTALLWORKPATH}"/data.bin ]
    then
        echo -e "${LNoFile[${LANGCODE}]}data.bin"
        exit
    fi
    if [ ! -f "${INSTALLWORKPATH}"/7zr ]
    then
        echo -e "${LNoFile[${LANGCODE}]}7zr"
        exit
    fi
 
    if [ ! -d "${TEMPWORKPATH}" ]
    then
        mkdir ${TEMPWORKPATH}
        echo -e $PRINTTIME '    ' ${CREATETEMPWORKSPACE} >> ${INSTALLLOGFILE}  #add by zkf20747 for printing install log DTS2010111102824
    fi
    if [ ! -d "${TEMPWORKPATH}" ]
    then
        echo -e "\n${LCanNotCreateDir[${LANGCODE}]}: ${TEMPWORKPATH}"
        exit
    fi
    
    #¿œ±ŽºóÌš°²×°ÎÄŒþ
    echo -e $PRINTTIME '    ' ${PREPARECOPYFILES} >> ${INSTALLLOGFILE}  #add by zkf20747 for printing install log DTS2010111102824 
    cp -f "${INSTALLWORKPATH}"/MobilePartner.bin ${TEMPWORKPATH}
    cp -f "${INSTALLWORKPATH}"/data.bin ${TEMPWORKPATH}
    cp -f "${INSTALLWORKPATH}"/7zr ${TEMPWORKPATH}
    echo -e $PRINTTIME '    ' ${PREPARECOPYFILESRESULT} >> ${INSTALLLOGFILE}  #add by zkf20747 for printing install log DTS2010111102824
    chmod +x ${TEMPWORKPATH}/7zr

    #¿œ±Ž°²×°œÅ±ŸµœÓ²ÅÌÉÏ
    cp -f "${INSTALLWORKPATH}"/install ${TEMPWORKPATH}
    chmod a+x ${TEMPWORKPATH}/install    
    

    #add by liuzhiqiang... begin
    if [ -f $CONFIG_FILE ]
    then
        #»ñÈ¡°æ±ŸÐÅÏ¢
        . $CONFIG_FILE

        #»ñȡϵͳÖÐÒÑŸ­°²×°µÄ°æ±ŸºÅ
        VRVERSIONINSTALLED=`echo $FullVersion | cut -d '.' -f1`
        BUILDVERSIONINSTALLED=`echo $FullVersion | cut -d '.' -f2`
        DEVELOPVERSIONINSTALLED=`echo $FullVersion | cut -d '.' -f3`
        SPVERSIONINSTALLED=`echo $FullVersion | cut -d '.' -f4`
        CUSTOMIZEVERSIONINSTALLED=`echo $FullVersion | cut -d '.' -f5`
        
        #»ñÈ¡ÕýÔÚ°²×°µÄ°æ±ŸºÅ
        VRVERSIONINSTALLING=`echo $FULLVERSION | cut -d '.' -f1`
        BUILDVERSIONINSTALLING=`echo $FULLVERSION | cut -d '.' -f2`
        DEVELOPVERSIONINSTALLING=`echo $FULLVERSION | cut -d '.' -f3`
        SPVERSIONINSTALLING=`echo $FULLVERSION | cut -d '.' -f4`
        CUSTOMIZEVERSIONINSTALLING=`echo $FULLVERSION | cut -d '.' -f5`
        
        #ŽòÓ¡°æ±ŸÐÅÏ¢
        echo "${LInstalledVersion[${LANGCODE}]} ${FullVersion}"
        echo "${LInstallingVersion[${LANGCODE}]} ${FULLVERSION}"
        
         # add by zkf20747 for printing install log DTS2010111102824 begin
         echo -e $PRINTTIME '    ' "the installed version is  " $FullVersion >> ${INSTALLLOGFILE}
         echo -e $PRINTTIME '    ' "the installing version is  " $FULLVERSION >> ${INSTALLLOGFILE}
         # add by zkf20747 for printing install log DTS2010111102824 end
        #Œì²éÒÑŸ­°²×°µÄ°æ±ŸÊÇ·ñžüÐÂ
        while [ 1 ]
        do
            #±ÈœÏVR°æ±ŸºÅ£¬²»ÏàͬÔòÌáÊŸÓû§ž²žÇ°²×°
            if [ $VRVERSIONINSTALLED -ne $VRVERSIONINSTALLING ]
            then
                InstallDifferentVersionPrompt
                break
            fi
            
            #±ÈœÏC°æ±ŸºÅ£¬²»ÏàͬÔòÌáÊŸÓû§ž²žÇ°²×°
            if [ $CUSTOMIZEVERSIONINSTALLED -ne $CUSTOMIZEVERSIONINSTALLING ]
            then
                InstallDifferentVersionPrompt
                break
            fi
            
            #±ÈœÏB°æ±ŸºÅ
            if [ $BUILDVERSIONINSTALLED -gt $BUILDVERSIONINSTALLING ]
            then
                #Èç¹ûÒѰ²×°µÄB°æ±ŸºÅœÏУ¬ÔòÌáÊŸÓû§ÒÑŸ­°²×°ÁËœÏеĺóÌš°æ±Ÿ£¬ÊÇ·ñŒÌÐø
                InstallOlderVersionPrompt
                break
            elif [ $BUILDVERSIONINSTALLED -lt $BUILDVERSIONINSTALLING ]
            then
                #Èç¹ûÒѰ²×°µÄB°æ±ŸºÅœÏÀÏ£¬²»ÐèÒªŒÌÐø±ÈœÏD°æ±ŸºÍSP°æ±Ÿ£¬Ö±œÓž²žÇ°²×°
                InstallLaterVersionPrompt
                break
            fi 
            
            #±ÈœÏD°æ±ŸºÅ
            if [ $DEVELOPVERSIONINSTALLED -gt $DEVELOPVERSIONINSTALLING ]
            then
                #Èç¹ûÒѰ²×°µÄD°æ±ŸºÅœÏУ¬ÔòÌáÊŸÓû§ÒÑŸ­°²×°ÁËœÏеĺóÌš°æ±Ÿ£¬ÊÇ·ñŒÌÐø
                InstallOlderVersionPrompt
                break
            elif [ $DEVELOPVERSIONINSTALLED -lt $DEVELOPVERSIONINSTALLING ]
            then
                #Èç¹ûÒѰ²×°µÄD°æ±ŸºÅœÏÀÏ£¬²»ÐèÒªŒÌÐø±ÈœÏSP°æ±Ÿ£¬Ö±œÓž²žÇ°²×°
                InstallLaterVersionPrompt
                break
            fi
            
            #±ÈœÏSP°æ±ŸºÅ
            if [ $SPVERSIONINSTALLED -gt $SPVERSIONINSTALLING ]
            then
                #Èç¹ûÒѰ²×°µÄSP°æ±ŸºÅœÏУ¬ÔòÌáÊŸÓû§ÒÑŸ­°²×°ÁËœÏеĺóÌš°æ±Ÿ£¬ÊÇ·ñŒÌÐø
                InstallOlderVersionPrompt
                break
            elif [ $SPVERSIONINSTALLED -lt $SPVERSIONINSTALLING ]
            then
                #Èç¹ûÒѰ²×°µÄSP°æ±ŸºÅœÏÀÏ£¬Ö±œÓž²žÇ°²×°
                InstallLaterVersionPrompt
                break
            fi
            
            #×ßµœÕâ±íÊŸËùÓа江ºÅÒ»Ö£¬žø³öÌáÊŸÊÇ·ñž²žÇ
            InstallSameVersionPrompt
            break
        done

        INSTALLPATH=`egrep "^path=" $CONFIG_FILE | awk -F  '=' '{print $2}'`
        
    else
        #ÊäÈ밲װĿŒ
        echo -e "\n ${LPlsInputInstallPath[${LANGCODE}]}[${INSTALLPATH}]: \c"
        read ANS
        : ${ANS:="${INSTALLPATH}"}
        INSTALLPATH=${ANS}
        
        #Œì²éĿŒµÄºÏ·šÐÔ
        if [[ ${INSTALLPATH} != /* ]]
        then
            echo -e "\n${LInstallPath[${LANGCODE}]} ${LIllegal[${LANGCODE}]}"
            DisplayEndMsg
            exit
        fi
        
        #ʹ°²×°Ä¿ÂŒºÏÀí»¯
        if [  -d "${INSTALLPATH}" ]
        then
            INSTALLPATH=${INSTALLPATH}/${SOFTWARENAME}
        fi
    fi
    
    #ŽŽœš°²×°Ä¿ÂŒ
    if [ ! -d "${INSTALLPATH}" ]
    then
        mkdir ${INSTALLPATH}
        echo -e $PRINTTIME '    ' ${CREATEINSTALLDIR} >> ${INSTALLLOGFILE}  #add by zkf20747 for printing install log DTS2010111102824
    fi
    if [ ! -d "${INSTALLPATH}" ]
    then
        echo -e "\n${LCanNotCreateDir[${LANGCODE}]}: ${INSTALLPATH}"
        DisplayEndMsg
        exit
    fi

    echo -e "\n${LLocalPath[${LANGCODE}]}: ${INSTALLPATH}"
    #add by zkf20747 for printing install log DTS2010111102824 begin
    echo -e $PRINTTIME '    ' ${SOFTINSTALLPATH} ${INSTALLPATH} >> ${INSTALLLOGFILE}
    echo -e $PRINTTIME '    ' ${INSTALLINGVERSION} ${FULLVERSION} >> ${INSTALLLOGFILE}
    #add by zkf20747 for printing install log DTS2010111102824 end
}

InstallLaterVersionPrompt()
{
    #а江£¬ÌáÊŸÊÇ·ñÉýŒ¶	
    yes_or_no "\n${LInstallingVersionLaterThenInstalled[${LANGCODE}]}?" Y
    if [ ${?} -ne 0 ]
    then
        DisplayEndMsg
        exit
    fi
    echo -e $PRINTTIME '    ' $INSTALLHIGHVERSION >> ${INSTALLLOGFILE} # add by zkf20747 2010-8-5 DTS2010080302845  
}

InstallSameVersionPrompt()
{
    #Èç¹ûÒÔǰÒÑŸ­°²×°¹ýºóÌšÔòÌáÊŸÊÇ·ñž²žÇ	
    yes_or_no "\n${LOverwriteInstalled[${LANGCODE}]}?" Y
    if [ ${?} -ne 0 ]
    then
        DisplayEndMsg
        exit
    fi
    echo -e $PRINTTIME '    ' $INSTALLSAMEVERSION >> ${INSTALLLOGFILE} # add by zkf20747 2010-8-5 DTS2010080302845
}

InstallOlderVersionPrompt()
{
    #°²×°µÄ°æ±Ÿ±ÈϵͳÖеİ江ŸÉ£¬žø³öÌáÊŸ
    yes_or_no "\n${LInstallingVersionOlderThenInstalled[${LANGCODE}]}?" N
    if [ ${?} -ne 0 ]
    then
        DisplayEndMsg
        exit
    fi
    echo -e $PRINTTIME '    ' $INSTALLOLDERVERSION >> ${INSTALLLOGFILE} # add by zkf20747 2010-8-5 DTS2010080302845
}

InstallDifferentVersionPrompt()
{
    #Èç¹ûÒÔǰÒÑŸ­°²×°¹ýºóÌšÔòÌáÊŸÊÇ·ñž²žÇ	
    yes_or_no "\n${LOverwriteInstalled[${LANGCODE}]}?" Y
    if [ ${?} -ne 0 ]
    then
        DisplayEndMsg
        exit
    fi
}

#°²×°ºóÌš
InstallMobilePartner()
{
    #   Madhu added to set the library path
    # DTS2011042605304 2011-5-12 end
    unset LD_LIBRARY_PATH
    #echo -e "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${INSTALLPATH} \n export LD_LIBRARY_PATH \n" > ${HOME}/.bash_profile
    # DTS2011042605304 2011-5-12 end
    echo -e -n "\n${LStartInstallPartner[${LANGCODE}]}"
    
    cd "${INSTALLPATH}"
#ÔÚ°²×°Â·Ÿ¶ÏœâѹËõ°²×°°ü   
#    tar jxf ${TEMPWORKPATH}/MobilePartner.tar.bz2 >/dev/null 2>&1
     echo -e $PRINTTIME '    ' ${EXTRACTMPBIN} >> ${INSTALLLOGFILE} #add by zkf20747 for printing install log DTS2010111102824
    "${TEMPWORKPATH}/7zr" x -y ${TEMPWORKPATH}/MobilePartner.bin >/dev/null 2>&1
     echo -e $PRINTTIME '    ' ${EXTRACTMPBINRESULT} >> ${INSTALLLOGFILE} #add by zkf20747 for printing install log DTS2010111102824
     echo -e $PRINTTIME '    ' ${EXTRACTDATABIN} >> ${INSTALLLOGFILE}   #add by zkf20747 for printing install log DTS2010111102824
    "${TEMPWORKPATH}/7zr" x -y ${TEMPWORKPATH}/data.bin >/dev/null 2>&1
     echo -e $PRINTTIME '    ' ${EXTRACTDATABINRESULT} >> ${INSTALLLOGFILE}  #add by zkf20747 for printing install log DTS2010111102824
#    chmod -R a+w "${INSTALLPATH}"/userdata
#    chmod -R a+w "${INSTALLPATH}"/log 	
    chmod -R a+w "${INSTALLPATH}"/config 
    
    #begin DTS2011052404155 add by d00135750 for promote user to delete the uerdata files
    PromoteDeleteUserData
    #begin DTS2011052404155 add by d00135750 for promote user to delete the uerdata files


#ÔËÐÐÇý¶¯¹€Ÿß°²×°œÅ±Ÿ
    chmod -R a+x ./driver/*
    #./driver/install ${INSTALLPATH} >/dev/null  2>&1
    echo -e $PRINTTIME '    ' ${EXECUTEDRIVER} >> ${INSTALLLOGFILE} #add by zkf20747 for printing install log DTS2010111102824
    ./driver/install ${INSTALLPATH} .bin

#Joven 2009.09.03 add
#°²×°CommMgr²¢ÉèÖÃΪϵͳ·þÎñ
#    chmod +x ./CommMgr/*
#    cd CommMgr
#    ./install_CommMgr ${INSTALLPATH} >/dev/null  2>&1
#    cd ..
    
#copyÏà¹ØÎÄŒþµœÏàӊĿŒ

    #¿œ±Ž²ŠºÅÏà¹ØÎÄŒþ
    chmod a+x ./sbin/*
    chmod -R a+w ./hw_pppd
    chmod -R a+x ./hw_pppd
# ubuntu10.10 cann't modem connect begin
    ./hw_pppd/sbin/install_pppd 
    rm -rf ./hw_pppd/sbin/install_pppd
    rm -rf /usr/local/hw_pppd
# ubuntu10.10 cann't modem connect end
    cp -rf ./hw_pppd /usr/local/

    #copy QT libs to Mobile Partner directory
    cp -lrf ${INSTALLPATH}/qtlib/lib*.so* ${INSTALLPATH}

    #copyÔÚÏßÉýŒ¶ÐèÒªµÄ¶¯Ì¬¿âÎÄŒþµœÏàӊĿŒ
    #copy only when UpdateDog directory exists
    if [ -d ${INSTALLPATH}/UpdateDog ]
    then
        cp -lrf ${INSTALLPATH}/qtlib/lib*.so* ${INSTALLPATH}/UpdateDog
        cp -lrf ${INSTALLPATH}/plugins/imageformats/libqgif.so ${INSTALLPATH}/UpdateDog/plugins/imageformats
        cp -lrf ${INSTALLPATH}/plugins/imageformats/libqico.so ${INSTALLPATH}/UpdateDog/plugins/imageformats
    fi

#uncommenting this to create /usr/local/hw_mobile_userdata/Mobile_Partner    
    #¿œ±ŽÓû§ÊýŸÝÎÄŒþŒÐ
   if [ ! -d ${USERDATA_PATH} ]
   then
       mkdir $USERDATA_PATH
       mkdir ${USERDATA_PATH}/${SOFTWARENAME}
       #20091112 c00106366 add - create userdata folder 
       mkdir ${USERDATA_PATH}/${SOFTWARENAME}/userdata 
       # do not create userdata directory.
       # cp -rf ./userdata ${USERDATA_PATH}/${SOFTWARENAME}
       chmod -R a+w ${USERDATA_PATH}
       chmod -R a+r ${USERDATA_PATH}
   else
       #Èç¹ûŽæÔÚÏàͬÈíŒþÃû³ÆµÄÓû§ÊýŸÝ£¬²»ž²žÇ
       if [ ! -d ${USERDATA_PATH}/${SOFTWARENAME} ]
       then
           mkdir ${USERDATA_PATH}/${SOFTWARENAME}
           #20091112 c00106366 add - create userdata folder 
           mkdir ${USERDATA_PATH}/${SOFTWARENAME}/userdata 
           # do not create userdata directory.
           # cp -rf ./userdata ${USERDATA_PATH}/${SOFTWARENAME}
           chmod -R a+w ${USERDATA_PATH}
           chmod -R a+r ${USERDATA_PATH}
#begin DTS2011052404155 add by d00135750 for promote user to delete the uerdata files
       else
           if [ ! -d ${USERDATA_PATH}/${SOFTWARENAME}/userdata ]
           then
               mkdir ${USERDATA_PATH}/${SOFTWARENAME}/userdata
               chmod -R a+w ${USERDATA_PATH}
               chmod -R a+r ${USERDATA_PATH}
           fi
#end DTS2011052404155 add by d00135750 for promote user to delete the uerdata files
       fi
   fi

   #20091112 c00106366 add - set the permission of userdata folder
   chmod -R a+rwx ${USERDATA_PATH}/${SOFTWARENAME}
   
   # create userdata/log directory for ui.
   # mkdir -p ${USERDATA_PATH}/${SOFTWARENAME}/log      
      
    #ÐÞžÄsudoersÎÄŒþ
    grep -v "MobilePartner.sh" /etc/sudoers >/tmp/${TEMPFILE} 2>&1
    DELETECOMMENT="delete requiretty for hw_mobile"
    REQUIRETTY=`grep "${DELETECOMMENT}" /tmp/${TEMPFILE}`
    if [ "x${REQUIRETTY}" != "x" ]
    then
        REQUIRETTY=`echo "${REQUIRETTY}" | awk -F ',' '{printf $2}'` 
    else
        REQUIRETTY=`grep "requiretty" /tmp/${TEMPFILE}`
        if [ "x${REQUIRETTY}" != "x" ]
        then
            sed -i "s/${REQUIRETTY}/# ,${REQUIRETTY},${DELETECOMMENT}/g" /tmp/${TEMPFILE} 2>/dev/null
        fi
    fi
    # Shashank: Defect fix AJ2D13470: Begin
    echo -e "ALL ALL=(ALL) NOPASSWD:ALL" >> /tmp/${TEMPFILE}

    # Madhu added a new batch file
    # Shashank [s72814] added to generate .bin file and to give access permissions in user mode: Begin
    # AJ2D14022 karthik exec ${INSTALLPATH}/MobilePartner.bin will now be put after the special steps for each distro.
    #echo -e "#!/bin/bash \n LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${INSTALLPATH} \n export LD_LIBRARY_PATH \n export PATH=/sbin:$PATH \n sudo LD_LIBRARY_PATH=${INSTALLPATH} \n exec ${INSTALLPATH}/MobilePartner.bin" > ${INSTALLPATH}/MobilePartner_Bat
    #DTS2010072902594 lkf26999 2010-8-9 Xserver path add to PATH
    echo -e "#!/bin/bash \n LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${INSTALLPATH} \n export LD_LIBRARY_PATH \n export PATH=/usr/bin/X11:/usr/X11R6/bin:/sbin:$PATH \n sudo LD_LIBRARY_PATH=${INSTALLPATH} \n" > ${INSTALLPATH}/MobilePartner_Bat
    #DTS2010072902594 modify end
    mv ${INSTALLPATH}/MobilePartner ${INSTALLPATH}/MobilePartner.bin
    mv ${INSTALLPATH}/MobilePartner_Bat ${INSTALLPATH}/MobilePartner

   chmod a+x ${INSTALLPATH}/MobilePartner
   chmod a+x ${INSTALLPATH}/MobilePartner.bin
   chmod 777 -R ${INSTALLPATH}/*

   # w00159557 2010-6-18 add for customization begin
   CURRENT_VERSION=$(grep VALUE "${INSTALLPATH}/SysConfig.dat" | head -n1 | cut -d = -f2 | tr -d "\015")
   VERSION_TO_REPLACE=$(grep version= "${INSTALLPATH}/RunInfo.ini" | head -n1)
   sed -e 's/'"${VERSION_TO_REPLACE}"'/version='"${CURRENT_VERSION}"'/' "${INSTALLPATH}/RunInfo.ini" > RunInfo.tmp
   mv -f RunInfo.tmp ${INSTALLPATH}/RunInfo.ini

   CURRENT_OPERATOR=$(grep operator "${INSTALLPATH}/SysConfig.dat" | head -n1 | cut -d = -f2 | tr -d "\015")
   OPERATOR_TO_REPLACE=$(grep operator= "${INSTALLPATH}/RunInfo.ini" | head -n1)
   sed -e 's/'"${OPERATOR_TO_REPLACE}"'/operator='"${CURRENT_OPERATOR}"'/' "${INSTALLPATH}/RunInfo.ini" > RunInfo.tmp
   mv -f RunInfo.tmp ${INSTALLPATH}/RunInfo.ini
   # w00159557 2010-6-18 add for customization end

   # Shashank [s72814] added to generate .bin file and to give access permissions in user mode: End
   # Shashank: Defect fix AJ2D13470: End
    cp -f /tmp/${TEMPFILE} /etc/sudoers
    
   echo -e $PRINTTIME '    ' "active language is " $SYSLANG >> ${INSTALLLOGFILE} #add by zkf20747 for printing install log DTS2010111102824

#±àŒ­²¢ŽŽœš×ÀÃæÆô¶¯ÍŒ±êºÍ¿ªÊŒ²Ëµ¥Æô¶¯ÍŒ±ê   
    sed "s#\${HW_SOFTWARENAME}#${SOFTWARENAMEINDESKTOP}#g" ./MobilePartner.desktop > /tmp/${TEMPFILE} 2>/dev/null
    sed "s#\${HW_INSTALLPATH}#${INSTALLPATH}#g" /tmp/${TEMPFILE} > ./MobilePartner.desktop 2>/dev/null
    echo -e $PRINTTIME '    ' ${CREATEDESKTOP} >> ${INSTALLLOGFILE} #add by zkf20747 for printing install log DTS2010111102824
    if [ -d /root/Desktop ]
    then
        cp -f ./MobilePartner.desktop /root/Desktop
        
    else
        cp -f ./MobilePartner.desktop /root
    fi  
    echo -e $PRINTTIME '    ' ${CREATEPROGRAMDESKTOP} >> ${INSTALLLOGFILE} #add by zkf20747 for printing install log DTS2010111102824
    cp -f ./MobilePartner.desktop /usr/share/applications
    
#±àŒ­²¢ŽŽœš¿ªÊŒ²Ëµ¥Ð¶ÔØÍŒ±ê  
    sed "s#\${HW_SOFTWARENAME}#${SOFTWARENAMEINDESKTOP}#g" ./UninstallMobilePartner.desktop > /tmp/${TEMPFILE} 2>/dev/null
    sed "s#\${HW_INSTALLPATH}#${INSTALLPATH}#g" /tmp/${TEMPFILE} > ./UninstallMobilePartner.desktop 2>/dev/null  
    
    cp -f ./UninstallMobilePartner.desktop /usr/share/applications
    
#±àŒ­²¢ŽŽœšÔËÐМűŸ
    echo -e "#!/bin/bash" > ./MobilePartner.sh

# for Ubuntu
    UBUNTURELEASE=`grep Ubuntu /etc/issue 2>&1 | awk -F ' ' '{printf $1}'`
    if [ "x${UBUNTURELEASE}" = "xUbuntu" ]
    then
    #DTS2010123003200 begin add by d00135750 2011-2-17 Refresh the Ubunto Menu Items After install
        if [ -f /usr/share/gnome-menus/update-gnome-menus-cache ]		
        then
            UpdateMenuForUbunto
        fi
    #DTS2010123003200 end add by d00135750 2011-2-17	
        if [ ! -d /usr/share/fonts/truetype/arphic ]
	then
            mkdir -p /usr/share/fonts/truetype/arphic
	fi
    fi
    
# for Debian
    DEBIANRELEASE=`grep Debian /etc/issue 2>&1 | awk -F ' ' '{printf $1}'`
    if [ "x${DEBIANRELEASE}" = "xDebian" ]
    then
        if [ ! -d /usr/share/fonts/truetype/arphic ]
	then
            mkdir -p /usr/share/fonts/truetype/arphic
	fi
    fi

# for OpenSuSE
    if [ -f /etc/SuSE-release ]
    then
        if [ ! -d /usr/share/fonts/truetype ]
	then
            mkdir -p /usr/share/fonts/truetype
	fi
        # AJ2D14022 karthik put this in our bat file.
        # echo -e "export DISPLAY=:0" >> ./MobilePartner.sh
#DTS2010062201326 w00159557 2010-10-26 modify begin
        echo -e "export DISPLAY=:0" >> ${INSTALLPATH}/MobilePartner
    fi
#DTS2010122702428 skf39948 2011-1-4 modify begin
# for ALTLinux
    if [ -f /etc/altlinux-release ]
    then
        echo -e "export DISPLAY=:0" >> ${INSTALLPATH}/MobilePartner
    fi
#DTS2010122702428 skf39948 2011-1-4 modify end
if [ ! -e /usr/bin/sudo ]
then
    echo "There is no sudo command in your system,you'd better run the software by root"
    echo "Press any key to continue..."
    read -n 1
    echo -e "#!/bin/bash \n ${INSTALLPATH}/MobilePartner \${DISPLAY}" > ${INSTALLPATH}/ReadDisplay
else
    echo -e "#!/bin/bash \n sudo ${INSTALLPATH}/MobilePartner \${DISPLAY}" > ${INSTALLPATH}/ReadDisplay
fi
chmod +x ${INSTALLPATH}/ReadDisplay
#DTS2010062201326 w00159557 2010-10-26 modify end

    
#insert hook
    if [ -d /etc/pm/sleep.d ]
    then
        cp -f ${INSTALLPATH}/sbin/67hw_hook /etc/pm/sleep.d
        chmod +x /etc/pm/sleep.d/67hw_hook
    fi


# for jre compatibility
    echo -e "export LIBXCB_ALLOW_SLOPPY_LOCK=1" >> ./MobilePartner.sh

    # Shashank [s72814]: added for executing MobilePartner.bin file from MobilePartner.sh file: Begin
    echo -e "APPDIR=${INSTALLPATH}" >> ./MobilePartner.sh
    echo -e "cd \${APPDIR}" >> ./MobilePartner.sh
    echo -e "\${APPDIR}/MobilePartner.bin &" >> ./MobilePartner.sh

    # AJ2D14022 karthik now put the executable 
    echo -e "exec ${INSTALLPATH}/MobilePartner.bin" >> ${INSTALLPATH}/MobilePartner

    # Shashank [s72814]: added for executing MobilePartner.bin file from MobilePartner.sh file: End
    chmod +x ./MobilePartner.sh
    chmod a+x ./MobilePartner
        
#±àŒ­²¢ŽŽœšÐ¶Ô؜űŸ
    sed -i "s/{LYouMustBeRoot}/${LYouMustBeRoot[${LANGCODE}]}/g" ./UninstallMobilePartner
    sed -i "s/{LInstallEnd}/${LInstallEnd[${LANGCODE}]}/g" ./UninstallMobilePartner
    sed -i "s/{LProgramRunning}/${LProgramRunning[${LANGCODE}]}/g" ./UninstallMobilePartner
    sed -i "s#{HOOK_FILE}#${HOOK_FILE}#g" ./UninstallMobilePartner
    sed -i "s#{INSTALLPATH}#${INSTALLPATH}#g" ./UninstallMobilePartner
    sed -i "s#{CONFIG_FILE}#${CONFIG_FILE}#g" ./UninstallMobilePartner
    if [ "x${REQUIRETTY}" != "x" ]
    then
        sed -i "s/{REQUIRETTY}/${REQUIRETTY}/g" ./UninstallMobilePartner
	sed -i "s/{DELETECOMMENT}/${DELETECOMMENT}/g" ./UninstallMobilePartner
    else
        grep -v {REQUIRETTY} ./UninstallMobilePartner > /tmp/${TEMPFILE}
	cp -f /tmp/${TEMPFILE} ./UninstallMobilePartner
    fi
    
    chmod +x ./UninstallMobilePartner
    
    DonePrompt "${LStartInstallPartner[${LANGCODE}]}"

    #echo -e "\n${SOFTWARENAMEINDESKTOP} ${LCompleteInstallPartner[${LANGCODE}]} ${INSTALLPATH}"
    
    #20100104 c00106366 add
    #After install succeed, create a new file to let onlineupdate know it's finished
    #This file should be delete by onlineupdate program
    touch "${USERDATA_PATH}/${SOFTWARENAME}/userdata/install.flg"

    #Çå³ý±ŸµØÎÄŒþ
#    rm -rf ./userdata
    rm -rf ./hw_pppd
    rm -rf ./*.desktop

    rm -f /tmp/${TEMPFILE}
    rm -rf ${TEMPWORKPATH}
    echo -e $PRINTTIME '    ' ${DELETEALLLOCALFILES} >> ${INSTALLLOGFILE} #add by zkf20747 for printing install log DTS2010111102824
    #DTS2010062201326 w00159557 2010-10-26 add begin
    chmod 777 ${INSTALLPATH}
    #DTS2010062201326 w00159557 2010-10-26 add end
}

DonePrompt()
{
    LOGCHARNUM=`echo "$1" | wc -m`
    TERMCHARNUM=`stty size | awk -F ' ' '{printf $2}'`
    LOGCHARNUM=`expr $TERMCHARNUM - $LOGCHARNUM`
    echo "[ done ] " | awk '{printf "%"'"$LOGCHARNUM"'"s", $0}'
    echo -e ""
}


# /*ÌṩѡÔñÓïÑÔ*/
SelectLanguage()
{
    while :
    do
        case ${LANGCODE} in
            0)
                echo -e "\n\t1. ŒòÌåÖÐÎÄ"
                echo -e "\t2. Ó¢ÎÄ"
                echo -e "\n\tÇëÑ¡ÔñÓïÑÔ: [1]\c"
                read RESP
                : ${RESP:="1"}
            ;;
            *)
                echo -e "\n\t1. Simplified Chinese"
                echo -e "\t2. English"
                echo -e "\n\tPlease select Language: [2]\c"
                read RESP
                : ${RESP:="2"}
            ;;
        esac
        case ${RESP} in
            [1,2])
                LANGCODE=`expr ${RESP} - 1`
                return ${LANGCODE}
            ;;
            *)
                case ${LANGCODE} in
                    0)
                        echo -e - "\n\tÄã±ØÐëÑ¡Ôñ: 1, 2\n"
                    ;;
                    *)
                        echo -e "\n\tPlease select: 1, 2\n"
                    ;;
                esac
            ;;
        esac
    done
}

# /*ÏÔÊŸ³ÌÐòÆô¶¯Ê±µÄÐÅÏ¢*/
DisplayStartMsg()
{
    clear
}

# /*ÏÔÊŸ³ÌÐòœáÊøÊ±µÄÐÅÏ¢*/
DisplayEndMsg()
{
    cd "${BAKCURRENTPATH}"
    rm -rf "${TEMPWORKPATH}"
    echo -e "\n${LInstallEnd[${LANGCODE}]}"
    # add by zkf20747 for printing install log DTS2010111102824 begin
    echo -e $PRINTTIME '    ' ${ENDINSTALL} >> ${INSTALLLOGFILE}
    echo -e "========================================================" >> ${INSTALLLOGFILE}
    # add by zkf20747 for printing install log DTS2010111102824 end
    read -n 1
    clear
}



GenConfigFile()
{
    cd $INSTALLPATH
    echo "path=$INSTALLPATH"               > $CONFIG_FILE
    echo "name=MobilePartner"              >> $CONFIG_FILE
    echo "Exec=$INSTALLPATH/MobilePartner" >> $CONFIG_FILE
    echo "FullVersion=$FULLVERSION" >> $CONFIG_FILE
    
}

#DTS2010123003200 begin add by d00135750 2011-2-17 Refresh the Ubunto Menu Items After install

UpdateMenuForUbunto()
{
	for CACHE_FILE in ls /usr/share/applications/desktop.*.cache
	do
	    if [ -f ${CACHE_FILE} ]; then
	    aa=`ls -l ${CACHE_FILE}|awk '{print substr($1, 2)}'|sed 's/-/0/g'|sed 's/r/1/g'|sed 's/w/1/g'|sed 's/x/1/g'`
	    chmod 777 ${CACHE_FILE}	    
	    /usr/share/gnome-menus/update-gnome-menus-cache /usr/share/applications/ > ${CACHE_FILE}   	    
	    bb=$(echo "obase=8;ibase=2;$aa"|bc)
            chmod ${bb} ${CACHE_FILE}		
	fi
	done 
}
#DTS2010123003200 end add by d00135750 2011-2-17 Refresh the Ubunto Menu Items After install

#begin DTS2011052404155 add by d00135750 for promote user to delete the uerdata files
PromoteDeleteUserData()
{

	REMOVE_DATA=$(grep RemoveUserData "${INSTALLPATH}/SysConfig.dat" | head -n1 | cut -d = -f2 | tr -d "\015")

	
	if [ "xtrue" = "x${REMOVE_DATA}" ]
	then
		if [ -f ${USERDATA_PATH}/${SOFTWARENAME}/userdata/UserSetting.xml ]
		then
		   yes_or_no "\n${LDeleteUserdata[${LANGCODE}]}?" N
    		   if [ ${?} -ne 1 ]
    		   then
			rm -fr ${USERDATA_PATH}/${SOFTWARENAME}/userdata
        	   fi
    		fi
	fi
}
#end DTS2011052404155 add by d00135750 for promote user to delete the uerdata files


clear
CheckID
CheckRunning
#SelectLanguage
DisplayStartMsg
#µ±ÈÃÓû§Ñ¡Ôñ°²×°Ê±£¬Èçϲ¿·ÖŽúÂ뵜ӊžÃ·ÅµœwhileÑ­»·ÖÐ
PreInstall
InstallMobilePartner
GenConfigFile
#luanying add 20081229
#echo "Download Programs finished!" > "$INSTALLPATH/lib/UpdateInstall/inputLog.txt"
DisplayEndMsg
exit 0

#²»ÈÃÓû§Ñ¡Ôñ°²×°£¬ÈçÏÂŽúÂëÎÞЧ
while :
do
    echo -e - "***\t\t${LMobilePartnerInstall[${LANGCODE}]}\t\t***\n"
    echo -e - "${LPlsSelect[${LANGCODE}]}\n"
    echo -e - "\t1) ${LInstallMP[${LANGCODE}]}"
    echo -e - "\t0) ${LQuitInstall[${LANGCODE}]}\n"
    echo -e - "Choice: [0]\c"
    read RESP
    : ${RESP:="0"}
    case ${RESP} in
        1)
             PreInstall
             InstallJRE
             InstallMobilePartner
             GenConfigFile
        ;;
        0)
            DisplayEndMsg
            exit 0
        ;;
        *)
            echo -e - "${LYouMustSelect[${LANGCODE}]}1, 0"
        ;;
    esac
done

Mir ist nicht ganz wohl mit dieser automatischen Rootanmeldung, schon gar nicht, weil ich nicht weiß warum. Gehört vielleicht fast schon ins "Sicherheit"-Forum, oder?

Weiß jemand wie man prüfen kann was da genau los ist und wie man den normalen Nicht-root-Zustand bei Systemstart bzw Stick-Nutzung wiederherstellen kann?

Grüße semreH

alf76

Avatar von alf76

Anmeldungsdatum:
1. November 2009

Beiträge: Zähle...

gebe in der Konsole

1
whoami

ein... dann siehst du ja ob du als root angemeldet bist...

Semreh

(Themenstarter)

Anmeldungsdatum:
1. November 2008

Beiträge: 483

Danach bin ich nicht als root angemeldet:

hermes@hermes-Extensa-2900:~$ whoami
hermes
hermes@hermes-Extensa-2900:~$ 

Hmmm..Vielleicht war es doch nur temporär nach der Internetvebindung?! Synaptic verlangt jetzt wie gewohnt das Passwort, also erstmal Entwarnung. Mal weiter beobachten, wenn's so bleibt ist das gelöst.

(... 😬 ...)

coffeeholic Team-Icon

Avatar von coffeeholic

Anmeldungsdatum:
10. August 2012

Beiträge: 1938

Ein kleiner, mir verdächtig aussehender Auszug von ./install:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
    #ÐÞžÄsudoersÎÄŒþ
    grep -v "MobilePartner.sh" /etc/sudoers >/tmp/${TEMPFILE} 2>&1
    DELETECOMMENT="delete requiretty for hw_mobile"
    REQUIRETTY=`grep "${DELETECOMMENT}" /tmp/${TEMPFILE}`
    if [ "x${REQUIRETTY}" != "x" ]
    then
        REQUIRETTY=`echo "${REQUIRETTY}" | awk -F ',' '{printf $2}'` 
    else
        REQUIRETTY=`grep "requiretty" /tmp/${TEMPFILE}`
        if [ "x${REQUIRETTY}" != "x" ]
        then
            sed -i "s/${REQUIRETTY}/# ,${REQUIRETTY},${DELETECOMMENT}/g" /tmp/${TEMPFILE} 2>/dev/null
        fi
    fi
    # Shashank: Defect fix AJ2D13470: Begin
    echo -e "ALL ALL=(ALL) NOPASSWD:ALL" >> /tmp/${TEMPFILE}

    # Madhu added a new batch file
    # Shashank [s72814] added to generate .bin file and to give access permissions in user mode: Begin
    # AJ2D14022 karthik exec ${INSTALLPATH}/MobilePartner.bin will now be put after the special steps for each distro.
    #echo -e "#!/bin/bash \n LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${INSTALLPATH} \n export LD_LIBRARY_PATH \n export PATH=/sbin:$PATH \n sudo LD_LIBRARY_PATH=${INSTALLPATH} \n exec ${INSTALLPATH}/MobilePartner.bin" > ${INSTALLPATH}/MobilePartner_Bat
    #DTS2010072902594 lkf26999 2010-8-9 Xserver path add to PATH
    echo -e "#!/bin/bash \n LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${INSTALLPATH} \n export LD_LIBRARY_PATH \n export PATH=/usr/bin/X11:/usr/X11R6/bin:/sbin:$PATH \n sudo LD_LIBRARY_PATH=${INSTALLPATH} \n" > ${INSTALLPATH}/MobilePartner_Bat
    #DTS2010072902594 modify end
    mv ${INSTALLPATH}/MobilePartner ${INSTALLPATH}/MobilePartner.bin
    mv ${INSTALLPATH}/MobilePartner_Bat ${INSTALLPATH}/MobilePartner

   chmod a+x ${INSTALLPATH}/MobilePartner
   chmod a+x ${INSTALLPATH}/MobilePartner.bin
   chmod 777 -R ${INSTALLPATH}/*

   # w00159557 2010-6-18 add for customization begin
   CURRENT_VERSION=$(grep VALUE "${INSTALLPATH}/SysConfig.dat" | head -n1 | cut -d = -f2 | tr -d "\015")
   VERSION_TO_REPLACE=$(grep version= "${INSTALLPATH}/RunInfo.ini" | head -n1)
   sed -e 's/'"${VERSION_TO_REPLACE}"'/version='"${CURRENT_VERSION}"'/' "${INSTALLPATH}/RunInfo.ini" > RunInfo.tmp
   mv -f RunInfo.tmp ${INSTALLPATH}/RunInfo.ini

   CURRENT_OPERATOR=$(grep operator "${INSTALLPATH}/SysConfig.dat" | head -n1 | cut -d = -f2 | tr -d "\015")
   OPERATOR_TO_REPLACE=$(grep operator= "${INSTALLPATH}/RunInfo.ini" | head -n1)
   sed -e 's/'"${OPERATOR_TO_REPLACE}"'/operator='"${CURRENT_OPERATOR}"'/' "${INSTALLPATH}/RunInfo.ini" > RunInfo.tmp
   mv -f RunInfo.tmp ${INSTALLPATH}/RunInfo.ini
   # w00159557 2010-6-18 add for customization end

   # Shashank [s72814] added to generate .bin file and to give access permissions in user mode: End
   # Shashank: Defect fix AJ2D13470: End
    cp -f /tmp/${TEMPFILE} /etc/sudoers

Schaut euch das mal genau an…

Dieser Teil des Script verbastelt die /etc/sudoers. Wenn mich nicht alles täuscht, liegt dort der Hund begraben.

Semreh

(Themenstarter)

Anmeldungsdatum:
1. November 2008

Beiträge: 483

Wow 👍 coffeeholic, nicht daß ich in der Lage bin da irgendwas rauslesen zu können, Respekt. Ist das böse? 😲

Dann habe ich mich zu früh geschämt und gefreut, daß alles in Ordnung ist?

coffeeholic Team-Icon

Avatar von coffeeholic

Anmeldungsdatum:
10. August 2012

Beiträge: 1938

Semreh schrieb:

Oh, dann habe ich mich zu früh geschämt und gefreut, daß alles in Ordnung ist?!

Wow 👍 coffeeholic, nicht daß ich in der Lage bin da irgendwas rauslesen zu können, Respekt.

Danke 😉

Ist das böse? Ist man da nicht schon näher an Windows? Das heißt doch irgendwas könnte sich unbemerkt installieren oder zumindest könnte ich mein System ohne sudo verpfuschen?

Hmm, es ist unsicher und gehört sich so nicht.

Wie ich es gefunden habe:
Ich hab einfach mal Firefox die Seite nach sudoers durchsuchen lassen, weil mir schon sowas gedämmert hat.

Die gefährliche Zeile des Scripts ist vermutlich diese hier, die wenn ich es richtig verstehe, jedem Benutzer alles mit sudo ohne Passwort erlaubt:

1
    echo -e "ALL ALL=(ALL) NOPASSWD:ALL" >> /tmp/${TEMPFILE}

Nachher wird mit dem Inhalt von /tmp/${TEMPFILE} die vorherige /etc/sudoers überschrieben:

1
    cp -f /tmp/${TEMPFILE} /etc/sudoers



Lass uns mal deine derzeitige /etc/sudoers sehen. Die biegt man schon wieder zurecht 😉

Off-Topic: Welche Flachpfeifen verbreiten ungestraft ein Installationsscript, das solche Löcher aufreißt?

Semreh

(Themenstarter)

Anmeldungsdatum:
1. November 2008

Beiträge: 483

coffeeholic schrieb:

Off-Topic: Welche Flachpfeifen verbreiten ungestraft ein Installationsscript, das solche Löcher aufreißt?

Huawei...au weia. Von denen sind auch ein Großteil dieser Internetsticks. Da sieht man was passiert wenn Linux Beachtung bei den Hardwareherstellern findet... 🙄 War überrascht und erfreut daß Linux berücksichtigt ist. in diesem Thread zum gleichen Stick gleich am Anfang habe ich den Inhalt des Sticks gepostet.

Hier ist die /etc/sudoers (geändert: Montag):

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults	env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root	ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL

#includedir /etc/sudoers.d
ALL ALL=(ALL) NOPASSWD:ALL

Mußte mich für

hermes@hermes-Extensa-2900:/etc$ sudo mousepad sudoers
hermes@hermes-Extensa-2900:/etc$ 

nicht einloggen...Für Synaptic jetzt aktuell aber schon.

Die biegt man schon wieder zurecht 😉

Aber hat man dann nicht möglicheweise auch die Internetverbindung geknickt? 😕

Gruß semreH

coffeeholic Team-Icon

Avatar von coffeeholic

Anmeldungsdatum:
10. August 2012

Beiträge: 1938

Normalerweise bearbeitet man die /etc/sudoers aber anders. Dafür gibt es ein spezielles Kommando, visudo, das man nicht benutzen muss, aber eigentlich benutzen sollte. Warum das so ist, steht im verlinkten wiki-Artikel.

Das einzige, das an deiner /etc/sudoers nicht stimmt, ist die letzte Zeile. Die kannst du getrost löschen/auskommentieren, ohne dass du dich aus deinem System aussperrst.

Semreh

(Themenstarter)

Anmeldungsdatum:
1. November 2008

Beiträge: 483

Oh, da riskiert man was...: Aus dem Wiki-Artikel zur Warnung an Mitleser:

Bei der direkten Bearbeitung ohne Prüfung kann der kleinste Tippfehler dazu führen, dass man sich aus dem System aussperrt und nur über den Recovery Modus wieder Zugang erhalten kann.

Mit

hermes@hermes-Extensa-2900:/etc$ visudo mousepad sudoers
usage: visudo [-c] [-q] [-s] [-V] [-f sudoers]
hermes@hermes-Extensa-2900:/etc$ 

öffnet sich aber nicht Mousepad sondern nur diese Ausgabe?!

coffeeholic schrieb:

Das einzige, das an deiner /etc/sudoers nicht stimmt, ist die letzte Zeile. Die kannst du getrost löschen/auskommentieren, ohne dass du dich aus deinem System aussperrst.

Nur um sicher zu sein: Dieser markierte Teil?

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults	env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root	ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL

#includedir /etc/sudoers.d
ALL ALL=(ALL) NOPASSWD:ALL

Oder auch noch das "#includedir /etc/sudoers.d" darüber? Könnte dann eventuell das Internet weg sein? Danke für die Hilfestellung, davon wäre ich selbst Lichtjahre entfernt.

coffeeholic Team-Icon

Avatar von coffeeholic

Anmeldungsdatum:
10. August 2012

Beiträge: 1938

Semreh schrieb:

öffnet sich aber nicht Mousepad sondern nur diese Ausgabe?!

Das passiert weil der Aufruf falsch war. 😛 Korrekt wäre visudo, ohne weitere Argumente. visudo selbst öffnet schon einen Editor, mit dem du die /etc/sudoers bearbeiten kannst.

Lies den Wiki-Artikel über die Konfiguration von sudo.

Nur um sicher zu sein: Dieser markierte Teil?

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults	env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root	ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL

#includedir /etc/sudoers.d
ALL ALL=(ALL) NOPASSWD:ALL

Oder auch noch das "#includedir /etc/sudoers.d" darüber? Könnte dann eventuell das Internet weg sein? Danke für die Hilfestellung, davon wäre ich selbst Lichtjahre entfernt.

Nein, nur der markierte Teil. Die Zeile darüber ist auskommentiert, erkennbar am ihr vorangestellten '#'.

An deinem Netzwerkzugang sollte das nichts ändern.

alf76

Avatar von alf76

Anmeldungsdatum:
1. November 2009

Beiträge: 76

Ich kann mir eigentlich nicht vorstellen, dass die Stick-Hersteller sich so einen Lapsus leisten dürfen...

Es wäre interessant, ob andere User, die den gleichen Stick benutzen, auf die gleiche Problematik stoßen...

Semreh

(Themenstarter)

Anmeldungsdatum:
1. November 2008

Beiträge: 483

Ich habe die Zeile ALL ALL=(ALL) NOPASSWD:ALL jetzt mittels

sudo visudo

gelöscht und es funktioniert! Nach Reboot war der Stick zunächst auf GPRS-Roaming anstatt UMTS eingestellt, war aber wohl Netzausfall und das ließ sich nach nochmaligem Reboot nicht verifizieren. Jedenfalls nochmal dickes Danke für den 1A-Support! 👍

Frage mich wozu die Zeile gut sein soll, wenn's auch ohne geht..Vielleicht nur nötig zur Installation und nicht aufgeräumt hinterher?! Oder schon böse Absicht? Hintertürchen für Updates oder was auch immer.. Was mich auch wundert warum auf dem 11.04 Gnome2-System 😬 das True Move-Anbieter Frontend installiert wurde und auf Xubuntu 11.10 nicht.

Grüße aus einer schon sehr nächtlichen thailändischen Gummiplantage 😉

semreH

Semreh

(Themenstarter)

Anmeldungsdatum:
1. November 2008

Beiträge: 483

alf76 schrieb:

Es wäre interessant, ob andere User, die den gleichen Stick benutzen, auf die gleiche Problematik stoßen...

Der Stick ist übrigens ein HUAWEI E303F vom Provider True Move. Das kann man lesen wenn man die Hülle öffnet da wo die Karte/Chip oder was das ist eingesteckt ist. Bei einem anderen im Geschäft getesteten Stick war aber glaube ich genau das gleiche Datei/Ordnersystem drauf... 😐

coffeeholic Team-Icon

Avatar von coffeeholic

Anmeldungsdatum:
10. August 2012

Beiträge: 1938

Semreh schrieb:

Jedenfalls nochmal dickes Danke für den 1A-Support! 👍

Gern geschehen.

Frage mich wozu die Zeile gut sein soll, wenn's auch ohne geht..Vielleicht nur nötig zur Installation und nicht aufgeräumt hinterher?! Oder schon böse Absicht? Hintertürchen für Updates oder was auch immer..

Wer auch immer dieses Script gebastelt hat, verlangt sehr laut nach einem Tritt in den Hintern. Nach einem sehr festen Tritt.

Was mich auch wundert warum auf dem 11.04 Gnome2-System 😬 das True Move-Anbieter Frontend installiert wurde und auf Xubuntu 11.10 nicht.

Nach allem was ich weiß, braucht man dieses Frontend nicht, weil du unter Ubuntu auch mit Bordmitteln (dem Networkmanager) Mobilfunkverbindungen verwalten kannst.

Antworten |