1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
2 |
<html> |
3 |
<head> |
4 |
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://clonezilla-sysresccd.hellug.gr/clonezilla-sysresccd.rss"> |
5 |
<link rel="shortcut icon" href="favicon.ico"> |
6 |
<title>Clonezilla-SysRescCD - Documentation: Managing partitions</title> |
7 |
<style type="text/css"> |
8 |
body { font-family: Arial, 'sans serif'; color: black; font-size: 12pt; background : url(null) fixed no-repeat; background-color: #333333; padding: 0; margin: 0; margin-top: 5px; margin-bottom: 5px; } |
9 |
|
10 |
|
11 |
|
12 |
#header {position:relative; display: block; width: 980px; height: 121px;margin: auto; padding: auto; background-color: #D37624; background-image: url('images/header.png');clear:both;} |
13 |
#header h2{ color: #FFE6BC; font-weight: bold; font-size: 2.2em; margin:0; padding:0; padding-left: 10px; padding-top: 7px; text-shadow: #333333 2px 2px 4px;} |
14 |
#header h3{ color: #FFE6BC; font-weight: bold; font-size: 1.8em; margin:0; padding: 0; padding-left: 10px; text-shadow: #333333 2px 2px 4px;} |
15 |
#header h4{ color: #FFE6BC; font-weight: bold; font-size: 1.2em; margin:0; padding: 0; padding-left: 10px; padding-right: 10px; text-shadow: #333333 2px 2px 4px;} |
16 |
#header a {text-decoration:none;} |
17 |
|
18 |
#contarea {display: block; width: 980px; margin: auto; padding: auto; background-color: #FFF2DD; clear:both;} |
19 |
|
20 |
#linkline { width: 980px; height: 29px;margin: auto; padding: auto; background-color: #D37624; background-image: url('images/linkline.png');clear:both; } |
21 |
#linkline a{float: left; color: #FFE6BC; font-weight: bold; font-size: 0.8em; text-decoration: none; text-shadow: #333333 2px 2px 4px; padding-left: 10px; padding-right: 10px; padding-top: 5px;} |
22 |
#linkline a:visited{color: #FFE6BC;} |
23 |
#linkline a:hover{color: #333333;} |
24 |
#linkline a.here {color: #333333; text-decoration: none;} |
25 |
|
26 |
#lastupdate {float: right; display: block; text-align: right; margin: 0; margin-top: -1.2em; padding: 0; padding-right: 15px;} |
27 |
|
28 |
#rss { float: right; text-align: right; padding-top: 3px;} |
29 |
|
30 |
#docline-top { float: right; padding-right: 40px; text-align: right; } |
31 |
#docline-bottom { float: right; padding-right: 40px; text-align: right; font-size: 0.8em; padding-top: 15px; } |
32 |
#docline-bottom a{ padding-left: 10px; padding-right: 10px; } |
33 |
|
34 |
#menu { float: right; display: block; width: 170px; margin: auto; padding: 15px; font-size: 0.8em; font-weight: bold; background-color: #FFE6BC;} |
35 |
#menu h1 {color: #990000; font-size: 1.8em;text-shadow: gray 2px 2px 4px;} |
36 |
#menu a,a:visited{ color: black; text-decoration: none; font-weight: normal;} |
37 |
#menu a:hover{ text-decoration: underline;} |
38 |
#menu p{ margin-bottom: 10px;} |
39 |
|
40 |
#content { float: left; display: block; width: 950px; margin: auto; padding: 15px;} |
41 |
|
42 |
|
43 |
#footer {display: block; width: 980px; height: 100px;margin: auto; padding: auto; background-color: #D37624; background-image: url('images/footer.png');clear:both;text-shadow: #333333 2px 2px 4px;} |
44 |
#footer p{color: #FFE6BC; font-weight: bold; padding:15px; padding-left: 10px;} |
45 |
#footer a,a:visited{color: #FFE6BC; font-weight: bold; text-decoration:none;} |
46 |
#footer a:hover{ color: #333333; text-decoration: none;} |
47 |
|
48 |
|
49 |
#content H1,H2,H3,H4{color: #990000; text-align: left;} |
50 |
#content H2{margin-top: 2em;} |
51 |
#content H3{margin-top: 1.5em} |
52 |
#content H4{margin-top: 1em} |
53 |
#content li { margin-top: 1em;} |
54 |
#content a,a:active,a:visited{text-decoration: none; color: #4075CA; font-weight: normal;} |
55 |
#content a:hover{text-decoration: underline; font-weight: normal;} |
56 |
#content .hidden{ display:none; } |
57 |
#content p,td,table,tr,li { font-family: Arial, 'sans serif'; } |
58 |
#content .nav{margin-left: 0pt;} |
59 |
#content .newcode{font-family : "Courier New", Courier, monospace; font-weight: bold; background-color: #F2F2F2; border: solid 1px #DEDEDE;padding: 20pt;} |
60 |
#content .note{margin-top: 30pt; margin-bottom: 30pt; text-align: left; background-color: #FFEFEF; border: double 3px; border-color: #FFD5D5;} |
61 |
#content hr{color: Black; background-color: Black; height: 1px; border: none;} |
62 |
#content .header-news{margin-top: 2em; margin-left: 25pt; font-weight: bold; color: #990000;} |
63 |
#content .item-news{margin-left: 45pt; margin-right: 45pt;} |
64 |
#content .otherpage{border: solid 1px darkgoldenrod; padding: 20pt; background-color: lemonchiffon;} |
65 |
#content IMG {display: block; margin-left: auto; margin-right: auto; } |
66 |
#content .red{color: white; background-color: Red; font-weight: bold;} |
67 |
#lphp{text-align: right; padding-left: 10px; padding-right: 10px; padding-top: 50px; float: right;} |
68 |
#lphp a{padding-left: 5px;} |
69 |
</style> |
70 |
<META NAME="Keywords" CONTENT="multiboot Multi Boot bootable cd rescue clonezilla sysresccd backup restore samba"> |
71 |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
72 |
|
73 |
</head> |
74 |
|
75 |
<body> |
76 |
<div id="header"> |
77 |
<div id="lphp" style=""><a target="_blank" href="onepage.php"><img src="images/chain.png" border="0" /></a><a target="_blank" href="printable.php"><img src="images/print_it.png" border="0" /></a></div> |
78 |
<H2>Clonezilla-SysRescCD</H2> |
79 |
<H3>Documentation: Managing partitions</H3> |
80 |
<div style="margin:0; padding: 3px; width: 980; position relative;"> |
81 |
<div style="position: absolute; left: 0px;"><H4>25/02/2010 - v 3.1.0</H4></div> |
82 |
<div style="position: absolute; right: 0px;"><H4>Last update: 21/03/2010</H4></div> |
83 |
</div> |
84 |
</div> |
85 |
<div id="linkline"> |
86 |
<a href="index.html">Home</a> |
87 |
<a href="news.php">News</a> |
88 |
<!-- <a href="features.html">Features</a>--> |
89 |
<a class="here" href="doc.html">Documentation</a> |
90 |
<a href="index.html#download">Download</a> |
91 |
<a href="screenshots.html">Screenshots</a> |
92 |
<a href="index.html#credits">Credits</a> |
93 |
<a href="help.html">Help</a> |
94 |
|
95 |
<div id="rss"> |
96 |
<a href="clonezilla-sysresccd.rss"><img src="images/rss-orange-11.png" width="30" height="14" border="0"/></a> |
97 |
</div> |
98 |
<!-- docline-top--> |
99 |
<div id="docline-top"> <a href="sysresccd.html">< PREV</a> <a href="doc.html">UP</a> <a href="recover.html">NEXT ></a> </div> |
100 |
</div> |
101 |
<div id="contarea"> |
102 |
<div id="content"> |
103 |
<a name="partitions-top"></a> |
104 |
|
105 |
|
106 |
<!-- Intro --> |
107 |
|
108 |
<H2 style="margin-top: 0;"><a name="partitions-intro"></a>Intro <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H2> |
109 |
|
110 |
<p>One of the most important maintenance tasks that can only be done by using a live CD is partitioning. No operating system allows partitioning the same disk where the OS itself resides. Trying to do so is like attempting to repair a car while its engine is turned on.<br><br> |
111 |
<!--empty line--> |
112 |
Of course, <b>SystemRescueCD</b> contains multiple programs that are related to partitioning. Most important are <b>GParted</b> (graphical partitioning program), <b>GNU Parted</b> (text-based partitioning program), <b>fdisk</b> and <b>sfdisk</b> (partition table editors) and various filesystem tools (like <b>ntfsprogs</b> and <b>e2fsprogs</b>).<br><br> |
113 |
<!--empty line--> |
114 |
This page contains some theory about partitions and filesystems, advice for choosing the right filesystem and a partitioning example by using <b>GParted</b>.</p> |
115 |
|
116 |
<div align="center"><table class="note" border="0" cellpadding="20"><tr><td valign="top"><img src="images/important.png"></td><td> |
117 |
While partitioning, an user error or a bug can damage your partitions.<br><br>Creating a disk image of the disk to be<br>partitioned beforehand is highly recommended. |
118 |
</td></tr></table></div> |
119 |
<div align="center"><table class="note" border="0" cellpadding="20"><tr><td valign="top"><img src="images/info.png"></td><td> |
120 |
The following pressentation has been made using<br><b>SystemRescueCD v 1.4.0</b> |
121 |
</td></tr></table></div> |
122 |
|
123 |
<H2><a name="theory"></a>Some theory <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H2> |
124 |
|
125 |
<H3><a name="partitions-partition"></a>What is a partition? <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
126 |
|
127 |
<p>A partition is a logical division of a hard disk created so that you can have different operating systems on the same hard disk or to create the appearance of having separate hard drives for file management, multiple users, or other purposes.</p> |
128 |
|
129 |
<p>In Windows, a one-partition hard disk is labelled the "C:" drive ("A:" and "B:" are typically reserved for diskette drives). A two-partition hard drive would typically contain "C:" and "D:" drives. (CD-ROM drives typically are assigned the last letter in whatever sequence of letters have been used as a result of hard disk formatting, or typically with a two-partition, the "E:" drive.).</p> |
130 |
|
131 |
<p>In UNIX-based systems, a partition is used to host the / (root) file system, and optionally the /opt, /usr and /home file systems. There may also be a swap partition, which doesn't host any file system.</p> |
132 |
|
133 |
<p>Each operatin system provides some kind of tool to create and manage partitions. Examples of such tools are <b>fdisk</b> in DOS/Windows, <b>fdisk</b>, <b>sfdisk</b> and <b>parted</b> in Linux, etc.</p> |
134 |
|
135 |
<H3><a name="partitions-extended"></a>What is the difference between primary, extended and logical partitions? <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H2> |
136 |
|
137 |
<p>Information about partitions is saved in so-called partition table in Master Boot Record. MBR itself is only 512 bytes in size, and only 64 bytes are reserved for partition table. That's not enough, and there are many workarounds to bypass limitations caused by the size, for example <a href="http://en.wikipedia.org/wiki/Logical_block_addressing#LBA.2C_ATA_devices_and_Enhanced_BIOS" target="_blank">logical block addressing</a>. Extended partitions are another workaround.</p> |
138 |
|
139 |
<p>Partition table can only store information about four partitions. If one has, for example, two GNU/Linux distributions on the same disk, both of them having separate root partitions, shared /home and shared swap, the partition number limit has been hit already.</p> |
140 |
|
141 |
<p>A partition that is mentioned in the partition table is called primary partition. Because of the limit, one disk can only contain 1-4 primary partitions.</p> |
142 |
|
143 |
<p>An extended partition fixes the problem simply by containing more boot records, called Extended Boot Records (EBR). Each EBR contains information about one logical partition and, if the extended partition contains multiple logical partitions, link to the next EBR. Thus, an extended partition can contain unlimited amount of logical partitions.</p> |
144 |
|
145 |
<p>Extended partition contains only EBRs and logical partitions (and maybe unallocated space). Extended partition doesn't contain any filesystem and files can't be stored in it. Of course, logical partition can contain any filesystem (or be unformatted).</p> |
146 |
|
147 |
<p>Extended partition itself must be primary partition: an extended partition can't be within another extended partition. In addition, a disk can contain only one extended partition.</p> |
148 |
|
149 |
<p>Logical partitions can always be used for storing data: any operating system can see logical partitions. GNU/Linux distributions can be installed to logical partitions as well, but Windows requires a lot of tweaking. See <a href="http://www.goodells.net/multiboot/index.htm" target="_blank">this outdated guide</a>.</p> |
150 |
|
151 |
<H3><a name="partitions-lvm"></a>What is LVM? <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
152 |
|
153 |
<p>LVM means "Logical Volume Manager". It allows creating volume groups on top of hard drives and logical volumes within volume groups. Logical volumes are NOT the same thing as logical partitions!</p> |
154 |
|
155 |
<p>Volume groups can be created very flexibly: a volume group can allocate, for example, the first half of the first hard drive and the second half of the third drive. One can even create a massive volume group containing all storage he/she has.</p> |
156 |
|
157 |
<p>The computer sees a logical volume as a partition: logical volume can be left unformatted or contain any filesystem.</p> |
158 |
|
159 |
<p>LVM has many benefits: for example, if one has three hard drives 60 gigabytes each, he/she can create a 160-gigabyte partition for storing massive files and/or saving some disk space. In addition, logical volumes can be resized even when they're in use, so when creating logical volumes one doesn't need to worry if they're too small or big - if they are, he/she can resize them at any time.</p> |
160 |
|
161 |
<p>However, resizing a logical volume doesn't resize the filesystem in it, so using a filesystem that can be resized in use (online resizing) is recommended. Very few filesystems can be shrinked online, but most GNU/Linux filesystems (including ext3/4, ReiserFS, XFS and btrfs) can be grown online. It's generally a good idea to leave unallocated space within volume group, so logical volumes can later be grown without shrinking any other logical volume.</p> |
162 |
|
163 |
<p>Here come bad news for people who dualboot: Windows doesn't support LVM, it sees volume groups as unformatted partitions. If you try to access volume group within Windows, you're just prompted to format the partition. That prompt is annoying at best and dangerous at worst.</p> |
164 |
|
165 |
<p>More information about LVM can be found <a href="http://sunoano.name/ws/public_xhtml/lvm.html" target="_blank">here</a> (almost everything about LVM in a single page) and <a href="http://www.sysresccd.org/Sysresccd-Guide-EN-LVM2" target="_blank">here</a> (official SystemRescueCD documentation about LVM).</p> |
166 |
|
167 |
<H3><a name="partitions-filesystem"></a>What is a file system? <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
168 |
|
169 |
<p>A file system is the way in which files are named and where they are placed logically for storage and retrieval. The DOS, Windows, OS/2, Macintosh, and UNIX-based operating systems all have file systems in which files are placed somewhere in a hierarchical (tree) structure. A file is placed in a directory (folder in Windows) or subdirectory at the desired place in the tree structure.</p> |
170 |
|
171 |
<p>The most important difference between filesystems is operating system support. Some filesystems are supported by all modern operating systems, but especially the newest filesystems are very rarely supported. Other important limits are maximum file size, journaling support and file permission metadata support.</p> |
172 |
|
173 |
<p>The reason that file size limits exist is that all filesystems reserve a fixed number of bits for storing the file size. If the size of the file, in bytes, is bigger than the biggest number that can be stored in file size bits, the operating system must refuse to store the file at all in order to prevent data corruption.</p> |
174 |
|
175 |
<p>File permission metadata means that the filesystem stores in the metadata of the file, among other things, information about who owns the file and what different users are allowed to do with the file. That metadata is especially useful in multi-user environment because it mostly prevents users from reading each other's files. Permissions can be bypassed, however.</p> |
176 |
|
177 |
<H3><a name="partitions-journaling"></a>What is journaling? <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
178 |
|
179 |
<p>Ideally, data in a partition never corrupts. But, in the real world, there are power failures and operating system freezes. And if a computer is forcefully shut down while something is written to the drive, the write operation can't be finished. That can damage the filesystem and destroy any files in the partition.</p> |
180 |
|
181 |
<p>Journaling partially fixes that problem by writing most changes to the disk twice: first to a special area called journal and, after that, to the filesystem itself. If power is lost while writing to the journal was in progress, the partial change is just ignored and never committed to the filesystem itself. If power failure or OS freeze happened while writing to filesystem itself, the write operation is finished by using the information in journal.</p> |
182 |
|
183 |
<p>Journaling helps most of the time when the computer has been forcefully shut down, but not always. Due to performance reasons, only some write operations are written to the journal, mostly the biggest operations. Of course, journaling doesn't help if that particular operation that was in progress while power was lost didn't go through the journal. Journaling also doesn't protect from everything: for example, using ext4 filesystem in conjuction with programs that write a lot of files in a short time can result in <a href="http://www.h-online.com/open/news/item/Possible-data-loss-in-Ext4-740467.html" target="_blank">massive data loss</a>, regardless if journaling is enabled or not.</p> |
184 |
|
185 |
<p>In addition, journaling reduces performance. It causes more writes to the disk. That's not a big problem on mechanical hard drives, but on SSDs (Solid State Drives) and thumb drives write speed is much slower than read speed. They also have a limited number of writing cycles, so journaling reduces their lifetime. I (Jyrki) actually use ext2 and FAT32 filesystems on my external SSD drive because they do NOT support journaling at all.</p> |
186 |
|
187 |
<H3><a name="partitions-filesystems"></a>What are the differences between most popular filesystems? <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
188 |
|
189 |
<p>The following table quickly describes the most important differences between them.</p> |
190 |
<!--not-on-txt--> |
191 |
<table border="1"> |
192 |
<tr> |
193 |
<th></th> |
194 |
<th colspan="2">Operating system support</th> |
195 |
<th></th> |
196 |
<th></th> |
197 |
<th></th> |
198 |
</tr> |
199 |
<tr> |
200 |
<th></th> |
201 |
<th>Under Windows</th> |
202 |
<th>Under GNU/Linux</th> |
203 |
<th>Maximum file size</th> |
204 |
<th>Journaling</th> |
205 |
<th>Permissions</th> |
206 |
</tr> |
207 |
<tr> |
208 |
<th>FAT32</th> |
209 |
<td style="background-color: rgb(0,255,0)">Native</td> |
210 |
<td style="background-color: rgb(127,255,0)">Built-in</td> |
211 |
<td style="background-color: rgb(255,0,0)">4 GB</td> |
212 |
<td style="background-color: rgb(255,0,0)">No</td> |
213 |
<td style="background-color: rgb(255,0,0)">No</td> |
214 |
</tr> |
215 |
<tr> |
216 |
<th>NTFS</th> |
217 |
<td style="background-color: rgb(0,255,0)">Native</td> |
218 |
<td style="background-color: rgb(255,255,0)">Driver included</td> |
219 |
<td style="background-color: rgb(255,255,0)">16 EB</td> |
220 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
221 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
222 |
</tr> |
223 |
<tr> |
224 |
<th>ext2</th> |
225 |
<td style="background-color: rgb(255,127,0)">3rd party driver</td> |
226 |
<td style="background-color: rgb(0,255,0)">Native</td> |
227 |
<td style="background-color: rgb(255,127,0)">16 GB-2 TB*</td> |
228 |
<td style="background-color: rgb(255,0,0)">No</td> |
229 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
230 |
</tr> |
231 |
<tr> |
232 |
<th>ext3</th> |
233 |
<td style="background-color: rgb(255,127,0)">3rd party driver</td> |
234 |
<td style="background-color: rgb(0,255,0)">Native</td> |
235 |
<td style="background-color: rgb(255,127,0)">16 GB-2 TB*</td> |
236 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
237 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
238 |
</tr> |
239 |
<tr> |
240 |
<th>ext4</th> |
241 |
<td style="background-color: rgb(255,0,0)">No</td> |
242 |
<td style="background-color: rgb(0,255,0)">Native</td> |
243 |
<td style="background-color: rgb(255,127,0)">16 GB-16 TB*</td> |
244 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
245 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
246 |
</tr> |
247 |
<tr> |
248 |
<th>exFAT</th> |
249 |
<td style="background-color: rgb(127,255,0)">Native (Vista/7)**</td> |
250 |
<td style="background-color: rgb(255,0,0)">No</td> |
251 |
<td style="background-color: rgb(0,255,0)">64 ZB</td> |
252 |
<td style="background-color: rgb(255,0,0)">No</td> |
253 |
<td style="background-color: rgb(0,255,0)">Yes</td> |
254 |
</tr> |
255 |
</table> |
256 |
<!--end-not-on-txt--> |
257 |
|
258 |
|
259 |
|
260 |
<p>* Depends on cluster size<br> |
261 |
** <a href="http://support.microsoft.com/kb/955704" target="_blank">This update</a> adds exFAT support to Windows XP</p> |
262 |
|
263 |
<p>Operating system support:</p> |
264 |
|
265 |
<ul> |
266 |
<li>"Native" means that the kernel supports the filesystem and the OS can boot from a partition using that FS.</li> |
267 |
<li>"Built-in" means that the kernel supports the filesystem, but booting from a partition containing such FS is very difficult.</li> |
268 |
<li>"Driver included" means that ntfs-3g (the driver that adds NTFS support to Linux) comes with most GNU/Linux distributions.</li> |
269 |
<li>"3rd party driver" means that drivers to add filesystem support are available, but must be downloaded and installed separately. The drivers are <a href="http://www.fs-driver.org" target="_blank">Ext2 IFS</a> and <a href="http://www.ext2fsd.com" target="_blank">Ext2fsd</a>.</li> |
270 |
<li>"No" means that there is no way to use the filesystem within the operating system.</li> |
271 |
</ul> |
272 |
|
273 |
<H2><a name="filesystems"></a>Filesystems <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H2> |
274 |
|
275 |
<p>This section contains more information about most popular filesystems.</p> |
276 |
|
277 |
<H3><a name="partitions-fat32"></a>FAT32 <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
278 |
|
279 |
<p>The initial version of FAT (File Allocation Table), now referred as FAT12, was designed for floppy disks. A FAT12 partition can only be up to 32 megabytes in size. After that, PCs equipped with hard drives were introcuded by IBM and the sizes of hard drives began growing. Microsoft answered the need by developing first initial FAT16 and then final FAT16.</p> |
280 |
|
281 |
<p>FAT16 partition can be up to two gigabytes in size. In the middle of 1990s, that limit was becoming a problem. Microsoft pushed the limit up by updating FAT again.</p> |
282 |
|
283 |
<p>FAT32 was first introduced with Windows 95 OSR2. Windows 98, Windows Me, Windows 2000 and newer support FAT32 too. Linux kernel has supported FAT32 almost as long as Windows, but booting GNU/Linux from FAT32 partition is difficult and actually requires DOS to be installed in the partition as well. (<a href="http://en.wikipedia.org/wiki/FAT_filesystem_and_Linux#Installing_Linux_on_and_booting_it_from_FAT_volumes_using_umsdos" target="_blank">more information</a>)</p> |
284 |
|
285 |
<p>FAT32 partition can be up to two terabytes in size. As of now (March 2010), there are hard drives that hit the limit, but don't exceed it. A single file within FAT32 partition can be up to four gigabytes in size.</p> |
286 |
|
287 |
<p>Because FAT32 is, in the end, based on FAT12, it has very few features. It doesn't support file permissions, hard/symbolic links, encryption, compression, alternative data streams, journaling... It lacks support for nearly anything that defines a modern filesystem. However, due to very few features, FAT32 is very fast filesystem if it's not fragmented or on a Flash-based drive. Mind you, FAT32 fragments very fast.</p> |
288 |
|
289 |
<p>Due to excellent operating system support, I recommend FAT32 for storing files which should be accessible in both Windows and GNU/Linux. FAT32 is also a good filesystem on Solid State Drives and thumb drives due to its performance.</p> |
290 |
|
291 |
<H3><a name="partitions-ext2"></a>ext2 <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
292 |
|
293 |
<p>Ext2 or ext2fs is the successor of extfs (extended file system). Extfs didn't support separated timestamps for access, data modification and inode modification. In order to add support for them, and make the filesystem extendable, a new filesystem had to be created.</p> |
294 |
|
295 |
<p>Ext2 was developed in January 1993, earlier than any other filesystem mentioned in this page.</p> |
296 |
|
297 |
<p>Because ext2 is designed for GNU/Linux, support in Linux kernel was implemented immediately. The first Windows driver supporting ext2, <a href="http://www.ext2fsd.com" target="_blank">Ext2fsd</a> 0.01, was released on 25 January 2002. Both Windows drivers for ext2 work only on Windows NT operating systems (NT 4.0 up to Vista, 7 isn't supported yet).</p> |
298 |
|
299 |
<p>The best property of ext2 is extensibility. The superblock contains information about which version the filesystem is (ext2, ext3 or ext4) and which extensions and features are in use. By using these pieces of information, the operating system or driver can decide whether or not mounting the partition is safe. That's the most important reason why most GNU/Linux distributions still use successors of ext2 as default filesystems.</p> |
300 |
|
301 |
<p>Depending on cluster size, ext2 partition can be up to 2-32 terabytes in size. File size limit is 16 GB-2 TB.</p> |
302 |
|
303 |
<p>Ext2 supports file permissions, both hard and symbolic links and extended file attributes. Encryption, compression and journaling are unsupported.</p> |
304 |
|
305 |
<p>Due to lack of journaling support and existence of Windows drivers, I recommend using ext2 if you're going to install GNU/Linux on a SSD drive and want to be able to access files within Windows too. In fact, that's exactly the setup I have.</p> |
306 |
|
307 |
<p>However, lack of journaling support is the worst limitation of ext2. And what was done in order to get rid of the limitation?</p> |
308 |
|
309 |
<H3><a name="partitions-ext3"></a>ext3 <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
310 |
|
311 |
<p>Ext3, the successor of ext2, was introduced in Linux kernel on November 2001. It supports journaling, can be grown online and indexes large directories.</p> |
312 |
|
313 |
<p>Ext2 IFS and Ext2fsd can mount ext3 partition as ext2 if the journal is empty. (If it's not, something is wrong - journal is always emptied when the partition is unmounted or the computer is shut down.) Thus, ext3 support under Windows is just as good/bad as ext2 support.</p> |
314 |
|
315 |
<p>Partition and file size limits are the same as in ext2: partition size limit is 2-32 TB and file size limit 16 GB-2 TB, depending on cluster size.</p> |
316 |
|
317 |
<p>Due to journaling support and existence of Windows drivers, ext3 is a good choice if you're going to install GNU/Linux on a mechanical hard drive and want to be able to access files within Windows.</p> |
318 |
|
319 |
<H3><a name="partitions-ext4"></a>ext4 <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
320 |
|
321 |
<p>Linux kernel support for ext4, the successor of ext3, was marked stable code on October 2008. Ext4 contains multiple performance and stability improvements over ext3.</p> |
322 |
|
323 |
<p>The most important new feature is extents. An extent is a contiguous area of storage that has been reserved for a file. When a process starts to write to a file, the whole extent is allocated even before the write operation begins. The idea is that even if the file is larger than expected, it doesn't fragment if it doesn't exceed the size of the extent.</p> |
324 |
|
325 |
<p>Another important improvement is larger partition size limit: an ext4 partition can be even one exabyte in size. (An exabyte is a million terabytes.) In addition, a directory within an ext4 partition can contain up to 64 000 subdirectories (instead of 32 000, as in ext2/3) and timestamps are much more accurate. The file size limit is 16 GB-16 TB, depending on cluster size.</p> |
326 |
|
327 |
<p>Unfortunately, Ext2 IFS and Ext2Fsd don't support ext4 and are unable to mount ext4 partition if extents are enabled. They can be disabled, but other improvements of ext4 aren't that important for most people - using ext2 or ext3 is just easier.</p> |
328 |
|
329 |
<p>Due to its features, ext4 is a good filesystem on computers that only have GNU/Linux installed. Because journaling can be disabled, it is suitable for Solid State Drives and thumb drives too.</p> |
330 |
|
331 |
<H3><a name="partitions-ntfs"></a>NTFS <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
332 |
|
333 |
<p>At the end of 1980s, IBM and Microsoft were developing OS/2 operating system. Both companies expected OS/2 1.1, released on 1988, to be the first popular operating system having a GUI, Presentation Manager. Even though it didn't become too popular during its first years, Microsoft didn't complain: Windows 2 didn't sell any better.</p> |
334 |
|
335 |
<p>But on May 1990, Microsoft released Windows 3.0. Millions of copies of it were sold during its first year, and Microsoft began to believe that OS/2 had failed due to decisions of IBM. At autumn 1990, Microsoft stopped cooperating with IBM, recasted OS/2 3.0 as Windows NT and continued developing it alone, leaving IBM alone with OS/2.</p> |
336 |
|
337 |
<p>Windows NT was targeted for network file servers, and there were already competition, most importantly Novell NetWare and OS/2. Among other things, the filesystem of Windows NT had to be fast, space efficient and reliable.</p> |
338 |
|
339 |
<p>NTFS (New Technology File System) was introcuded with Windows NT 3.1. Newer versions of NTFS have been introduced with newer versions of Windows NT, and the filesystem is most likely still under development. All versions of Windows NT support NTFS, but support in Linux kernel was implemented as late as on December 2003.</p> |
340 |
|
341 |
<p>NTFS is still, in my opinion, the most feature-filled filesystem around. It supports file permissions, both hard and symbolic links, encryption, compression, alternative data streams, journaling... There are very few features NTFS doesn't support.</p> |
342 |
|
343 |
<p>Depending on cluster size, a NTFS partition can be up to 8 ZB-1 YB in size. (A zettabyte (ZB) is a milliard terabytes and a yottabyte (YB) a billion terabytes.) File size limit is 16 EB.</p> |
344 |
|
345 |
<p>Windows 7 can only be installed on a NTFS partition, and Vista requires a <a href="http://www.computersplace.com/install-windows-vista-on-a-fat32-partition/windows-vista" target="_blank">work-around</a> if one wants to install it on a FAT32 partition. Of course NTFS partitions can be used for data storage as well: due to features of NTFS, I recommend doing so on mechanical hard drives on Windows-only computers.</p> |
346 |
|
347 |
<H3><a name="partitions-exfat"></a>exFAT <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
348 |
|
349 |
<p>NTFS is a great filesystem, but due to its complexity and journaling, it's not suitable for Flash-based drives. Even Microsoft itself has recommended using FAT32 on removable Flash media.</p> |
350 |
|
351 |
<p>However, FAT32 only allows files up to four gigabytes in size. The limit is already becoming too small, for example a DVD disc image can exceed that limit. In addition, FAT32 lacks file permission support. In order to get rid of these limitations, Microsoft took FAT from its grave and updated it one more time.</p> |
352 |
|
353 |
<p>ExFAT (extended FAT), also known as FAT64, was introduced with Windows CE 6.0, on November 2006. Windows Vista SP1, Windows 7 and newer support exFAT too, and by installing <a href="http://support.microsoft.com/kb/955704" target="_blank">this update</a> Windows XP can be extended to support exFAT as well. Unfortunately, the only read-write exFAT driver for GNU/Linux (<a href="http://www.tuxera.com/products/exfat-for-embedded-systems/" target="_blank">Tuxera exFAT for Embedded Systems</a>) is payware.</p> |
354 |
|
355 |
<p>The partition and file size limits of exFAT are the same: 64 zettabytes. Another important improvement is file permission support that, oddly, is lacking in Windows Vista. In addition, a directory within an exFAT partition can contain up to 2 796 202 files (instead of 65 536, as in FAT32) and timestamps have become more accurate.</p> |
356 |
|
357 |
<p>No operating system can be installed to an exFAT partition, so such partitions can only be used for data storage. Due to lack of journaling and support for huge files, exFAT is a good filesystem on Solid State Drives and thumb drives that are only used within Windows Vista and/or 7.</p> |
358 |
|
359 |
|
360 |
|
361 |
<H3><a name="annex-b-list"></a>Partition list <span class="hideprint">[<a href="#annex-b-top" title="go to top of the page">^</a>]</span></H3> |
362 |
|
363 |
<p>The following table presents known partition types along with their IDs:</p> |
364 |
|
365 |
<p class="newcode" style="margin-right: 0;"> 0 Empty 80 Old Minix<br> |
366 |
1 FAT12 81 Minix / old Linux<br> |
367 |
2 XENIX root <font color="Red">82 Linux swap / Solaris</font><br> |
368 |
3 XENIX usr <font color="Green">83 Linux</font><br> |
369 |
4 FAT16 <32M 84 OS/2 hidden C: drive<br> |
370 |
5 Extended 85 Linux extended<br> |
371 |
<font color="Red">6 FAT16</font> 86 NTFS volume set<br> |
372 |
<font color="Green">7 HPFS/NTFS</font> 87 NTFS volume set<br> |
373 |
8 AIX 88 Linux plaintext<br> |
374 |
9 AIX bootable 8e Linux LVM<br> |
375 |
a OS/2 Boot Manager 93 Amoeba<br> |
376 |
b W95 FAT32 94 Amoeba BBT<br> |
377 |
<font color="Red">c W95 FAT32 (LBA)</font> 9f BSD/OS<br> |
378 |
e W95 FAT16 (LBA) a0 IBM Thinkpad hibernation<br> |
379 |
<font color="Green">f W95 Ext'd (LBA)</font> a5 FreeBSD<br> |
380 |
10 OPUS a6 OpenBSD<br> |
381 |
11 Hidden FAT12 a7 NeXTSTEP<br> |
382 |
12 Compaq diagnostics a8 Darwin UFS<br> |
383 |
14 Hidden FAT16 <32M a9 NetBSD<br> |
384 |
16 Hidden FAT16 ab Darwin boot<br> |
385 |
17 Hidden HPFS/NTFS b7 BSDI fs<br> |
386 |
18 AST SmartSleep b8 BSDI swap<br> |
387 |
1b Hidden W95 FAT32 bb Boot Wizard hidden<br> |
388 |
1c Hidden W95 FAT32 (LBA) be Solaris boot<br> |
389 |
1e Hidden W95 FAT16 (LBA) bf Solaris<br> |
390 |
24 NEC DOS c1 DRDOS/sec (FAT-12)<br> |
391 |
39 Plan 9 c4 DRDOS/sec (FAT-16 < 32M)<br> |
392 |
3c PartitionMagic recovery c6 DRDOS/sec (FAT-16)<br> |
393 |
40 Venix 80286 c7 Syrinx<br> |
394 |
41 PPC PReP Boot da Non-FS data<br> |
395 |
42 SFS db CP/M / CTOS / ...<br> |
396 |
4d QNX4.x de Dell Utility<br> |
397 |
4e QNX4.x 2nd part df BootIt<br> |
398 |
4f QNX4.x 3rd part e1 DOS access<br> |
399 |
50 OnTrack DM e3 DOS R/O<br> |
400 |
51 OnTrack DM6 Aux1 e4 SpeedStor<br> |
401 |
52 CP/M eb BeOS fs<br> |
402 |
53 OnTrack DM6 Aux3 ee EFI GPT<br> |
403 |
54 OnTrackDM6 ef EFI (FAT-12/16/32)<br> |
404 |
55 EZ-Drive f0 Linux/PA-RISC boot<br> |
405 |
56 Golden Bow f1 SpeedStor<br> |
406 |
5c Priam Edisk f4 SpeedStor<br> |
407 |
61 SpeedStor f2 DOS secondary<br> |
408 |
63 GNU HURD or SysV fd Linux raid autodetect<br> |
409 |
64 Novell Netware 286 fe LANstep<br> |
410 |
65 Novell Netware 386 ff BBT<br> |
411 |
70 DiskSecure Multi-Boot<br> |
412 |
75 PC/IX</p> |
413 |
|
414 |
<p>The partitions you are most likely to see in use, are:</p> |
415 |
|
416 |
<ul> |
417 |
<li><b><font color="Red">FAT16 (ID = 6) </font></b><br> |
418 |
This is the old DOS partition type<br> |
419 |
You may still find it in pure DOS installations, like vendor diagnostics tool partitions, and small USB sticks (128 - 250 MB)</li> |
420 |
|
421 |
<li><b><font color="Green">HPFS/NTFS (ID = 7)</font></b><br> |
422 |
This is the <b>Windows XP</b> partition, also known as <b>NTFS</b></li> |
423 |
|
424 |
<li><b><font color="Red">W95 FAT32 (LBA) (ID = c)</font></b><br> |
425 |
This is the <b>Windows 95 - 98</b> partition<br> |
426 |
It is used in any kind of disk and large USB devices (1 GB and more)</li> |
427 |
|
428 |
<li><b><font color="Green">W95 Ext'd (LBA) (ID = f)</font></b><br> |
429 |
Extended partition. It acts as a container for other partitions<br> |
430 |
There is one more extended partition type (ID = 5), but it does not seem to be in use as much</li> |
431 |
|
432 |
<li><b><font color="Red">Linux swap / Solaris (ID = 82)</font></b><br> |
433 |
Swap partition, acting as <b>Virtual Memory</b><br> |
434 |
Modern computers with 1 - 2 GB of memory may not use it at all</li> |
435 |
|
436 |
<li><b><font color="Green">Linux (ID = 83)</font></b><br> |
437 |
Linux partitions, such as <b>ext2</b>, <b>ext3</b> and <b>reiserfs</b></li> |
438 |
</ul> |
439 |
|
440 |
|
441 |
|
442 |
|
443 |
|
444 |
|
445 |
|
446 |
<H2><a name="example"></a>Partitioning example <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H2> |
447 |
|
448 |
<p>This section contains a partitioning example. I simulate the following situation in a virtual machine:</p> |
449 |
|
450 |
<p>I have two partitions in my disk: <b>/dev/sda1</b> that contains a GNU/Linux distribution, and <b>/dev/sda2</b> that is a swap partition. Here we can see the output of <b>fdisk</b>:</p> |
451 |
|
452 |
<p class="newcode">root@sysresccd /root % fdisk -l<br> |
453 |
<br> |
454 |
Disk /dev/sda: 2097 MB, 2097152000 bytes<br> |
455 |
64 heads, 63 sectors/track, 1015 cylinders<br> |
456 |
Units = cylinders of 4032 * 512 = 2064384 bytes<br> |
457 |
Disk identifier: 0x00058a4a<br> |
458 |
<br> |
459 |
Device Boot Start End Blocks Id System<br> |
460 |
/dev/sda1 * 1 812 1636960+ 83 Linux<br> |
461 |
/dev/sda2 813 1015 409248 82 Linux swap / Solaris</p> |
462 |
|
463 |
<p>Now I'm going to install another distribution on the same disk. First of all, I need one more partition, because only one distro can be installed on one partition. In addition, I want to separate /home to its own partition in order to be able to share it between distributions.</p> |
464 |
|
465 |
<p>Because the whole disk is already allocated, I must shrink at least one existing partition in order to create new partitions. I'll shrink both of them to half (<b>/dev/sda1</b> from 1,6 gigabytes to 800 megabytes, and <b>/dev/sda2</b> from 400 MB to 200 MB). In addition, I'll move <b>/dev/sda2</b> right next to <b>/dev/sda1</b> to keep the partitions in order.</p> |
466 |
|
467 |
<p>But how many partitions there will be in total? One, two, three... four! Phew, I was near to paint myself into a corner. If I created only primary partitions, I'd be unable to create any more partitions on the disk. Thus, I'll create an extended partition instead and two logical partitions within it. Then I'll be able to create more logical partitions later if required.</p> |
468 |
|
469 |
<p>There is one more challenge: moving /home to a separate partition. It's very easy to move the folder itself, but the distro in <b>/dev/sda1</b> will surely be confused if it doesn't find /home when it boots next time. Thus, I must edit its <b>/etc/fstab</b> and configure it to mount the /home partition automatically - before booting the distro itself. |
470 |
|
471 |
<p>Now there are only two decisions left: the numbers and sizes of the new partitions. I decide to install the new distro to <b>/dev/sda5</b> and move /home to <b>/dev/sda6</b>. Let <b>/dev/sda5</b> be 800 megabytes and <b>/dev/sda6</b> 200 MB in size.</p> |
472 |
|
473 |
<p>Now it's time to boot into <b>SystemRescueCD</b>. Graphical mode is required this time.</p> |
474 |
<img src="images/systemrescuecd.png"> |
475 |
<p>I close the terminal and open <b>GParted</b> by clicking the third icon in the bottom pane.</p> |
476 |
<img src="images/gparted-00.png"> |
477 |
<p>I right-click the partition <b>/dev/sda1</b> and select <b>Resize/Move</b>.</p> |
478 |
<img src="images/gparted-01.png"> |
479 |
<p>I enter 799 MB as the new size, click the <b>Free Space Following (MiB)</b> combo box and press <b>Resize/Move</b>.</p> |
480 |
<img src="images/gparted-02.png"> |
481 |
<p>I right-click now <b>/dev/sda2</b> and select <b>Resize/Move</b>.</p> |
482 |
<img src="images/gparted-03.png"> |
483 |
<p>I enter 0 MB as preceding free space and 200 MB as partition size, click the <b>Free Space Following (MiB)</b> combo box and press <b>Resize/Move</b>.</p> |
484 |
<img src="images/gparted-04.png"> |
485 |
<p>I right-click the unallocated area and select <b>New</b>.</p> |
486 |
<img src="images/gparted-05.png"> |
487 |
<p>I select <b>Extended Partition</b> as the partition type. The size was already 998 megabytes (the maximum) and as said, an extended partition doesn't contain any filesystem. I click <b>Add</b>.</p> |
488 |
<img src="images/gparted-06.png"> |
489 |
<p>I right-click the unallocated area within the extended partition and select <b>New</b>.</p> |
490 |
<img src="images/gparted-07.png"> |
491 |
<p>I choose the ext4 filesystem and enter 798 MB as the partition size. After that, I click first the <b>Free Space Following (MiB)</b> combo box and then <b>Add</b>.</p> |
492 |
<img src="images/gparted-08.png"> |
493 |
<p>I right-click the remaining unallocated space and select <b>New</b> one more time.</p> |
494 |
<img src="images/gparted-09.png"> |
495 |
<p>I choose the ext4 filesystem again. The partition size setting was already 201 megabytes (the whole available space), so I just press <b>Add</b>.</p> |
496 |
<img src="images/gparted-10.png"> |
497 |
<div align="center"><table class="note" border="0" cellpadding="20"><tr><td valign="top"><img src="images/important.png"></td><td> |
498 |
The next step is to commit the changes.<br><br>After that some operations, for example<br>partition deletion, can no longer be undone. |
499 |
</td></tr></table></div> |
500 |
<p>Finally I commit the changes by pressing the rightmost icon in the main bar.</p> |
501 |
<img src="images/gparted-11.png"> |
502 |
<p>After <i>slowly</i> reading the warning, I confirm my decisions by pressing <b>Apply</b>.</p> |
503 |
<img src="images/gparted-12.png"> |
504 |
<p><b>GParted</b> begins to commit the changes...</p> |
505 |
<img src="images/gparted-13.png"> |
506 |
<p>...and when everything is done, it shows me this window that I close.</p> |
507 |
<img src="images/gparted-14.png"> |
508 |
<p>Then I can see the brand new partitions.</p> |
509 |
|
510 |
<H3><a name="partitions-home"></a>Moving /home <span class="hideprint">[<a href="#partitions-top" title="go to top of the page">^</a>]</span></H3> |
511 |
|
512 |
<p>I close <b>GParted</b> and launch <b>Terminal</b> by pressing the second icon in the bottom pane.</p> |
513 |
|
514 |
<p>I create directories as mount points:</p> |
515 |
|
516 |
<p class="newcode">mkdir /mnt/sda1<br> |
517 |
mkdir /mnt/sda6</p> |
518 |
|
519 |
<p>Then I mount the partitions:</p> |
520 |
|
521 |
<p class="newcode">mount /dev/sda1 /mnt/sda1<br> |
522 |
mount /dev/sda6 /mnt/sda6</p> |
523 |
|
524 |
<p>I move the directory:</p> |
525 |
|
526 |
<p class="newcode">mv /mnt/sda1/home/* /mnt/sda6/</p> |
527 |
|
528 |
<p>After that, I unmount /dev/sda6, because it no longer needs to be mounted:</p> |
529 |
|
530 |
<p class="newcode">sync<br> |
531 |
umount /dev/sda6</p> |
532 |
<img src="images/terminal.png"> |
533 |
<p>As you can see, under Linux it's perfectly normal that the terminal doesn't answer to the commands. Don't worry - they are really executed.</p> |
534 |
|
535 |
<p>Now I close <b>Terminal</b> and launch <b>Geany</b> by pressing the fourth icon in the bottom pane.</p> |
536 |
<img src="images/geany-00.png"> |
537 |
<p>I select <b>File</b> -> <b>Open</b>.</p> |
538 |
<img src="images/geany-01.png"> |
539 |
<p>I press <b>File System</b> and navigate to folder <b>/mnt/sda1/etc</b>.</p> |
540 |
<img src="images/geany-02.png"> |
541 |
<p>I double-click the file <b>fstab</b>.</p> |
542 |
<img src="images/geany-03.png"> |
543 |
<p>I add the following line:</p> |
544 |
|
545 |
<p class="newcode">/dev/sda6 /home ext4 defaults 0 2</p> |
546 |
|
547 |
<p>Finally, I select <b>File</b> -> <b>Save</b>.</p> |
548 |
<img src="images/geany-04.png"> |
549 |
<p>It's a good idea to reboot the computer now and check if the distribution in <b>/dev/sda1</b> still works. Anyway, the disk should now be ready for the new distro.</p> |
550 |
|
551 |
|
552 |
</div> |
553 |
<!--<a name="template-top"></a>--> |
554 |
|
555 |
<div id="footer"> |
556 |
<div id="docline-bottom"> <a href="sysresccd.html">< PREV</a> <a href="doc.html">UP</a> <a href="recover.html">NEXT ></a> </div> |
557 |
<p>Copyright: © <a href="mailto:sng@hellug.gr?subject=About Clonezilla-SysRescCD v 3.1.0">Spiros Georgaras</a>, 2007-2010<br /><br/> |
558 |
Hosted by <a href="http://www.hellug.gr" target="_blank" title="Hellenic Linux User Group">HEL.L.U.G.</a></p> |
559 |
</div> |
560 |
</div> |
561 |
</body> |
562 |
</html> |