Linux期末复习知识点

理论知识

1、Linux是一种自由和开放源码的类UNIX操作系统。

2、Linux最初是由芬兰赫尔辛基技术大学计算机系学生Linus torvalds开发出来的。

3、第一次正式向外公布的时间是1991年10月5日。

4、Linux操作系统5个重要支柱:UNIX操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。

5、Linux的特点:抢占式多任务;多用户;设备无关性;开放性;可拓展性、可维护性与开放源代码;完善的网络功能;可靠的系统安全;良好的可移植性

6、Linux系统一般由4个主要部分组成:内核、shell、文件系统与应用程序

(文件系统:ext2、ext3、ext4、XFS、VFAT、IS09660、NFS、SMB)

7、MS-DOS是单任务单用户的操作系统,Linux是多任务多用户的操作系统

8、Linux内核版本号是:a.bb.cc[a是主版本号,取0-9之间的一个数,目前最高是3;bb是次版本号,取值为00-99之间;cc是修订版本号]

9、如果次版本号是偶数,则该内核是稳定版;若是奇数,则该内核是开发版。

10、Linux的发行版本(了解):老牌的RedHat;锐意的Fedora;自由的Debian;大众的Ubuntu;简洁的Slackware;华丽的OpenSUSE

Shell的基本应用

11、Shell是Linux的一个特殊程序,是内核与用户的接口,是命令语言、命令解释程序及程序设计语言的统称。Shell是一个命令语言解释器,是一个解释型的程序设计语言

12、Shell有多种类型:Bourne Shell(BSH)和C Shell(CSH)

13、检查系统当前运行的shell版本,可运行以下命令:#echo $SHELL

显示/bin/bash表示当前系统默认的Shell是BASH。

若想启动其他类型的Shell,如TCSH,用户可以通过以下命令将其启动:#tcsh

在TCSH下运行exit命令返回原来的Shell:#exit

14、默认情况下,对普通用户用“$”,对超级用户用“#”

15、如果一条命令花费了很长的时间运行或者在屏幕上产生了大量的输出,可以从键盘上按“Ctrl+c”快捷键发出中断信号来中断此命令

16、系统的注销:已经登录的用户如果不再需要使用系统,则应该注销,退出登录状态。在字符界面下可以键入logout命令、exit命令或使用“Ctrl+D”快捷键

17、系统的重启:当需要重启系统时,输入reboot或shutdown 将-r now命令即可。

18、关机:在当前终端输入halt或者shutdown 将-h now命令,将立即关闭计算机

19、mkdir命令:创建目录 -p一次性创建多级目录

例:创建名为test的目录,并在其下创建file目录

#mkdir -p test/file

#ls test

20、rmdir命令:从一个目录中删除一个或多个子目录项,要求目录删除之前必须为空

-p 递归删除目录,当子目录删除后其父目录为空时,也一同被删除

21、“cd ..”返回到系统的上一级目录

22、pwd:显示当前目录的绝对路径

23、cat命令

例:创建文本文件f1,显示文件内容

#cat >f1

按下“Ctrl+D”快捷键,在当前目录下保存文件f1,之后输入如下命令查看内容:#cat f1

24、more命令:分屏显示文件内容

继续显示按“enter”键或空格键,按“b”键可以向前反页,按“q”键可以退出该命令

25、less命令:与more命令非常相似,也能分屏显示文本文件的内容,不同之处在于more命令可以查看二进制文件,而less命令只能查看ASCII码文件

26、head命令:显示文件的头几行内容 -n指定显示文件的前n行,如果没有给出n值,默认设置为10

27、tail命令:查看文件的尾部 +n 从第n行以后开始显示 -n从距文件尾n行处开始显示。如果省略n参数,系统默认值为10

28、文件内容查询命令grep

例:在文件/etc/passwd中查找“root”字符串

#grep “root” /etc/passwd

29、文件查找命令find

格式:find[选项]文件名

-name ‘字串’查找文件名与所给字符串匹配的所有文件,字串内可用通配符*、?、[]

例:在根目录下查找文件名为’temp’或是匹配’install*’的所有文件

