修改离线脚本

This commit is contained in:
Tian jianyong 2024-12-19 18:55:26 +08:00
parent 3174e390ff
commit 5dee9a4d52

View File

@ -53,11 +53,11 @@ done
case ${TARGET_ARCH} in
x86_64)
ARCH_SUFFIX="x86_64"
YUM_ARCH="--setarch=x86_64"
YUM_ARCH="--forcearch=x86_64"
;;
i686|i386)
ARCH_SUFFIX="i686"
YUM_ARCH="--setarch=i686"
YUM_ARCH="--forcearch=i686"
;;
*)
log_error "Unsupported architecture: ${TARGET_ARCH}"
@ -106,7 +106,7 @@ fi
# Function to get package dependencies
get_dependencies() {
local pkg=$1
yum ${YUM_ARCH} deplist "$pkg" | grep provider: | awk '{print $2}' | sort -u
yum deplist "$pkg" | grep provider: | awk '{print $2}' | sort -u
}
# Download system dependencies
@ -131,16 +131,10 @@ for pkg in "${PACKAGES[@]}"; do
log_info "Checking dependencies for $pkg..."
if [[ "$pkg" == @* ]]; then
# Handle package groups
yum ${YUM_ARCH} groupinfo "${pkg#@}" | grep "Mandatory Packages:" -A 100 | grep "^[[:space:]]*[^[:space:]]*" >> "$TEMP_PKGS"
yum groupinfo "${pkg#@}" | grep "Mandatory Packages:" -A 100 | grep "^[[:space:]]*[^[:space:]]*" >> "$TEMP_PKGS"
else
# For Python packages, don't use architecture flag
if [[ "$pkg" == python* ]]; then
yum groupinfo "${pkg#@}" | grep "Mandatory Packages:" -A 100 | grep "^[[:space:]]*[^[:space:]]*" >> "$TEMP_PKGS"
get_dependencies "$pkg" >> "$TEMP_PKGS"
else
echo "$pkg" >> "$TEMP_PKGS"
get_dependencies "$pkg" >> "$TEMP_PKGS"
fi
echo "$pkg" >> "$TEMP_PKGS"
get_dependencies "$pkg" >> "$TEMP_PKGS"
fi
done
@ -152,17 +146,9 @@ log_info "Downloading packages..."
DOWNLOAD_FAILED=0
while read -r pkg; do
log_info "Downloading $pkg..."
# For Python packages, don't use architecture flag
if [[ "$pkg" == python* ]]; then
if ! yum install --downloadonly --downloaddir="${PACKAGES_DIR}" "$pkg"; then
log_error "Failed to download $pkg"
DOWNLOAD_FAILED=1
fi
else
if ! yum ${YUM_ARCH} install --downloadonly --downloaddir="${PACKAGES_DIR}" "$pkg"; then
log_error "Failed to download $pkg"
DOWNLOAD_FAILED=1
fi
if ! yum install ${YUM_ARCH} --downloadonly --downloaddir="${PACKAGES_DIR}" "$pkg"; then
log_error "Failed to download $pkg"
DOWNLOAD_FAILED=1
fi
done < "$TEMP_PKGS"