Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(194)

Side by Side Diff: src/platform/init/chromeos_startup

Issue 2132008: Update factory installer, factory test (Closed) Base URL: ssh://git@chromiumos-git/chromeos
Patch Set: integrate autupdate server changes Created 10 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #!/bin/sh 1 #!/bin/sh
2 2
3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 HAS_INITRAMFS=0 7 HAS_INITRAMFS=0
8 if [ -d /dev/.initramfs ] 8 if [ -d /dev/.initramfs ]
9 then 9 then
10 # The initrd will have mounted /sys, /proc, and /dev for us. 10 # The initrd will have mounted /sys, /proc, and /dev for us.
11 HAS_INITRAMFS=1 11 HAS_INITRAMFS=1
12 else 12 else
13 mount -n -t sysfs -onodev,noexec,nosuid sysfs /sys 13 mount -n -t sysfs -onodev,noexec,nosuid sysfs /sys
14 mount -n -t proc -onodev,noexec,nosuid proc /proc 14 mount -n -t proc -onodev,noexec,nosuid proc /proc
15 mount -n -t tmpfs -omode=0755 udev /dev 15 mount -n -t tmpfs -omode=0755 udev /dev
16 fi 16 fi
17 17
18 PRE_UPTIME_STAT=$(cat /proc/uptime) 18 PRE_UPTIME_STAT=$(cat /proc/uptime)
19 PRE_DISK_STAT=$(cat /sys/block/sda/stat) 19 PRE_DISK_STAT=$(cat /sys/block/sda/stat)
20 20
21 # Moblin trick: Disable blinking cursor. Without this a splash screen
22 # will show a distinct cursor shape even when the cursor is set to none.
23 echo 0 > /sys/devices/virtual/graphics/fbcon/cursor_blink
24
25 # Since we defer udev until later in the boot process, we pre-populate /dev 21 # Since we defer udev until later in the boot process, we pre-populate /dev
26 # with the set of devices needed for X and other early services to run. 22 # with the set of devices needed for X and other early services to run.
27 cp -a -f /lib/chromiumos/devices/* /dev 23 cp -a -f /lib/chromiumos/devices/* /dev
28 24
29 # Splash screen! 25 # Splash screen! Unless we are in noninteractive mode.
30 if [ -x /usr/bin/ply-image ] 26 # TODO(sosa@chromium.org) - Use kernel flag
31 then 27 if [ -x /usr/bin/ply-image ]; then
32 /usr/bin/ply-image /usr/share/chromeos-assets/images/login_splash.png & 28 if [ ! -f /root/.factory_test ] && [ ! -f /root/.factory_installer ]; then
29 # Moblin trick: Disable blinking cursor. Without this a splash screen
30 # will show a distinct cursor shape even when the cursor is set to none.
31 echo 0 > /sys/devices/virtual/graphics/fbcon/cursor_blink
32
33 /usr/bin/ply-image /usr/share/chromeos-assets/images/login_splash.png &
34 fi
33 fi 35 fi
34 36
35 mount -n -t tmpfs tmp /tmp 37 mount -n -t tmpfs tmp /tmp
36 mount -n -t tmpfs -onosuid,nodev shmfs /dev/shm 38 mount -n -t tmpfs -onosuid,nodev shmfs /dev/shm
37 mount -n -t devpts -onoexec,nosuid,gid=5,mode=0620 devpts /dev/pts 39 mount -n -t devpts -onoexec,nosuid,gid=5,mode=0620 devpts /dev/pts
38 40
39 # Mount our stateful partition. It's always partition 1. 41 # Mount our stateful partition. It's always partition 1.
40 ROOT_DEV=$(rootdev) 42 ROOT_DEV=$(rootdev)
41 STATE_DEV=${ROOT_DEV%[0-9]*}1 43 STATE_DEV=${ROOT_DEV%[0-9]*}1
42 mount -n -t ext3 "$STATE_DEV" /mnt/stateful_partition 44
45 # For factory install shim, we never want to write to the SDCard.
46 if [ -f /root/.factory_installer ]; then
47 mount -n -t tmpfs tmp /mnt/stateful_partition
48 else
49 mount -n -t ext3 "$STATE_DEV" /mnt/stateful_partition
50 fi
43 51
44 # Check if the stateful partition has requested self-destruction 52 # Check if the stateful partition has requested self-destruction
45 # This is used for the factory install process 53 # This is used for the factory install process
46 RESET_FILE="/mnt/stateful_partition/factory_install_reset" 54 RESET_FILE="/mnt/stateful_partition/factory_install_reset"
47 if [ -f "$RESET_FILE" ]; then 55 if [ -f "$RESET_FILE" ]; then
48 if [ $(stat -c%u "$RESET_FILE") -eq 0 ]; then 56 if [ $(stat -c%u "$RESET_FILE") -eq 0 ]; then
49 echo "Erasing stateful partition..." 57 echo "Erasing stateful partition..."
50 exec /sbin/clobber-state 58 exec /sbin/clobber-state
51 fi 59 fi
52 fi 60 fi
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 (test -f "$SALT" || head -c 16 /dev/urandom > "$SALT") & 117 (test -f "$SALT" || head -c 16 /dev/urandom > "$SALT") &
110 118
111 # Write out uptime and disk stats pre/post startup 119 # Write out uptime and disk stats pre/post startup
112 cat /proc/uptime > /tmp/uptime-post-startup 120 cat /proc/uptime > /tmp/uptime-post-startup
113 ! cat /sys/block/sda/stat > /tmp/disk-post-startup 121 ! cat /sys/block/sda/stat > /tmp/disk-post-startup
114 echo "$PRE_UPTIME_STAT" > /tmp/uptime-pre-startup 122 echo "$PRE_UPTIME_STAT" > /tmp/uptime-pre-startup
115 echo "$PRE_DISK_STAT" > /tmp/disk-pre-startup 123 echo "$PRE_DISK_STAT" > /tmp/disk-pre-startup
116 124
117 # Always return success to avoid killing init 125 # Always return success to avoid killing init
118 exit 0 126 exit 0
OLDNEW
« no previous file with comments | « src/platform/factory_installer/factory_install.sh ('k') | src/platform/installer/chromeos-postinst » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698