#find / -name’temp’ -o-name’install*’

30、文件内容统计命令wc

功能:统计给定文件中的字节数、字数、行数

常用选项说明:-c 统计字节数 -l统计行数 -w统计字数

31、文件的复制、移动和删除命令(简答)

(1)cp命令 -b 若存在同名文件,覆盖前备份原来的文件

例:将f1文件复制为f2,若f2文件已存在,则备份原来的f2文件

#cat >f2

#cp-b f1 f2

(2)mv命令

功能:移动或重命名文件或目录

-b 若存在同名文件,覆盖前备份原来的文件

-f 强制覆盖同名文件

(3)rm命令

-r或-R 按递归方式删除目录,默认只删除文件

-rf 文件、目录都删除

32、查看手册命令man(必考)

例:显示mkdir命令的帮助信息

#man mkdir

屏幕显示该命令在shell手册页的第一屏信息,用户可以使用上下方向键、“PageDown”键、“PageUp”键前后翻阅帮助信息,按“q”键退出该命令

BASH的应用

33、使用命令历史记录的方式是用shell的内部命令history来显示和编辑历史命令。

格式一:history [n]

例:显示最近执行过的3个历史命令

#history 3

1 ls -a

2 cd /home/user01

3 mkdir test

格式二:history [-r|w|a|n] [文件名]

-r 读出命令历史列表文件的内容,并且将它们当作当前的命令历史列表

-w 将当前的命令历史记录写入文件,并覆盖文件原来的内容

-a 将当前的命令历史记录追加到文件尾部

-n[文件名] 读取文件中的内容,并加入到当前历史命令列表中。如果没有指定文件名,history命令将用变量histfile的值来代替

通配符

(1)“*”通配符:可以匹配任意数目的字符

例:显示当前目录下以“f”开头的所有文件:# ls f*

(2)“?”通配符:在相应位置上匹配任意单个字符

(3)“[]”通配符:可以匹配括号中给出的字符或者字符范围。“[]”中的字符范围可以是几个字符的列表,也可以用“-”给定一个取值范围,还可以用“!”表示不在指定字符范围内的其他字符。

35、/^ 以…开头 /$ 以…结尾

36、输入重定向:< 输出重定向:> 如果想保留该文件的原内容,将新的重定向信息追加在一个文件的尾部,则使用“>>”作为输出重定向符号

37、管道:管道可以将第1个命令的输出通过管道传给第2个命令,作为第2个命令的输入,第2个命令的输出通过管道传给第3个命令,作为第3个命令的输入,以此类推,最后一个命令的输出才会显示在屏幕上。管道所使用的符合是“|”。

例:假设当前目录下有文件f1,且其内容为“this is file f1”,统计文件中含有“file”单词的行数:#cat f1 | grep”file” | wc-1

38、文本编辑器Vim的3种模式(简答):命令模式、插入模式、末行模式

三种模式的转换:不管用户处于何种模式,只要按一下“esc”键,即可进入Vim命令模式;

在命令模式下,按下“i”“o”“a”或“Insert”键可以切换到插入模式下;在命令模式下用户按“:”键即进入末行模式

用户管理

1、添加用户

(1)useradd命令

功能:添加用户账号或更新创建用户的默认信息

-G组群列表 设置新用户到其他的组中(附属组),该组在指定前必须存在

例1:按照默认值新建用户user1:#useradd user1

例2:增加用户user1,附属组设置为root组:#useradd-G root user1

(2)Passwd命令

功能:设置或修改用户的口令、以及口令的属性

例:在系统中添加用户user1,为了让该用户使用系统,需为用户设置口令:#passwd use

例:删除用户user1的口令:#passwd -d user1

例:锁定用户user1的口令:#passwd -l user1

例:解除用户账号user1的锁定:#passwd -u user1

2、删除用户

例:删除用户账号user1及其主目录:#userdel -r user1

3、修改用户信息

例:改变用户账号名,将user1改为user2:#usermod -l user2 user1

例:将用户student的属组改为work,并把student的ID改为5500:

