【网安学习笔记-Linux基础】

摘要

1.CentOS7的安装配置与初始化 2.学习机的常用配置 3.磁盘分区表示法
4.linux中文件系统类型 5.inode节点与块 6.Linux启动流程 7.运行级别
8.Linux启动运行的第一个进程 9.系统服务控制systemctl 10.shell
11.内部命令和外部命令 12.Linux命令格式 13.常用基本操作
14.常用快捷键 15. 命令帮助信息 16.绝对路径和相对路径 17.别名命令
18.管道符和重定向 19.小结

1.CentOS7安装配置与初始化

一. 安装CentOS Linux

  1. 检测光盘完整性
  2. 配置安装程序
  3. 初始化系统

2.学习机的常用配置

  1. 关闭防火墙
  2. 关闭selinux
  3. 关闭自动锁屏
systemctl stop firewalld
systemctl disable firewalld

Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

#清除所有规则,暂停防火墙(危险命令小心使用!)
iptables -F

vi /etc/selinux/config

#将SELINUX改为disable,结果如下图:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

#查看防火墙服务
[root@localhost ~]# systemctl status firewalld.service 
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

然后在设置中,手动关闭锁屏即可。
最后关机保存快照。(如果开机保存,会占很大的硬盘空间)

3.磁盘分区表示法

/dev/hda5
/dev表示硬盘文件所在的目录
hd表示IDE设备,sd表示SCSI设备
根据硬盘的顺序号,以字母a,b,c,d…等表示第几块硬盘
数字表示分区的顺序号,用1,2,3,4…等表示是第几块分区。
其中最多有4块主分区,从第5块之后表示逻辑分区,1-4中,最多可以有一块表示扩展分区。

在我们使用的Linux系统中:

第1个主分区/dev/sda1 第2个主分区/dev/swap 第一个逻辑分区/dev/hda5 第2个逻辑分区/dev/hda6 扩展分区

4.linux中文件系统类型

CentOS7默认 :XFS日志文件系统 SWAP交换文件系统
Linux支持的其他文件系统类型:EXT3,EXT4
FAT16,FAT32,NTFS,XFS,JFS
若要像下面的版本兼容,最好用EXT4。

5.inode节点与块

inode区域:存储元数据的区域,文件字节数,权限,归属,时间戳,连接,数据块位置;
inode bitmap:inode使用情况,比如空闲inode;
block bitmap:块的使用情况,比如空闲的inode与空闲的块等信息。
数据块是由多个扇区组成,常见4KB一块,存放文件数据和目录数据。
inode类比于酒店前台,记录那些空闲的房间,而块则类比于房间。

inode区:inode—>目录块位置
数据区:inode号—>文件名

查看/var/log/messages
文件从左到右逐层寻找,linux中文件夹就是目录,不是容器。文件夹其实是一个索引。好比去书店买书,按类寻找我们想要的图书。
寻找过程:从根自引用中,找到对应var目录的索引位置,也就是inode号。然后通过inode号,找到var的块,在块中寻找log的inode号,以此类推。

创建文件过程:
1先看inode图和block图,先看inode和block是否有空闲空间。如果inode被占满了,即使有再多的block块也无法写入文件。同理,我们删除文件是删除的文件inode号,让我们找不到inode进而无法访问,此时inode认为block为空,但是block中,原有内容还存在,如果我们不写入新内容,还能有恢复删除内容的可能。创建文件先找空闲inode号,然后找到inode所指向的block,最后写入内容。

6.Linux启动流程

Linux的引导过程:1引导过程总览 2系统初始化进程及文件

linux系统启动流程:

  1. 开机自检(BIOS)
  2. MBR引导
  3. GRUB菜单(选择运行需要内核)
  4. 加载内核(Kernel)
  5. init进程初始化

7.运行级别

运行级别SysVinit Systemd的target 说明
0 target 关机状态
1 rescue.target 单用户模式 用于系统维护 登陆不需要密码
2 multi-user.target 与3相同
3 multi-user.target 字符界面的完整多用户模式 用在多数服务器主机
4 multi-user.target 与3相同
5 graphical.target 图形化界面
6 reboot.target 重启主机

查看运行级别的两种方式:
systenctl:
runlevel:

[root@localhost /]# runlevel 
N 5

切换运行级别
init + 数字
systemctl isolate multi-user.target
systemctl isolate graphical.target

