Solaris 10 System Administration Part I

From Got Opinion Wiki
Jump to navigation Jump to search

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:

  1. file info = file owner, permissions, & size
  2. 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 * regular or ordinary files

  • directories
  • symbolic links
  • device files



To Solaris