#usermod -g work -u 5500 student

组管理

1、创建用户组

例:添加组账号,GID从1000开始:#groupadd mygroup

例:建立组的同时指定组的GID为5600:#groupadd -g 5600 test

用户组的密码可以通过gpasswd命令来实现。gpasswd的用法如下:

gpasswd 用户组名

例:#gpasswd mylinux

2、删除用户组

例:删除mygroup组群:#groupdel mygroup

3、修改用户组信息

例:将组mylinux1的名称改为mylinux2:#groupmod -n mylinux2 mylinux1

例:将mylinux1的GID改为566,同时把组名改为mylinux2:

#groupmod -g 566 -n mylinux2 mylinux1

磁盘与文件管理系统

1、创建主分区(添加一个100MB的主分区):#fdisk /dev/sdb

2、在RHEL7中,分区创建完成,不会立刻生效,需要系统重新启动才可以生效,如果不想启动系统,可以使用“partx -a /dev/sdb”命令生效:#partx -a /dev/sdb

3、在/dev/sda5上建立一个ext4分区:#mkfs -t ext4 /dev/sdb5

4、挂载:#mkdir /mnt/usb

#mount /dev/sdb1 /mnt/usb

5、

压缩和解压命令

tar -cjvf/-czvf 压缩

tar -cxvf 解压

例:

(1)将当前目录所有文件打包成mydata.tar,扩展名需在命令中加上:#tar -cvf mydata.tar

(2)将整个/home目录下的文件全部打包成为/usr/backup/home.tar,根据需要,分别执行下列命令:

仅打包,不压缩:

#tar -cvf /usr/backup/home.tar /home

打包后,用gzip命令压缩:

#tar -zcvf /usr/backup/home.tar.gz /home

打包后,用bzip2命令压缩:

#tar-jcvf /usr/backup/home.tar.bz2 /home

(3)查看 /usr/backup/home.tar.gz文件内有哪些文件,由于使用gzip压缩,所以要查看该tar file内的文件时,就要加上参数z:#tar -ztvf /usr/backup/home.tar.gz

(4)将 /usr/backup/home.tar.gz文件解压缩到 /usr/local/src下:

#tar -zxvf /usr/backup/home.tar.gz -C /usr/local/src/

(5)只将在/tmp下的/usr/backup/home.tar.gz home/root解压缩:

#cd /tmp

#tar -zxvf /usr/backup/home.tar.gz home/root

(6)将/home/内的所有文件been下来,并且保存其权限:

#tar -zxvpf /usr/backup/home.tar.gz /home

(7)在/home当中,备份2011/03/12之后创建的文件:

#tar -N “2011/03/12’’ -zcvf home.tar.gz /home

(8)备份/home、/etc,但不包括/home/abc:

#tar –exclude /home/abc -zcvf myfile.tar.gz /home/* /etc

(9)在打包/home之后又新建一个用户user3,现也要将其打包加入/usr/backup/home.tar.gz:

#tar -zcvrf /usr/backup/home.tar.gz /home/user3

Chown

功能:改变文件或目录的拥有者

例:

(1)将hello.sh文件的所有者由root更改为student:#chown student hello.sh

(2)将hello.sh的所有者和所属组群改为student用户和student组群:#chown student:student hello.sh

Umount

功能:umount命令用来卸载文件系统,该命令与mount执行相反的操作。如果不使用文件系统,不能直接将硬件设备去除,因此需要先执行umount命令

常用项:

-V 显示程序版本

-h 显示帮助信息

-n 卸载时的信息不写入/etc/fstab

-f 强行卸载文件系统

-a 卸载/etc/fstab文件中的所有文件系统

交换内存

交换内存的种类:

交换内存依照空间的单位被分成分区类型的交换内存与文件类型的交换内存两类

(1)配置交换内存空间

分区创建成功后,要保存分区表,重启系统生效。如果不想重启,需要使用“partx -a /dev/sdb”命令。

(2)制作交换内存文件系统

下面这个事例是在/dev/sdb5这个分区上建立swapfs文件系统,以便可以作为交换内存

