Solaris操作系统和常用命令

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 谈到Solaris时,它可能仅仅表示Solaris 8、9、 10级等商业版本;广义的,也包括各种 OpenSolaris。
CDDL 与 GPL
• OpenSolaris主要以CDDL授权方式(Common Development and Distribution License ) 开放源代码
POSIX标准
• POSIX 1003.1 ---- C语言的系统调用接口。 它与1988年被采纳,并从那以后多次进行 修改。包括实时扩展集(1003.1b)和线程 (1003.1c)。 • POSIX 1003.2 ---- shell、实用程序和用户 接口。 • 其他
Unix与Shell
用户
关系图
Solaris 10(CDE) GNOME
Solaris 11(JDS)
未开放源代码部分
OpenSolaris 2008. 5 OpenSolaris 2008. 11
Solaris Express
Nevada
snv_1
snv_2
snv_3
snv_100
snv_150
snv_300
说明
• 上图中Neveda线下部分的snv只能通过网络安装,不制作 成光盘发行,通常只有Solaris的开发和测试工程师使用。 • Nevada线的上部分制作成光盘发行,供用户使用。 • Snv、Solaris Express中既有CDE也有JDS, • OpenSolaris只有JDS。
• Shell是包围在Unix外的一层。
系统调用与库函数
系统程序员 库函数 系统调用 Unix
系统调用与库函数
• #include <stdio.h> • #include <unistd.h> • int main() • { • char buf[] = "This are words in array buf.\n"
• man uname
登录到Solaris
• 远程登录工具putty • 登录方式:telnet,ssh,rlogin • svcs -a | grep telnet • svcadm enable/disable telnet
文件系统
• Unix系统的成功与它的方便易用,关键就 在文件系统。
目录树
Solaris操作系统及常用命令
张小平
Unix历史
• 肯· 汤普森(Ken Thompson)在1969年最 初以PDP-7汇编语言编写Unix操作系统。 • 丹尼斯· 里奇(Dennis Ritchie)与1970年 发明了C语言。 • 1973年,Denis Ritchie和Ken Thompson用C语言重新编写了Unix。 • ACM于1983年10月举行的年会上向汤普森 和里奇颁发图灵奖。
Shell及工具程序
Unix 硬件 Posix 1003.2 Posix 1003.1
Unix与Shell
• Unix是操作系统的核心(kernel),但通 常谈到Unix也包括shell和实用工具。 • Unix不包括图形系统(X Window)及桌面环 境(GNOME、KDE、CDE...)。
cd pwd
• pwd --- 查看当前目录 • cd --- 改变工作目录 • 'cd -' --- 切换到前一个工作目录
• 保存一个目录,以后切换到该目录
#DIR=$(pwd) ..... #cd $DIR
改变工作目录
命令 cd book cd book/wonderland cd ~/book/wonderland cd /usr/lib/ cd .. cd ../gryphon cd ~gryphon 新的工作目录 /home/cam/book /home/cam/book/wonderland /home/cam/book/wonderland /usr/lib /home /home/gryphon /home/gryphon
Solaris与OpenSolaris
• OpenSolaris是以CDDL授权方式开放源代码的社区 发行版,计划每半年发布一个新的版本。 迄今, 已发布OpenSolaris 2008.5、OpenSolaris 2008.11和OpenSolaris 2009.6
• Solaris是基于OpenSolaris的技术的商业版本。
路径
当前目录
/home /home /home
相对路径
cam ../etc ./cam
绝对路径
/home/cam /etc /home/cam
/home/cam
/home/cam /home/alice home/alice
..
../cam/book ../cam/book/aaiw ./.././cam/bin
Unix背后的公司
• Redhat,Novell,Canonical ,IBM, Intel … --- Linux • Oracle/Sun --- Solaris • IBM --- AIX • HP --- HP-UX
POSIX标准
• 不同的Unix导致混乱:为一种Unix编写的 软件不能在其他Unix上运行。 • 为了解决该问题,IEEE制定了POSIX标准, 只要按照该标准编写程序,那么所有按照 该标准编写的软件都能运行在符合该标准 的Unix平台上。
创建、删除目录
#mkdir 1 #mkdir -p 1/2/3/4 #mkdir -p 1/2/5/6 #rmdir 1/2/3/4 # rmdir -p 1/2/3 rmdir: 1/2: File exists
• rmdir只能删除空目录
创建、删除文件
#echo hello world > test #cat test #mkfile 1k jack #rm test #rm jack
挂载点
• mount /dev/hda5 /mnt/c • umount /dev/hda5 • umount /mnt/c
• 将/etc/dts/dtstab中的一行注释去掉 (启动NFS server至少需要有一个目录间共享出去) • svcadm enable netwolk/nfs/server • share rw=client /export/home • mount 202.192.145.12:/home /mnt/home
• 在$PATH中寻找外部命令执行。
more less
• 分页输出;more 只能向后翻页,less则能 向前翻页。 • 查找 /keyword • 翻页 ctrl + f ctrl +b • 退出 q
复制、移动、删除文件
• cp src dest • cp src dest/ • cp -rf src/ dest/ • 不覆盖文件: • yes n | cp -i bfsh-koc/test.sh ./ >& /dev/null • • • • mv 5 ./ mv 5 1/2 mv 1 111 同一个目录下改名
挂载点
• 当执行mount和umount时,核心自动更新 /etc/mnttab,该文件用户不可编辑。 • 用户可以编辑/etc/vfstab,系统启动时根 据该文件的内容自动挂载文件系统。
两个分区
• 安装Unix,硬盘至少要划分两个分区。一 个是根分区,挂载点是/;另一个是交换分 区(swap),用做虚拟内存。
• printf("hello, world.\n"); • write(1, buf, sizeof(buf)); • return 0; • }
// 库函数 // 系统调用
Unix、C、Shell
• Unix、C、Shell三者是不可分割的整体。 要深入认识Unix操作系统必须要认识C程序 设计语言和Shell;要认识C程序设计语言 和Shell也必须基于Unix操作系统来认识。
Nevada与snv
• Nevada是OpenSolaris代码的开发代号, snv(Solaris Nevada的缩写)则是从nevada编译 生成的操作系统。 • $ uname -a • SunOS opensolaris 5.11 snv_101b i86pc i386 i86pc
• $ more /etc/motd • Sun Microsystems Inc. SunOS 5.11 snv_101b November 2008
磁盘相关命令
• fdisk format df
ZFS
• ZFS
ls/dir
• • • • • • • • ls -h (human readable) ls -l (详细查看) ls -a (观察. 和 ..,以及.开头的隐藏文件) ls -R (递归) ls -i (i节点) ls -t (时间顺序) ls -ahilR 命令、选项、参数
usr lib etc cam
/
home alice hatter gryphon
book
bin
readme
mock
aaiw
ttlg
wonderland
字节流
• 文件即字节序列(字节流),系统并没有 给文件强加任何结构,也没有给它的内容 附加任何意义,这些字节的意义仅依赖于 解释文件的程序。 • man ascii
• Solaris Express是发布频率更加频繁的OpenSolaris. • 从该链接下载各种OpenSolaris: http://opensolaris.org/os/downloads/
• 当我们谈到OpenSolaris时,注意区分它是仅表示每半年 发布一次的那种,还是包括Solaris Exress等其他衍生版 本。 • 当谈到OpenSolaris时,他不可能包括Solaris 8、9、10 等商业发行版。
• http://src.opensolaris.org/source/xre f/test/onteststc2/src/suites/zfs/checkenv_def
• GNU Linux主要以GPL授权方式(General Public License )开放源代码
OpenSolaris和Solaris Express
系统手册和在线文档
• Solaris Express在线文档: http://docs.sun.com/app/docs/prod/solaris.e xp#h来自百度文库c
• Solaris/OpenSolaris中文文档中心: http://developers.sun.com.cn/solaris/chines e_solaris_docs.html
/home
/home/cam/book /home/cam/book/aaiw /home/cam/bin
内部命令和外部命令
• • • • # type cd cd is a shell builtin # type ls ls is hashed (/usr/local/bin/ls)
• # type type • type is a shell builtin
• rm -rf
硬链接和软链接
• link == ln • 硬链接和符号链接(软链接) • ln test aaaa • ln -s test bbbb • ls -li查看aaaa和bbbb的区别:字节大小及指向 • unlink aaaa bbbb
• JDS是基于GNome的。Sun对其作了些修改并增加了部分软 件。
Solaris VS Linux
• Solaris使用CDE、JDS(GNOME)桌面环 境;GNU Linux使用GNOME、KDE等其 他桌面环境。 • http://gceclub.sun.com.cn/solaris/A_C omparison_of_Solaris_Linux_and_Free BSD_Kernels.html
OpenSolaris与Solaris 11
• Solaris 10已经停止Update. (S10u1, S10u2 .. S10u6, S10u7 ..) • Solaris 11还没有发布,OpenSolaris可以认为是开发中 的Solaris 11。
• $ uname -a • SunOS t1000 5.10 Generic_118833-33 sun4v sparc SUNW,Sun-Fire-T1000 Solaris • $ uname -a • SunOS opensolaris 5.11 snv_101b i86pc i386 i86pc
相关文档
最新文档