当前位置:首页 > 技术文章 > 正文内容

Centos7学习笔记(一)

ivker_lee6年前 (2020-07-26)技术文章433

1、安装部分新知


a、LVM——逻辑卷管理,作用:动态管理磁盘分区空间,缺点:影响高并发下的磁盘性能


b、CentOS 7安装之前,修改网卡名称:

在安装界面,按“tab”键,调整内核参数,添加“net.ifnames=0 biosdevname=0”这2个参数值

(如果是安装好系统后修改,则需几步:1、重命名/etc/sysconfig/network-script/ifcfg-ens33为ifcfg-eth0,并修改内容将DEVICE和NAME值修改为eth0;2、修改/etc/default/grub文件中“crashkernel”关键字所在那行,添加"net.ifnames=0 biosdevname=0"值,注意跟其他参数用空格隔开。3、执行grub2-mkconfig -o /boot/grub2/grub.cfg,然后reboot重启系统)


c、两个yum源的更换:

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

curl -o  /etc/yum.repos.d/epel.repo  http://mirrors.aliyun.com/repo/epel-7.repo

题外:在执行第一个curl之前,也可以用">/etc/yum.repos.d/CentOS-Base.repo"先把该文件清空。


d、安装后,常用的运维软件安装

yum install -y tree nmap  dos2unix lrzsz nc lsof wget tcpdump htop iftop sysstat nethogs psmisc net-tools bash-completion bash-completion-extras vim-enhanced

各自的用途:

tree——以树形结构显示文件和目录

nmap——扫描端口的工具

dos2unix——转换脚本格式的工具

lrzsz——上传下载文件的工具,后面xshell会直接用到

nc——文件传输,端口检查工具

lsof——反查端口进程,以及服务开发文件工具

wget——下载软件包工具

tcpdump——抓包、监听等重要排错工具

htop——系统进程相关信息查看工具

iftop——查看主机网卡带宽工具

sysstat——含有sar,iostat等重要系统性能查看工具

nethogs——显示进程的网络流量


CentOS7系统自带但默认没有安装的一些工具包,如

psmisc——含有killall、pstree等命令

net-tools——含有netstat、ifconfig、route、arp等命令

bash-completion和bash-completion-extras——bash命令补全功能包

vim-enhanced——vim编辑器工具包


2、好用的ssh工具——xshell

外观--字体调整

image.png

日志记录——记录所做的操作及命令输出

image.png

rz、sz上传下载目录设定

image.png

“选项”中的"将选定的文本自动复制到剪贴板”,可以支持将系统剪贴板内容粘贴复制

image.png


题外:

ss命令:netstat的另一种工具,比netstat好用有效率,利用tcp协议栈中的tcp_diag。常用的参数,几乎等同于netstat参数。比如n、t、l、p、a。

常用组合有

ss列出每个进程名及其监听的端口

ss列所有的tcp sockets

ss列出所有udp sockets

ss列出所有http连接中的连接

·以上包含对外提供的80,以及访问外部的80
·用以上命令完美的替代netstat获取http并发连接数,监控中常用到

ss列出处在FIN-WAIT-1状态的http、https连接

有两篇文章,详细的介绍了ss命令,参见http://www.ttlsa.com/linux-command/ss-replace-netstat/https://wangchujiang.com/linux-command/c/ss.html


3、Shell下的快捷键

1、tab——用的最多的快捷键,命令补全

2、ctrl+a——移动光标到当前行最前

     ctrl+e——移动光标到行尾

     ctrl+b——光标左移一个字符

     ctrl+f——光标右移一个字符

     alt+b——光标向左移动一个单词

     alt+f——光标向右移动一个单词

     esc+b——光标移动到当前单词开头

     esc+f ——光标移动到当前单词结尾

     光标在命令行中段:

    ctrl+d——向后删除命令行内容

    alt+d——删除当前光标所在的单词(也会把某些连接符号一起删除)

3、粘贴复制快捷键

ctrl+w——剪切或删除光标前的一个单词

ctrl+k——剪切或删除当前光标位置到行尾的字符

ctrl+u——剪切或删除当前光标位置到行首的字符

ctrl+y——粘贴ctrl+w,ctrl+k,ctrl+u操作的内容

ctrl+insert——复制命令行整个内容

shift+insert——粘贴整个命令行内容

4、ctrl+c——中断正在执行的命令或者删除整个行内容

ctrl+d——退出当前shell命令行

crtl+r——搜索命令行使用过的历史命令记录

ctrl+g——从ctrl+r搜索历史命令模式退出

