1
0
forked from mir/linux-vm-tools

Remove sudo and added root check for 16.04

This commit is contained in:
Justin Terry (VM) 2018-03-02 09:55:31 -08:00
parent 0432e5888f
commit 4b0cee52ea
2 changed files with 35 additions and 33 deletions

View File

@ -11,22 +11,24 @@
# Update our machine to the latest code if we need to.
#
sudo apt update
sudo apt upgrade -y
if [ ! $(id -u) ] ; then
echo 'This script must be run with root privileges' >&2
exit 1
fi
apt update
apt upgrade -y
# Get git if we dont have it.
sudo apt install -y git
apt install -y git
# Get the linux-azure kernel to add hyper-v sockets to the guest
sudo apt install -y linux-azure
apt install -y linux-azure
if [ -f /var/run/reboot-required ]; then
echo
echo "A reboot is required in order to proceed with the install."
echo "Please reboot and re-run this script to finish the install."
echo
exit
echo "A reboot is required in order to proceed with the install." >&2
echo "Please reboot and re-run this script to finish the install." >&2
exit 1
fi
###############################################################################
@ -35,10 +37,10 @@ fi
export XRDP_PATH=~/git/src/github.com/neutrinolabs/xrdp
# Install the xrdp service so we have the auto start behavior
sudo apt install -y xrdp
apt install -y xrdp
# Get XRDP requirements
sudo apt install -y autoconf libtool libssl-dev libpam0g-dev libx11-dev libxfixes-dev libxrandr-dev libjpeg-dev libfuse-dev nasm
apt install -y autoconf libtool libssl-dev libpam0g-dev libx11-dev libxfixes-dev libxrandr-dev libjpeg-dev libfuse-dev nasm
# Get XRDP
if [ ! -d $XRDP_PATH ]; then
@ -52,33 +54,33 @@ cd $XRDP_PATH
# Build/Install XRDP
make
sudo make install
make install
# Configure the installed XRDP ini files.
# use vsock transport.
sudo sed -i_orig -e 's/use_vsock=false/use_vsock=true/g' /etc/xrdp/xrdp.ini
sed -i_orig -e 's/use_vsock=false/use_vsock=true/g' /etc/xrdp/xrdp.ini
# use rdp security.
sudo sed -i_orig -e 's/security_layer=negotiate/security_layer=rdp/g' /etc/xrdp/xrdp.ini
sed -i_orig -e 's/security_layer=negotiate/security_layer=rdp/g' /etc/xrdp/xrdp.ini
# remove encryption validation.
sudo sed -i_orig -e 's/crypt_level=high/crypt_level=none/g' /etc/xrdp/xrdp.ini
sed -i_orig -e 's/crypt_level=high/crypt_level=none/g' /etc/xrdp/xrdp.ini
# disable bitmap compression since its local its much faster
sudo sed -i_orig -e 's/bitmap_compression=true/bitmap_compression=false/g' /etc/xrdp/xrdp.ini
sed -i_orig -e 's/bitmap_compression=true/bitmap_compression=false/g' /etc/xrdp/xrdp.ini
#
# sudo sed -n -e 's/max_bpp=32/max_bpp=24/g' /etc/xrdp/xrdp.ini
# sed -n -e 's/max_bpp=32/max_bpp=24/g' /etc/xrdp/xrdp.ini
# use the default lightdm x display
# sudo sed -i_orig -e 's/X11DisplayOffset=10/X11DisplayOffset=0/g' /etc/xrdp/sesman.ini
# sed -i_orig -e 's/X11DisplayOffset=10/X11DisplayOffset=0/g' /etc/xrdp/sesman.ini
# 16.04.3 changed the allowed_users
sudo sed -i_orig -e 's/allowed_users=console/allowed_users=anybody/g' /etc/X11/Xwrapper.config
sed -i_orig -e 's/allowed_users=console/allowed_users=anybody/g' /etc/X11/Xwrapper.config
# reconfigure the service
sudo systemctl daemon-reload
sudo systemctl enable xrdp.service
sudo systemctl enable xrdp-sesman.service
systemctl daemon-reload
systemctl enable xrdp.service
systemctl enable xrdp-sesman.service
# Configure the policy xrdp session
sudo bash -c 'cat >/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf <<EOF
bash -c 'cat >/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf <<EOF
polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.color-manager.create-device" ||
@ -104,11 +106,11 @@ EOF'
export XORGXRDP_PATH=~/git/src/github.com/neutrinolabs/xorgxrdp
# Get XORGXRDP requirements
sudo apt install -y autoconf libtool xserver-xorg-core xserver-xorg-dev
apt install -y autoconf libtool xserver-xorg-core xserver-xorg-dev
# 16.04.3 is missing fontutil.h
if [ ! -f /usr/include/X11/fonts/fontutil.h ]; then
sudo apt install -y libxfont1-dev
apt install -y libxfont1-dev
fi
# Get XORGXRDP
@ -123,10 +125,10 @@ cd $XORGXRDP_PATH
# Build/Install XORGXRDP
make
sudo make install
make install
#Installing xorgxrdp knocks out ubuntu-desktop from running. We need to reinstall it
sudo apt-get install --reinstall ubuntu-desktop
apt-get install --reinstall ubuntu-desktop
#
# End XORGXRDP

View File

@ -66,19 +66,19 @@ modprobe hv_sock
# Blacklist the vmw module
cat /etc/modprobe.d/blacklist.conf | grep vmw_vsock_vmci_transport > /dev/null
if [ "$?" == "1" ]; then
bash -c 'echo "blacklist vmw_vsock_vmci_transport" >> /etc/modprobe.d/blacklist.conf <<EOF
bash -c 'echo "blacklist vmw_vsock_vmci_transport" >> /etc/modprobe.d/blacklist.conf <<EOF
EOF'
fi
#Ensure hv_sock gets loaded
cat /etc/modules | grep hv_sock > /dev/null
# Ensure hv_sock gets loaded
cat /etc/modules | grep hv_sock > /dev/null
if [ "$?" == "1" ]; then
bash -c 'echo "hv_sock" >> /etc/modules <<EOF
bash -c 'echo "hv_sock" >> /etc/modules <<EOF
EOF'
fi
# Configure the policy xrdp session
bash -c 'cat >/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf <<EOF
bash -c 'cat >/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf <<EOF
polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.color-manager.create-device" ||