Difference between revisions of "Solaris 10 System Administration Part I"
Line 364: | Line 364: | ||
</table> | </table> | ||
Use ls command to distinguish different file types | Use ls command with -l option to distinguish different file types | ||
The first character of each line indicates file type | |||
<insert image of ls -l output with dictionary> | |||
<table style="text-align: left; width: 50%;" border="1" | |||
cellpadding="2" cellspacing="0"> | |||
<tr> | |||
<td>-</td> | |||
<td>regular files</td> | |||
</tr> | |||
<tr> | |||
<td>d</td> | |||
<td>directories</td> | |||
</tr> | |||
<tr> | |||
<td>l</td> | |||
<td>symbolic links</td> | |||
</tr> | |||
<tr> | |||
<td>b</td> | |||
<td>block-special device files</td> | |||
</tr> | |||
<tr> | |||
<td>c</td> | |||
<td>character-special device files</td> | |||
</tr> | |||
</table> | |||
Examples on v240: | |||
<pre> | |||
# cd /etc | |||
# ls -l | |||
total 650 | |||
lrwxrwxrwx 1 root root 14 May 3 15:34 TIMEZONE -> ./default/init | |||
drwxr-xr-x 6 root other 512 May 3 16:15 X11 | |||
drwxr-xr-x 2 adm adm 512 May 3 16:19 acct | |||
-rw-r--r-- 1 root sys 253 Aug 6 2010 aggregation.conf | |||
lrwxrwxrwx 1 root root 14 May 3 16:03 aliases -> ./mail/aliases | |||
drwxr-xr-x 7 root bin 512 May 3 16:11 apache | |||
drwxr-xr-x 2 root bin 512 May 3 15:54 apache2 | |||
*****output truncated***** | |||
</pre> | |||
<pre> | |||
# pwd | |||
/devices/pci@1c,600000/scsi@2 | |||
# ls -l | |||
total 8 | |||
drwxr-xr-x 2 root sys 512 May 3 16:25 sd@0,0 | |||
brw-r----- 1 root sys 32, 0 Jul 7 13:54 sd@0,0:a | |||
crw-r----- 1 root sys 32, 0 Jul 14 16:50 sd@0,0:a,raw | |||
</pre> | |||
<center>[[Solaris|To Solaris]]</center> | <center>[[Solaris|To Solaris]]</center> |
Revision as of 12:55, 15 July 2011
My Solaris 10 System Administration Part I notes.
Credits
My main source of information came from Oracle System Administration of Solaris 10 Part I from Oracle University (excellent training) & Solaris 10 man pages.
Solaris 10 OS Directory Hierarchy
File systems
Unix File System (UFS) is the default file system
Directory starts with root directory (/)
Solaris 10 OS includes alternate file system called zettabyte file system (ZFS)
Logically all directories fall below root directory (/)
Physically directories can be located on one or spread over multiple file systems
<insert graphics to show this>
Refer to filesystem man page for more information on file system organization.
$ man -s 5 filesystem
Important directories
Directory | Notes |
/ | root of file system |
/bin | symbolic link to /usr/bin & location for binary files of standard system commands |
/dev | primary directory for logical device names & contents of directory are symbolic links to device files in /devices directory |
/etc | directory holds host-specific config files & databases for system administration |
/export | default directory for commonly shared file systems (like user home directories) |
/home | default directory or mount point for user home directories |
/kernel | |
/lib | |
/mnt | |
/opt | |
/platform | |
/sbin | |
/usr | |
/var |
Important in-memory system directories
/dev/fd | |
/devices | |
/etc/mnttab | |
/etc/svc/volatile | |
/proc | |
/system/contract | |
/system/object | |
/tmp | directory for temporary files (cleared during boot sequence) |
/var/run |
Subdirectories of note under /dev
/dev/dsk | block disk devices |
/dev/fd | file descriptors |
/dev/md | logical volume management metadisk drives |
/dev/pts | pseudo terminal devices |
/dev/rdsk | raw disk devices |
/dev/rmt | raw magnetic devices |
/dev/term | serial devices |
Important subdirectories under /etc
/etc/acct | config info for accounting system |
/etc/cron.d | config info for cron utility |
/etc/default | default info for various programs |
/etc/inet | config files for network services |
/etc/init.d | scripts for starting & stopping services |
/etc/lib | |
/etc/lp | config info for printer subsystem |
/etc/mail | config info for mail subsystem |
/etc/nfs | config file for NFS server logging |
/etc/opt | config info for optional packages |
/etc/rc#.d | legacy scripts that are executed when entering or leaving a specific run level |
/etc/security | controls files for Role Based Access Control & security privileges |
/etc/skel | default shell initialization files for new users |
/etc/svc | Service Management Facility database & log files |
Important subdirectories of /usr
/usr/bin | standard system commands |
/usr/ccs | C-compilation programs & libraries |
/usr/demo | demo programs & data |
/usr/dt | Java Desktop System (JDS) software directory or mount point |
/usr/include | Header files |
/usr/jdk | directory contains Java technology programs & libraries |
/usr/kernel | loadable kernel modules not generally required during boot process |
/usr/lib | architecture-dependent databases, libraries, & binaries that are not invoked directly by user |
/usr/opt | config info for optional packages |
/usr/sbin | sys admin coomands |
/usr/spool | symbolic link to /var/spool directory |
Important subdirectories of /var
/var/adm | log files for syslog, system accounting, etc |
/var/crash | crash dump storage |
/var/spool | spool files storage |
/var/svc | Service Management Facility control files and logs |
/var/tmp | long term storage of temp files (survives reboot) |
File components
Generally a file name is associated with an inode & an inode provides access to data blocks.
<insert figure of relationship>
file names
File names are objects frequently used to manage files. A file must have a name that is associated with an inode.
inodes
Inodes are objects that Solaris OS uses to maintain info about a file. In general an inode contains:
- file info = file owner, permissions, & size
- pointers to data blocks associated with file content
inodes are numbered & each file system contains its own inode list
At UFS creation a new inode list is created
data blocks
data blocks are units of disk space that store data
Regular files, directories, & symbolic links make use of data blocks
Device files do not hold data therefore do not use data blocks
ZFS uses the following data structures: dnode data structure: the data structure contains pointers to data blocks znode data structure: this data structure contains info about file (owner, permissions, & size)
Dnode & znode data structures are called metadata & stored dynamically by ZFS. ZFS implements ZFS POSIX layer (ZPL) which is a primary interface for ZFS. ZPL allows commands you use with UFS to work with ZFS. ZFS emulates UFS inode number mechanism
Identifying file types
Solaris has four main file types:
regular or ordinary files | store one or more types of data |
directories | store one or more types of data |
symbolic links | store one or more types of data |
device files | does not store data |
Use ls command with -l option to distinguish different file types
The first character of each line indicates file type
<insert image of ls -l output with dictionary>
- | regular files |
d | directories |
l | symbolic links |
b | block-special device files |
c | character-special device files |
Examples on v240:
# cd /etc # ls -l total 650 lrwxrwxrwx 1 root root 14 May 3 15:34 TIMEZONE -> ./default/init drwxr-xr-x 6 root other 512 May 3 16:15 X11 drwxr-xr-x 2 adm adm 512 May 3 16:19 acct -rw-r--r-- 1 root sys 253 Aug 6 2010 aggregation.conf lrwxrwxrwx 1 root root 14 May 3 16:03 aliases -> ./mail/aliases drwxr-xr-x 7 root bin 512 May 3 16:11 apache drwxr-xr-x 2 root bin 512 May 3 15:54 apache2 *****output truncated*****
# pwd /devices/pci@1c,600000/scsi@2 # ls -l total 8 drwxr-xr-x 2 root sys 512 May 3 16:25 sd@0,0 brw-r----- 1 root sys 32, 0 Jul 7 13:54 sd@0,0:a crw-r----- 1 root sys 32, 0 Jul 14 16:50 sd@0,0:a,raw