#mkswap /dev/sdb5(格式化成一个交换内存的文件系统)

(3)启用交换内存

#swapon -a /dev/sdb5 一次性加载

想要查看系统的交换内存空间,可以使用“swap -s”命令

如果想要系统下次重启,自动挂载交换分区,需要在/etc/fstab文件中添加一行。

/dev/sdb5 swap swap defaults 0 0

(4)关闭交换内存

swapoff /dev/sdb5

逻辑卷

1、查看 fdisk -l /dev/sdb

2、开始分区 fdisk /dev/sdb

3、加载分区 partx -a /dev/sdb

4、对分区格式化

格式化之前创建物理卷(1)pvcreate /dev/sdb6

把物理卷放进一个卷组(2)vgcreate -s 8M vg0 /dev/sdb6(vg0是卷组名,根据考试题目)

(3)Lvcreate -L 200M -n lv0 vg0 (-l后加个数,-L后加大小)

以上三小步后开始格式化

mkfs -t ext4 /dev/sdb/lv0(ext4根据题目要求)

5、一次性挂载

先建一个目录(会告诉你挂载到哪) mkdir /mnt/data

mount /dev/vg0/lv0 /mnt/data (把/dev..挂载到/mnt..)

6、永久挂载 vim /etc/fstab

/dev/vg0/lv0 /mnt/data ext4 defaults 0 0

7、mount -a

#lvextend -L 300M /dev/vg0/lv0 将这个逻辑卷直接扩大到300M的大小

卸载一个分区 umount /dev/sdb5

​ umount /mnt/data(目录)

周期性计划任务

crontab命令

-e(edit) 创建并编辑crontab配置文件,编辑结束时,文件被自动安装

Minute:0~59

Hour:0~23

Day-of-month:01~31

Month-of-year:01~12

Day-of-week:0~6,0为星期天

*root用户设置cron调度,要求每周一的8:00查看/etc/passwd文件

#crontab -e

启动vi编辑器输入下面内容:

00 08 1 /bin/ls /etc/paawd ( 如果未指定字段内容,使用将字段分开)

存盘退出后,/var/spool/cron目录中就会生成一个名为root的文件,系统将根据用户设置的时间执行指定命令。

YUM

一、YUM源配置(PPT)

二、YUM源安装服务

1、Yum install -y 服务名称

2、启动服务

3、永久启动

4、停止服务

SSH

1、安装SSH服务 yum install -y openssh

2、启动服务命令 systemctl start sshd

3、永久启动服务 systemctl enable sshd

Apache

1、安装Apache服务 yum install -y httpd

2、启动Apache服务器 systemctl start httpd

3、停止Apache服务器 systemctl stop httpd

​ systemctl status httpd

4、永久启动Apache服务器 systemctl start httpd

​ systemctl enable httpd

FTP

yum install -y vsftpd

systemctl start vsftpd(启动)

DNS

1、安装unbound yum install -y unbound

2、启动DNS服务 systemctl start unbound

​ systemctl enable unbound

网络基础知识

查看Linux的IP ifconfig/ip address

查看当前计算机的主机名 #hostname

修改计算机的主机名 #hostnamectl set-hostname <desktop.example.com>

/etc/sysconfig/network-scripts目录

vim /etc/sysconfig/network-scripts/网卡名称

区别:(安全子系统)

vim /etc/sysconfig/selinux

DELINUX=enforcing(强制模式)/permissive(允许模式)/disabled(不允许模式)

防火墙启动与关闭

启动防火墙:systemctl start firewalld

查询防火墙:

systemctl status firewalld

开机启动防火墙:

systemctl enable firewalld

停止防火墙:

systemctl stop firewalld

开机关闭防火墙:

systemctl disable firewalld

修改root密码

按“e”键。进入内核参数修改模式。

在“linux16”这一段的最后,输入空格,然后输入“rd.break”,注意命令之间的空格,然后按“ctrl+x”

mount -o rw,remount /sysroot

chroot /sysroot

passwd root

touch /.autorelabel

ls -la

exit

exit