esc+.——获取上一条命令的最后部分(空格分隔)

5、ctrl+l——清屏,等于clear命令

     ctrl+z——暂停执行在终端运行的任务。


!!——执行上一条命令


4、man和help

man用于普通命令

help用于shell内置命令。(cd、read、echo、histrory、kill、exec、exit、dirs、complete、continue、fc、jobs、kill、logout、pwd、return、source、true、type、wait、times、umask、ulimit、unalias等都是内置命令)


5、环境变量文件生效顺序流程图

image.png

/etc/bashrc最先,其次~/.bashrc,再次~/.bash_profile,最后/etc/profile


题外:

调整PS1变量值的一个酷炫效果:

1、编辑/etc/bashrc ——vim /etc/bashrc

2、注释掉41行的内容——具体为——       [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "

3、再下面插入以下内容:

 [ "$PS1" = "\\s-\\v\\\$ " ] &&PS1="[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \w\[\e[0m\]]\\$ " 

4、wq保存退出。


6、/etc/issue和/etc/issue.net

配置在用户登录终端前显示信息的文件

image.png

可用>/etc/issue和>/etc/issue.net方式清空文件(最好先备份)


7、/etc/motd

用户登录系统后显示提示内容的文件

image.png


8、/etc/os-release或者/etc/redhat-relase

查看系统版本

查看内核版本 uname -r

image.png

[root@study1 ~]#cat /etc/redhat-release 

CentOS Linux release 7.8.2003 (Core)

image.png


9、/etc/sysctl.conf     *** 重要

linux内核参数配置文件

sysctl -p 让修改完成的该文件生效。


10、/etc/rc.local文件和/etc/init.d/目录

前者:存放开机自启动程序命令的文件

后者:存放软件启动程序所在的目录

[root@study1 ~]#cat /etc/rc.local 

#!/bin/bash

# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES

#

# It is highly advisable to create own systemd services or udev rules

# to run scripts during boot instead of using this file.

#

# In contrast to previous versions due to parallel execution during boot

# this script will NOT be run after all other services.

#

# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure

# that this script will be executed during boot.


touch /var/lock/subsys/local

前者已经文件中说明,该文件为兼容目的存在(Centos7),并且必须在chmod +x /etc/rc.d/rc.local后,程序才会执行。(Centos7)

后者的作用,也是在Centos7之前

image.png


11、/etc/inittab

设置开机运行级别及启动相应级别运行脚本的文件(CentOS7之前)

image.png

CentOS7已经半取消运行级别的概念,分为了poweroff、rescue、multi-user、graphical、reboot五个模式,其实是合并了原来的init 2\3\4为multi-user模式,具体结果如下:

[root@study1 ~]#ls /usr/lib/systemd/system -l |grep  level |grep -v want

lrwxrwxrwx. 1 root root   15 Jul 26 23:51 runlevel0.target -> poweroff.target

lrwxrwxrwx. 1 root root   13 Jul 26 23:51 runlevel1.target -> rescue.target

lrwxrwxrwx. 1 root root   17 Jul 26 23:51 runlevel2.target -> multi-user.target

lrwxrwxrwx. 1 root root   17 Jul 26 23:51 runlevel3.target -> multi-user.target

lrwxrwxrwx. 1 root root   17 Jul 26 23:51 runlevel4.target -> multi-user.target

lrwxrwxrwx. 1 root root   16 Jul 26 23:51 runlevel5.target -> graphical.target

lrwxrwxrwx. 1 root root   13 Jul 26 23:51 runlevel6.target -> reboot.target

CentOS7更改运行级别:

systemctl set-default graphical-target

获取当前运行级别:systemctl get-default



/etc下其他重要文件:

/etc/hostname ——主机名配置文件。CentOS7中已经改用hostnamectl set-hostname xxx命令来设置主机名,还分为静态主机名(static hostname)临时主机名(transient hostname)以及pretty 主机名三种。具体参考hostnamectl命令帮助。

/etc/fstab——无需多说,系统分区挂载文件

/etc/sysconfig/network-script/ifcfg-ens66——网卡配置文件

/etc/resolv.conf——DNS域名解析文件。当“网卡配置文件”里设置了DNS时,网卡重启,则会用网卡配置的DNS值覆盖此文件DNS值。

/etc/hosts——系统本地DNS解析文件


12、/var/log和/proc目录

/var/log/messages——linux系统级别日志文件

/var/log/secure——用户登录信息(安去日志文件)

/var/log/dmesg——记录硬件信息加载情况的日志文件

/proc/meminfo——查看系统内存

/proc/cpuinfo——查看CPU信息

/proc/loadavg——查看负载信息

/proc/mounts——当前设备挂载列表信息文件

/proc/interrupts——当前系统中断信息文件



13、Linux开机启动流程描述

CentOS6--------

开机BIOS自检—>读取MBR引导—>加载GRUB菜单—>加载内核(kernel)—>运行init进程—>读取/etc/inittab文件—>读取/etc/init/rcS.conf文件—>执行/etc/rc.d/rc.sysinit脚本

                                                                                                                                                                                                                —>读取/etc/init/rc.conf文件—>执行/etc/rc.d/rc 3脚本—>/etc/rc3.d/*

                                                                                                                                                                                                                               —>读取/etc/rc.local文件—>设定用户开机自启动程序

                                                                                                                                                                                                                                                                    —>读取/etc/init/tty.conf文件—>启动mingetty 3进程

如图所示:

image.png

image.png

关于CentOS7的启动流程,看图示,与CentOS6的区别

image.png





分享给朋友:

相关文章

Centos7学习笔记(五)-tmpfs和xfs

Centos7学习笔记(五)-tmpfs和xfs

介绍/dev/shm/是一个使用就是tmpfs文件系统的设备,其实就是一个特殊的文件系统。redhat中默认大小为物理内存的一半,使用时不用mkfs格式化。tmpfs是Linux/Unix系统上的一种基于内存的虚拟文件系统。tmpfs可以使用您的内存或swap分区来存储文件(即它的存储空间在virtual memory 中, VM由real memory和swap组成)。由此可见,tmpfs主要存储暂存的文件。它有如下2个优势 : 1. 动态文件系统的大小。2. tmpfs 使用VM建的文件系统...

Centos7学习笔记(二)-基础命令(二)

Centos7学习笔记(二)-基础命令(二)

3、Linux基础命令1、date参数:-s  设置日期-d  display time described by STRING, not 'now'---用日期表示法的完整字符串(比如“1day”,“2month”,“1year”)来显示时间,但不准用“now”。实例如下:[root@ecs-ryCz8 /home/study]# date +%F -d "now" 2020-...

Nginx常用编译模块

Nginx常用编译模块

    因为某些特殊需求,最近在折腾网站支持TLS1.3。因此做一些笔记。    首先,要支持TLS1.3,需要openssl在1.1.0以上版本。需要系统重新编译安装。其次,需要nginx调用新版本openssl,用“nginx -V”命令可以查看调用的openssl版本详情。然后下载对应版本的nginx源码,重新编译nginx。    以下罗列nginx编译常用编译模块:&...

Centos7学习笔记(十七)- HTTP协议

Centos7学习笔记(十七)- HTTP协议

一、什么是HTTP?首先要提超文本HyperText——含有超链接和各种多媒体元素标记的文本。这些超文本文件彼此链接,形成网状,又被称为网页web page。这些链接用URL表示。最常见的超文本格式是超文本标记语言HTML。URL——统一资源定位符Uniform resource locator,用于唯一标识万维网中的某一个文档。URL由“协议”、“主机和端口”、“文件路径和文件名”组成。(其实还可能包括:参数(可能是用&&符号分隔)、查询(可能用?去分隔定义、片段(用#去分隔,...

Centos7学习笔记(二十)- nginx代理与负载均衡

Centos7学习笔记(二十)- nginx代理与负载均衡

一、代理类型正向代理:-----------为访问客户端服务,dns解析,是在代理端。如科学上网。反向代理:------------为服务器回应请求服务,dns解析,是在客户端本地完成。如多域名反代指向同一IP地址。二、nginx代理支持的协议http--------代理超文本传输协议   -----------http serverhttps--------代理http/https协议 ------------https servertcp -----------代理tcp...

Centos7学习笔记(二十二)- HTTPS

Centos7学习笔记(二十二)- HTTPS

一、http劫持原理首先通过dns污染,将访问的目标服务器,解析到问题服务器。问题服务器上,做nginx代理,利用sub_filter模块,可以匹配并替换原目标服务器上的部分(或全部)内容,以达到广告发布、挂马等目的。最好的防范措施是hosts直接解析,防止污染。二、https原理http原理具体来说,是很复杂的。这里仅简单描述一下它的大致流程——网站服务器先通过向“登记机构”发起“证书签名申请”(CSR),CA机构在获取CSR后,确认无误,将证书颁发给网站服务器,其证书还包括公钥和私钥内容。网...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。