8.Linux启动运行的第一个进程

**init进程:**由Linux内核加载运行/sbin/init程序,是系统中的第一个进程,PID号永远为1。
**systemd进程:**代替init进程,成为主流。程序位于/usr/lib/systemd/systemd。相比于init,systemd向下兼容,集中化命令管理,并且有更合适的命令结构。
在这里插入图片描述

9.系统服务控制systemctl

systemctl 【控制类型】【服务名称】
控制类型:start stop restart reload status
重启和重新加载不同,重新加载可以不用关闭现有服务,而更新服务数据。

  1. 查看默认启动级别
[root@localhost /]# systemctl get-default 
graphical.target

#设置默认启动级别5
[root@localhost /]# systemctl set-default graphical.target 
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.

#查看系统服务的启动状态
[root@localhost /]# systemctl is-enabled firewalld.service 
disabled

#把防火墙服务改为开机自启
[root@localhost /]# systemctl enable firewalld.service 
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.

#关闭开机自启防火墙服务
[root@localhost /]# systemctl disable firewalld.service 
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

enable和disable 不同于start 和 stop ,前者是设置系统开机启动服务项。
控制服务除了systemctl,还有ntsysv软件工具(需要自己下载安装)

10.shell

shell是贯穿Linux的核心,是各种命令的集合,是一种运行在linux中的特殊程序,充当用户和内核的”翻译官“。用户登陆Linux时自动加载一个shell,Bash时Linux系统中默认使用的shell程序。

文件位于:/bin/bash

工作流程:接受用户输入的命令->解释命令->传递给系统内核执行

11.内部命令和外部命令

内部指令:

集成于shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令;
属于shell的一部分;
没有单独对应的系统文件;
自动载入内存可以直接使用。

外部指令:

Linux系统中能够完成特定功能的脚本文件或二进制程序;
属于shell解释器程序之外的命令;
外部命令对应系统中的一个文件;
必须知道对应文件位置,由shell加载后执行。

内部命令运行速度快,但是外部命令功能更强大。

Linux系统将存放外部命令,程序的目录,添加到搜索路径中。当使用这些目录中的外部命令时,用户不需要指定具体的位置。

12.Linux命令格式

命令字 【选项】 【参数】

