Как пытаешься открыть архив?
tar -zvxf <имя файла>
в терминале?
Возможно, архив битый?
И в терминале пробовал - начинает распаковывать, а потом такуе же матню пишет...
gzip: stdin: decompression OK, trailing garbage ignored
cdroot/Linux/set_variables.sh
cdroot/Linux/Installer.htm
tar: Child returned status 2
tar: Выход, отложенный по результатам предыдущих ошибок
Архив вроде не битый - несколько раз скачивал - результат один и тот же...
Так в том то и дело, другие архивы распаковываются, заразы...
Забил я на короче этот архив - у одного чела с таким же принтером взял диск с дровами (свой то я посеял где-то)...
Там есть дрова для Linux, но чего-то они не устанавливаются... Запускаю из под root'а autotun, а мне в ответ следующее:
А вот этот install.sh дайте глянуть, чего там вообще и куда
Кстати, вы напрямую его не пробовали запускать?
Напрямую запускать пробовал - результат тот же самый
Вот что в файле:
Код:
#! /bin/sh
#
# MFP Driver Package Installation script.
# Product setup script
#
cd `dirname $0`
################################################################################
##################
# Defines
source ./set_variables.sh ./OEM.ini
# VENDOR=`grep '^VENDOR=' OEM.ini 2>/dev/null | sed 's/VENDOR=\(.*\)/\1/'`
# if [ -z "$VENDOR" ]; then
# echo "File OEM.ini does not exist or invalid"
# echo "Exit installation"
# exit 1
# fi
# VENDOR_UC=`echo $VENDOR | tr a-z A-Z`
# VENDOR_LC=`echo $VENDOR | tr A-Z a-z`
#
MFP_INSTALL_DIR=/usr/local/bin/$VENDOR_LC
if [ -f /etc/slackware-version ]; then
SLACKWARE_DETECTED="1"
else
SLACKWARE_DETECTED="0"
fi
AUTORUN_INF_FILE='../autorun.inf'
# Defines
################################################################################
##################
################################################################################
######
# Procedures
check_package()
{
if [ "$SLACKWARE_DETECTED" == "1" ]; then
result=`ls /var/log/packages/$1-* 2> /dev/null`
rv=$?
result=`echo $result | awk -F '-' '{print $2}'`
else
result=`rpm -q --queryformat '%{VERSION}' $1 2>/dev/null`
rv=$?
fi
return $rv
}
#Detects if xwindow is installed
IsXWindowInstalled()
{
status=0
result=0
if echo "$LINUX_DIST" | grep -q GUADALINEX; then
if ps auxw | grep -v grep | grep -wq X; then
result=1
fi
fi
if ps -C X > /dev/null; then
result=1
fi
if ps auxw | grep -v grep | grep -wq XFree86; then
result=1
fi
echo $result
return $status
}
################################################################################
######
#Detects if RPM is installed
IsRPMInstalled()
{
status=1
result=0
rpmName=`rpm --version | head -c 11 -`
if [ $? -eq 0 ] && [ "$rpmName" == "RPM version" ]; then
result=1
status=0
fi
# echo $result
return $status
}
################################################################################
######
#Detects if CUPS is installed
IsCUPSInstalled()
{
status=1;
if echo "$LINUX_DIST" | grep -q GUADALINEX; then
if test -d /etc/cups -a -e /usr/sbin/cupsd; then
result="1.1.20"
return $status
fi
fi
if ! check_package cups; then
result=`cups-config --version 2>/dev/null`
if [ $? -ne 0 ] && ! [ -e /usr/sbin/cupsd ]; then
result=
fi
fi
# echo $result
return $status
}
################################################################################
######
#Get GhostScript version
IsGSInstalled()
{
status=1;
if ! check_package ghostscript; then
result=`gs --version 2>/dev/null`
if [ $? -ne 0 ]; then
result=
fi
fi
# echo $result
return $status
}
################################################################################
######
#Detects if SANE is installed
IsSANEInstalled()
{
status=1
if echo "$LINUX_DIST" | grep -q "GUADALINEX\|KNOPPIX"; then
if test -d /etc/sane.d -a -n "`ls /usr/lib/libsane.so.* 2> /dev/null`"; then
result="1.0.13"
return $status
fi
fi
if ! check_package sane; then
if ! check_package sane-backends; then
if ! check_package xsane; then
result=`sane-config --version 2>/dev/null`
if [ $? -ne 0 ] && ! [ -e /usr/lib/libsane.so.1 ]; then
result=
fi
fi
fi
fi
# echo $result
return $status
}
################################################################################
######
#USAGE: compareVersions file1 file2
#Versions notation 'x1' 'x1.x2' 'x1.x2.x3'
# 0 ==
# 1 >
# -1 <
# 2 error
compareVersions()
{
# test files exists & readable
if ! [ -r $1 ] || ! [ -r $2 ]; then
echo 2
return
fi
v11=`awk -F '.' '{print $1}' $1`
v12=`awk -F '.' '{print $2}' $1`
v13=`awk -F '.' '{print $3}' $1`
v21=`awk -F '.' '{print $1}' $2`
v22=`awk -F '.' '{print $2}' $2`
v23=`awk -F '.' '{print $3}' $2`
rm -f $1
rm -f $2
# test first digits are not empty
if ! [ $v11 ] || ! [ $v21 ]; then
echo 2
return
fi
if [ $v11 -gt $v21 ]; then
echo 1
return
fi
if [ $v11 -lt $v21 ]; then
echo -1
return
fi
if [ -z $v12 ] && [ -z $v22 ]; then
echo 0
return
fi
# test second digits are not empty
if [ $v12 ] && [ $v22 ]; then
if [ $v12 -gt $v22 ]; then
echo 1
return
fi
if [ $v12 -lt $v22 ]; then
echo -1
return
fi
if [ -z $v13 ] && [ -z $v23 ]; then
echo 0
return
fi
if [ $v13 ] && [ $v23 ]; then
if [ $v13 -gt $v23 ]; then
echo 1
return
fi
if [ $v13 -lt $v23 ]; then
echo -1
return
fi
echo 0
return
else
if [ $v13 ]; then
echo 1
return
fi
if [ $v23 ]; then
echo -1
return
fi
fi
else
if [ $v12 ]; then
echo 1
return
fi
if [ $v22 ]; then
echo -1
return
fi
fi
echo 2
return
}
################################################################################
######
# Test digit (digit digit)
IsDigit()
{
result=0
case $1 in
[0-9])
result=1;;
[0-9][0-9])
result=1;;
*)
result=0;;
esac
echo $result
return $result
}
################################################################################
######
print_manifest()
{
echo
echo "$1 that is required for driver package to work properly was not"
echo "detected on your system. Please exit installation procedure and install"
echo "$1 package from your Linux distribution CD-ROM or from Linux distribution"
echo "vendor web site"
echo -e "\t[1] Exit installation procedure"
echo -e "\t[2] I am sure I have necessary software installed. Continue installation"
}
run_menu_exit_installation()
{
execMenu=1
while [ $execMenu -eq 1 ]
do
read -p 'Please make your choice [1,2]: ' -n 1 shallInstall
case $shallInstall in
1) status=1;
exit $status;;
2) status=0;
execMenu=0;;
*) echo -e -n '\r'
esac
done
echo
}
do_setup()
{
GHOSTSCRIPT_VERSION=7.05.2
DRIVER_PATH=$1
status=1
################################################################################
######
# Detect the Linux environment
# rpmPresent=`IsRPMInstalled`
# cupsVer=`IsCUPSInstalled`
# saneVer=`IsSANEInstalled`
# gsVer=`IsGSInstalled`
IsRPMInstalled ; rpmPresent=$result
IsCUPSInstalled; cupsVer=$result
IsSANEInstalled; saneVer=$result
IsGSInstalled ; gsVer=$result
################################################################################
######
# Make installation parameters
parCUPS=0
if [ "$cupsVer" != "" ]; then
parCUPS=1
fi
#-------------------------------------------------------------------------------------
parSANE=0
if [ "$saneVer" != "" ]; then
parSANE=1
fi
#-------------------------------------------------------------------------------------
parGS=0
if [ "$gsVer" != "" ]; then
# Any version of gs is good for us now
parGS=1
# echo "$gsVer" > $TMP_DIR/dummy1$
# echo "$GHOSTSCRIPT_VERSION" > $TMP_DIR/dummy2$
# verCmp=`compareVersions $TMP_DIR/dummy1$ $TMP_DIR/dummy2$`
# if [ "$verCmp" == "0" ]; then
# parGS=1
# elif [ "$verCmp" == "1" ]; then
# parGS=1
# elif [ "$verCmp" == "-1" ]; then
# parGS=2
# fi
fi
status=0
################################################################################
######
# Perform installation
if [ $XWINDOWINSTALLED -eq 1 ]; then
# LD_LIBRARY_PATH=$PWD/rd:$LD_LIBRARY_PATH
# export LD_LIBRARY_PATH
## ../../../mfpinstall RPM=-1 CUPS=$parCUPS QtCUPS=-1 KUPS=-1 SANE=$parSANE SCRIPTS=$PWD DRIVER=$DRIVER_PATH LANGUAGE=$LANGUAGE
# ../../../mfpinstall CUPS=$parCUPS GS=$parGS SANE=$parSANE SCRIPTS=$PWD DRIVER=$DRIVER_PATH LANGUAGE=$LANGUAGE
./mfpinstall CUPS=$parCUPS GS=$parGS SANE=$parSANE SCRIPTS=$PWD DRIVER=$DRIVER_PATH LANGUAGE=$LANGUAGE
status=$?
else
# OK. If we are here - things are really goes better. No let's make environment for and install driver package
echo 'MFP driver package is about to be installed on your system...'
################################################################################
############
# Check CUPS
if [ $parCUPS -ne 1 ]; then
print_manifest "CUPS"
run_menu_exit_installation
fi
################################################################################
############
# Check GhostScript
if [ $parGS -ne 1 ]; then
print_manifest "GhostScript"
run_menu_exit_installation
fi
################################################################################
############
# Check SANE
if [ $parSANE -ne 1 ]; then
print_manifest "SANE"
run_menu_exit_installation
fi
# OK. We've managed all the preparation - install driver package
if [ $status -eq 0 ]; then
CUR_DIR=$PWD
cd "$DRIVER_PATH"
sh drivers.sh install
status=$?
cd "$CUR_DIR"
fi
###############################################################################
# Report installation's result
if [ $status -eq 0 ]; then
echo 'MFP driver package has been installed successfully.'
else
echo 'Installation failed'
fi
fi
return $status
}
#/////////////////////////////////////////////////////////////////////////////////////
#// Beginning of MFP setup program
################################################################################
######
# Check kernel version
KERNEL_VER=2.4
XWINDOWINSTALLED=`IsXWindowInstalled`
TMP_DIR=/var/tmp
if ! [ -d $TMP_DIR ]; then
mkdir -p -m 777 $TMP_DIR
fi
status=1
osVer=`uname -r`
osVer1=`echo $osVer|awk -F '.' '{print $1}' -`
osVer2=`echo $osVer|awk -F '.' '{print $2}' -`
echo $osVer1.$osVer2 > $TMP_DIR/dummy1$
echo $KERNEL_VER > $TMP_DIR/dummy2$
verCmp=`compareVersions $TMP_DIR/dummy1$ $TMP_DIR/dummy2$`
if [ $verCmp -eq 2 ] || [ $verCmp -lt 0 ]; then
echo Wrong Linux Kernel version. Kernel must be $KERNEL_VER or highter. Installation halted...
exit 1
fi
# Check kernel version
################################################################################
######
# Copy x86_64 binaries into installation pool begin {
if [ -d x86_64 ]; then
mkdir -p $MFP_INSTALL_DIR/x86_64/
cp -a -f x86_64/* $MFP_INSTALL_DIR/x86_64/
else
echo '*** WARNING ! This distribution does NOT support AMD64 / EM64T systems ***'
sleep 3
fi
# Copy x86_64 binaries into installation pool end }
################################################################################
######
# Prepare qt library
# Check if libstdc++ v3 (gcc 2.96) installed
if [ ! -h /usr/lib/libstdc++-libc6.2-2.so.3 -o ! -f /usr/lib/libstdc++-3-libc6.2-2-2.10.0.so ]; then
echo -n "libstdc++ v3 (gcc 2.96) not found, intstall ... "
zcat rd/libstdc++-3.tar.gz | tar -xf - -C /
ldconfig
echo "done"
fi
LD_LIBRARY_PATH=$PWD/rd:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
# Prepare qt library
################################################################################
######
MODEL=
MODEL_DIRECTORY=
LANGUAGE=English
ACTION=Install
################################################################################
######
# Parse parameters
if [ $# -eq 4 ]; then
MODEL=$1
MODEL_DIRECTORY=$2
LANGUAGE=$3
ACTION=$4
fi
# Parse parameters
################################################################################
######
# Uncoment the next line to force text mode install
#XWINDOWINSTALLED=0
################################################################################
######
# Make sure CUPS is started if present
if ! ( ps -e | grep cupsd >/dev/null 2>/dev/null ); then
`cupsd >/dev/null 2>/dev/null`
fi
# Make sure CUPS is started if present
################################################################################
######
status=0
if [ $XWINDOWINSTALLED -eq 1 ]; then
################################################################################
######
# Install under XWin
if [ "$MODEL" == "" ]; then # First start - let's determine parameters
echo 'Starting graphical installation part. Please, wait...'
./autorun.gui &
exit 0
else
case $ACTION in
install)
# Install driver
# CUR_DIR=$PWD
# cd "./platforms/$LINUX_DISTR/scripts"
## sh setup.sh $XWINDOWINSTALLED ../../../models/$MODEL_DIRECTORY/$LINUX_DISTR $LANGUAGE
# sh setup.sh $XWINDOWINSTALLED ../../../models/$MODEL_DIRECTORY $LANGUAGE
do_setup ./models/$MODEL_DIRECTORY
status=$?
# cd "$CUR_DIR";;
;;
uninstall)
# Uninstall driver
CUR_DIR=$PWD
### cd "./models/$MODEL_DIRECTORY/$LINUX_DISTR"
# cd "./models/$MODEL_DIRECTORY"
# sh drivers.sh uninstall
./uninstall -p ./models/$MODEL_DIRECTORY -e ./drivers.sh -a uninstall
status=$?
cd "$CUR_DIR";;
*)
echo "Wrong action. You can either 'install' or 'uninstall' driver package."
exit 1;;
esac
fi
else
################################################################################
######
# No XWin - text installation
################################################################################
######
# OK. Now determine what to install, or, may be, uninstall (model, directory, language, action).
if [ "$MODEL" == "" ]; then # First start - let's determine parameters
# Hey, User! Lets talk!
################################################################################
######
# 1. - MFP model & directory
transString=`cat $AUTORUN_INF_FILE | grep ModelName | awk -F '=' '{print $2}' - | tr ' ' '~'`
echo
i=0
for translated in $transString; do
i=`expr $i + 1`
done
if [ $i -eq 1 ]; then
MODEL=`echo $translated | tr '~' ' '`
MODEL_DIRECTORY=`cat $AUTORUN_INF_FILE | grep DriversDir | awk -F '=' '{print $2}' -`
else
echo 'Please, select your device model...'
i=0
for translated in $transString; do
i=`expr $i + 1`
name=`echo $translated | tr '~' ' '`
echo -e '\t' [$i] $name
done
iCancel=`expr $i + 1`
echo -e '\t' [$iCancel] 'Cancel installation'
execMenu=1
while [ $execMenu -eq 1 ]
do
read -p 'Please make your choice [1,2, ...]: ' -n 1 shallInstall
result=`IsDigit $shallInstall`
if [ $result -eq 1 ]; then
if [ $shallInstall -ge 1 ] && [ $shallInstall -le $i ]; then
execMenu=0
# Get model & dir names
j=0
for translated in $transString
do
j=`expr $j + 1`
if [ $j -eq $shallInstall ]; then
MODEL=`echo $translated | tr '~' ' '`
fi
done
transDirs=`cat $AUTORUN_INF_FILE | grep DriversDir | awk -F '=' '{print $2}' - | tr ' ' '~'`
j=0
for translated in $transDirs
do
j=`expr $j + 1`
if [ $j -eq $shallInstall ]; then
MODEL_DIRECTORY=`echo $translated | tr '~' ' '`
fi
done
fi
if [ $shallInstall -eq $iCancel ]; then
echo
exit 1
fi
fi
echo -e -n '\r'
done
echo
fi
################################################################################
######
# 2. - Language - NO USE. DON'T understand anything except english.
LANGUAGE=English
################################################################################
######
# 3. - Action
echo
echo 'What would you like to do?..'
echo -e '\t[1] Install driver package'
echo -e '\t[2] Uninstall driver package'
echo -e '\t[3] Cancel installation'
execMenu=1
while [ $execMenu -eq 1 ]
do
read -p 'Please make your choice [1,2,3]: ' -n 1 shallInstall
case $shallInstall in
1) ACTION=install
execMenu=0;;
2) ACTION=uninstall
execMenu=0;;
3) status=1;
echo
exit $status;;
*) echo -e -n '\r'
esac
done
echo
# Well. If we are still here - let's do something useful
################################################################################
######
# Perform driver installation/uninstallation
case $ACTION in
install)
# Install driver
# CUR_DIR=$PWD
# cd "./platforms/$LINUX_DISTR/scripts"
## sh setup.sh $XWINDOWINSTALLED ../../../models/$MODEL_DIRECTORY/$LINUX_DISTR $LANGUAGE
# sh setup.sh $XWINDOWINSTALLED ../../../models/$MODEL_DIRECTORY $LANGUAGE
do_setup ./models/$MODEL_DIRECTORY
status=$?
# cd "$CUR_DIR";;
;;
uninstall)
# Uninstall driver
CUR_DIR=$PWD
# cd "./models/$MODEL_DIRECTORY/$LINUX_DISTR"
cd "./models/$MODEL_DIRECTORY"
sh drivers.sh uninstall
status=$?
cd "$CUR_DIR";;
*)
echo "Wrong action. You can either 'install' or 'uninstall' driver package."
exit 1;;
esac
fi
fi
exit $status
#// End of MFP setup program
#/////////////////////////////////////////////////////////////////////////////////////