《Linux系统及应用》期末重点复习笔记

Posted 晚风Serein

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《Linux系统及应用》期末重点复习笔记相关的知识,希望对你有一定的参考价值。

整理不容易,求点赞关注~

第一章 Linux概述与安装

1.Linux系统的特点:多用户多任务、开源、安全、稳定

2.Linux内核版本和发行版本的区别

(1)内核版本只有Linux内核部分,安装完后,用户界面、软件都没有

(2)发行版本是在内核版本的基础上,加入用户界面,各种软件,比如Ubuntu、CenterOS等

3.内核版本号2.6.18-164.el5-x86_64的含义:

“2”:主版本号

“6”:次版本号,偶数表示稳定版本,奇数表示开发中的版本

“18”:修订版本号,表示修改次数

4.Linux系统安装时,必须有的两种分区:Swap交换分区(内外村对换,存放内存中暂时不用的数据)和根分区/

第二章 Linux图形界面与命令界面

5.Linux的两种工作界面

(1)图形界面:X-Window是Linux的图形界面协议,GNOME是基于X-Window的桌面环境。

(2)命令行字符终端界面:Linux系统配置和管理的首选方式(Ctrl+Alt+F1~F6进入字符终端界面,Ctrl+Alt+F7退出字符终端界面)

6.Linux的7中运行级别(init 0 ~ init 6)

init 0:停止运行,所有进程终止,关闭系统(不能设为initdefault)

init 1:单用户模式,用于维护系统

init 2:多用户模式,但NFS服务没有启动

init 3:完整的多用户模式,进入字符终端界面

init 5:完整的多用户模式,进入图形界面

init 6:重新引导计算机(不能设为initdefault)

runlevel:显示当前系统运行级别

7.关闭和重启系统命令

shutdown -h now 或者halt 立即关闭系统

shutdown -h 45 45分钟后关闭系统

shutdown -r now或者reboot 立即重启

halt -h 关闭计算机但不关闭电源

halt -p 关闭计算机且关闭电源

8.帮助命令

man ls 显示ls命令的man手册

mkdir --help 如果命令名称是一个字母help前一个横线,一个单词help前面两个横线

info shutdown 显示shutdown命令帮助信息

9.查找命令的位置

whereis mkdir 查找mkdir命令的位置

10.shell中的管道“|”的用法(管道可以将某个命令的输出信息作为某个命令的输入)

ls /bin | grep bz 查找bin目录下名称含有bz的文件

11.shell中重定向的用法

(1)输出重定向:ls /boot > /root/abc 将/boot的内容保存到/root/abc

(2)输入重定向:cat < /root/abc 将/root/abc的内容作为cat命令的输入并执行

(3)错误重定向:cat /root/kk 2> /root/abc 将cat命令的错误信息保存到/root/abc

(4)追加重定向:echo bbb >> /root/abc 将echo命令输出的内容追加到/root/abc

(5)实现输出和错误的重定向:ls /nn &> /root/abc 将ls命令的输出信息和错误信息都保存到/root/abc

12.(1)查看Linux内核版本命令:uname -a

(2)显示操作系统的发行版号:uname -r

13.列出历史输入的所有命令:history

14.自动补齐:Tab键

15.(1)标准输入设备文件描述符:0或stdin

(2)标准输出设备文件描述符:1或stdout

第三讲 文件管理与常用命令

16.Linux的5种不同的文件类型及其符号表示

(使用ls -lh或ll命令查看文件属性)

(1)普通文件:“-rw-r–r–”第一个符号是“-”

(2)目录文件:“drwxr-xr-x”第一个符号是“d”

(3)链接文件:“lrw-r–r–”第一个符号是“l”(软链接)

(4)设备文件:“brw-r–r–”第一个符号是“b”则为块设备文件,“c”则为字符设备文件

(5)管道文件:“prw-r–r–”第一个字符是“p”

17.链接文件有哪两种

硬链接和软链接

18.路径符号

. 表示当前目录

… 表示上一级目录

/ 表示根目录

19.常见目录的用途

/bin 存放用户和系统必需的程序

/boot 存放Linux的内核映像

/root 系统管理员的主目录

/mnt 挂载其他设备的子目录

/dev 存放所有设备文件

/etc 存放绝大部分系统配置文件

/home 创建的新用户的默认主目录

20.目录与文件操作的常用命令

(1)ls -a 显示目录下的所有文件(包括隐藏文件)

(2)ls -l 显示目录下的文件的详细信息

(3)grep -in ‘grub’ [fileName] 在文件中匹配字符,-i表示不区分大小写,-n表示输出所在行的行号

(4)more [fileName] 分页显示文本文件

(5)head -n [fileName] 显示文件的前n行

(6)tail -n [fileName] 显示末尾n行

(7)find /boot -name grub 查找/boot目录下名为grub的文件

(8)find /etc -ctime 3 查找/etc及其子目录下最近3天内更新过的文件

