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

Side by Side Diff: src/platform/installer/chromeos-install

Issue 1513019: Create EFI System Partition on USB image during build. (Closed)
Patch Set: Cleanup, add image_to_vmware.sh changes Created 10 years, 8 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
« no previous file with comments | « src/platform/installer/chromeos-common.sh ('k') | src/scripts/build_gpt.sh » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/sh -u 1 #!/bin/sh -u
2 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 2 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 # 5 #
6 # A script to install from removable media to hard disk. 6 # A script to install from removable media to hard disk.
7 7
8 # Load functions and constants for chromeos-install. 8 # Load functions and constants for chromeos-install.
9 . "$(dirname "$0")/chromeos-common.sh" || exit 1 9 . "$(dirname "$0")/chromeos-common.sh" || exit 1
10 . /usr/lib/shflags || exit 1 10 . /usr/lib/shflags || exit 1
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 176
177 sync 177 sync
178 } 178 }
179 179
180 ############################################################################## 180 ##############################################################################
181 181
182 # What do we expect & require to have on the source device? 182 # What do we expect & require to have on the source device?
183 STATEFUL_IMG=${SRC}1 183 STATEFUL_IMG=${SRC}1
184 KERNEL_IMG=${SRC}2 184 KERNEL_IMG=${SRC}2
185 ROOTFS_IMG=${SRC}3 185 ROOTFS_IMG=${SRC}3
186 ESP_IMG=${SRC}4
186 187
187 # Steal the PMBR code from the source MBR to put on the dest MBR, for booting 188 # Steal the PMBR code from the source MBR to put on the dest MBR, for booting
188 # on legacy-BIOS devices. 189 # on legacy-BIOS devices.
189 sudo dd if=$SRC of=$PMBRCODE bs=512 count=1 190 sudo dd if=$SRC of=$PMBRCODE bs=512 count=1
190 191
191 # Create the GPT. 192 # Create the GPT.
192 install_gpt $FLAGS_dst $ROOTFS_IMG $KERNEL_IMG $STATEFUL_IMG $PMBRCODE 193 install_gpt $FLAGS_dst $ROOTFS_IMG $KERNEL_IMG $STATEFUL_IMG $PMBRCODE $ESP_IMG
193 194
194 if [ "$FLAGS_skip_rootfs" -eq "$FLAGS_TRUE" ]; then 195 if [ "$FLAGS_skip_rootfs" -eq "$FLAGS_TRUE" ]; then
195 echo Done installing partitons. 196 echo Done installing partitons.
196 exit 0 197 exit 0
197 fi 198 fi
198 199
199 # Install the content. 200 # Install the content.
200 echo "Copying kernel..." 201 echo "Copying kernel..."
201 sudo dd if=${KERNEL_IMG} of=${FLAGS_dst} conv=notrunc bs=512 \ 202 sudo dd if=${KERNEL_IMG} of=${FLAGS_dst} conv=notrunc bs=512 \
202 seek=${START_KERN_A} 203 seek=${START_KERN_A}
203 sudo dd if=${KERNEL_IMG} of=${FLAGS_dst} conv=notrunc bs=512 \ 204 sudo dd if=${KERNEL_IMG} of=${FLAGS_dst} conv=notrunc bs=512 \
204 seek=${START_KERN_B} 205 seek=${START_KERN_B}
205 206
206 echo "Copying rootfs..." 207 echo "Copying rootfs..."
207 install_rootfs ${ROOTFS_IMG} ${FLAGS_dst} ${START_ROOTFS_A} "H-ROOT-A" 208 install_rootfs ${ROOTFS_IMG} ${FLAGS_dst} ${START_ROOTFS_A} "H-ROOT-A"
208 install_rootfs ${ROOTFS_IMG} ${FLAGS_dst} ${START_ROOTFS_B} "H-ROOT-B" 209 install_rootfs ${ROOTFS_IMG} ${FLAGS_dst} ${START_ROOTFS_B} "H-ROOT-B"
209 210
211 echo "Copying ESP..."
212 sudo dd if=${ESP_IMG} of=${DST} conv=notrunc bs=512 seek=${START_ESP}
213
210 # We can't guarantee that the kernel will see the new partition table, so we 214 # We can't guarantee that the kernel will see the new partition table, so we
211 # can't use it directly. We could force the kernel to reload it with an ioctl, 215 # can't use it directly. We could force the kernel to reload it with an ioctl,
212 # but then we might have the UI mounting and displaying any old filesystems 216 # but then we might have the UI mounting and displaying any old filesystems
213 # left over from the last install, and we don't want that either. So any access 217 # left over from the last install, and we don't want that either. So any access
214 # that we need to do to the destination partitions will have to go through loop 218 # that we need to do to the destination partitions will have to go through loop
215 # devices. 219 # devices.
216 220
217 # Now run the postinstall script in each new rootfs. Note that even though 221 # Now run the postinstall script in each new rootfs. Note that even though
218 # we're passing the new destination partition number as an arg, the postinst 222 # we're passing the new destination partition number as an arg, the postinst
219 # script had better not try to access it, for the reasons we just gave. 223 # script had better not try to access it, for the reasons we just gave.
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 loop_offset_cleanup 259 loop_offset_cleanup
256 trap - EXIT 260 trap - EXIT
257 261
258 # Force data to disk before we declare done. 262 # Force data to disk before we declare done.
259 sync 263 sync
260 264
261 echo "------------------------------------------------------------" 265 echo "------------------------------------------------------------"
262 echo "" 266 echo ""
263 echo "Installation to '$FLAGS_dst' complete." 267 echo "Installation to '$FLAGS_dst' complete."
264 echo "Please shutdown, remove the USB device, cross your fingers, and reboot." 268 echo "Please shutdown, remove the USB device, cross your fingers, and reboot."
OLDNEW
« no previous file with comments | « src/platform/installer/chromeos-common.sh ('k') | src/scripts/build_gpt.sh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698