Remélem nincs nagyon sok sec hole benne ;)
Megj.: update-elni külön kell az schroot környezetet, azért ezt nem baj megjegyezni. Az 'schroot' parancs belép és ad egy shell-t, és ott már ugyanúgy.
Megj.2: idetettem még az update script-emet is. Egy fontos dolog elsőre kimaradt. A chroot-on belüli sources.list-be bele kell tenni a debian-os security repo-t hogy az is tudjon frissülni az update során. Vastaggal kiemeltem.
-------------------------------------------------------------
#!/bin/sh
# chroot_create.sh
if ! whoami | grep -q root; then echo Run it as root.; echo; exit 1; fi
CHROOTDIR="/chroot"
MYUSER="andras"
DEBIANVER="lenny"
ARCH="amd64"
CONF="/etc/schroot/schroot.conf"
PKGS="epiphany-browser pidgin pidgin-encryption pidgin-otr alsa-utils mozilla-mplayer swfdec-mozilla gtk2-engines-pixbuf gtk2-engines-xfce less wine-bin wine-utils"
if [ -x "$CHROOTDIR" ]
then
echo Chroot directory already exists.
echo
exit 1
fi
apt-get clean
apt-get update
apt-get install schroot debootstrap
debootstrap --variant=minbase --arch $ARCH $DEBIANVER $CHROOTDIR http://ftp.at.debian.org/debian
echo "deb http://security.debian.org/ $DEBIANVER/updates main" >> "$CHROOTDIR"/etc/apt/sources.list
#nano /etc/schroot/copyfiles-defaults
#nano /etc/schroot/mount-defaults
sed -i.bak s/"^\/home"/"#\/home"/ /etc/schroot/mount-defaults
sed -i.tmp s/"^#proc"/"proc"/ /etc/schroot/mount-defaults
sed -i.tmp s/"^#tmpfs"/"tmpfs"/ /etc/schroot/mount-defaults
echo "" > "$CONF"
echo "[default]" >> "$CONF"
echo "description=Debian" >> "$CONF"
echo "type=directory" >> "$CONF"
echo "location=$CHROOTDIR" >> "$CONF"
echo "priority=3" >> "$CONF"
echo "users=$MYUSER" >> "$CONF"
echo "#groups=sbuild" >> "$CONF"
echo "root-groups=root" >> "$CONF"
echo "run-setup-scripts=true" >> "$CONF"
echo "run-exec-scripts=true" >> "$CONF"
echo 'SESSIONS_RECOVER="end"' > /etc/default/schroot
schroot -d ~ -- apt-get clean
schroot -d ~ -- apt-get update
schroot -d ~ -- apt-get -y upgrade
schroot -d ~ -- apt-get -y install $PKGS
schroot -d ~ -- apt-get clean
schroot -d ~ -- apt-get update
schroot -d ~ -- apt-get -y upgrade
sed -i.tmp s/"^\/home"/"#\/home"/ /etc/schroot/mount-defaults
sed -i.tmp s/"^proc"/"#proc"/ /etc/schroot/mount-defaults
sed -i.tmp s/"^tmpfs"/"#tmpfs"/ /etc/schroot/mount-defaults
# my own settings to copy
mkdir -p "$CHROOTDIR"/home/"$MYUSER"
mkdir -p "$CHROOTDIR"/home/"$MYUSER"/Desktop
mkdir -p "$CHROOTDIR"/home/"$MYUSER"/configs
mkdir -p "$CHROOTDIR"/home/"$MYUSER"/extras/downloads
mkdir -p "$CHROOTDIR"/home/"$MYUSER"/.config
mkdir -p "$CHROOTDIR"/home/"$MYUSER"/.gconf/apps
mkdir -p "$CHROOTDIR"/home/"$MYUSER"/.gnome2
chown -R "$MYUSER":"$MYUSER" "$CHROOTDIR"/home/"$MYUSER"
# epiphany settings
cp -a /home/"$MYUSER"/.gnome2/epiphany "$CHROOTDIR"/home/"$MYUSER"/.gnome2/
cp -a /home/"$MYUSER"/.gconf/apps/epiphany "$CHROOTDIR"/home/"$MYUSER"/.gconf/apps/
# pidgin settings
cp -a /home/"$MYUSER"/.purple "$CHROOTDIR"/home/"$MYUSER"/
# pidgin plugin for msn live
cp -a /usr/lib/purple-2/libmsn-pecan.so "$CHROOTDIR"/usr/lib/purple-2/
tzselect
echo
echo removing suid and guid bits from executables...
find /chroot/ -perm -4000 -user root ! -type d | xargs chmod u-s
find /chroot/ -perm -2000 -group root ! -type d | xargs chmod g-s
echo
echo done.
exit 0
-------------------------------------------------------------
#!/bin/sh
# chroot_run.sh
xhost local:
schroot -d ~ -p -- "$@"
xhost -
exit 0
-------------------------------------------------------------
#!/bin/sh
# chroot_update.sh
if ! whoami | grep -q root; then echo Run it as root.; echo; exit 1; fi
CHROOTDIR="/chroot"
if ! [ -x "$CHROOTDIR" ]
then
echo Chroot directory doesn"'"t exists.
echo
exit 1
fi
schroot -d ~ -- apt-get clean
schroot -d ~ -- apt-get update
schroot -d ~ -- apt-get -y upgrade
echo
echo done.
exit 0
- log69 blogja
- A hozzászóláshoz be kell jelentkezni
- 1064 megtekintés
Hozzászólások
Ez még jól is jöhet, kösz. :)
-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."
- A hozzászóláshoz be kell jelentkezni
A "másik" topikban kértem, de itt köszönöm meg! :) Köszönöm! :)
--
\\-- blog --//
- A hozzászóláshoz be kell jelentkezni
Egy dolog kimaradt. A chroot frissítéssel kapcsolatban feljebb beszúrtam megjegyzést.
- A hozzászóláshoz be kell jelentkezni
Itt egy kisebb tudású, részben deja vu, azaz a /bin könyvtár chroot környezetbe való automatikus másolása, /lib függőségekkel $(ldd):
http://hup.hu/node/70803#comment-877955
tesztelve red hat és centos alatt, felelősséget továbbra sem :)
- A hozzászóláshoz be kell jelentkezni
subscribe
----------------------------------
Fedora 12 x86_64
Freedom. Friends. Features. First.
http://snicore.blogspot.com
- A hozzászóláshoz be kell jelentkezni