(9)wc -l [fileName] 统计文件的行数

(10)cp -r [srcDir] [dstDir] 递归复制srcDir及其子目录的所有内容到dstDIr

(11)mv [srcFile/Dir] [dstFile/Dir] 用来重命名或移动

(12)rm [fileName] 删除文件

(13)rm -rf [dir] 删除非空目录

(14)mkdir -p [dir] 递归建立目录

(15)touch [fileName] 创建空文件

(16)cd~ 或 cd 进入当前用户主目录

(17)cd- 返回上一次操作的目录

(18)cat -n hello.c 查看hello.c并显示行号

21.显示日历命令

(1)cal 2022 显示2022年年历

(2)cal 5 2022 显示2022年5月月历

(3)cal -jy 以1月1日起的天数显示今年年历

22.对全部已登录用户发送信息

wall ‘hello’

23.文件或目录权限修改命令

(1)文字设定法

chmod a+w /root/abc 所有用户对abc文件添加写权限

chmod o-r /root/abc 其他用户对abc文件删除读权限

u:用户user,文件或目录的所有者

g:同组用户group

o:其他用户other

r:读权限

w:写权限

x:执行权限

(2)数字设定法

选项需填写三位数字,从第一位开始分别表示user、group和other用户的权限。

0表示没有权限,1表示执行权限,2表示写权限,4表示读权限,两个以上则将其相加

例如命令 chmod 740 hello.c 对于hello.c文件,user用户拥有全部权限,group用户只有读权限,other用户没有权限

24.tar解压命令

tar -zxvf hello.tar.gz -C /home 解压hello.tar.gz到home目录

第四章 用户与用户组管理

25.Linux系统的3类用户和功能

(1)根用户(root):Linux的内置用户,权限最高

(2)普通用户:由系统管理员创建,能登录系统,权限有限

(3)虚拟用户:用来完成特定任务但不具有登录系统的能力

26.用户账户配置文件

(1)/etc/passwd:记录所有用户账户和相关信息

(2)/etc/shadow:用户影子文件,保存用户密码及相关信息(如账户有效期)

27.用户与用户组管理命令

(1)useradd -d /home/serein serein 创建用户serein并设定主目录为/home/serein

(2)userdel -r serein 删除用户serein及其主目录下的所有文件

(3)usermod -l wanfeng serein 修改用户serein的登录名为wanfeng

(4)usermod -g mygroup serein 修改用户serein的所属组为mygroup

(5)usermod -Ga mygroup serein 将用户serein追加到mygroup组

第五章 磁盘和文件系统管理

28.Linux硬盘分区类型与分区命名

硬盘分区有主分区、扩展分区和逻辑分区三种

命名规则为hdXY:hd表示IDE硬盘;sd表示SCSI硬盘,X为小写字母,Y为数字;同类型设备从字符a开始编号,a表示第一个硬盘,b代表第二个硬盘…

29.一块Linux系统的磁盘最多有4个主分区

30.硬盘分区命令

fdisk界面下的子命令

(1)l:打印系统已支持的分区类型

(2)m:打印fdisk帮助信息菜单

(3)n:新建分区

(4)t:改变分区的类型号码

(5)w:保存并退出

31.创建文件系统命令

mkfs -c /dev/sda2 检查设备有无坏块

mkfs -t ext3 /dev/sda2 创建ext3文件系统

32.挂载文件系统

mount -t ext3 /dev/sda2 /mnt/kk 将硬盘分区sda2挂载到kk目录中

33.设置开机自动挂载文件系统的方法:修改/etc/fstab文件

34.结合磁盘与文件系统管理命令,描述新增磁盘的一般使用步骤

(1)fdisk命令对磁盘进行分区

(2)mkfs命令创建文件系统

(3)mount命令挂载硬盘分区

第六讲 Linux日常管理和维护

35.查看系统进程信息命令:ps -aux

36.终止一个前台进程:Ctrl+C键

37.终止一个后台进程:kill -9 PID

38.让一个进程在后台运行:在命令后加“&”

39.(1)后台进程调入前台:fg

(2)前台进程调入后台:bg

40.周期性自动化执行的命令:crontab

第七、八章 shell编程

41.shell脚本第一行的内容

#!/bin/bash

42.执行shell脚本的三种方式

(1)hello.sh 直接执行(需要可执行权限)

(2)sh hello.sh 使用sh命令(若root用户的shell是/bin/bash,要用bash命令)

(3)source hello.sh或 . hello.sh 使用source命令或点命令

43.shell的系统变量

(1)$0 当前程序的名称

(2)$? 前一个命令或函数的返回值,0表示成功,非0表示失败

(3)$# 命令行参数的总个数,不包含程序名称

(4)$n 第n个参数

(5)$* 以“参数1 参数2 … ” 形式保存所有参数,即所有命令行参数的值

