summaryrefslogtreecommitdiff
path: root/sag-0.6.1-www/Invisible/sag-0.6/node43.html
blob: d69967769387de2b0a199236bb0149fe01e366dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds -->
<HTML>
<HEAD>
<TITLE>Filesystems galore</TITLE>
<META NAME="description" CONTENT="Filesystems galore">
<META NAME="keywords" CONTENT="sag">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<LINK REL=STYLESHEET HREF="sag.css">
</HEAD>
<BODY LANG="EN" >
 <A NAME="tex2html861" HREF="node44.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html859" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html853" HREF="node42.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html863" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html864" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR>
<B> Next:</B> <A NAME="tex2html862" HREF="node44.html">Which filesystem should be </A>
<B>Up:</B> <A NAME="tex2html860" HREF="node41.html">Filesystems</A>
<B> Previous:</B> <A NAME="tex2html854" HREF="node42.html">What are filesystems?</A>
<BR> <P>
<H2><A NAME="SECTION00582000000000000000">Filesystems galore</A></H2>
<P>
	Linux supports several types of filesystems.  As of this
	writing the most important ones are:
	<DL ><DT><STRONG>minix</STRONG>
<DD>
		The oldest, presumed to be the most reliable, but quite
		limited in features (some time stamps are missing, at
		most 30 character filenames) and restricted in
		capabilities (at most 64&nbsp;MB per filesystem).
	<DT><STRONG>xia</STRONG>
<DD>
		A modified version of the minix filesystem that lifts
		the limits on the filenames and filesystem sizes,
		but does not otherwise introduce new features.  It is
		not very popular, but is reported to work very well.
	<DT><STRONG>ext2</STRONG>
<DD>
		The most featureful of the native Linux filesystems,
		currently also the most popular one.  It is designed to
		be easily upwards compatible, so that new versions
		of the filesystem code do not require re-making the
		existing filesystems.
	<DT><STRONG>ext</STRONG>
<DD>
		An older version of <tt>ext2</tt> that wasn't upwards
		compatible.  It is hardly ever used in new installations
		any more, and most people have converted to <tt>ext2</tt>.
<P>
</DL>
	In addition, support for several foreign filesystem exists,
	to make it easier to exchange files with other operating
	systems.  These foreign filesystems work just like native
	ones, except that they may be lacking in some usual UNIX
	features, or have curious limitations, or other oddities.
	<DL ><DT><STRONG>msdos</STRONG>
<DD>
		Compatibility with MS-DOS (and OS/2 and Windows NT)
		FAT filesystems.
	<DT><STRONG>umsdos</STRONG>
<DD>
		Extends the <tt>msdos</tt> filesystem driver under
		Linux to get long filenames, owners,
		permissions, links, and device files.  This allows a normal
		<tt>msdos</tt> filesystem to be used as if it were a
		Linux one, thus removing the need for a separate
		partition for Linux.
	<DT><STRONG>iso9660</STRONG>
<DD>
		The standard CD-ROM filesystem; the popular Rock Ridge
		extension to the CD-ROM standard that allows longer file
		names is supported automatically.
	<DT><STRONG>nfs</STRONG>
<DD>
		A networked filesystem that allows sharing a filesystem
		between many computers to allow easy access to the
		files from all of them.
	<DT><STRONG>hpfs</STRONG>
<DD>
		The OS/2 filesystem.
	<DT><STRONG>sysv</STRONG>
<DD>
		SystemV/386, Coherent, and Xenix filesystems.
<P>
</DL>
	The choice of filesystem to use depends on the situation.  If
	compatibility or other reasons make one of the non-native
	filesystems necessary, then that one must be used.  If one can
	choose freely, then it is probably wisest to use ext2, since
	it has all the features but does not suffer from lack of
	performance.
<P>
	There is also the <tt>proc</tt> filesystem, usually accessible as
	the <tt>/proc</tt><A NAME="1559">&#160;</A> directory, which is not really a
	filesystem at all, even though it looks like one.  The
	<tt>proc</tt> filesystem makes it easy to access certain kernel
	data structures, such as the process list (hence the name).
	It makes these
	data structures look like a filesystem, and that filesystem
	can be manipulated with all the usual file tools.  For example,
	to get a listing of all processes one might use the
	command
		<BLOCKQUOTE> <TT>
<code>$ </code> <I>ls -l /proc</I> <BR> 
<code>total 0</code> <BR> 
<code>dr-xr-xr-x   4 root     root            0 Jan 31 20:37 1</code> <BR> 
<code>dr-xr-xr-x   4 liw      users           0 Jan 31 20:37 63</code> <BR> 
<code>dr-xr-xr-x   4 liw      users           0 Jan 31 20:37 94</code> <BR> 
<code>dr-xr-xr-x   4 liw      users           0 Jan 31 20:37 95</code> <BR> 
<code>dr-xr-xr-x   4 root     users           0 Jan 31 20:37 98</code> <BR> 
<code>dr-xr-xr-x   4 liw      users           0 Jan 31 20:37 99</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 devices</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 dma</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 filesystems</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 interrupts</code> <BR> 
<code>-r--------   1 root     root      8654848 Jan 31 20:37 kcore</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 11:50 kmsg</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 ksyms</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 11:51 loadavg</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 meminfo</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 modules</code> <BR> 
<code>dr-xr-xr-x   2 root     root            0 Jan 31 20:37 net</code> <BR> 
<code>dr-xr-xr-x   4 root     root            0 Jan 31 20:37 self</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 stat</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 uptime</code> <BR> 
<code>-r--r--r--   1 root     root            0 Jan 31 20:37 version</code> <BR> 
<code>$ </code>
		</TT></BLOCKQUOTE>
	(There will be a few extra files that don't correspond to
	processes, though.  The above example has been shortened.)
<P>
	Note that even though it is called a filesystem, no part of 
	the <tt>proc</tt> filesystem touches any disk.  It exists only in the
	kernel's imagination.  Whenever anyone tries to look at any
	part of the <tt>proc</tt> filesystem, the kernel makes it look as if
	the part existed somewhere, even though it doesn't.  So, even
	though there is a multi-megabyte <tt>/proc/kcore</tt><A NAME="1561">&#160;</A> file,
	it doesn't take any disk space.
<P>
<HR><A NAME="tex2html861" HREF="node44.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html859" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html853" HREF="node42.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html863" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html864" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR>
<B> Next:</B> <A NAME="tex2html862" HREF="node44.html">Which filesystem should be </A>
<B>Up:</B> <A NAME="tex2html860" HREF="node41.html">Filesystems</A>
<B> Previous:</B> <A NAME="tex2html854" HREF="node42.html">What are filesystems?</A>
<P><ADDRESS>
<I>Lars Wirzenius <BR>
Sat Nov 15 02:32:11 EET 1997</I>
</ADDRESS>
</BODY>
</HTML>