Parted - GNU Partition Editor [PSARC/2009/145 FastTrack timeout 03/06/2009]
Garrett D'Amore
gdamore at sun.com
Mon Mar 2 15:14:47 PST 2009
+1.
Do we really need to introduce a new set of RBAC authorizations for
this? I'd have guessed that low-level sys_devices or whatever access
would have been sufficient.
-- Garrett
Phi Tran wrote:
> 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
>>
>>
>
More information about the opensolaris-arc
mailing list