44.分支结构 test 用户整数值和字符串的判断,如果表达式为真返回0,为假返回1

(1)整数判断:-lt(小于)、-le(小于等于)、-gt(大于)、-ge(大于等于)

-eq(等于)、-ne(不等于)

例如:test 3 -lt 4 判断3是否小于4

(2)字符串判断:=(等于)、!=(不等于)、-z str(str长度为0返回真)、-n str(str长度不为0返回真)

(3)逻辑判断:-a(逻辑与)、-o(逻辑或)、!(逻辑非)

(4)文件判断:-f file(如果文件存在且是一个普通文件)

例如:test $a -eq 0 -a $b -eq 0 判断变量a和变量b是否都等于0

45.使用方括号表示测试条件的规则是方括号两边必需有空格

[ $a -eq 0 -a $b -eq 0 ]

46.单引号、双引号、倒引号、反斜杠的作用

(1)’:由单引号括起来的内容都作为普通字符出现

(2)”:由双引号括起来的字符,$、倒引号和反斜杠保留特殊功能,其余字符否作为普通字符对待

(3)`:倒引号用于命令替换,括起来的字符串被解释为命令,转换为其标准输

出结果

(4)\\:转义字符

例:

echo “My current directory is pwd and logname is $LOGNAME”

输出My current directory is /root and logname is root

echo “My current directory is pwd and logname is $LOGNAME”

输出My current directory is /root and logname is $LOGNAME

echo ‘My current directory is pwd and logname is $LOGNAME’

输出My current directory is pwd and logname is $LOGNAME

47.if语句结构

if 判断条件1

then …

elif 判断条件2

then …

else …

fi

48.for语句

for 循环变量名 in 变量列表

do

​ …

done

49.echo命令 提示用户

echo -ne -e解释\\转义字符,-n禁止换行

50.变量定义、赋值、计算

(1)字符串变量定义(赋值即定义):season=Winter 等号两侧不能有空格

(2)整型变量定义:declare -i a=5

(3)整型变量运算:declare -i c= a + a+ a+b 或 c = c= c=[ a + a+ a+b]

(4)数组变量定义:declare -a arr=(a b c)

51.打印九九乘法表shell程序

\\#!/bin/bash

for i in `seq 1 9`

do  

	for j in `seq 1 9`  

	do    

		echo $i x $j = $[$i*$j]    

	done

done

为脚本程序添加可执行权限:chmod a+x jiujiu.sh或chmod 111 jiujiu.sh

运行脚本:./jiujiu.sh 或 source jiujiu.sh

第九章 网络基本配置与网络安全

52.网络配置文件

(1)/etc/network/interfaces:网卡配置文件

(2)/etc/resolv.conf:DNS配置文件(指定DNS域名解析器)

53.网络配置命令ifconfig

(1)ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up 配置网卡eth0的IP地址和子网掩码,同时激活该设备

54.路由配置命令route

route add -net 192.168.20.0/24 gw 192.168.10.1 dev eth0给eth0网卡添加路由

55.防火墙配置命令

(1)ufw enable 开启防火墙

(2)ufw disable 关闭防火墙

(3)ufw allow/deny port 开放/关闭端口port

56.服务重启命令

service vsftpd restart 或 /etc/init.d/vsftpd restart

第十、十一章 服务器配置

57.OpenSSH服务器用于远程连接

58.NFS服务器是网络文件系统,用于文件共享

第十二章 C++集成开发环境

59.make命令的工作步骤

(1)在当前目录下寻找文件名为GNUmakefile、makefile、Makefile的文件,找到了则解释这个文件

(2)依次读取工作目录makefile文件中使用“include”包含的文件

(3)重建所有已读取的Makefile文件的规则

(4)初始化Makefile文件中的变量值

(5)推倒隐晦规则

(6)根据终极目标及其他目标的依赖关系建立依赖关系链表

(7)执行除终极目标外的所有目标的规则

(8)执行终极目标的规则

60.makefile中的命令前加了@则不显示命令本身,只显示结果

第十三章 Linux内核引导加载

61.Linux内核引导加载和初始化流程

(1)加载Bios

(2)读取MBR

(3)加载Grub第二部分和boot/grub/grub.cfg

(4)加载内核和解压挂载initrd文件系统

(5)根据rc-sysinit.conf文件设定运行等级

(6)init进程执行/etc/init.d/rc

(7)启动内核模块

(8)执行不同运行级别的脚本程序rc0.d~rc6.d

(9)执行自定义脚本/etc/rc.local

(10)执行/bin/login程序,进入登录状态

以上是关于《Linux系统及应用》期末重点复习笔记的主要内容,如果未能解决你的问题,请参考以下文章

《Linux系统及应用》期末重点复习笔记

《软件工程》期末重点复习笔记

《软件工程》期末重点复习笔记

《软件工程》期末重点复习笔记

期末复习重点及课程心得

软件工程导论期末复习重点