16
by Alan Pope
phabulous updates |
1 |
#!/bin/bash
|
2 |
# Script to set a more secure password for the phablet user
|
|
3 |
#
|
|
4 |
# Script does the following:-
|
|
5 |
# * changes password for default phablet user
|
|
6 |
# * echos the password to the screen
|
|
7 |
#
|
|
8 |
# Assumptions:-
|
|
9 |
# * Device already running some build of Ubuntu Touch and is connected via USB
|
|
10 |
# * You're already connected to the network on the device
|
|
11 |
#
|
|
12 |
# (c) 2013 Canonical - Alan Pope alan.pope@canonical.com
|
|
13 |
||
14 |
UBUNTU_ROOT="/data/ubuntu" |
|
15 |
||
16 |
function adb_root { |
|
17 |
echo ":: Run adb root" |
|
18 |
adb root |
|
19 |
if [ $? -ne "0" ]; then |
|
20 |
echo ":: adb root failed" |
|
21 |
exit 1 |
|
22 |
fi
|
|
23 |
}
|
|
24 |
||
25 |
function pause { |
|
26 |
echo ":: Wait $1" |
|
27 |
sleep $1
|
|
28 |
}
|
|
29 |
||
30 |
function wait_for_device { |
|
31 |
echo -n ":: Waiting for device to come back ." |
|
32 |
STATE="unknown" |
|
33 |
while [ "$STATE" == "unknown" ]; |
|
34 |
do
|
|
35 |
echo -n "." |
|
36 |
STATE=`adb get-state` |
|
37 |
sleep 15
|
|
38 |
done
|
|
39 |
echo " " |
|
40 |
}
|
|
41 |
||
42 |
# Setup network on device
|
|
43 |
adb_root |
|
44 |
pause 5
|
|
45 |
||
46 |
echo ":: Build script to fix password" |
|
47 |
TMP_FILE=$(mktemp) |
|
48 |
||
49 |
cat > $TMP_FILE << 'EOF' |
|
50 |
#!/bin/bash
|
|
51 |
export PATH="/sbin:/usr/sbin:/bin:/usr/bin"
|
|
52 |
apt-get update
|
|
53 |
apt-get install --yes pwgen
|
|
54 |
NEWPASS=$(pwgen 8 1)
|
|
55 |
echo phablet:$NEWPASS | /usr/sbin/chpasswd
|
|
56 |
if [ $? -ne "0" ]; then
|
|
57 |
echo ":: Changing password failed"
|
|
58 |
exit 1
|
|
59 |
else
|
|
60 |
echo ":: New password for phablet user is $NEWPASS"
|
|
61 |
fi
|
|
62 |
EOF
|
|
63 |
||
64 |
echo ":: Installing apps" |
|
65 |
adb push $TMP_FILE $UBUNTU_ROOT/$TMP_FILE |
|
66 |
adb shell chmod 755 $UBUNTU_ROOT/$TMP_FILE |
|
67 |
adb shell chroot $UBUNTU_ROOT $UBUNTU_ROOT/$TMP_FILE |
|
68 |
||
69 |
echo ":: Reboot device" |
|
70 |
adb reboot |
|
71 |
||
72 |
echo ":: Done" |