mirror of
https://gitee.com/gfdgd-xi/deep-wine-runner
synced 2025-11-08 01:12:22 +08:00
添加独立的qemu mips包
This commit is contained in:
parent
950eca478c
commit
d84191d17e
131
VM/MipsQemu/etc/init.d/qemu-guest-agent
Executable file
131
VM/MipsQemu/etc/init.d/qemu-guest-agent
Executable file
@ -0,0 +1,131 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
### BEGIN INIT INFO
|
||||||
|
# Provides: qemu-guest-agent
|
||||||
|
# Required-Start: $remote_fs $syslog
|
||||||
|
# Required-Stop: $remote_fs $syslog
|
||||||
|
# Default-Start: 2 3 4 5
|
||||||
|
# Default-Stop: 0 1 6
|
||||||
|
# Short-Description: QEMU Guest Agent startup script
|
||||||
|
# Description: Start the QEMU Guest Agent if we're running
|
||||||
|
# in a QEMU virtual machine
|
||||||
|
### END INIT INFO
|
||||||
|
|
||||||
|
# Author: Michael Tokarev <mjt@tls.msk.ru>
|
||||||
|
|
||||||
|
PATH=/sbin:/usr/sbin:/bin:/usr/bin
|
||||||
|
DESC="QEMU Guest Agent"
|
||||||
|
NAME=qemu-ga
|
||||||
|
DAEMON=/usr/sbin/$NAME
|
||||||
|
PIDFILE=/var/run/$NAME.pid
|
||||||
|
|
||||||
|
# config
|
||||||
|
DAEMON_ARGS=""
|
||||||
|
# default transport
|
||||||
|
TRANSPORT=virtio-serial:/dev/virtio-ports/org.qemu.guest_agent.0
|
||||||
|
|
||||||
|
# Exit if the package is not installed
|
||||||
|
[ -x "$DAEMON" ] || exit 0
|
||||||
|
|
||||||
|
# Read configuration variable file if it is present
|
||||||
|
[ -r /etc/default/qemu-guest-agent ] && . /etc/default/qemu-guest-agent
|
||||||
|
|
||||||
|
# Load the VERBOSE setting and other rcS variables
|
||||||
|
. /lib/init/vars.sh
|
||||||
|
|
||||||
|
# Define LSB log_* functions.
|
||||||
|
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
|
||||||
|
# and status_of_proc is working.
|
||||||
|
. /lib/lsb/init-functions
|
||||||
|
|
||||||
|
#
|
||||||
|
# Function that checks whenever system has necessary environment
|
||||||
|
# It also splits $TRANSPORT into $method and $path
|
||||||
|
#
|
||||||
|
do_check_transport() {
|
||||||
|
method=${TRANSPORT%%:*}; path=${TRANSPORT#*:}
|
||||||
|
case "$method" in
|
||||||
|
virtio-serial | isa-serial)
|
||||||
|
if [ ! -e "$path" ]; then
|
||||||
|
log_warning_msg "$NAME: transport endpoint not found, not starting"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Function that starts the daemon/service
|
||||||
|
#
|
||||||
|
do_start()
|
||||||
|
{
|
||||||
|
# Return
|
||||||
|
# 0 if daemon has been started
|
||||||
|
# 1 if daemon was already running
|
||||||
|
# 2 if daemon could not be started
|
||||||
|
start-stop-daemon -Sq -p $PIDFILE -x $DAEMON --test > /dev/null \
|
||||||
|
|| return 1
|
||||||
|
start-stop-daemon -Sq -p $PIDFILE -x $DAEMON -- --daemonize \
|
||||||
|
$DAEMON_ARGS -m "$method" -p "$path" \
|
||||||
|
|| return 2
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Function that stops the daemon/service
|
||||||
|
#
|
||||||
|
do_stop()
|
||||||
|
{
|
||||||
|
# Return
|
||||||
|
# 0 if daemon has been stopped
|
||||||
|
# 1 if daemon was already stopped
|
||||||
|
# 2 if daemon could not be stopped
|
||||||
|
# other if a failure occurred
|
||||||
|
start-stop-daemon -Kq --retry=TERM/30/KILL/5 -p $PIDFILE --name $NAME
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
do_check_transport || exit 0
|
||||||
|
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" $NAME
|
||||||
|
do_start
|
||||||
|
case "$?" in
|
||||||
|
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||||
|
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
stop)
|
||||||
|
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" $NAME
|
||||||
|
do_stop
|
||||||
|
case "$?" in
|
||||||
|
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||||
|
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
status)
|
||||||
|
status_of_proc "$DAEMON" $NAME && exit 0 || exit $?
|
||||||
|
;;
|
||||||
|
restart|force-reload) # we do not support reload
|
||||||
|
do_check_transport || exit 0
|
||||||
|
log_daemon_msg "Restarting $DESC" $NAME
|
||||||
|
do_stop
|
||||||
|
case "$?" in
|
||||||
|
0|1)
|
||||||
|
do_start
|
||||||
|
case "$?" in
|
||||||
|
0) log_end_msg 0 ;;
|
||||||
|
1) log_end_msg 1 ;; # Old process is still running
|
||||||
|
*) log_end_msg 1 ;; # Failed to start
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# Failed to stop
|
||||||
|
log_end_msg 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Usage: /etc/init.d/qemu-guest-agent {start|stop|status|restart|force-reload}" >&2
|
||||||
|
exit 3
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
:
|
||||||
6
VM/MipsQemu/etc/qemu-ifdown
Executable file
6
VM/MipsQemu/etc/qemu-ifdown
Executable file
@ -0,0 +1,6 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# Script to shut down a network (tap) device for qemu.
|
||||||
|
# Initially this script is empty, but you can configure,
|
||||||
|
# for example, accounting info here.
|
||||||
|
|
||||||
|
:
|
||||||
42
VM/MipsQemu/etc/qemu-ifup
Executable file
42
VM/MipsQemu/etc/qemu-ifup
Executable file
@ -0,0 +1,42 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# Script to bring a network (tap) device for qemu up.
|
||||||
|
# The idea is to add the tap device to the same bridge
|
||||||
|
# as we have default routing to.
|
||||||
|
|
||||||
|
# in order to be able to find brctl
|
||||||
|
PATH=$PATH:/sbin:/usr/sbin
|
||||||
|
ip=$(which ip)
|
||||||
|
|
||||||
|
if [ -n "$ip" ]; then
|
||||||
|
ip link set "$1" up
|
||||||
|
else
|
||||||
|
brctl=$(which brctl)
|
||||||
|
if [ ! "$ip" -o ! "$brctl" ]; then
|
||||||
|
echo "W: $0: not doing any bridge processing: neither ip nor brctl utility not found" >&2
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
ifconfig "$1" 0.0.0.0 up
|
||||||
|
fi
|
||||||
|
|
||||||
|
switch=$(ip route ls | \
|
||||||
|
awk '/^default / {
|
||||||
|
for(i=0;i<NF;i++) { if ($i == "dev") { print $(i+1); next; } }
|
||||||
|
}'
|
||||||
|
)
|
||||||
|
|
||||||
|
# only add the interface to default-route bridge if we
|
||||||
|
# have such interface (with default route) and if that
|
||||||
|
# interface is actually a bridge.
|
||||||
|
# It is possible to have several default routes too
|
||||||
|
for br in $switch; do
|
||||||
|
if [ -d /sys/class/net/$br/bridge/. ]; then
|
||||||
|
if [ -n "$ip" ]; then
|
||||||
|
ip link set "$1" master "$br"
|
||||||
|
else
|
||||||
|
brctl addif $br "$1"
|
||||||
|
fi
|
||||||
|
exit # exit with status of the previous command
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "W: $0: no bridge for guest interface found" >&2
|
||||||
33
VM/MipsQemu/etc/qemu/fsfreeze-hook
Executable file
33
VM/MipsQemu/etc/qemu/fsfreeze-hook
Executable file
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# This script is executed when a guest agent receives fsfreeze-freeze and
|
||||||
|
# fsfreeze-thaw command, if it is specified in --fsfreeze-hook (-F)
|
||||||
|
# option of qemu-ga or placed in default path (/etc/qemu/fsfreeze-hook).
|
||||||
|
# When the agent receives fsfreeze-freeze request, this script is issued with
|
||||||
|
# "freeze" argument before the filesystem is frozen. And for fsfreeze-thaw
|
||||||
|
# request, it is issued with "thaw" argument after filesystem is thawed.
|
||||||
|
|
||||||
|
LOGFILE=/var/log/qga-fsfreeze-hook.log
|
||||||
|
FSFREEZE_D=$(dirname -- "$0")/fsfreeze-hook.d
|
||||||
|
|
||||||
|
# Check whether file $1 is a backup or rpm-generated file and should be ignored
|
||||||
|
is_ignored_file() {
|
||||||
|
case "$1" in
|
||||||
|
*~ | *.bak | *.orig | *.rpmnew | *.rpmorig | *.rpmsave | *.sample | *.dpkg-old | *.dpkg-new | *.dpkg-tmp | *.dpkg-dist | *.dpkg-bak | *.dpkg-backup | *.dpkg-remove)
|
||||||
|
return 0 ;;
|
||||||
|
esac
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Iterate executables in directory "fsfreeze-hook.d" with the specified args
|
||||||
|
[ ! -d "$FSFREEZE_D" ] && exit 0
|
||||||
|
for file in "$FSFREEZE_D"/* ; do
|
||||||
|
is_ignored_file "$file" && continue
|
||||||
|
[ -x "$file" ] || continue
|
||||||
|
printf "$(date): execute $file $@\n" >>$LOGFILE
|
||||||
|
"$file" "$@" >>$LOGFILE 2>&1
|
||||||
|
STATUS=$?
|
||||||
|
printf "$(date): $file finished with status=$STATUS\n" >>$LOGFILE
|
||||||
|
done
|
||||||
|
|
||||||
|
exit 0
|
||||||
11
VM/MipsQemu/lib/systemd/system/qemu-guest-agent.service
Normal file
11
VM/MipsQemu/lib/systemd/system/qemu-guest-agent.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=QEMU Guest Agent
|
||||||
|
BindsTo=dev-virtio\x2dports-org.qemu.guest_agent.0.device
|
||||||
|
After=dev-virtio\x2dports-org.qemu.guest_agent.0.device
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=-/usr/sbin/qemu-ga
|
||||||
|
Restart=always
|
||||||
|
RestartSec=0
|
||||||
|
|
||||||
|
[Install]
|
||||||
2
VM/MipsQemu/lib/udev/rules.d/60-qemu-guest-agent.rules
Normal file
2
VM/MipsQemu/lib/udev/rules.d/60-qemu-guest-agent.rules
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
SUBSYSTEM=="virtio-ports", ATTR{name}=="org.qemu.guest_agent.0", \
|
||||||
|
TAG+="systemd" ENV{SYSTEMD_WANTS}="qemu-guest-agent.service"
|
||||||
BIN
VM/MipsQemu/usr/bin/ivshmem-client
Executable file
BIN
VM/MipsQemu/usr/bin/ivshmem-client
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/ivshmem-server
Executable file
BIN
VM/MipsQemu/usr/bin/ivshmem-server
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-img
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-img
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-io
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-io
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-nbd
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-nbd
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-pr-helper
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-pr-helper
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-system-aarch64
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-system-aarch64
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-system-arm
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-system-arm
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-system-i386
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-system-i386
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/qemu-system-x86_64
Executable file
BIN
VM/MipsQemu/usr/bin/qemu-system-x86_64
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/bin/virtfs-proxy-helper
Executable file
BIN
VM/MipsQemu/usr/bin/virtfs-proxy-helper
Executable file
Binary file not shown.
1
VM/MipsQemu/usr/lib/ipxe/82540em.rom
Symbolic link
1
VM/MipsQemu/usr/lib/ipxe/82540em.rom
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
qemu/pxe-e1000.rom
|
||||||
1
VM/MipsQemu/usr/lib/ipxe/e1000_82540.rom
Symbolic link
1
VM/MipsQemu/usr/lib/ipxe/e1000_82540.rom
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
qemu/pxe-e1000.rom
|
||||||
1
VM/MipsQemu/usr/lib/ipxe/eepro100.rom
Symbolic link
1
VM/MipsQemu/usr/lib/ipxe/eepro100.rom
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
qemu/pxe-eepro100.rom
|
||||||
1
VM/MipsQemu/usr/lib/ipxe/ns8390.rom
Symbolic link
1
VM/MipsQemu/usr/lib/ipxe/ns8390.rom
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
qemu/pxe-ne2k_pci.rom
|
||||||
1
VM/MipsQemu/usr/lib/ipxe/pcnet32.rom
Symbolic link
1
VM/MipsQemu/usr/lib/ipxe/pcnet32.rom
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
qemu/pxe-pcnet.rom
|
||||||
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-e1000.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-e1000.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-e1000e.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-e1000e.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-eepro100.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-eepro100.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-ne2k_pci.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-ne2k_pci.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-pcnet.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-pcnet.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-rtl8139.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-rtl8139.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-virtio.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-virtio.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-vmxnet3.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/efi-vmxnet3.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-e1000.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-e1000.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-e1000e.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-e1000e.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-eepro100.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-eepro100.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-ne2k_pci.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-ne2k_pci.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-pcnet.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-pcnet.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-rtl8139.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-rtl8139.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-virtio.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-virtio.rom
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-vmxnet3.rom
Normal file
BIN
VM/MipsQemu/usr/lib/ipxe/qemu/pxe-vmxnet3.rom
Normal file
Binary file not shown.
1
VM/MipsQemu/usr/lib/ipxe/rtl8139.rom
Symbolic link
1
VM/MipsQemu/usr/lib/ipxe/rtl8139.rom
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
qemu/pxe-rtl8139.rom
|
||||||
1
VM/MipsQemu/usr/lib/ipxe/virtio-net.rom
Symbolic link
1
VM/MipsQemu/usr/lib/ipxe/virtio-net.rom
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
qemu/pxe-virtio.rom
|
||||||
BIN
VM/MipsQemu/usr/lib/mips64el-linux-gnuabi64/qemu/audio-pa.so
Normal file
BIN
VM/MipsQemu/usr/lib/mips64el-linux-gnuabi64/qemu/audio-pa.so
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/mips64el-linux-gnuabi64/qemu/ui-gtk.so
Normal file
BIN
VM/MipsQemu/usr/lib/mips64el-linux-gnuabi64/qemu/ui-gtk.so
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/lib/qemu/qemu-bridge-helper
Executable file
BIN
VM/MipsQemu/usr/lib/qemu/qemu-bridge-helper
Executable file
Binary file not shown.
BIN
VM/MipsQemu/usr/sbin/qemu-ga
Executable file
BIN
VM/MipsQemu/usr/sbin/qemu-ga
Executable file
Binary file not shown.
141
VM/MipsQemu/usr/sbin/qemu-make-debian-root
Executable file
141
VM/MipsQemu/usr/sbin/qemu-make-debian-root
Executable file
@ -0,0 +1,141 @@
|
|||||||
|
#! /bin/sh -e
|
||||||
|
#
|
||||||
|
# $Id: qemu-make-debian-root 353 2008-10-16 20:28:22Z aurel32 $
|
||||||
|
#
|
||||||
|
# Script to make a debian root image.
|
||||||
|
#
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
which debootstrap >/dev/null || {
|
||||||
|
echo "error: missing debootstrap package" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
which sfdisk >/dev/null || {
|
||||||
|
echo "error: missing fdisk package" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
which mke2fs >/dev/null || {
|
||||||
|
echo "error: missing e2fsprogs package" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
KEEPFS=0
|
||||||
|
SPARSE=0
|
||||||
|
|
||||||
|
while :; do
|
||||||
|
case "$1" in
|
||||||
|
-k)
|
||||||
|
KEEPFS=1
|
||||||
|
;;
|
||||||
|
-s)
|
||||||
|
SPARSE=1
|
||||||
|
;;
|
||||||
|
-ks|-sk)
|
||||||
|
KEEPFS=1
|
||||||
|
SPARSE=1
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $# -lt 4 ]; then
|
||||||
|
echo Usage: "$0 [-ks] size-in-MB distrib deburl image [files_to_copy_in_/root]" >&2
|
||||||
|
echo "eg $0 150 sid http://proxy:10000/debian qemu" >&2
|
||||||
|
echo "-k keep file system -s sparse image" >&2
|
||||||
|
echo "$0 is normally run as root." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
SIZE=$1 # In Mib
|
||||||
|
DISTRO=$2
|
||||||
|
URL=$3
|
||||||
|
IMAGE=$4
|
||||||
|
shift 4
|
||||||
|
|
||||||
|
# now files to copy are in "$@". We don't put them in a variable
|
||||||
|
# because that would coufuse spaces-in-filenames with
|
||||||
|
# whitespace-separation.
|
||||||
|
|
||||||
|
|
||||||
|
if [ $SIZE -lt 130 ]; then
|
||||||
|
echo 'Size must be at least 130 megabytes (Debian unstable takes 100)' >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cleanup()
|
||||||
|
{
|
||||||
|
echo Cleaning up... >&2
|
||||||
|
umount -d $TMP_DIR || true
|
||||||
|
losetup -d $LOOP || true
|
||||||
|
rm -f $IMAGE
|
||||||
|
}
|
||||||
|
|
||||||
|
trap cleanup EXIT
|
||||||
|
|
||||||
|
# Create a filesystem: one track for partition table.
|
||||||
|
if [ "$SPARSE" = "1" ]; then
|
||||||
|
truncate -s ${SIZE}M "$IMAGE"
|
||||||
|
else
|
||||||
|
dd bs=1M count=$SIZE if=/dev/zero of=$IMAGE
|
||||||
|
fi
|
||||||
|
|
||||||
|
SECT=63 # first sector of a partition
|
||||||
|
|
||||||
|
# Partition so one partition covers entire disk.
|
||||||
|
echo "$SECT," | sfdisk -uS -L $IMAGE
|
||||||
|
|
||||||
|
# Find an unused loop device and set it up.
|
||||||
|
LOOP=`losetup -f`
|
||||||
|
losetup -o $(($SECT*512)) $LOOP $IMAGE
|
||||||
|
|
||||||
|
# Create filesystem.
|
||||||
|
mke2fs -q -m1 $LOOP
|
||||||
|
|
||||||
|
TMP_DIR="$(mktemp -d /tmp/mount.XXXXXX)" || \
|
||||||
|
{ echo >&2 "Failed to create temporary directory"; exit 1; }
|
||||||
|
|
||||||
|
# Mount it.
|
||||||
|
mount $LOOP $TMP_DIR
|
||||||
|
|
||||||
|
# Do debian install on it.
|
||||||
|
debootstrap --variant=minbase $DISTRO $TMP_DIR $URL
|
||||||
|
|
||||||
|
# Final configuration.
|
||||||
|
cat > $TMP_DIR/etc/fstab <<EOF
|
||||||
|
/dev/hda1 / ext2 errors=remount-ro 0 1
|
||||||
|
proc /proc proc defaults 0 0
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Console on ttyS0, not tty1, and no other gettys.
|
||||||
|
sed 's,1:2345:respawn:/sbin/getty 38400 tty1,1:2345:respawn:/sbin/getty 38400 ttyS0,' < $TMP_DIR/etc/inittab | sed 's,^.:23:respawn.*,,' > $TMP_DIR/etc/inittab.new
|
||||||
|
mv $TMP_DIR/etc/inittab.new $TMP_DIR/etc/inittab
|
||||||
|
|
||||||
|
# Set hostname to base of image name.
|
||||||
|
basename $IMAGE > $TMP_DIR/etc/hostname
|
||||||
|
|
||||||
|
# Create /etc/shadow
|
||||||
|
chroot $TMP_DIR pwconv
|
||||||
|
|
||||||
|
# Set root password to "root"
|
||||||
|
sed 's/^root:[^:]*/root:$1$aybpiIGf$cB7iFDNZvViQtQjEZ5HFQ0/' < $TMP_DIR/etc/shadow > $TMP_DIR/etc/shadow.new
|
||||||
|
mv $TMP_DIR/etc/shadow.new $TMP_DIR/etc/shadow
|
||||||
|
|
||||||
|
# Remove packages we don't need
|
||||||
|
chroot $TMP_DIR /usr/bin/dpkg --remove console-common console-tools console-data base-config man-db manpages
|
||||||
|
# Try to remove all libraries: some won't be removable.
|
||||||
|
chroot $TMP_DIR dpkg --remove `chroot $TMP_DIR dpkg --get-selections | sed -n 's/^\(lib[^ \t]*\)[\t ]*install/\1/p'` 2>/dev/null || true
|
||||||
|
|
||||||
|
|
||||||
|
# Copy wanted files to /root if asked to
|
||||||
|
if [ $# -gt 0 ]; then
|
||||||
|
cp -a "$@" $TMP_DIR/root/
|
||||||
|
fi
|
||||||
|
umount -d $TMP_DIR
|
||||||
|
|
||||||
|
trap "" EXIT
|
||||||
|
|
||||||
|
echo Done.
|
||||||
BIN
VM/MipsQemu/usr/share/locale/bg/LC_MESSAGES/qemu.mo
Normal file
BIN
VM/MipsQemu/usr/share/locale/bg/LC_MESSAGES/qemu.mo
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/locale/de_DE/LC_MESSAGES/qemu.mo
Normal file
BIN
VM/MipsQemu/usr/share/locale/de_DE/LC_MESSAGES/qemu.mo
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/locale/fr_FR/LC_MESSAGES/qemu.mo
Normal file
BIN
VM/MipsQemu/usr/share/locale/fr_FR/LC_MESSAGES/qemu.mo
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/locale/hu/LC_MESSAGES/qemu.mo
Normal file
BIN
VM/MipsQemu/usr/share/locale/hu/LC_MESSAGES/qemu.mo
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/locale/it/LC_MESSAGES/qemu.mo
Normal file
BIN
VM/MipsQemu/usr/share/locale/it/LC_MESSAGES/qemu.mo
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/locale/tr/LC_MESSAGES/qemu.mo
Normal file
BIN
VM/MipsQemu/usr/share/locale/tr/LC_MESSAGES/qemu.mo
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/locale/zh_CN/LC_MESSAGES/qemu.mo
Normal file
BIN
VM/MipsQemu/usr/share/locale/zh_CN/LC_MESSAGES/qemu.mo
Normal file
Binary file not shown.
4003
VM/MipsQemu/usr/share/qemu/trace-events-all
Normal file
4003
VM/MipsQemu/usr/share/qemu/trace-events-all
Normal file
File diff suppressed because it is too large
Load Diff
BIN
VM/MipsQemu/usr/share/seabios/acpi-dsdt.aml
Normal file
BIN
VM/MipsQemu/usr/share/seabios/acpi-dsdt.aml
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/bios-256k.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/bios-256k.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/bios.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/bios.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/extboot.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/extboot.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/kvmvapic.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/kvmvapic.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/linuxboot.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/linuxboot.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/linuxboot_dma.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/linuxboot_dma.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/multiboot.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/multiboot.bin
Normal file
Binary file not shown.
1
VM/MipsQemu/usr/share/seabios/optionrom/extboot.bin
Symbolic link
1
VM/MipsQemu/usr/share/seabios/optionrom/extboot.bin
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../extboot.bin
|
||||||
1
VM/MipsQemu/usr/share/seabios/optionrom/kvmvapic.bin
Symbolic link
1
VM/MipsQemu/usr/share/seabios/optionrom/kvmvapic.bin
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../kvmvapic.bin
|
||||||
1
VM/MipsQemu/usr/share/seabios/optionrom/linuxboot.bin
Symbolic link
1
VM/MipsQemu/usr/share/seabios/optionrom/linuxboot.bin
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../linuxboot.bin
|
||||||
1
VM/MipsQemu/usr/share/seabios/optionrom/multiboot.bin
Symbolic link
1
VM/MipsQemu/usr/share/seabios/optionrom/multiboot.bin
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../multiboot.bin
|
||||||
1
VM/MipsQemu/usr/share/seabios/optionrom/vapic.bin
Symbolic link
1
VM/MipsQemu/usr/share/seabios/optionrom/vapic.bin
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../vapic.bin
|
||||||
BIN
VM/MipsQemu/usr/share/seabios/q35-acpi-dsdt.aml
Normal file
BIN
VM/MipsQemu/usr/share/seabios/q35-acpi-dsdt.aml
Normal file
Binary file not shown.
1
VM/MipsQemu/usr/share/seabios/vapic.bin
Symbolic link
1
VM/MipsQemu/usr/share/seabios/vapic.bin
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
kvmvapic.bin
|
||||||
BIN
VM/MipsQemu/usr/share/seabios/vgabios-cirrus.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/vgabios-cirrus.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/vgabios-isavga.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/vgabios-isavga.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/vgabios-qxl.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/vgabios-qxl.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/vgabios-stdvga.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/vgabios-stdvga.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/vgabios-virtio.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/vgabios-virtio.bin
Normal file
Binary file not shown.
BIN
VM/MipsQemu/usr/share/seabios/vgabios-vmware.bin
Normal file
BIN
VM/MipsQemu/usr/share/seabios/vgabios-vmware.bin
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user