概述
1 操作系统定义:操作系统是一个用来协调、管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用程序之间。
2 操作系统内核:一个管理和控制程序,负责管理计算机的所有物理资源,其中包括:文件系统、内存管理、设备管理和进程管理。
3 操作系统安装:
安装Linux操作系统时对内存的最低要求为:512M。
安装过程中的各选项的含义:
a) install or upgrade an existing system:安装或升级现有的系统
b) install system witn basic video driver:安装系统和基本的视频驱动程序
c) rescue installed system:救援安装系统
d) boot from local drive:从本地硬盘启动
掌握默认的管理员为root。
自定义布局:boot引导分区 500M;/根分区;swap交换分区 2倍内存。
4 操作系统基本操作:
关闭Linux系统的命令:init 0。
掌握普通用户登录后系统的提示符:$
掌握root用户登录后系统的提示符:#
掌握退出命令:exit
5 操作系统终端命令:
命令 + 选项 + 参数:ls -l / or ll
who命令:显示当前登录的所有用户,以及当前的日期和时间。
date命令:显示系统当前的日期和时间。eg.修改时间: date '月日时分年'
(hwclock –s 同步硬件 –w 同步系统)
cal命令:显示某月的日历。
clear命令:清除屏幕 或者 ctrl+l。
su命令:从当前的用户切换到另一个指定的其他用户。eg.切到root用户的命令:su – root
passwd命令:修改用户的密码,默认为root。eg.修改dog用户密码的命令:passwd dog
useradd命令:新增用户。
man命令:获取某个Linux命令的使用说明。eg.查看su命令的使用说明的命令为:man su 使用q退出
命令名 --help:获取帮助。
pwd命令:打印当前目录。
6 操作系统目录结构:
bin目录:用来存放常用的可执行文件。
sbin目录:用来存放系统的可执行文件。
家目录:用来存放用户自己的文件或目录,其中,超级用户root的家目录是/root,而普通用户的家目录被存放在/home目录下,并使用用户名作为最后一级目录。eg.nova用户的家目录为/home/nova
dev目录:设备文件目录。
etc目录:配置文件目录。
挂载点(目录):通常可移除式硬件会被挂载在/media或/mnt目录之下。
其他目录:opt 程序文件目录 / tmp 临时文件目录。
文件和目录
7 cd命令:
cd .. :返回上级目录。
cd ~ :进入当前用户家目录。
cd – :返回上一次目录。
cd :进入当前用户的家目录。
8 ls命令:
-> ls 默认列出当前目录下的所有文件。
-> ls -l(long)以长格式查看文件。
-> ls -a:显示所有文件,包括隐藏文件,默认点开头的文件是隐藏文件。
-> ls -r:倒排序。
-> ls -t:按修改时间排序,一般rt结合,查看最近被修改的文件。
-> ls -l --time-style=long-iso /data:规范时间显示(2018-04-01)。
9 cp命令:
-> cp /data/aa.txt /test/ :将/data/aa.txt文件拷贝到/test/目录下。
-> cp –r /data /test/ :将/data目录递归拷贝到/test/下面。
-> cp –a /data /test/ :-a参数相当于-pdr。
-p:连同档案属性一块拷贝,而非默认属性。
-d::若原文件为链接文件,则复制链接文件属性而非档案本身。
10 mv命令:
-> mv dir1 new_dir 重命名/移动 一个目录 。
11 mkdir命令:
-> mkdir /data 在根目录下创建data目录。
-> mkdir -p /aa/bb/cc:递归创建目录。
12 touch命令:
-> touch /data.txt 直接在/目录下创建data.txt文件。
13 rm命令:
-> rm /test/aa.txt :删除/test/aa.txt文件。 不加参数会提示确认删除。
-> rm –f /test/aa.txt :强制删除,不会出提示。
-> rm –r /test :删除目录,目录下若有文件,则每个文件都会提示,可以加f参数 rm -rf /20171231。
14 cat命令:
-> cat /data.txt 查看data.txt文件中的内容。
-> cat -n /data.txt:显示行号。
-> cat test{1,2}.txt >/tmp/aa.txt:将test1.txt和test2.txt文件内容合并到aa.txt里面。
-> cat -T test.txt:区分tab键和空格,tab键会被^I替代。
-> cat -E test.txt:会在行尾加$符号,空行也会有。
15 head命令:
-n<行数> 显示的行数。eg.显示文件的前n行:head -n 5 log2014.log
eg.输出文件除了最后n行的全部内容:head -n -6 log2014.log
-c<字节> 显示字节数。eg.显示文件前n个字节:head -c 20 log2014.log
eg.文件的除了最后n个字节以外的内容:head -c -32 log2014.log
16 tail命令:
-n<行数> 显示行数。eg.显示文件最后5行内容:tail -n 5 log2014.log
-f 循环读取。eg.循环查看文件内容:tail -f test.log
17 more命令:more命令,功能类似cat,cat命令是整个文件的内容从上到下显示在屏幕上。more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。
eg.显示文件中从第3行起的内容:more +3 log2012.log
eg.从文件中查找第一个出现”day3”字符串的行,并从该处前两行开始显示输出:more +/day3 log2012.log
eg.设定每屏显示行数:more -5 log2012.log
18 less命令:less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
eg.查看文件:less log2013.log
eg.ps查看进程信息并通过less分页显示:ps -ef |less
用户、群组和权限
19 用户及passwd文件:id+用户名
/etc/passwd文件的功能:存储所有用户的相关信息,该文件也被称为用户信息数据库(Database)。
/etc/passwd文件每个字段的具体含义:
a) 第1个字段(列)记录的是这个用户的名字(在创建用户时root用户起的)。
b) 第2个字段(列)如果是x,表示该用户登录Linux系统时必须使用密码;如果为空,则该用户在登录时无须提供密码。
c) 第3个字段(列)记录的是这个用户的uid。
d) 第4个字段(列)记录的是这个用户所属群组的gid。
e) 第5个字段(列)记录的是有关这个用户的注释信息(如全名或通信地址)。
f) 第6个字段(列)记录的是这个用户的家目录的路径。
g) 第7个字段(列)记录的是这个用户登录后,第一个要执行的进程。
20 shadow文件:
/etc/shadow文件的功能:存储所有用户的密码,每一个用户占用一行记录,该文件实际上就是存放用户密码的数据库(Database)。
/etc/shadow文件每个字段的具体含义:
a) 第1个字段(列)是用户名。
b) 第2个字段(列)是密码,这个密码是经过MD5加密算法加密过的密码。
21 群组及group文件:
/etc/group文件的功能:存放了Linux系统中所有群组的信息,它实际上就是一个存放群组信息的数据库(Database)。
/etc/group文件每个字段的具体含义:
a) 第1个字段是这个群组的名字。
b) 第2个字段中的x表示这个群组在登录Linux系统时必须使用密码。
c) 第3个字段记录的是这个群组的gid。
d) 第4个字段记录的是这个群组里还有哪些群组成员。
22 useradd命令:新增一个用户
a) –u:指定用户的UID
b) –g:指定用户所属的群组
c) –d:指定用户的家目录
d) –c:指定用户的备注信息
e) –s:指定用户所用的shell
23 usermod命令:修改用户账户
a) –u:修改用户的UID
b) –g:修改用户的GID
c) –G:将一个用户加入到指定的群组中
d) –d:修改用户的家目录
e) –c:修改用户的备注信息
f) –s:修改用户所用的shel
eg.将babydog4这个用户添加到babydog6这个群组中的命令:usermod –G babydog6 babydog4
24 锁定、解锁用户:
usermod –L命令:将用户的账号锁住。eg.将babydog6用户的账号锁住的命令:usermod –L babydog6
usermod –U命令:将用户的账号解锁。eg.将babydog6用户的账号解锁的命令:usermod –U babydog6
25 userdel命令:删除用户
–r:在删除用户的同时删除这个用户的家目录及其邮箱。
eg.删除babydog5用户不删除其家目录的命令:userdel babydog5
26 groupadd命令:创建一个新的群组账号
–g:指定群组的GID
eg.新增加一个名为boydogs的群组的命令:groupadd boydogs
27 groupmod命令:修改一个群组账号的信息
a) –g:修改群组的GID。eg.修改police群组的gid为521的命令:groupmod –g 521 police
b) –n:修改群组的名称。eg.将群组boydogs改名为daddogs的命令:groupmod –n daddogs boydogs
28 groupdel命令:删除一个群组账号
eg.删除daddogs群组的命令:groupdel daddogs
29 ls -l 查看文件权限:权限信息、硬链接数、属主、属组、文件大小、文件创建日期、文件名
ll -d 查看目录权限:
第一列权限信息:
a) 第1个字符为第1组,代表这是一个文件(-)或是一个目录(d),也可以是其他资源。
b) 第2、3、4个字符为第2组,定义了文件或目录的所有者(owner)所具有限的权,使用u代表所有者(owner)对文件的所有权限。
c) 第5、6、7个字符为第3组,定义了文件或目录的所有者所在的群组中其他(用户)所具有的权限,使用g代表这一组(group)权限。
d) 第8、9、10个字符为第4组,定义了既不是owner也不和owner在同一群组的其他用户对文件或目录所具有的权限。使用o代表这一组(other)权限。
使用如下4个字符来表示文件操作权限:
a) r:表示read权限,也就是可以阅读文件或者ls命令列出目录内容的权限。
b) w:表示write权限,也就是可以编辑文件或者在一个目录中创建和删除文件的权限。
c) x:表示execute权限,也就是可以执行程序或者使用cd命令切换到这个目录以及使用带有-l选项的ls命令列出这个目录中详细内容的权限等。
d) -:表示没有相应的权限(与所在位置的r、w或x相对应)。
30 chown修改文件权限。eg.修改文件file1的属主为root的命令为:chown root file1
chown 属主:属组 文件
chown :属组 文件
chown 属主 文件
-R:修改目录下所有文件
31 chgrp修改文件的属组。eg.修改文件file1的属组为wg的命令为:chgrp wg file1
32 chmod命令的功能:设定或更改文件或目录上的权限。只有属主才可以修改文件的权限。只写文件权限修改文件即覆盖原文件内容。只写目录权限不可以新建文件,必须加上可执行权限。
u:表示所有者(owner)的权限。
g:表示群组(group)的权限。
o:表示既不是owner也不与owner在同一个group的其他用户(other)的权限。
a:表示以上3组,也就是所有用户(all)的权限。
+:表示加入权限。
-:表示去掉权限。
=:表示设定权限。
r:表示read(读)权限。
w:表示write(写)权限。
X:表示execut(执行)权限。
eg.在dog_wolf文件上添加所有者和同组用户的可执行权限的命令:chmod ug+x dog_wolf
根目录没有可写权限只有可执行权限,但可以在根目录下的目录创建文件。
33 执行文件方法:
sh 文件路径
bash 文件路径
. 文件路径
./ 文件路径
34 使用数字表示法设定文件或目录上的权限
数字代表的资源权限状态:eg.664代表rw-rw-r--权限
4:表示具有读(read)权限。
2:表示具有写(write)权限。
1:表示具有执行(execute)权限。
0:表示没有相应的权限。
打包和压缩文件
35 >符号和>>符号
eg. cat /ect/passwd >new_pass.txt
eg. 回显内容:echo 'hello'
eg. 覆盖文件内容:echo 'hello' > new_pass.txt
eg. 追加文件内容:echo 'hello' >> new_pass.txt
36 归档文件和归档技术:
归档的目的就是方便备份、还原及文件的传输操作。
tar命令:将多个文件(也可能包括目录)放在一起存放到一个磁带或磁盘归档文件中。并且将来可以根据需要只还原归档文件中的某些指定的文件
c:创建一个新的tar文件。
t:列出tar文件中目录的内容。
x:从tar文件中抽取文件。
v:显示所打包的文件的详细信息,v是verbose的第1个字母。
z:使用gzip压缩算法来压缩打包后的文件。
j:使用bzip2压缩算法来压缩打包后的文件。
可选参数如下:
-C:切换到指定目录
-f:指定压缩文件
eg.使用tar命令将arch目录打包成一个名为arch.tar的归档文件的方法(要求显示所有打包的文件和目录):tar cvf arch.tar arch
eg.使用tar命令显示arch.tar这个归档文件(包)中的所有文件的方法:tar tf arch.tar
eg.使用tar命令恢复arch.tar中的全部内容的方法:tar xvf arch.tar -C 路径
eg.使用tar命令压缩arch.tar的归档文件和该目录下a.txt文件的方法:tar czvf arch.tar.gz /a.txt
压缩的定义:压缩就是将一个大的文件通过一些压缩算法变成一个小文件。
解压缩就是将一个通过一些压缩算法的文件恢复到压缩之前的样子。
gzip命令和gunzip命令:
eg.将文件file1压缩成.gz格式的压缩包应该使用的命令为:gzip file1 –C > /路径/name.gz
eg.将压缩文件file1.gz解压缩的命令为:gunzip file1.gz >
使用tar命令的同时进行压缩和解压缩:
eg.使用tar命令将arch目录打包而且同时使用gzip的技术压缩打包后文件的方法,包括目录下的文件(打包后的文件名为arch.tar.gz):tar cvfz arch.tar.gz arch
使用tar命令将arch目录下的文件打包而且同时使用gzip的技术压缩打包后文件的方法,(打包后的文件名为arch.tar.gz):tar cfz arch.tar.gz *
eg.使用tar命令将arch目录打包而且同时使用bzip2的技术压缩打包后文件的方法(打包后的文件名为arch.tar.bz2):tar cvfj arch.tar.bz2 arch
编辑文件
37 vim创建文件
进入文件进入命令行模式,输入a,i,o进入编辑模式,按ESC切回命令行模式,输入:进入扩展模式,按ESC切回命令行模式。
vi编辑器的3中基本模式:
a) 命令行模式:vi的默认模式。在这一模式中,所有的输入被解释成vi命令,可以执行修改、复制、移动、粘贴和删除正文等命令,也可以进行移动光标、搜索字符串和退出vi的操作等。
b) 编辑模式:在编辑模式中,可以往一个文件中输入正文。在这一模式下,输入的每一个字符都被vi编辑器解释为输入的正文。使用ESC键返回命令行模式。
c) 扩展模式:在一些UNIX系统上也叫最后一行模式。在这一模式下,可以使用一些高级编辑命令,如搜寻和替代字符串、存盘或退出vi编辑器等。要进入最后一行模式,需要在命令行模式中输入冒号(:),冒号这一操作将把光标移到屏幕的最后一行。
进入插入模式:
a:进入插入模式并在光标之后进行添加。
i:进入插入模式并在光标之前进行插入。
o:进入插入模式并在当前(光标所在)行之下开启新的一行。
常用的删除与复制的常用按键:
粘贴命令:
复原和重做命令:
扩展模式下常用的命令:
快速移动光标在文件中的位置的命令:
快速在屏幕中移动光标的位置的命令:
0跳到行首,¥跳到行末
ctrl+a跳到命令首部,ctrl+e跳到命令尾部
扩展模式:set nu 显示行号
系统的初始化和服务
38 Linux系统引导的顺序:
BIOS的定义:BIOS(Basic Input/Output System)(基本输入/输出系统的缩写),它是硬件与软件之间的接口,而且是非常基本的接口。
MBR会告诉电脑从该设备的某一个分区(partition)来装载引导加载程序(boot loader)。Boot loader储存有操作系统(OS)的相关信息,比如操作系统名称,操作系统内核 (kernel)所在位置等。常用的boot loader有GRUB和LILO。
GRUB的定义:GRUB是Grand Unified Bootloader(多重操作系统启动管理器)的缩写。
grub的配置文件为:grub.conf 用root使用vim命令在/ect目录下打开:defaul为默认加载某操作系统,timeout为读秒时间
设置grub Md5加密命令 grub-MD5-crypt
Password = 明文或 password --md5 密文(编辑grub配置文件的密码)
Title 前加Password = 明文或 password --md5 密文(加载内核系统引导必须的密码
内核的初始化和init的初始化:
init的配置文件为:/etc/inittab
a) 决定预设(默认)要使用哪个run levels(运行级别)。
b) 执行一些系统初始化的脚本(程序)来初始化操作系统。
c) 根据run level的设置来执行所对应目录中的程序,以决定要启动哪些服务。
d) 设定某些组合键。
e) 定义UPS不间断电源系统,即当电源出现问题时或电源恢复时要执行哪些程序。
f) 产生6个virtual consoles,也就是tty1~tty6。