summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2013-05-31 22:06:06 (GMT)
committerJames Meyer <james.meyer@operamail.com>2013-05-31 22:06:06 (GMT)
commit6ef59e9232c170ff33166ac31858b72551ccc479 (patch)
tree5163e7cf83a29779b0c29a9ac2325beef7950dc6
parente9e438b24a8d5e8d3d73b15b9208b641ec7baf60 (diff)
downloadlinhes_pkgbuild-6ef59e9232c170ff33166ac31858b72551ccc479.zip
linhes_pkgbuild-6ef59e9232c170ff33166ac31858b72551ccc479.tar.gz
linhes_pkgbuild-6ef59e9232c170ff33166ac31858b72551ccc479.tar.bz2
LinHES-config: redo of partition, dropped pyparted and using parted directly from the cmdline.
This change also switches to using gpt only and dropping the mbr. Partition layout remains the same p1 = / p2 = swap p3 = null p4 = gpt boot p5 = home p6 = database p7 = remaining space This also fixes using drives larger then 2TB and attempting to install with no swap partition. refs #917
-rwxr-xr-xabs/core/LinHES-config/PKGBUILD4
-rwxr-xr-xabs/core/LinHES-config/mv_install.py136
2 files changed, 115 insertions, 25 deletions
diff --git a/abs/core/LinHES-config/PKGBUILD b/abs/core/LinHES-config/PKGBUILD
index 449f456..3b083a2 100755
--- a/abs/core/LinHES-config/PKGBUILD
+++ b/abs/core/LinHES-config/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=LinHES-config
pkgver=8.0
-pkgrel=2
+pkgrel=3
conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev LinHes-config )
pkgdesc="Install and configure your system"
depends=('bc' 'libstatgrab' 'mysql-python' 'expect' 'curl' 'dnsutils' 'parted'
@@ -133,7 +133,7 @@ build() {
install -o root -g root -D -m 0755 blacklist_pcspkr.conf $startdir/pkg/etc/modprobe.d/blacklist_pcspkr.conf
install -o root -g root -D -m 0755 blacklist_nouveau.conf $startdir/pkg/etc/modprobe.d/blacklist_nouveau.conf
}
-md5sums=('7cdc9bc678ab02a2d30444e20a3c71eb'
+md5sums=('70d0e964788d1d7bc622c20d7d8d8f5c'
'3f6855b7bb860a44f96a972c2e80f497'
'aaeb581275433649ff74e05da5e61a78'
'2596460462cf6c889cf8f95485537b20'
diff --git a/abs/core/LinHES-config/mv_install.py b/abs/core/LinHES-config/mv_install.py
index 1128571..2712a60 100755
--- a/abs/core/LinHES-config/mv_install.py
+++ b/abs/core/LinHES-config/mv_install.py
@@ -259,7 +259,7 @@ def blank_table(diskdevice):
cmd = "parted %s --script -- mklabel msdos" %diskdevice
runcmd(cmd)
- logging.debug("parition table after:")
+ logging.debug("partition table after:")
cmd = "fdisk -l %s" %diskdevice
runcmd(cmd)
@@ -392,35 +392,128 @@ def set_active_parition(diskdevice):
logging.info(" Depending on your system this may not matter")
+#def partition_disk():
+ #global hostoptions
+ #logging.info("Partitioning")
+ #logging.debug("____start of partition_disk____")
+ #rootdisk = hostoptions["rootdisk"]
+ #datadisk = hostoptions["datadisk"]
+ #label = "root"
+ #partitions_removeall("/dev/"+rootdisk, label)
+ #label = "data"
+ #partitions_removeall("/dev/"+datadisk, label)
+ #hostoptions["rootpartition"] = create_partitions("/dev/"+rootdisk, hostoptions["rootsize"], "NORMAL", 0)
+ #set_active_parition("/dev/"+rootdisk)
+
+ #hostoptions["swappartition"] = create_partitions("/dev/"+rootdisk, hostoptions["swapsize"], "SWAP", 1)
+
+ ##create extended partition
+ #hostoptions["extended_partition"] = create_partitions("/dev/"+rootdisk, "all", "EXTENDED", 1)
+
+ ##create the logical in the extended
+ #hostoptions["home_partition"] = create_partitions("/dev/"+rootdisk, hostoptions["homesize"], "LOGICAL", 1)
+ #hostoptions["sql_partition"] = create_partitions("/dev/"+rootdisk, hostoptions["sqlsize"], "LOGICAL", 1)
+
+ #if datadisk != rootdisk:
+ #hostoptions["datapartition"] = create_partitions("/dev/"+datadisk, hostoptions["datasize"], "NORMAL", 0)
+ #else:
+ #hostoptions["datapartition"] = create_partitions("/dev/"+datadisk, hostoptions["datasize"], "LOGICAL", 1)
+
+ #logging.debug("sleeping for 5 seconds")
+ #time.sleep(5)
+
+
+#parted /dev/sda -a optimal --script mklabel gpt
+#parted /dev/sda -a optimal --script unit MB -- mkpart primary 1 500
+#parted /dev/sda -a optimal --script unit MB -- mkpart swap 501 600
+#parted /dev/sda -a optimal --script unit MB -- mkpart primary 601 601
+#parted /dev/sda -a optimal --script unit MB -- mkpart primary 601 601
+
+#parted /dev/sda -a optimal --script unit MB -- mkpart primary 604 700
+#parted /dev/sda -a optimal --script unit MB -- mkpart primary 700 800
+#parted /dev/sda -a optimal --script unit MB -- mkpart primary 800 -1
+
+def create_partitions_gpt(diskdevice, start,size,partition_type):
+ logging.debug("_____Create partitions gpt ______")
+ if size == "NO" or size == "no":
+ logging.info("Size is 0, skipping")
+ last_sector = start
+ elif size == "all" or size == "ALL":
+ logging.info("Size is all, using rest of disk")
+ last_sector = "-1"
+ else:
+ last_sector = start + int(size)
+
+ cmd = "parted %s -a optimal --script unit MB -- mkpart primary %s %s" %(diskdevice, start, last_sector)
+ runcmd(cmd)
+
+ newstart = last_sector
+ #print newstart
+ return newstart
+
+
+
+
+
+
def partition_disk():
global hostoptions
logging.info("Partitioning")
logging.debug("____start of partition_disk____")
- rootdisk = hostoptions["rootdisk"]
- datadisk = hostoptions["datadisk"]
+ rootdisk = "/dev/%s" %(hostoptions["rootdisk"])
+ datadisk = "/dev/%s" %(hostoptions["datadisk"])
label = "root"
- partitions_removeall("/dev/"+rootdisk, label)
+ partitions_removeall(rootdisk, label)
label = "data"
- partitions_removeall("/dev/"+datadisk, label)
- hostoptions["rootpartition"] = create_partitions("/dev/"+rootdisk, hostoptions["rootsize"], "NORMAL", 0)
- set_active_parition("/dev/"+rootdisk)
+ partitions_removeall(datadisk, label)
+ #create gpt table
+ cmd = "parted %s -a optimal --script mklabel gpt" %rootdisk
+ runcmd(cmd)
+ cmd = "parted %s -a optimal --script mklabel gpt" %datadisk
+ runcmd(cmd)
+
+ start_sector = 1
+ start_sector = create_partitions_gpt(rootdisk, start_sector, hostoptions["rootsize"], "primary")
+ start_sector = create_partitions_gpt(rootdisk, start_sector, hostoptions["swapsize"], "primary")
+ hostoptions["rootpartition"] = hostoptions["rootdisk"]+str(1)
+ hostoptions["swappartition"] = hostoptions["rootdisk"] + str(2)
+ hostoptions["home_partition"] = hostoptions["rootdisk"]+str(5)
+ hostoptions["sql_partition"] = hostoptions["rootdisk"]+str(6)
+ hostoptions["datapartition"] = hostoptions["datadisk"]+str(7)
+
+
+ #create 1 blank to match up with extended/logical layout from 8.0
+ start_sector = create_partitions_gpt(rootdisk, start_sector, "NO", "primary")
+
+ #create gtp boot
+ start_sector = start_sector + 1
+ start_sector = create_partitions_gpt(rootdisk, start_sector, 2 , "primary")
+ cmd = "parted %s set 4 bios_grub on" %rootdisk
+ runcmd(cmd)
+
+ #create home_partition
+ start_sector = start_sector + 1
+ start_sector = create_partitions_gpt(rootdisk, start_sector, hostoptions["homesize"], "primary")
+
+ ##create mysql
+ start_sector = start_sector + 1
+ start_sector = create_partitions_gpt(rootdisk, start_sector, hostoptions["sqlsize"], "primary")
+
+ start_sector = start_sector + 1
+ #create data
+ if datadisk != rootdisk:
+ create_partitions_gpt(datadisk, 1, hostoptions["datasize"], "primary")
+ else:
+ create_partitions_gpt(datadisk, start_sector, hostoptions["datasize"], "primary")
+
+ logging.debug("sleeping for 5 seconds")
+ time.sleep(5)
+
- hostoptions["swappartition"] = create_partitions("/dev/"+rootdisk, hostoptions["swapsize"], "SWAP", 1)
- #create extended partition
- hostoptions["extended_partition"] = create_partitions("/dev/"+rootdisk, "all", "EXTENDED", 1)
- #create the logical in the extended
- hostoptions["home_partition"] = create_partitions("/dev/"+rootdisk, hostoptions["homesize"], "LOGICAL", 1)
- hostoptions["sql_partition"] = create_partitions("/dev/"+rootdisk, hostoptions["sqlsize"], "LOGICAL", 1)
- if datadisk != rootdisk:
- hostoptions["datapartition"] = create_partitions("/dev/"+datadisk, hostoptions["datasize"], "NORMAL", 0)
- else:
- hostoptions["datapartition"] = create_partitions("/dev/"+datadisk, hostoptions["datasize"], "LOGICAL", 1)
- logging.debug("sleeping for 5 seconds")
- time.sleep(5)
def fscmd(fstype):
@@ -1530,7 +1623,7 @@ def full_install(hostoptions):
partition_disk()
else:
logging.debug(" Debug mode, skipping partitioning step")
-
+ #sys.exit(0)
# Format disk
statusmsg = "Preparing %s" %( hostoptions["rootdisk"])
update_status(statusmsg)
@@ -2163,9 +2256,6 @@ for line in config_file:
-
-
-
if __name__ == "__main__":
config_file = "mv_config"
data_config = __import__(config_file, globals(), locals(), [])