命令字:即我们要使用的命令(唯一确定的一条命令)最关键的部分
参数:执行该命令的对象(吃 肉 肉—>参数
选项:告诉shell如何执行命令(吃 炖烤 肉 炖 烤—>选项

一个-代表后面是以字母形式存在,两个--代表是以单词形式存在。

13.常用基本操作

查看及切换目录

在这里插入图片描述

pwd

显示当前完整路径。

cd
[root@localhost /]# cd /
[root@localhost /]# cd ~
[root@localhost ~]# cd /alibaba/task/

ls
[root@localhost ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg
ls -i 可以看到inode节点号
[root@localhost ~]# ls -l
#以长格式显示
总用量 8
-rw-------. 1 root root 1899 3月   1 19:21 anaconda-ks.cfg
-rw-r--r--. 1 root root 1947 3月   1 19:23 initial-setup-ks.cfg
[root@localhost ~]# ls -lh
#以易于人们阅读的方式显示
总用量 8.0K
-rw-------. 1 root root 1.9K 3月   1 19:21 anaconda-ks.cfg
-rw-r--r--. 1 root root 2.0K 3月   1 19:23 initial-setup-ks.cfg

[root@localhost ~]# ls -lh /
总用量 24K
lrwxrwxrwx.   1 root root    7 3月   1 19:07 bin -> usr/bin
dr-xr-xr-x.   5 root root 4.0K 3月   1 19:21 boot
drwxr-xr-x   19 root root 3.2K 3月   1 20:16 dev
drwxr-xr-x. 145 root root 8.0K 3月   1 19:22 etc
drwxr-xr-x.   3 root root   21 3月   1 19:21 home
lrwxrwxrwx.   1 root root    7 3月   1 19:07 lib -> usr/lib
lrwxrwxrwx.   1 root root    9 3月   1 19:07 lib64 -> usr/lib64
drwxr-xr-x.   2 root root    6 4月  11 2018 media
drwxr-xr-x.   2 root root    6 4月  11 2018 mnt
drwxr-xr-x.   3 root root   16 3月   1 19:15 opt
dr-xr-xr-x  215 root root    0 3月   1 20:16 proc
dr-xr-x---.   5 root root  225 3月   1 20:23 root
drwxr-xr-x   43 root root 1.3K 3月   1 20:20 run
lrwxrwxrwx.   1 root root    8 3月   1 19:07 sbin -> usr/sbin
drwxr-xr-x.   2 root root    6 4月  11 2018 srv
dr-xr-xr-x   13 root root    0 3月   1 20:16 sys
drwxrwxrwt.  19 root root 4.0K 3月   1 21:34 tmp
drwxr-xr-x.  13 root root  155 3月   1 19:07 usr
drwxr-xr-x.  21 root root 4.0K 3月   1 19:22 var
du

在这里插入图片描述

[root@localhost task]# du -sh /etc/
43M	/etc/
[root@localhost task]# du -h /etc/
16K	/etc/fonts/conf.d
20K	/etc/fonts
72K	/etc/grub.d
12K	/etc/pki/rpm-gpg
0	/etc/pki/ca-trust/source/anchors
0	/etc/pki/ca-trust/source/blacklist
4.0K	/etc/pki/ca-trust/source
160K	/etc/pki/ca-trust/extracted/java
。。。。。。。。。。。。
还有很多

目录和文件基本操作

mkdir

mkdir -p 一次创建多层目录。-p递归创建。

[root@localhost ~]# mkdir -p /111/222/333/
[root@localhost ~]# cd /111/222/
[root@localhost 222]# cd 333/
[root@localhost 333]# mkdir a b c d
[root@localhost 333]# ls
a  b  c  d

touch

创建一个新文件,如果文件存在,就更新文件的时间戳。

ln

ln [-s] 源路径 目标路径

软链接建立必须使用绝对路径!

ln -s /bin/bzip2 /bin/wx

软连接和硬链接

在这里插入图片描述
软连接类似快捷方式。硬链接类似复制文件。
类似复制但不同于复制,如果源文件修改,硬链接文件会同步发生变化。硬链接文件的inode节点号相同,可以用来备份重要文件。

复制删除移动目录和文件

cp

将需要复制的文件或目录(源)重建一份,并保存为新文件或目录,复制后可赋予新名称。
cp 【选项】 源文件或目录 目标文件或目录
cp -r 复制目录时需要加上,递归复制。

rm

rm -rf yyds!注意r递归,i表示挨个提问你是否要删除。

mv

mv 【选项】 源 目标
mv /1 /2 把1移动到2。
mv还能用来改名,mv 原名 新名。

查找目录和文件

which

which搜索范围由环境变量PATH决定(echo $PATH)

find

14.常用快捷键

快捷键 功能
Tab 补全(命令、文件名、路径)
ctrl+u 删除光标到行首
ctrl+k 删除 光标到行尾
ctrl+l 清屏
ctrl+c 结束当前进程
\ 强制换行

15. 命令帮助信息

help + 命令、-h、–help、man、info
命令 --help(-h) 直接输出命令行;摘要信息 简略
Man (info)+命令 (使用手册)以文档形式查看 阅读模式;详细信息

16.绝对路径和相对路径

绝对路径是必须从根开始写起的路径,但是相对路径就可以在任意位置写起。

17.别名命令

#添加别名
[root@localhost task]# alias lh='ls -lh'
[root@localhost /]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias lh='ls -lh'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
#删除别名
[root@localhost task]# unalias lh
[root@localhost task]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

18.管道符和重定向

重定向

>表示将输出内容写入文件中(创建新文件,若原来存在则覆盖)

[root@localhost /]# date > /root/date.txt
[root@localhost /]# cat /root/date.txt 
2021年 03月 02日 星期二 03:32:37 CST

2>收集错误信息;
>>追加到已存在的文件中;

管道符

切 -丁 萝卜 | 吃 -炒 (萝卜丁)

[root@localhost /]# man ls | col -b > /root/lshelp.txt

19.小结

  1. 第二块SCSI硬盘的第三个逻辑分区:/dev/sdb7
  2. Centos7默认使用文件系统:XFS
  3. inode结点用光了会怎样?相当于硬盘被沾满,无法创建新文件。
  4. Systemd的PID号是:1
  5. sysremd的常见单元类型中,service和target分别代表什么?

Guess you like

Origin blog.csdn.net/weixin_45253216/article/details/114260127