文章目录
ch1 Linux 操作系统
操作系统分类
- 应用领域:桌面、服务器、嵌入式操作系统
- 类unix操作系统:Mac OS X
- Linux(Debian,Ubuntu,Red Hat,CentoS)
- Windows操作系统
- 服务器:如Web服务器、应用服务器和数据库服务器等
- Unix系列:Sunsolaris、BM-ALX、HP-UX、FREEBSD、OS X Server等
- Linux系列:Red Hat Linux、Centos、Debian、Ubuntu Server等
- Windows系列:Windows Server 2008 R2、Windows server2012等
- 嵌入式操作系统
- Linux和C语言
Linux主要特性:
- 系统稳定
- 免费
- 安全性高
- 多任务、多用户
- 不耗费资源
- 适合嵌入式系统
Linux内核主要功能:
- 进程调度
- 存储管理
- 虚拟文件系统
- 网路接口
- 进程通讯
Linux版本号:
- 版本号格式:a.bb.cc
- a是主版本号,0-9间一个数字,目前(2020年7月)是4
- bb为次版本号:00-99之间
- cc为修订版本号
- Linux内核有两种:稳定版和开发版
- bb:偶数,稳定版
- bb:奇数,测试版
Linux发行版主要分支:
- Redhat:Red Hat Enterprise Linux,简称RHEL
- Slackware:SUSE Linux Enterprise,简称SUSE
- Debian:Ubuntu Server,简称 Ubuntu
ch2 初识Shell
Shell概述
- Shell是介于使用者和操作系统核心程序( Kernel)间的一个接口,Shell是 Linux中的命令行
- Windows的shell是cmd.exe
- Linux下的Shell有Bourne Shell,C Shell和Korn Shell
- Bash是Bourne Again Shel的缩写,包括了早期的Bourne Shell1Korn Shell的所有功能。并且加入了 C Shelle的某些功能
- Shell使用方式
- 终端窗口
- 虚拟终端
- 使用
su
命令可以切换用户su [-] [用户名]
su
等价于su root
- 查看系统内核发行号
uname -r
- 查看系统内部版本号
- Ubuntu:
cat etc\issue
- Ubuntu:
- 帮助手册
man [命令]
文件及目录管理命令
- 拷贝文件:cp
- 命令格式:
cp[-f i r]
源文件目标文件
-f
表示直接覆盖
-i
表示要征求用户的意见
用户同意按下y才覆盖
按下n不覆盖
- 命令格式:
- 移动文件:mv
和cp类似 - 刪除文件:rm
- 列出文件和目录:Is
- 创建日录: mkdir
- 刪除日录: rmdir
- 查看当前工作目录:pwd
- 切換日录:cd
- 查找文件和日录:find、 locate
- 查看文件类型:file
Linux运行级别
- Linux定义了7种运行级别,代号从0-6,这些运行级別定文在/ etc/inittab文件中
- halt 关机、代表系统停机
- Single user mode 单用户模式,只支持root账户
- Multiuser,without NFS 不支持网络文件系统的多用户模式
- Full Multiuser mode 完全多用户模式
- unused 系统未使用 用作保留
- X11 图形界面的多用户模式
- Reboot 重启
- 查看运行级别:
runlevel
- 查看运行级别:
ch3 vim编辑器
- vi:Visual Editorb的缩写,命令行界面下的文本编辑器,Umx操作系统中默认的编辑器等
- vim:Vi Improvede的缩写,Vi的升级版,用彩色显示文本,可以作为程序编辑器
Vim的3种模式
- 一般模式(指令模式):
- 使用命令 vim filename进入一般模式:
- 移动光标
- 刪除字符或行
- 复制和粘贴
- 查找和替換
- 编辑模式
- 从一般模式切換到编辑模式:i,1.a,A,O,O,r,R中的任意一个键
- 当进入编辑模式时:屏幕的最后一行出现 INSERT”或"REPLACE"的字样,
- 退出按esc
- 命令行模式
- 从一般模式进入命令行模式 :
- 保存文件
- 退出vim
- 读入外部文件
- 显示行号等
vim常见命令
- 百度即可
ch4 用户管理
- Linux系统中毎个登录的成员都要有一个用户账号
- 用户登录时必须输入用户名和口令,只有该用户名口令验证正确时,用户オ能被允许进入 Linux系统。
- 账号实质上就是一个用户在系统上的标识,系统依据账户来区分毎个用户的文件、进程、任务,给每个用户提供特定的工作环境
Linux用户分三类:超级用户、系统用户普通用户
- 超级用户(root用户):每个 Linux系统都必须有,并且只有一个,它拥有最高的权限,可以刪除、终止任何程序
- 系统用户:与系统运行和系统提供的服务密切相关的用户,通常在安装相关的软件包时自动创建并保持认状态。系统用户不能登录计算机。
- 普通用户:在系统安装后由超级用户创建的,通常完成指定权限的操作,而且也只能操作白己所拥有权限的文件和目录
组管理:组是具有相同特性的用户集,设置的目的主要是便于权限的统一组织和分配
组按性质划分为:系统组和私有组账户
- 系统组:安装 Linux及部分服务性程序时系统白动设置的组
- 私有组:系统安装完成后,由超级用户新建的组
组管理文件
- 组账户文件:/etc/ group
- 组影子文件:/etc/ shadow
ch5 系统管理
X-window的特点
- X- Server(X服务器):处理来自X-客户机的请求
- X- client(X客户机):X-客户机不负责任何图形相关的具体操作,只和X-服务器交互,由X-服务器负责完成其图形显示任务;X-客户机可以运行在本地机器,也可以运行在网络上的不同主机。任何一个X应用程序(文字处理、数据库应用、网络软件等),包括窗口管理器在内都是X-客户机
- X- Protocol(X通信协协议):X-协议是X-服务器与X-客户机之间的通信协议,X-协议允许X-服务器与X-客户机通过网络来交換信息,这意味着X- server与X- Client不限制都得在同一台机器上执行,可在不同的计算机上同时执行(网各透明性),我们不妨将X协议在X- Window中所扮演的角色,想象为HTTP协议在WebServer与WebClient浏览器之间所扮演的沟通角色一样
进程管理
- 程序:程序( program)通常为 binary program存放在计箄机的硬盘、光盘U盘等存储媒体中。以实体文件的形态存在。
- 进程:进程( process)是当程序被触发后,执行者的权限与属性、程序的代码与所需数据等都会被加载到向存中。操作系统给予这个内存向的单元一个标识符( Process ID。简称PID)
程序写的区别 - 程序是指令的集合,是进程运行的静态描述文本,进程则是程序在系统上顺序执行时的动态活动
进程分类:
- 交互进程:是由shel启动的进程。它既可以在前台运行。也可以在后台运行交互进程在执行过程中。要求与用户进行交互操作
- 批处理进程:与 windows原来的批处理很类似,是一个进程序列。该进程负责按照顺序启动其它进程。
- 守护进程:是指执行特定功能或者执行系统相关任务的后台进程
进程的属性
- 进程号(PID)
- 父进程号(PPID)
- 进程名
- 用户
- cpu%
- 向存%
- 优先级
- 开启时间等
软件包管理:
centos主要是rpm和yum
主机名:hostname
\etc\hostname
ping:检测到特定主机的网络连通性
ch6 Linux文件系统
使用find命令查找指定文件
find [目录] [-tyoe 类型] [-ls]
使用touch命令创建文件
使用cd命令进入绝对路径和相对路径./
相对路径,../
绝对路径
文件和目录的管理权限
ls -l
查看文件权限
chowm
:改变文件的所有权。可改变文件的所有者和文件所在的组
chgrrp
:改变文件的所在的组
文件的归档与压缩
-
gzip
压缩为*.gz
的文件,zcat
打开文件 -
bzip
压缩为*.bz2
d的文件,bzcat
打开文件 -
tar
进行归档
ch7 Linux中的硬盘管理
fdisk
ch8 Shell编程
Shell独立于内核,它是连接内核和应用程序的桥梁。并由输入设备读取命令,再将其转为计算机可以理解的机械码。 Linux内核才能执行该命令,Shel是一种应用程序。当用户登录inux系统时, Shell就会被调入内存去执行
- 以
.sh
为后缀,第一行要以#!/bin/bash
开兴,它代表的意思是。该文件使用的是 bashi语法 #
为注释- 示例:
#!/bin/bash
#this is my fisrt shell script.
date
echo 'hello world'
- 输出命令:
echo
- 输入命令:
read
调试shell程序
-n
调试