I'm sponsoring this case for Mark Logan. (cc: Mark) Phi
Phi Tran wrote: > Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI > This information is Copyright 2009 Sun Microsystems > 1. Introduction > 1.1. Project/Component Working Name: > Parted - GNU Partition Editor > 1.2. Name of Document Author/Supplier: > Author: Mark Logan > 1.3 Date of This Document: > 02 March, 2009 > 4. Technical Description > > 4.1. Overview > > GNU Partition Editor (Parted) [1] is a command-line application that allows > you to resize, create or delete disk partitions and filesystems. The goal is > to put it on the OpenSolaris Live CD. That way one could shrink the Vista or > other NTFS partition and create space to install OpenSolaris. Many x86 > machines come preinstalled with Vista. The availability of Parted would > increase adoption of OpenSolaris by making it easier to create a dual-boot > environment. > > Parted is in functionality, a superset of the Solaris fdisk command. > > Parted is for x86 only. > > 4.2. Details > > 4.2.1. Diagram > > +---------+ > > | Install | > +---------+ > > / \ (could use either) > > / \ > > / \ > > v v > +--------+ +---------+ > > | Parted | | GParted | > +--------+ +---------+ > > \ / > > \ / > > \ / > > v v > > +-----------------------+ > > | libparted / ntfsprogs | > +-----------------------+ > > > 4.2.2. solaris-parted > > solaris-parted [2] is an open source project that ported Parted to Solaris. I > used this code as a starting point. > > 4.2.3. ntfsprogs > > Parted uses ntfsprogs [3] to resize, create or delete NTFS disk partitions > and filesystems. ntfsprogs [3] is a collection of command-line utilities, one > utility for each operation, e.g. ntfsresize and mkntfs. > > ntfsprogs required very few changes to port to Solaris. > > 4.2.4. libparted > > GNU Parted is composed of a command-line interface and a library. libparted > does the actual device access, partition table editing and filesystem > manipulation. > > I made changes to libparted both to port it to Solaris and to integrate > solaris-parted and ntfsprogs into it. > > 4.2.5. GParted > > Gnome Partition Editor (GParted) [4] is a graphical application that allows > you to resize, create or delete disk partitions and filesystems. GParted uses > libparted and ntfsprogs. Parted is capable of doing everything GParted does. > > GParted uses Gtkmm for its GUI. It requires Gtkmm 2.8.x or greater. Solaris > currently has Gtkmm 2.13.8. The most recent stable version is 2.14.x. [5] > > GParted should use HAL (PSARC/2007/679) to lock out HAL-based automounters > when it is manipulating the partition table of a device. [6] > > GParted is Phase 2 of this project. There will be a separate LSARC case. > > 4.2.6. open source > > It is my intent to get the GNU Parted, GParted and ntfsprogs projects to buy > back my changes. solaris-parted is no longer in development, but I intend to > get Parted to buy back those changes along with mine. > > 4.2.7. Security > > Interface level: Committed > > Parted needs permission to access the raw disk devices, just like Solaris > fdisk. > > The following RBAC authorizations and profile will be added. > > Authorization Names: > solaris.admin.parted.:::Partition Editor::help=AuthPartedHeader.html > solaris.admin.parted.write:::Edit Partitions::help=AuthPartedWrite.html > > Profile: > Edit Partitions:::Edit Disk Partitions using GNU Parted: > auths=solaris.admin.parted.write;help=RtParted.html > > 4.2.8. Integration with the OpenSolaris installation program > > We are talking to the OpenSolaris Install group about whether they will use > Parted or GParted to integrate that functionality into the installation > program. They have not yet decided on the implementation specifics, so I did > not include anything about it here. > > 4.3. Interfaces Exported > > Interface Name Classification Comments > --------------- -------------- ----------------- > SUNWparted Committed Package name (Phase 1) > /usr/share/man/man8/parted.8 Volatile Manual page (Phase 1) > /usr/bin/parted Volatile Parted launcher shell > script (Phase 1) > /usr/lib/parted/parted Volatile Parted application (Phase > 1) > /usr/lib/parted/mkntfs Volatile ntfsprogs application > (Phase 1) > /usr/lib/parted/ntfsresize Volatile ntfsprogs application > (Phase 1) > /usr/lib/parted/ntfsfix Volatile ntfsprogs application > (Phase 1) > /usr/lib/parted/ntfsclone Volatile ntfsprogs application > (Phase 1) > /usr/lib/libparted-1.8.so.8 Volatile Symbolic link (Phase 1) > /usr/lib/libparted-1.8.so.8.0.0 Volatile Shared library (Phase 1) > /usr/lib/libntfs.so.10 Volatile Symbolic link (Phase 1) > /usr/lib/libntfs.so.10.0.0 Volatile Shared library (Phase 1) > SUNWgparted Committed Package name (Phase 2) > /usr/share/man/man8/gparted.8 Volatile Manual page (Phase 2) > /usr/bin/gparted Volatile GParted application > (Phase 2) > > 4.4. Schedule > > I propose introducing GParted into OpenSolaris in three phases: > > Phase 1: Parted command line (2 man months) > > Put command line Parted on the CD. > A prototype of command line Parted is available now. > > Use Case: > > Boot OpenSolaris CD. > Run command line Parted in a Terminal window. > Shrink NTFS partition. > Install OpenSolaris. > > Phase 2: GParted GUI (3 man months) > > Put GParted GUI on the CD. > > Use Case: > > Boot OpenSolaris CD. > Run GParted GUI. > Shrink NTFS partition. > Install OpenSolaris. > > 4.5 References > > [1] GNU Parted > http://www.gnu.org/software/parted/ > > [2] solaris-parted > http://code.google.com/p/solaris-parted/ > > [3] NTFSprogs > http://www.linux-ntfs.org/ > > [4] GParted > http://gparted.sourceforge.net/ > > [5] Gtkmm > http://gtkmm.org/ > > [6] HAL spec > http://sac.sfbay/PSARC/2007/679/materials/hal-spec.html > > 6. Resources and Schedule > 6.4. Steering Committee requested information > 6.4.1. Consolidation C-team Name: > ON > 6.5. ARC review type: FastTrack > 6.6. ARC Exposure: open > >