UNIX概述
• UNIX历史
• UNIX特点
• UNIX原则
UNIX历史
• UNIX操作系统诞生于60年代末期的Bell实验室
• 美国电话电报公司(AT&T)在70年代中期开始发行UNIX的非商业许可证
• 从70年代末开始在市场上出现了不同的UNIX商品化版本
UNIX特点
• 可靠性高
• 伸缩性强
• 开放性好
• 植根于网络
• 面向数据库使用
UNIX基本原则
• 所有对象,包括硬件都是文件
• 配置数据以文本形式保存
• 由短小的单目的程序构成
• 避免不必要的用户交互
• 可使用多个程序合作完成复杂任务.
GNU项目介绍
• GNU是GNU’s not UNIX的缩写
• 1984,Project GNU 由Richard Stallman发起
• GNU的基本体系是micro kernel
• GNU的基本原则是共享
GPL–GNU通用公共授权
• FSF,Free Software Foundation
• Free Software的概念不是免费(gratis)
• copyleft
• open source
Linux 起源
• 核心编写者Linus Torvalds
• 自由的类Unix操作系统
• 遵循GNU 和GPL
为何选择Linux?
• 支持UNIX的API,可以实现所有UNIX的功能
• 遵循开源许可协议
• 多用户多任务系统
• 广泛的网络协议和配置支持
• 广泛的硬件支持
• 广泛的技术支持
Red Hat Linux
• 最新的系统内核
• 拥有常用的实用程序和应用软件
• 简单的安装和配置软件
• 提供技术支持
推荐硬件配置
• 奔腾系列或者更高的CPU
• 128 MB或更大的内存
• 最少600MB(文本模式)或1.2GB(图形模式)的硬盘空间
• 可以用于引导系统的CD-ROM或3.5寸软驱。
Linux图形环境
XFree86:标准的Linux X Window系统
XFree86 3.3.X
XFree86 4.2.X
GNOME(The GNU Network Object Model Environment)--基于GTK的工具包
KDE --基于QT的工具包
第一单元
基础操作
Linux用户环境
• 内核(Kernel)
• Shell
• 终端模拟器(Terminal Emulator)
• X Window系统
• 窗口管理器(Window Manager)
• 桌面环境(Desktop Environment)
本地登录
Red Hat Linux release 9.0 (Shrike)
Kernel 2.4.20-8 on an i686
login:root(用户名)
password:______(密码)
提示符与home目录
[root@stationXX root]#
• [当前用户名@主机名 当前目录]
• 提示符因用户而异
• home目录是用户登入系统后即所在的默认目录。
创建用户
#useradd [用户名]
#password [用户名]
• example:
• [root@stationXX root]# useradd student
• [root@stationXX root]# passwd student
• Changing password for user student
• New password: (无回显)
• Retype new password: (无回显)
• passwd: all authentication tokens updated successfully
• [root@stationXX root]#
运行指令
• 指令名[选项][参数]
– 例子:ls -l /etc/X11
• 帮助和在线帮助
– 指令--help
• 例:mknod --help
– man 指令
• 例:man mknod
– info 指令
• 例:info mknod
基础指令(一)
• man 的使用技巧
man -k keyword
man -f keyword
man -a keyword
man n keyword
基础指令(二)
• ls -查看文件
• cp -拷贝文件
• mv -移动或重命名文件
• rm -删除文件
• touch- 创建空文件或更新文件时间
基础指令(三)
• cd -改变当前路径
• pwd-察看当前完整路径
• mkdir- 创立新目录
• rmdir- 删除空目录
基础指令(四)
• cat -察看文件内容
• more- 逐屏察看文件内容
• less-逐行察看文件内容
• date-显示当前时间
• cal -显示月历
基础指令(五)
• df -显示磁盘用量
• du -计算目录下文件占用磁盘的大小
基础指令(六)
• head -显示文件开头部分内容
• tail -显示文件结尾部分内容
设备文件
• 设备在Linux中以特殊文件的形式存在
• 块(block)设备文件
• 字符(character)设备文件
• 设备文件所在位置
• 查看设备类型
虚拟控制台及用户身份切换
• 在系统中有12个虚拟控制台,前6个可供用作本地登录
• 用户可以用Alt+Fn(n=1~12)来切换。
• 用su可以用来切换用户身份
su - username
离开系统
• 重启
– reboot
– shutdown -r now
– init 6
• 关机
– halt
– shutdown -h now
– poweroff
– init 0
第二单元
文件
检查文件
• 用ls –l以长模式察看文件的详细信息
– 包含当前目录的硬盘使用空间、文件类型、文件权限、硬连接数、文件拥有者、文件所属组、文件大小、更动时间、文件名。
• 用file检查文件类型
– 由于linux中的文件名中没有扩展名,所以可能需要 用file来查看文件类型
文件类型
• 在linux中,所有东西都被当成文件。
• 文件权限前的第一个字母用来标识文件类型:
-: 一般文件
d: 目录文件
b: 块设备文件
c: 字符设备文件
l: 链接文件
p: 人工管道
文件权限
• 对于每一个文件,Linux都提供了一套文件权限系统。
• 文件权限系统,将操作文件的用户都分成三类
– 文件的拥有者(u)
– 文件所属组的成员 (g)
– 其他用户(o)
文件权限类型
• 对于每一类用户,权限系统又分别提供他们三种权限
• 读(r):用户是否有权力读文件的内容
• 写(w):用户是否有权利改变文件的内容
• 执行(x):用户是否有权利执行文件
改变文件权限
• 使用chmod 来改变文件的当前权限
chmod [-R] 权限 文件名
• 只有文件的拥有者和root才可以改变文件的权限
使用数字来改变文件权限
• chmod后可以用三个数字来表示用户权限
– 第一位代表文件拥有者权限
– 第二位代表文件所属组成员权限
– 第三位代表其他用户权限
• 每一个数字都采用加和的方式
– 4(读)
– 2(写)
– 1(执行)
建立链接
• ln
– 硬 链接
• 语法 :ln 源文件 新建链接名
– 软链接
• 语法:ln –s 源文件 新建链接名
ext2/3中文件的构成
• 在ext2和ext3文件系统中,文件以inod+block的方式存在。
• 一但用rm指令删除文件中的inode记录。文件无法被找回。
• stat指令可以用来检查文件的block与inode状况。
所属用户
• 每一个文件都有一个拥有者。文件的拥有者可以改变文件的权限。
• root用户可以用chown来改变文件的拥有者。
所属组
• 每一个文件只能属于一个指定的组。
• 文件的拥有者与root用户,可以用chgrp来改变文件所属的组
文件名
• 文件名最大为255个字符。
• 开头为.的文件为隐藏文件。
第三单元
目录
目录
• 目录在文件类型上用d标识
• 用/ 分隔目录层
• Linux 操作系统都有且仅有一个起始目录,我们用一个单独的/ 来表示,称其为根目录。
• 对每一个shell和操作环境,都有一个当前工作目录。
.文件与..文件
• 在每一个目录下都有一个.文件与..文件。
• .文件是对当前目录的一个硬连接
• ..文件是对上级目录的一个硬连接
目录权限
• 目录也是一种文件
• 目录上的读写执行权限与普通文件有所不同:
– 读:用户可以读取目录内的文件
– 写:单独使用没有作用。与执行权限连用可以在目录内添加与删除文件。
– 执行:用户可以进入目录,调用目录内的资料
强制位与冒险位
• 除了读写执行权限以外,ext2文件系统还支持强制位(setuid 和setgid)与冒险位(sticky)的特别权限。
• 针对u,g,o,分别有set uid,set gid,及sticky。
• 强制位与冒险位添加在执行权限的位置上。如果该位置上原已有执行权限。则强制位与冒险位以小写字母的方式表示,否则,以大写字母表示。
• set uid与set gid在u和g的x位置上各采用一个s,sticky使用一个t。
set gid对目录的作用
• 默认情况下,用户建立的文件属于用户当前所在的组。
• 目录上设置了setgid,表示在此目录中,任何人建立的文件,都会属于目录所属的组。
冒险位对目录的作用
• 默认情况下,如果一个目录上有w和x权限,则任何人可以在此目录中建立与删除文件。
• 一旦目录上设置了冒险位,则表示在此目录中,只有文件的拥有者、目录的拥有者与系统管理员可以删除文件。
强制位对文件的作用
• 在可执行文件上,用户可以添加set uid和set gid。
• 默认情况下,用户执行一个指令,会以该用户的身份来运行进程。
• 指令文件上的强制位,可以让用户执行的指令,以指令文件的拥有者或所属组的身份运行进程。
设置强制位与冒险位
• 用户可以用chmod指令来为文件设置强制位与冒险位。
– set uid:chmod u+s 文件名
– set gid:chmod g+s 文件名
– sticky:chmod o+t 文件名
• 强制位与冒险位也可以通过一个数字加和,放在读写执行的三位数字前来指定。
– 4(set uid)
– 2(set gid)
– 1(sticky)
umask
• 每个用户建立文件时,此文件都会有默认权限。
• 默认权限的值由环境中的umask值来确定
• 用户可以自主改动umask值,并在改动后建立的文件上得到体现。
• 一般用户的默认umak值为002,系统用户的默认umask值为022。
根目录下的目录
• /bin:存储常用用户指令。
• /boot:存储核心、模块映像等启动用文件
• /dev:存储设备文件
• /etc:存储系统、服务的配置目录与文件
• /home:存放个人主目录
• /lib:存放库文件,诸如核心模块、驱动
• /lost+found:存储fsck用的孤儿文件
根目录下的目录(二)
• /mnt:系统加载文件系统时用的常用挂载点
• /opt:第三方工具使用的安装目录
• /proc:虚拟文件系统,包含系统讯息等资料
• /root:root用户的主目录
• /sbin:存储系统管理用指令
• /tmp:临时文件的暂存点
• /usr:存放与用户直接相关的文件与目录
• /var:存储在系统运行中可能会更改的数据
第四单元
过滤器、输入输出
及管道
过滤器
• Linux中的应用工具分为三种:
– 交互工具
– 过滤器
– 编辑器
• 能够接受数据,过滤再输出的工具,称为过滤器
• 对过滤器和进程,存在着输入源与输出对象
输入、输出、重定向
• 输入:过滤器的数据来源
– 标准输入stdin(0):默认是键盘
• 输出:过滤器的数据去向
– 标准输出stdout (1):默认是终端屏幕
• 错误输出:报错讯息与标准输出走不同的I/O通道
– 标准错误输出stderr(2):默认是终端屏幕
• 重定向:标准输入、输出与错误输出,都可以用特定符号改变数据来源或去向
输入重定向
• 使用“<”来重定向输入源
• 大多数工具都会以其后的文件名为输入源
• 有一些过滤器一定需要添加< 以明确输入源
从当前文档输入
• 使用<< 让系统将一次键盘的全部输入,先送入虚拟的‘当前文档’,然后一次性输入
• 需要一对字母、符号或字符串作为起始终结标识符
• 可以选择任意符号作为起始终结标识符
输出重定向
• 使用>改变数据输出目标
• 范例:
ls –l > listfile
– 将当前目录下的文件以长模式显示,然后写入listfile文件
• 文件已有内容会被消除
覆盖与追加
• 使用>进行输出重定向,文件的原内容会被覆盖
ls –l > listfile
• 使用>>,可以将输出追加入文件
ls –l >> listfile
错误输出重定向
• 系统错误与标准输出使用的I/O管道不同
• 默认情况下,系统报错会显示到终端屏幕上
• 使用2>将报错讯息重定向入一个文件
find / -type s 2> /dev/null
• 使用2>>将报错讯息追加入一个文件
find / -name passwd 2>> results
双重输出重定向
• 使用>和2>可以将一次操作的正确、错误输入,被单独地送到不同的地方:
find / -perm -2 2> error > results
• 使用&>将所有输入都送向同一个地方:
find / -perm +6000 > file
管道
• 使用| 将前一个过滤器的输出直接送入后一个过滤器的输入
ls –l | grep pass
• 允许多重管道
• 注意管道前过滤器的输出与管道后过滤器的输入数据类型匹配
重定向、管道的常用范例
• ls –l | more
– 分屏显示当前目录下的文件
• cat < filea > fileb
– 拷贝filea到fileb
• cat file.* > file
– 将数个小文件合并成一个文件
第五单元
文件查找与文件管理
可执行文件的搜索
• which
– 显示一个可执行文件的完整路径
– 按照alias -> $PATH的顺序查找
• whereis
– 搜索一个可执行工具及其相关配置、帮助
slocate
• 语法:
– slocate [关键字段]
– locate [关键字段]
• 所有文件名及其所在路径包含关键字段的文件与目录都会显示
• slocate先将当前目录结构做成一个数据库,然后再在此数据库中搜索匹配记录
find
• 语法:
find [路径] [参数] [表达式]
• 从指定路径下递归向下搜索文件
• 支持按照各种条件方式搜索
• 支持对搜索得到的文件进一步用指令操作
操作找到的文件
• 语法:
find [路径] [参数] [表达式] -exec 指令{} \;
– {}代表find找到的文件
– \ 禁止转意
– ;表示本行指令结束
常用的文件操作指令
• wc -统计文件的行、词、字数
• grep -显示文件中匹配关键字的行
• sort - 按序重排文本并送显示
常用的文件操作指令(二)
• diff - 报告文本差异内容
• comp -报告文本差异位置
• uniq -去除文件中重复的行
• cut -显示文件中的某一列
• paste -将文本按列拼接
压缩
• gzip,gunzip
– Linux标准压缩工具
– 对文本文件可以达到75%的压缩率
• compress,uncompress
– 旧的Unix压缩工具
• bzip2,bunzip2
– 更新的Linux压缩工具
– 比gzip有着更高的压缩率
Z系列指令
• 对于用gzip压缩的文件,有一系列以z为开头的文件,可以在不经解压的情况下,直接操作文件
– zcat: 直接显示压缩文件的内容
– zless: 直接逐行显示压缩文件的内容
– zdiff: 直接报告压缩文件的差异内容
– zcmp: 直接报告压缩文件的差异处
tar
• 用于在磁带机、软盘、ZIP设备上做备份。也可以备份在一个硬盘文件上。
• 主要参数:
– c:将文件备份出来
– v:将过程输出
– x:从一个文件中解出备份
• 范例
– 备份:tar cvf backup.tar *.txt
– 解开:tar xvf backup.tar –C backup/
dump/restore
• 备份与还原ext2/3文件系统
– 不可以在其他文件系统上使用
• 可以选择进行完全备份或增量备份
• 范例:
– dump –0u –f /var/tmp/hda2dump /dev/hda1
– restore –rf /var/tmp/hda2dump
第六单元
交互工具与编辑器
交互工具
• mesg -- 控制终端是否接收讯息
• 常用的交互工具:
– write: 指定一个在线用户发送短消息
– wall: 向所有在线用户广播
编辑工具
• 我们通常用各种编辑工具来处理文本文件
• 常用的编辑工具:
– VIM
– EMACS
Vi
• 作为一个编辑器,vi被广泛地运用在各种Unix操作系统上。
• Vi是Linux中的标准文本编辑器。
• 在Red Hat Linux上,一般采用的“可视编辑器/ visual editor” 是vim(vi improved)
打开文件
• vi 文件名
– 如果文件已存在,则此文件被打开且显示文件内容
– 如果文件不存在 ,则vi在第一次存盘时自动建立在硬盘上
存写文件
• 从命令模式下:
– :w 保存当前文件
– :q 如果未对文件做改动则退出
– :wq /:x /ZZ 保存当前文件并退出
– :q! 放弃存储并退出
– :e 文件名 打开另一文件并开始编辑
vi 模式
• vi 提供两种模式
– 命令模式
• 浏览、删除、剪贴、查找等
• 可以用各种命令进入插入模式
– 插入模式
• 输入新文档
• 用<ESC>退出插入模式回命令模式
删除与块操作
• 在命令模式下可以直接删除字符
• 在命令模式下键入v则进入块操作:
– 移动光标以选定操作块
– c 剪切选定块 或 y 复制选定块
– p 将选定内容贴在光标所在位置右手边
取消操作
• u:取消上一个更动
• U:取消一行内的所有更动
• <ctrl-r>:重做
• :e! :放弃所有更动,重新编辑
查找文本
• vi支持用户在全文中查找一个关键字段
• 在命令模式下,用/ 向上查找或用? 向下查找
• 查找一直到文件尾或文件头
• 在查找后,可以用n 继续寻找下一个关键字段。
命令模式的输入选项
• : r <文件名> 把文件插入到光标处
• :r !<命令> 把<命令>的输出插入到当前文本中
• :nr <文件> 把<文件>插入到第n行
• :!<命令> 运行<命令>,然后返回
• :sh 转到SHELL
• :so <文件> 读取<文件>,再执行文件里面的命令
第七单元
BASH
Shell简介
• Shell:命令行解释器,是用户与系统沟通时的媒介。
• 在Unix系统中有各种Shell,Linux采用bash为其默认shell
• 系统可以使用的shell记录在/etc/shells中
bash
• bash:Bourne Again Shell的缩写。
• GNU计划的一个组件。
• 与Unix上的Bourne Shell完全兼容。
• 支持命令行输入、操作历史查询、快捷键、使用变量等功能。
预定义环境变量
• 在bash中有很多预定义环境变量
• 系统通过预定义环境变量来定义shell的环境
• 用户可以用set或env查询当前的环境变量
• 常用的预定义变量:
– HOME:当前用户的主目录
– PATH:当前用户的可执行文件搜索路径
– LANG:程序应该使用的默认语言
– PS1:行提示符
history
• 在bash中输入history指令可以查询用户的过往操作。
• 内存中记录的过往指令数根据环境变量中HISTSIZE而定。
• history表存储在内存中,在用户logout时会记录入用户主目录下的.bash_history文件中。在下次login时载入。
• .bash_history中的指令数根据环境变量中的HISTFILESIZE而定。
调用过往指令
• 使用! 来调用过往指令:
– !!:重复执行上一条指令
– !a:重复执行上一条以a为首的指令
– !number:重复执行上一条在history表中记录号码为number的指令
– !-number:重复执行前第number条指令
• 可以用<ctrl+r>来在history表中查询某条过往指令
alias
• 在shell下键入alias可以查询当前alias列表。
• 用户可以alias来为一条命令取一个简单的别名
• 用户也可以用unalias来取消一条别名记录。
• alias记录在shell中总是先行。
命令行表达式
• 命令行输出——“ ”
– 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,则转义。
• 命令行输出——‘ ’
– 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,不转义。
• 执行引用符——` `
– 引用命令的执行结果
命令行表达式(二)
• 数学运算——$[ ]
– 在中括号内的表达式会被数学计算
• 逸脱符——\
– 用于取消命令行中字符的特殊含义
– 用于表示一行未结束
命令行表达式(三)
• 命令行结束符——;
– 用于在一行内分隔两个独立命令,表示一行已结束,作用相当于回车键
pwd ; ls –l
• 子shell激活——()
– 在小括号内的命令行表示激活一个子shell后在子shell中运行
逻辑运算符
• shell命令行支持在同一行的两条命令中插入&&(逻辑与)与 ||(逻辑或)
– &&:当前一条指令执行成功时再执行后一条指令
– ||:当前一条指令执行失败时再执行后一条指令
登录shell
• 默认情况下,在shell下改变变量、umask、alias,只在此次登录中有效。一旦logout后再login,则设定恢复初始值。
• 一个通过登录而得到的shell,一般是用户的初始shell。
• 在登录shell下激活的shell采用登录shell的环境设定
• 登录shell从配置文件中读取其环境设定
定制登录shell
• bash 在用户登录时从四个文件中读取环境设定:
– 全局设置文件:
/etc/profile
/etc/bashrc
– 用户设置文件:
~/.bashrc
~/.bash_profile
其他shell设定文件
• ~/.bash_logout:在用户logout的时候自动执行。
• ~/.bash_history:用户login时自动读取其内容并加载到内存history记录中,logout时将内存history记录写入。
• /etc/profile.d/*.sh:在/etc/profile中被执行,其中的环境设定,也会被全局引用
常用快捷键
• Ctrl + d:输入已结束。在shell下相当于一个exit
• Ctrl + c:键盘中断请求。
• Ctrl +s & Ctrl + q:暂停/恢复屏幕输出
• Ctrl + l:清屏,相当于clear。
• Tab:自动补完命令行与文件名
– Tab键 双击可以列出所有可能匹配的选择
第八单元
X window
X window 系统
• 支持在Linux上运行图形界面
• 创立于1986年,至今仍在被使用
• 客户端/服务器端模型
• XFree86 – 自由、开放源代码的执行X
GNOME
• 三个主要构件
– 稳定,易于使用的桌面环境
– 为开发工具提供的完整工具组与库
– GNOME office的应用工具
• 使用GTK+来设置桌面装饰
KDE
• KDE是K Desktop Environment的缩写
• 稳定的桌面环境
• Koffice应用工具
• 使用QT来设置桌面装饰
Sawfish
• GNOME的默认窗口管理工具
• 可主题化
– http://sawfish.themes.org
• 非常灵活且易于定制
– sawfish-ui
• 同样也是GNOME配置工具的一部分
其他X环境
• 无GNOME或KDE的X11
– 一个可以为低性能硬件考虑的解决方案
• WindowMaker
– 以NeXTSTEP GUI为范本的窗口管理器
• fvwm
– 成熟、稳定的窗口管理器,在许多版本的Linux中采用过
• twm
– 一个古旧的X窗口管理器
切换桌面
• 可以在桌面环境中使用switchdesk切换桌面
– 可以选择使用GNOME、KDE或其他窗口管理器
• 建立~/.Xclients、~/.Xclients_defaults或 其他主机配置文件,并在其中指定桌面:
– GNOME (exec gnome-session)
– KDE (exec startkde)
鼠标配置
• X为三键鼠标而设计
• 双键鼠标可以用双键齐按的方式来模拟中键
• 支持鼠标滚轴轮
– 并不是对所有的应用工具都生效
• 鼠标配置工具 —redhat-config-mouse
或mouseconfig
拷贝与粘贴
• 以鼠标左键来选择文本(高亮化)
• 用鼠标中键来粘贴
– 在双键鼠标中可以双键齐按来模拟中键
启动XFree86
• 设定runlevel为5自动激活图形登录窗口进入X
• 用gdm、kdm、xdm开启图形登录窗口进入X
• 用startx在字符界面下进入X
GUI 终端
• xterm
– XFree86的一个组件(不支持中文)
• gnome-terminal
– 标准GNOME终端
• konsole
– 标准KDE终端
nautilus
• GNOME文件管理器
• 从面板上可以点选“start here”来开启nautilus
• 支持http及ftp连接
• 支持text、html、man、info、mp3等文件句柄的嵌入
文书编辑器
• gvim
– GUI下的vim
• kwrite
– 默认 的KDE文本编辑器
• xemacs
– x下的emacs编辑器
• gedit
– 简单 的GNOME文本编辑器
图片浏览器
• gimp
– 强大的GNU图片处理程序
• display
– 图片阅览器
• convert
– 图形格式转换工具
• gqview
– 图片目录册
• ee
– 高性能图片浏览器
声音工具
• xmms
– Linux上的winamp
• gmix
– GNOME标准混声器
• gtcd
– GNOME下的CD播放器
网络应用工具
• gftp
– FTP客户端
• xchat
– IRC客户端
• evolution
– 邮件客户端
• mozilla
– 网页浏览器
Office组件
• Open Office
– 源代码开放的staroffice组
– oowriter ,ooimpress,oodraw,oomath,oocalc
• koffice
– 完整 的KDE下的office组件
– kword,kspread,kpresenter,kontour,kchart
X中有用的快捷键
• Ctrl+Alt+Backspace 退出X
• Ctrl+Alt+Fn 切换到虚拟控制台n
• Alt+Tab 改变窗口
配置X 环境
redhat-config-xfree86
• Red Hat 开发的X配置工具
• 需要root的权限
• 显卡的选择
• 显示器的选择
• 分辨率的选择
• 色彩的选择
第九单元
系统监视
了解系统状况
• unam e:显示系统信息
• hostname:显示主机名
• last:列出最近的用户登录
• lastlog:列出每一个用户的最近登录情况
• free:显示内存使用状况
• top:系统监视器
进程
• 系统通过进程来完成工作
• 每一个进程都有一个独立的进程号,系统通过调用进程号来调度操控进程
• 系统的原始进程是init
– init的PID总是1
• 一个进程可以产生另一个进程,除了init以外,所有的进程都有父进程
查询进程
• 查询进程的指令:
– ps [option]
• pstree可以用来以树状的方式表现进程的父子关系
• top是一个常用的系统监视工具。
控制进程
• kill:
– 语法 :kill [-signal] PID
向进程传送一个特定的讯号
– 默认为15(终结)
– kill -l: 列出所有可以由kill传递 的讯号
• killall
进程的优先级
• 进程的优先级,用nice值来表示
• nice:以一个不同的nice值来运行指令
– nice -n num command
• renice: 改变一个运行进程 的nice值
– renice -n pid
前台和后台
• 默认情况下,一个命令执行后,此指令将独占shell,并拒绝其他输入。我们称之为前台进程。反之,则称为后台进程。
• 对每一个控制台,都允许多个后台进程。
• 对前台/后台进程的控制与调度,被称为任务控制。
将进程丢入后台
• command &:将一个进程直接丢入后台运行
– nohup command &:将一个进程直接丢入后台运行,而且在该控制台退出后,进程仍不挂断
• ctrl + Z:将一个正在运行的前台进程暂停,并丢入后台
工作
• jobs:列出系统当前的后台进程
• fg:将后台进程拉回前台
• bg:激活后台暂停的进程
/proc目录
• /proc目录是一个虚拟的文件系统,包含了来自正在运行着的核心的信息
• 用户可以通过cat /proc/下的文件,来获得系统的信息
• 这些信息包括系统硬件、网络设置、内存使用,及其他一些东西
• /proc/sys目录下的文件,允许系统管理员更动,这些变动会直接影响当前核心
系统日志
• 系统日志记录着系统运行中的记录信息
• 在服务或系统发生故障的时候,通过查询系统日志,可以帮助我们诊断。
• 系统日志可以预警安全问题
• 系统日志一般都存放在/var/log目录下
常用的系统日志
• /var/log/dmesg
– 核心启动日志
• /var/log/messages
– 系统报错日志
• /var/log/maillog
– 邮件系统日志
常用的系统日志(二)
• /var/log/xferlog
– FTP服务用日志
• /var/log/secure
– 安全信息
– 系统登录与网络连接的信息
• /var/log/wtmp
– 登录记录
第十单元
Shell Scripts
Shell 脚本
• Shell Scripts是一个包含shell指令的文本文件。
• Shell脚本支持变量与简单的语法来完成批量工作。
• Shell脚本支持交互的方式,在执行时从标准输入读取数据。
• 有大量的系统工作都是通过Shell脚本的方式来完成,例如系统开机,服务控制。
编辑shell脚本
• 我们可以使用各种编辑工具来编辑shell script。
• 在脚本中,#开头表示该行被注释。
• 脚本中可以采用shell下能使用的所用命令、变量、正则表达式
变量赋值与继承
• 在shell与shell脚本中,我们允许自己定义变量并为他们赋值。
– 语法:变量名=值
• 默认情况下,变量值不会被继承 入子shell
• 用export将变量变成环境变量
– export 变量名
• 用unset取消变量定义。
脚本的数据读取与写出
• 使用read将数据读入
read username
– 从标准输入读取数据 来为username这个变量赋值
• 使用echo完成简单地输出
echo “hello world”
• 也可以使用printf来产生各种格式的输出
运行shell脚本
• 有三种执行shell脚本的方式
– sh /路径/脚本名
– /路径/脚本名
– . /路径/脚本名
if
• 条件判断控制语句:
if 条件
then 动作
elif 条件
then 动作
else
动作
fi
case
• 条件判断控制语句:
case 表达式 in
匹配值1)
动作;;
匹配值2)
动作;;
* )
动作;;
esac
select
• 循环控制语句
select 变量 in 数组
do
动作
done
for
• 循环控制语句
for 变量 in 数组
do
动作
done
while
• 循环控制语句
while 条件
do
动作
done
until
• 循环控制语句
until 条件
do
动作
done
Shell 脚本命令行参数
• 使用带命令行参数的Shell脚本
#command [option1] [option2] …..
• 引用Shell 脚本命令行参数
$0 命令名本身
$1 第一个参数(option1)
$2 第二个参数(option2)
… ….
第十一单元
用户管理
检查用户身份
• 用户可以使用下列指令了解用户身份
• who:查询当前在线的用户
• groups:查询用户所属的组
• id:显示当前用户信息
• finger:查询用户信息
添加用户
• 用指令添加命令
– useradd <username>
– passwd <password>
• 系统添加用户的标准步骤
• 编辑/etc/passwd与/etc/group
• 创建用户主目录
• 从/etc/skel拷贝文件与目录
• 让新用户获得其主目录与文件的拥有权限
• 给新用户一个密码
更改/删除用户
• 更改用户的资料可以通过:
– redhat-config-users或kusers之类的图形界面工具来完成
– 在字符界面下可以使用usermod指令来更改
• 系统管理者可以用userdel指令来删除已存在的用户
– 参数-r可以帮助系统将一个用户的目录等一并删除。
/etc/passwd文件
• passwd文件中记录的是个用户的登录信息。
• 每一行代表一个用户,用: 分隔成七项,即用户的基础登录信息。
• 添加或删除一个用户,最基础的操作,即在passwd文件中添加或删除相应的个人记录。
passwd文件详细
• login name:登录用名
• passwd:密码
• uid:用户身份编号
• gid:登录默认所在组编号
• full name:用户全名或注释
• home directory:用户主目录
• shell:用户默认使用shell
Home directory
• login.defs中的create home选项决定系统在建立用户的时候是否同时创建其主目录
• 系统在建立用户主目录时,会将/etc/skel下的内容复制到新目录下。
• 最后,系统会使该目录与其下的文件归属于新用户。
– chown –R user.group 目录名
/etc/shadow
• 目前,Red Hat Linux默认将用户密码存储在/etc/shadow文件中。
• passwd文件默认权限为644,shadow文件默认权限为400。
• shadow文件支持密码过期设定等功能
• shadow文件中每一行表示一个系统用户的密码记录,用: 号分隔。
• 用户可以通过authconfig来设定是否使用shadow文件及md5加密。
shadow文件详细
• shadow文件的每一行中的每一项具体来说:
– 登录用名
– 用户密码(一般经md5加密)
– 从1970年1月1日起到密码上一次被更改的时间
– 密码再过几天可以被变更(0表示随时可被变更)
– 密码再过几天必须被变更(99999表示永不过期)
– 密码过期前几天系统提醒用户(默认为一周)
– 密码过期几天后帐号会被取消
– 从1970年1月1日算起,多少天后帐号失效。
组管理
• 系统中组的信息,记录在/etc/group中
• 系统用户可以直接修改/etc/group文件达到更改组数据的目的,也可以使用以下指令:
– groupadd:添加一个组
– groupdel:删除一个已存在组
– groupmod:更改组的信息
• 用户可用newgrp指令改变当前所在组
组文件
• /etc/group中的每一行代表一个组,用: 隔开不同项
– group_name: 组名
– password: 组密码(一般不用)
– GID : 组身份编号
– user_list: 组成员列表
第十二单元
硬件配置与管理
设备文件
• Linux沿袭Unix的风格,将所有设备认成一个文件。
• 设备文件分为两种
– 块设备文件(b)
– 字符设备文件(c)
• 设备文件一般存放在/dev目录下
常用的块设备文件
• /dev/hd[a-t]:IDE设备
• /dev/sd[a-z]:SCSI设备
• /dev/fd[0-7]:标准软驱
• /dev/md[0-31]:软raid设备
• loop[0-15]:本地回访设备
• ram[0-19]:内存
常用的字符设备文件
• /dev/null:无限数据接收设备
• /dev/zero:无限零资源
• /dev/tty[0-31]:虚拟终端
• /dev/ttyS[0-9]:串口
• /dev/lp[0-3]:并口
• /dev/console:控制台
• /dev/fb[0-31]:framebuffer
常用的符号连接设备文件
• /dev/cdrom à/dev/hd[a-t],sd[a-z]
• /dev/modemà/dev/ttyS[0-9]
• /dev/pilotà/dev/ttyS[0-9]
设备文件的使用
• 用户可以通过操作设备文件来完成对设备的操作。
– echo hello > /dev/tty2
在 第二个tty终端上显示一个‘hello’
– cp /dev/fd0 /dev/fd1
将第一个软驱中的软盘拷入第二个软驱中的软盘
– dd if=/dev/hda of=/root/mbr bs=512 count=1
备份第一个硬盘上的mbr为/root目录下的mbr文件
dd
• dd指令是一个功能强大的copy命令
• 支持在拷贝文件的过程中转换文件格式
• 支持指定范围的复制
• 常用参数
– if=文件名:指定源文件
– of=文件名:指定目标文件
– bs=xxx: 指定块的大小
– count=n: 指定复制块的数量
mknod
• 系统用户可以用mknod指令来建立所需的设备文件
– 语法:mknod 文件名文件类型 主号从号
• 主号与从号可以在
/usr/src/linux-2.4/Documentation/devices.txt中找到
kudzu
• kudzu:Red Hat Linux上的硬件自检工具,它维护两份文件
– /etc/sysconfig/hwconf;使用硬件列表
– /etc/modules.conf:为硬件指定驱动
• kudzu以/usr/share/hwdata为数据库寻找硬件
• hwbrowser是图形界面下的硬件管理器
硬盘结构
• 对于每一个硬盘:
– 主引导记录/Master Boot Record/MBR
– 硬盘分区 表/Standard Partition Table/SPT
– 主分区/Primary Partition
– 扩展分区/Extended Partition
• 逻辑分区/Logical Partition
硬盘分区
• 一块硬盘只能有四个主分区
• 用户可以也只可以将一个主分区变成扩展分区
• 在扩展分区上,用户可以以链表方式建立逻辑分区
– Red Hat Linux对 一块IDE硬盘最多支持 到63个分区,SCSI硬盘支持到15个。
– fdisk工具最多只能辨认出16个分区。
为硬盘分区
• 硬盘分区工具
– disk druid:方便的分区工具,只能在安装时使用
– fdisk:运用广泛的字符界面下硬盘分区工具
• 分区改变后需重启系统才会生效。
第十三单元
文件系统
文件结构
• 为了能在设备上储存与读取文件,我们需要在分区上创立文件系统
• 文件系统记录目录与文件我们称之为文件结构
• 每一个文件系统在Linux里都被解释成由一个根目录为起点的目录树结构
• Linux将各个文件系统挂载(mount)在系统目录树中使用。
文件系统
• 对应不同的操作系统与设备,计算机里有许许多多种文件系统。
• 不同的文件系统存放、搜索文件的方式都有不同
• Linux支持多种文件系统的读写。
• Linux自身最主要使用的是ext2/ext3文件系统
ext2/ext3文件系统
• ext2/ext3文件系统支持rwx权限及文件属性(attributes)。
• ext2/ext3文件系统采用block+inode的方式存放文件
• ext2/ext3文件系统上有一块空间被称为超级块(superblock)用于存放文件系统的元数据,诸如卷标名、block数、inode数等等
• inode存放文件的元数据,包含文件权限、属性、更改时间等等数据。
文件属性
• 在ext2/3文件系统中,对每一个文件,还提供额外的属性支持
• 用户可以用lsattr来检查文件的属性
• 系统用户可以用chattr来改变文件的属性
– +号添加、-号去除
ext3文件系统
• ext3文件系统即一个添加了日志功能的ext2,可与ext2文件系统无缝兼容
• ext2文件系统可以通过增加日志的方式简单地升级成为ext3文件系统
• ext3文件系统支持三种日志模式
– 规则(默认,仅记录元数据)
– 日志化(将数据象元数据一样记录入日志)
– 写回(只在fsck时发生)
其他常见的文件系统
• minix:古老的文件系统
• msdos/fat:microsoft早年的文件系统
• vfat:win95与win98采用的文件系统
• ntfs:win2000使用的文件系统
• iso9660:光盘使用的文件系统
• ReiserFS/JFS:仍然在完善的带日志文件系统
创建文件系统
• 如果我们需要使用一个分区用于存储文件,则我们要在这个分区上建立文件系统
• 常用的创建文件系统的工具:
– mkfs
可以用于创建各种文件系统 ,由-t参数指定
– mke2fs
创建ext2/3文件系统,支持指定block大小等功能
使用文件系统
• 为了使用一个文件系统,往其中存读文件,用户需要先挂载该文件系统。
• 挂载文件系统的指令是mount。
• 语法:
mount -t 文件系统类型[其他参数] 设备挂载点
mount参数
• -t 文件系统类型:用于指定挂载文件系统的类型,一般这个参数是必须的。
• -o 参数:补充追加的参数
• ext2文件系统默认采用的参数:rw、suid、dev、exec、auto、nouser、async
/etc/fstab
• 配置文件系统挂载信息
• mount文件系统时若给出的参数不全,系统会从/etc/fstab中读取参数补完
• 系统启动会参考/etc/fstab中的配置项自动加载文件系统
• 也被fsck、dump、quotaon、swapon等程序使用
当前挂载系统
• 用户可以通过直接键入mount后回车来检查当前挂载中的文件系统
• 用户也可以通过查看/etc/mtab文件来查看当前挂载中的文件系统。
卷标
• 由于设备文件名可能在硬盘结构发生变化时更动,因此Red Hat Linux对ext2文件系统使用卷标来挂载与卸载。
• 卷标记录在ext2/ext3文件系统的超级块中
• 用户可以用e2label指令来查询与更改ext2文件系统的卷标
卸载文件系统
• 当一个文件系统使用完毕,用户应当卸载该文件系统。
• umount指令用于卸载文件系统
• 语法:
umount [参数] 设备/挂载点
• 一个正在使用中的文件系统不能被卸载
文件系统维护
• fsck/filesystem check:用于检查与修复文件系统
– e2fsck:检查与修复ext2文件系统
• 系统在启动时自动会被检查
• tune2fs:更改ext2文件系统属性
• resize2fs:更改ext2文件系统的大小
• parted:更改多种文件系统大小
自动挂载
• 系统通过autofs服务自动挂载文件系统
– 需要后台的automount进程
– autofs服务的开闭由/etc/init.d/autofs脚本控制
• 主要应用于软驱与光驱等场合
• 如果该设备一段时间没有被使用,autofs会自动卸载
磁盘限额
• Linux内核支持基于文件系统的磁盘限额
• 每一个组或用户,可以单独设置其磁盘限额
• 磁盘限额包括对block的限制与对inode的限制,每一种限制又可以分为软限制与硬限制
• 软限制被突破后,经过一段时间(grace time),会自动变成硬限制
quota的配置与使用
• 在/etc/fstab中需要设置磁盘限额的文件系统所在行的第四项(mount参数)中添加usrquota、grpquota参数
• 使用mount –o remount 需要限制的文件系统,将mount参数带入/etc/mtab中
quota的配置与使用(二)
3. 执行quotacheck –auvg,在文件系统的根目录下建立aquota.user及aquota.group两文件
4. 使用edquota 用户名与edquota –g 组名编辑用户与组的磁盘限额
5. 用quotaon –auvg打开quota功能
第十四单元
计划任务
Linux的计划任务
• Linux系统支持一些能够自动执行任务的服务我们称其为计划任务:
– at:指定一个时间执行一个任务
– cron:根据一个时间表自动执行任务
– anacron:在一个指定时间间隔错过后自动执行任务
at
• at服务:安排一个任务在未来执行
• at服务需要系统后台有一个atd进程
• 常用指令
– at: 安排延时任务
– atq: 查询当前的等待任务
– atrm: 删除等待任务
– batch: 以一个低优先级延时执行任务
at的使用控制
• at的使用控制文件
– /etc/at.allow
– /etc/at.deny
• 基于用户的使用控制
cron
• 允许系统根据时间表自动完成任务
• 服务需要后台运行的系统进程crond
• 开关cron服务
– 系统管理员可以 用service crond start|stop来开关cron服务
– 用chkconfig或ntsysv选择cron服务的默认开启关闭。
定制个人计划任务
• 用户级别
– crontab –e:编辑当前的守护进程表
– crontab –l:列出当前的守护进程表
– crontab –r:删除当前的守护进程表
– crontab –u user:以某一个用户的身份
• /var/spool/cron:存放用户守护进程表
crontab格式
* * * * * echo “hello” | wall
分钟/小时/日/月/星期 命令
#每分钟向所有在线用户的屏幕上发送‘hello’
定制系统计划任务
• 系统级别
– 采用/etc/crontab作为 其crond的运行配置文件
– 与个人 的crontab文件格式有所不同
– 默认情况下,系统会自动执行以下目录内的脚本
• /etc/cron.hourly: 每小时的零一分
• /etc/cron.daily: 每天四点零二分
• /etc/cron.weekly: 每周日四点二十二分
• /etc/cron.monthly: 每月一日四点四十二分
– /etc/cron.d/目录下存放着附加的系统守护文件
cron的使用限制
• 默认情况下,所有用户都可以定制自己的守护任务
• 系统的守护任务只能由root来编辑
• 限制/允许用户使用cron
– /etc/cron.allow
– /etc/cron.deny
anacron
• cron服务的扩展
• 防止非24小时开机的计算机遗漏守护任务
• 每次计算机通电时自动检测
• 配置文件:/etc/anacrontab
– 范例:
7 80 cron.weekly run-parts /etc/cron.weekly
tmpwatch
• 为指定目录清理古旧文件
• 有效应用于防止/tmp目录被填满
• tmpwatch每天在/etc/cron.daily中运行
• 语法:
/usr/bin/tmpwatch 小时数指定目录
第十五单元
RPM包及其管理
什么是RPM
• RPM:RedHat Package Manager
RPM的安装和卸除
• 安装与卸除
– 安装:rpm -i
– 升级:rpm -U
– 更新:rpm -F
– 卸除:rpm -e
• 可能会用到的补充参数
– 输出用:-v,-h
– 预设条件:--nodeps,--force
– 重定位:--root
RPM包的查询
• RPM包的查询:
– rpm -q: 查询某一个RPM包是否已安装
– rpm -qi: 查询某一个RPM包的详细信息
– rpm -ql: 列出某RPM包中所包含的文件
– rpm -qf: 查询某文件属于哪一个RPM包
– rpm -qa: 列出当前系统所有已安装的包
– rpm -qp: 指定一个等待安装 的RPM包
RPM包的校验及检查
• RPM包的校验
– rpm -V:校验某个RPM包
– rpm -Va:校验所有已安装的RPM包
• RPM包的 检查
– rpm -K: 检查RPM包的GPG签名
第十六单元
打印与电子邮件
在Linux中进行打印
• 打印机可以是本地打印机也可以是网络打印机
• 打印请求首先被送入打印队列
• 排队的请求任务按照先来先服务的原则送到打印机
• 在打印前或打印中可以取消任务
打印命令
• lpr - 提交一个任务到打印队列以供打印
可接受的格式:ASCII,PostScript
• lpq - 查看打印队列的内容
• lprm - 从打印队列中删除一个任务
• System V 的打印命令也在支持之列(例如:lp,lpstat 和cancel )
从应用程序中打印
• 大部分的应用程序输出PostScript格式
• 从应用程序输出仍然使用LPRng打印系统
任务被送到打印队列
lpr的参数可以被使用
打印工具
• enscript - 把文本文件转化成PostScript文件
• a2ps - 把文本文件转化成PostScript文件
• gv - PostScript 文件浏览器
• ps2pdf - PostScript到PDF转换器
• pdf2ps - PDF到PostScript转换器
• mpage - 在一张纸上打印多页
邮件
• 一台Linux主机可以是一个邮件服务器或邮件客户端
• 有很多可用的邮件客户端
文本模式
pine,mutt
图形模式
mozilla Mail,evolution,kmail,balsa
命令行模式
mail
邮件客户程序
• pine - 菜单驱动接口,简便易用
• mutt - 可详细配置的邮件客户程序
• evolution - 邮件,任务管理器,联系管理器
• mozilla mail - 图形,高级过滤,支持多个邮件帐号
• kmail - 图形,简单易用,KDE的一部分
POP和IMAP
• POP - Post Office Protocol
允许远端收取和删除邮件
在客户端的邮件必须是压缩的
IMAP - Internet Message Access Protocol
允许远端邮件收取和基于服务器的邮件目录管理
邮件过滤
• mozilla mail拥有很灵活的过滤功能
• pine和mutt的过滤功能由procmail来实现
fetchmail
• 收取远端的邮件然后送到本地的邮件系统
• 支持许多协议
POP
IMAP
SMTP
第十七单元
sed
• Stream EDitor (流编辑器)
用来编辑文本流
只读取文件一次
通常用在命令的输出
占用的系统资源很少
sed 地址
• 告诉sed在哪里执行编辑
没有地址- 编辑整个文件
一个地址- 编辑所有匹配的
两个地址- 编辑所有在之间的
sed脚本
• 编辑内容可以写成脚本
• 脚本是包含sed命令的文本文件
• 有很多的命令和选项!
一个sed例子
• 把文件aboutsed.txt中所有的单词"slow"换成"fast"
• $ sed s/slow/fast/g aboutsed.txt > output.txt
awk
• 编辑文本的程序语言
• 在一个文件中搜索匹配一个模式或多个模式的行
• 在匹配的行上执行特殊的操作
awk程序
• 规则通常由新行来分离
• 规则包含一个模式和在{ }内包含的操作
pattern {action}
运行awk程序
• 简单的程序可以在命令行下直接输入:
$awk 'program' input file
• 更长的程序保存在文件中
$awk -f program_file input_file
一个简单的awk例子
• 用awk搜索文件/etc/passwd中包含"bash"字符串的行
$ awk '/bash/ { print }' /etc/passwd
一个更加复杂的awk例子
• 统计/project目录下所有属于用户joshua的文件的总大小.
#ls -l /project | awk '$3 == "joshua" { \
sum += $5 } END { print sum }'
何时使用awk
• 从大量的原始数据中产生报告
• 从其他程序的输出中总结信息
• 当你需要一个又小又快的文本处理程序的时候
到哪里学到更多
• sed和awk有详细的info页
$info sed
$info awk
其他语言
• Red Hat Linux支持的其他语言和程序库包括:
• Perl
• Java
• C和C++
• Tcl/Tk和Expect
• GTK+
• Qt
• php
分享到:
相关推荐
在IT领域,Linux、Unix、CentOS、Ubuntu和Red Hat是常见的开源操作系统,它们都基于UNIX哲学构建。这些系统的核心特点之一就是强大的命令行界面,它提供了高效且灵活的交互方式。这篇文档“Linux常用命令大全/手册/...
它的主要分支包括Redhat Enterprise Linux (RHEL)、CentOS、红旗Linux、OpenSUSE、Debian和Ubuntu等。其中,RHEL是企业级的版本,具有高度的安全性和稳定性。在服务器领域,Linux和Unix(如AIX、Solaris、HP-UX)被...
RedHat系列的发行版包括RedHat Enterprise Linux(RHEL)、CentOS、Fedora Core等,其中RHEL是商业公司的付费版本,稳定性高,CentOS则是RHEL的免费社区克隆版本,稳定性同样很高,而Fedora Core则是稳定性较差的...
3、yum安装 (RedHat、CentOS) 4、apt-get安装 (debian,ubuntu) 以安装gcc为例,登陆https://gcc.gnu.org/,下载自己想要的版本的gcc安装包 上传gcc-4.1.2.tar.gz到Linux服务器任意目录,解压 解压目录执行...
例如,Ubuntu以其用户友好性著称,而CentOS则常被用于服务器环境,因为它的稳定性和与Redhat Enterprise Linux的兼容性。 总之,Linux不仅是一个操作系统,更是一个生态系统,它体现了开源软件的力量和潜力。无论是...
3. CentOS:CentOS是基于Redhat的Linux发行版,免费、稳定、高效,广泛应用于服务器领域。 4. SUSE:SUSE是德国的Linux发行版,具有高稳定性和安全性,广泛应用于服务器领域。 5. Fedora:Fedora是基于Redhat的Linux...
此外,还将介绍Linux远程终端工具和一系列必备的Linux命令,帮助用户更好地理解和使用Linux系统。" 【标签】: "Linux", "操作系统", "命令行" 【正文】: 1. **Linux操作系统** Linux是一套开源的类Unix操作系统...
这个命令适用于多种Linux发行版,包括Ubuntu、CentOS、RedHat以及Unix系统。理解并熟练使用`rmdir`命令可以帮助用户更有效地管理文件系统结构。 1. **命令格式**: 使用`rmdir`命令的基本格式是:`rmdir [选项]......
- **Redhat 系列**:包括Redhat、SUSE、CentOS、Fedora等。 - **Debian 系列**:如Debian、Ubuntu等。 - **应用领域**: - **企业服务器**:广泛用于搭建稳定的服务器环境。 - **嵌入式系统**:适用于移动设备、...
Redhat则涵盖RHEL-RedHat Enterprise Linux、CentOS-Community ENTerprise和Fedora Core。这些发行版各有特点,满足不同用户需求。 【Linux下载】 CentOS(Community ENTerprise Operating System)作为Redhat的一...
首先确保安装了 Pip,以 root 身份运行任一命令(或使用 sudo): CentOS/Redhat Linux/Oracle Enterprise Linux/Fedora: yum install python-pip Ubuntu/Debian: apt-get install python-pip安装 Pip 后,下一步是...
Linux的发行版本繁多,包括Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS等,这些发行版在内核版本一致的基础上,提供了不同的用户界面和附加软件包,以满足不同用户的需求。...
目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Deepin【中国版】、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS等。 在安装Linux系统前,我们需要选择一个虚拟机软件来安装这个系统。也就是说,在...
常见的Linux发行版有ubuntu、debian、centos、redhat等。centos较稳定一些,适合搭linux服务器,ubuntu桌面更友好,软件更新会更快。 Linux应用领域 Linux操作系统的应用领域包括服务器领域、嵌入式领域、桌面领域...
Linux系统发展至今,有许多流行的发行版,例如RedHat、Mandrake、Slackware、SuSE、Debian、CentOS和Ubuntu。这些发行版提供了不同的功能和特性,以满足不同用户群体的需求。 RedHat Linux操作系统提供了一个真正多...