Linux

Linux

一、基础

一、入门

1、介绍

1、Linux主要发行版

Ubuntu乌班图、RedHat红帽、CentOS、Debain蝶变、Fedora、SuSE、OpenSUSE示意图

2、安装vm和Centos

1、先安装vm

官方网址:https://www.vmware.com/cn.html

其他地址:https://www.novmd.com/windows/740.html

2、再安装Linux(CentOS7.6/CentOS8.1)

7.6网址(现在主流):https://vault.centos.org/7.6.1810/isos/x86_64/

http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso

8.1网址(未来主流):http://mirrors.aliyun.com/centos/8.1.1911/isos/x86_64/CentOS-8.1.1911-x86_64-dvd1.iso

全部版本:https://mirrors.163.com/centos/

3、vm和Linux的关系

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C9uXAMgw-1682653914064)(null)]

4、开始安装centos

3、网络连接的三种模式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0VM8o1wf-1682653914793)(null)]

4、虚拟机克隆

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5ygj14t6-1682653917772)(null)]

5、虚拟机快照

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vkwvkM4n-1682653916336)(null)]

6、虚拟机的迁移和删除

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wLTJdnNm-1682653914942)(null)]

7、安装vmtools

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OwloScg3-1682653913968)(null)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BopyXLnO-1682653914243)(null)]

注意要使用root账号进行登录

cd/opt进入到opt目录

tar -zxvf xxx.tar.gz 解压

cd vmware…进入到解压后的目录

8、设置共享文件夹

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0583dNdO-1682653915253)(null)]

9、Linux目录结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p4wpDIiE-1682653915825)(null)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mw7BfDHe-1682653917674)(null)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xys8DEex-1682653914603)(null)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gYDUHxMT-1682653915336)(null)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tzQRAYV1-1682653914876)(null)]

2、实操

1、远程登录到Linux服务器

https://gitcode.net/weixin_57836635/image2/-/raw/93defecc71a50ba028cae7b34e26d73171be365f/img/202209142009766.png

image-20220914200939593

image-20220914201000983

2、安装Xshell6(远程操作)和XFTP6(文件的上传和下载)

下载free-for-home-school版本

下载地址:https://www.netsarang.com/en/free-for-home-school/

目前官网7版本免费提供学生使用

image-20220914203959828

左边为window(主机)的文件系统,右边为Linux系统

image-20220914204908999

怎么解决xftp7中文乱码问题?

在文件->会话属性->选项->编码

选择utf-8即可

小tips:Xshell7中输入命令reboot,能够远程重启Linux系统

3、Vi和Vim编辑器

Linux系统会内置vi文本编辑器

Vim具有程序编辑的能力,可以看作是vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计,代码补完,编译以及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

image-20220914205905009

使用vim编写一个Hello.java程序,保存,步骤说明和演示。

退出编辑模式:按esc按键

进入命令行模式:输入冒号:即可

在命令行模式下输入wq:保存并退出(write and quit)

tab键有快速补全功能

image-20220914211202458

q!强制退出并且不保存

w是保存

q是退出,如果未保存就退出,会有提醒

4、vi和vim的快捷键

image-20220914214021218

粘贴输入P即可

image-20220914215929806

5、开机、重启、和用户登录注销

image-20220914223135704

只输入shotdown默认一分钟后关机

image-20220914223712160

如果在普通用户下切换到root时,输入logout会回退到普通用户

6、用户管理

image-20220914224431770

pwd显示当前在哪个目录

passwd 用户名:为用户设置密码

image-20220914225131359

userdel 用户名 只删除用户,不删除用户家目录

userdel -r 用户名 删除用户以及其家目录

image-20220914225633910

image-20220914225750841

image-20220914230019037

只会显示第一次登录的用户

image-20220914230112349

用户组方便管理,可以统一附加权限

clear清屏

image-20220914231458835

image-20220914231651252

image-20220914232012562

bashell tcshell cshell

组内用户列表被隐藏起来了

7、实用指令
运行级别

image-20220915081556507

image-20220915082312043

找回root密码

image-20220915082917259

1、首先,启动系统,进入开机界面,在界面中按“e”进入编辑界面。如图

2、 进入编辑界面,使用键盘上的上下键把光标往下移动,找到以““Linux16”开头内容所在的行数”,在行的最后面输入:init=/bin/sh。如图

image-20220915083754673

3、 接着,输入完成后,直接按快捷键:Ctrl+x 进入单用户模式

4、 接着,在光标闪烁的位置中输入:mount -o remount,rw /(注意:各个单词间有空格),完成后按键盘的回车键(Enter)。如图

image-20220915083827865

5、 在新的一行最后面输入:passwd, 完成后按键盘的回车键(Enter)。输入密码,然后再次确认密码即可(韩顺平提示: **密码长度最好8****位以上,**但不是必须的), 密码修改成功后,会显示passwd…的样式,说明密码修改成功

6、 接着,在鼠标闪烁的位置中(最后一行中)输入:touch /.autorelabel(注意:touch与 /之间有一个空格),完成后按键盘的回车键(Enter)

7、 继续在光标闪烁的位置中,输入:exec /sbin/init(注意:exec与 /后面有一个空格),完成后按键盘的回车键(Enter),等待系统自动修改密码(韩顺平提示:这个过程时间可能有点长,耐心等待),完成后,系统会自动重启, 新的密码生效

image-20220915083946645

帮助指令

image-20220915084336497

在linux下隐藏文件是以 . 开头的

查看所有文件,方式: ls -a

单列查看文件(详细):ls -l 或ll

也可以组合起来用:如 ls -la 或 ls -al

后面还可以加文件路径进行定位查看 如: ls -la /home

文件目录类

image-20220915085450625

image-20220915090309369

/ 是根目录,根目录下有root和home目录,root目录是root用户的家目录,home下还有其他用户的家目录

image-20220915090834886

image-20220915090905535

创建多级目录:mkdir -p 多级目录路径

image-20220915091221940

image-20220915091454979

image-20220915091547016

cp hello.txt /home/bbb

把cp换成\cp --> 强制不覆盖

image-20220915092320047

image-20220915143316824

也可以移动并重命名

image-20220915145448173

管道命令:把前面的结果交给下一个指令

cat -n /etc/profile | more 【空格下一页,回车键下一行】

image-20220915145831832

image-20220915150059536

image-20220915150446031

输出环境变量:$PATH $HOSTNAME

image-20220915151025400

ctrl+c退出监控

image-20220915152043287

如果指令后面的文件不存在,会自动创建

cal显示当前日历

image-20220915152754228

ln -s/root /home/myroot

删除跟删除文件操作一样

image-20220915201928063

history

history 10

!5

时间日期类

image-20220915202252081

image-20220915203626306

搜素查找类

image-20220915203958020

find /home -name hello.txt

文件大小单位:kMG

find /opt -user nobody

find / size +200

ls -lh:h能够显示文件大小

image-20220915212130026

which指令,可以查看某个指令在哪个目录下,比如ls指令在哪目录

which ls

image-20220915212730660

cat /home/hello.txt | grep -n yes

grep -n yes /home/hello.txt

压缩和解压类

image-20220915213502075

image-20220915213737614

zip -r myhome.zip /home/

image-20220915214549968

tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt

tar -zcvf myhome.tar.gz /home/

tar -zxvf pc.tar.gz

tar -zxvf myhome.tar.gz -C /opt/tmp2/

-C指定位置

Linux组管理和权限管理

特别说明:第二个命令,用户需要有进入到新目录的权限

image-20220917165512138

赋值,添加,删除

文件为绿色代表为可执行文件,即有可执行的权限

image-20220917170220879

image-20220917170452572

修改所在组

image-20220917170858303

递归带上参数:-R

image-20220918093958276

image-20220918095548916

rwx作用于目录?

r代表可以用ls查看目录下内容

x代表可以进入该目录

w代表可以在目录下创建文件/目录,或者删除文件/目录

定时任务调度

image-20220918111154098

image-20220918111414044

每分钟执行一次 : ls -l /etc/ > /tmp/to.txt

image-20220918111743875

image-20220918112317561

image-20220918112512648

image-20220918150839774

案例2:

第一种:写两条命令

第二种:写一个脚本程序my.sh

内容如下

date >> /home/mycal
cal >> /home/mycal

要赋予所有者文件执行权限

chmod u+x my.sh

加入到crond调度

image-20220918151444876

案例3:

crontab -e

0 2 * * * mysqldump -u root -p123456 testdb > /home/db.bak

image-20220918153015636

ps -ef | grep atd 过滤查看当前atd进程是否启动

image-20220918153636679

image-20220918153739723

image-20220918153827189

image-20220918170824829

案例1:

at 5pm + 2 days

/bin/ls /home

案例2:

atq 查看没有执行的任务

案例3:

at 5pm + 1 days

date > /root/date100.log

案例4:

at now + 2 minutes

date > /root/date200.log

案例5:

atrm 编号,删除指定编号的任务

Linux磁盘分区、挂载

image-20220918190340116

image-20220918191506784

image-20220918191524185

lsblk可以查看硬盘分区挂载到目录的情况

image-20220918191821564

带-f 参数

image-20220918192044805

uuid:分区40位唯一标识符

MOUNtPOINT:挂载点

image-20220918192248658

image-20220918192410116

添加硬盘

image-20220918192526733

分区

image-20220918192853588

image-20220918193217682

如果无法删除输入内容就按住CTRL再删除

格式化磁盘

image-20220918193340597

挂载

image-20220918193809538

设置自动永久挂载

image-20220918194148535

磁盘使用情况

image-20220918223413735

image-20220918223905624

image-20220918224453733

1、ls -l /opt | grep “^-” | wc -l

2、ls -l /opt | grep “^d” | wc -l

3、ls -lR /opt | grep “^-” | wc -l

4、ls -lR /opt | grep “^d” | wc -l

5、tree /home/

注意:如果没有tree,则使用yum install tree 安装

8、网络配置

image-20220920084200166

image-20220920084239116

image-20220920084506392

image-20220920084901660

image-20220920084923674

image-20220920085048365

image-20220920085242945

image-20220920090713338

image-20220920090729395

image-20220920090923850

image-20220920091709049

image-20220920091848725

image-20220920092337347

9、进程管理

image-20220920094313207

image-20220920094455273

top指令

image-20220920094753531

image-20220920094915869

image-20220920095345886

image-20220920095400380

image-20220920095658736

查看sshd的父进程信息

ps -ef | grep sshd

image-20220920100423177

案例1:

先查看sshd下非法用户进程对应的进程编号

kill 进程编号

案例2:

查看sshd进程对应的进程编号

kill 进程编号

恢复:/bin/systemctl start sshd.service

案例3:

killall gedit

gedit 是文本编辑器

案例4:

ps -aux | grep bash 查看bash对应进程号

kill -9 进程编号

image-20220920101841645

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NTRQfoWa-1682653909504)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209201022273.png)]

image-20220920102613172

image-20220920103143106

空格修改星好,关闭自启动,tab键退出

image-20220920141323854

image-20220920141524787

image-20220920141834604

把network在3运行级别,关闭自启动

chkconfig --level 3 nerwork off

chkconfig --level 3 network on

image-20220920145751949

对3和5两个级别都生效

systemctl staus firewalld

image-20220920150658941

image-20220920151535709

netstat 可以查看端口信息

10、动态监控进程

image-20220920152312662

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jvTNRhqz-1682653909506)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209201529686.png)]

image-20220920153536082

image-20220920154351169

11、RPM与YUM

image-20220920215821171

image-20220920215856509

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CJy2sglu-1682653909507)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209202201577.png)]

image-20220920220454171

image-20220920220654613

image-20220920221014339

12、搭建JavaEE环境

image-20220920222132787

image-20220920223519999

image-20220920223756583

image-20220920230907217

image-20220920232225676

word文档

  1. 新建文件夹/opt/mysql,并cd进去

  2. 运行wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar,下载mysql安装包

PS:centos7.6自带的类mysql数据库是mariadb,会跟mysql冲突,要先删除。

  1. 运行tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar

  2. 运行rpm -qa|grep mari,查询mariadb相关安装包

  3. 运行rpm -e --nodeps mariadb-libs,卸载

  4. 然后开始真正安装mysql,依次运行以下几条

    rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm

    rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm

    rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm

    rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm

    7.运行systemctl start mysqld.service,启动mysql

    8.然后开始设置root用户密码

    Mysql自动给root用户设置随机密码,运行grep “password” /var/log/mysqld.log可看到当前密码

    9.运行mysql -u root -p,用root用户登录,提示输入密码可用上述的,可以成功登陆进入mysql命令行

    10.设置root密码,对于个人开发环境,如果要设比较简单的密码(生产环境服务器要设复杂密码),可以运行

    set global validate_password_policy=0; 提示密码设置策略

    (validate_password_policy默认值1,)

    11.set password for ‘root’@‘localhost’ =password(‘hspedu100’);

    12.运行flush privileges;使密码设置生效

大数据篇

13、Shell编程

image-20220921092625619

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tkb5nYrU-1682653909509)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209210931836.png)]

image-20220921201039096

image-20220921203115220

image-20220921203347516

shell脚本的多行注释

:<<!
内容
!

image-20220921204137791

image-20220921204530408

image-20220921205039603

如果希望希望将expr的结果赋予某个变量,使用``包含起来

image-20220921205926946

image-20220921210042661

案例1:

if [ "ok" = "ok" ]
then 
   echo "equal"
fi

案例2:

if [ 23 -ge 22]
then
    echo "大于"
fi

案例3:

if [ -f /root/shcode/aaa.txt ]
then 
    echo  "存在"
fi

image-20220921211321894

if [ $1 -ge 60 ]
then 
    echo "及格了"
elif [ $1 -lt 60 ]
then
    echo "不及格"
fi

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-31RCgoCR-1682653909511)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209212125761.png)]

case $1 in
"1")
echo "周一"
;;
"2")
echo "周二"
;;
*)
echo "other..."
;;
esac

image-20220921213136956

案例1:

for i in "$*"
do
    echo "num is $i"
done

输出一次,因为$*把全部参数当作一个整体
for i in "$@"
do
    echo "num is $i"
done

输出多次,因为$@把全部参数分别对待

案例1:

SUM=0
for (( i=1; i<=100; i++ ))
do
	SUM=$[$SUM+$i]
done
	echo "SUM=$SUM"
SUM=0
for (( i=1; i<=$1; i++ ))
do
	SUM=$[$SUM+$i]
done
	echo "SUM=$SUM"

image-20220921214207107

SUM=0
i=1
while [ $i -le $1 ]
do
	SUM=$[$SUM+$i]
	i=$[$i+1]
done
	echo "SUM=$SUM"
	

image-20220921214954762

image-20220921215725047

image-20220921215657103

image-20220921220026983

basename /home/aaa/test.txt .txt

返回 test

image-20220921220239617

dirname /home/aaa/test.txt

image-20220921220342744

案例1:

#定义函数
function getSum() {
	SUM=$[$n1+$n2]
	echo "和是:$SUM"
}
#输入两个数
read -p "请输入第一个数:" n1
read -p "请输入第二个数;" n2

#调用函数
getSum $n1 $n2

image-20220921221007528

image-20220921221023007

image-20220921223635997

image-20220921230632891

14、Ubuntu

image-20220922153344103

安装

image-20220922212012672

image-20220922212040216

image-20220922212605027

15、APT软件管理和远程登录

image-20220922212946720

image-20220922213943070

image-20220922214055256

image-20220922214121239

image-20220922214416624

image-20220922214432573

image-20220922214611879

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vKXnRzLs-1682653909517)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209222153324.png)]

sudo apt-get update

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vuFOPnth-1682653909517)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209222155255.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7SJ48UYD-1682653909517)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209222158429.png)]

image-20220922220349861

image-20220922220827692

image-20220922220844494

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-beWBnGGl-1682653909518)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209222214315.png)]

16、CentOS8.1的使用

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4lopFF8r-1682653909518)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209241629879.png)]

image-20220924162934233

image-20220924165327557

二、高级

1、日志管理

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-poYWoauU-1682653909519)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209241655396.png)]

image-20220924165610174

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QnGruIhM-1682653909519)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209241657567.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9CR4zUUl-1682653909519)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209241702370.png)]

image-20220924170430208

image-20220924171059068

image-20220924171127974

image-20220924171300138

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4qFJ7KJM-1682653909526)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242325950.png)]

vim /etc/rsyslog.conf

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CvgURMuW-1682653909526)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242335235.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xqrU6ghV-1682653909526)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242338992.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qnvJiKyy-1682653909527)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242343156.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UkcHAWHG-1682653909527)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242346005.png)]

image-20220924234719331

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vDpFwDFv-1682653909527)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242349294.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wxNrsqvJ-1682653909527)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242351991.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RneJ9XEs-1682653909528)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209242356833.png)]

2、定制自己的Linux系统

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9hgS3SIu-1682653909528)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251143756.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ExeoX3VF-1682653909528)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251143718.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Cl9Cdr5j-1682653909528)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251144890.png)]

image-20220925114920341

操作步骤:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aTPl1Q2i-1682653909529)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251335976.png)]

3、Linux内核源码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HTlCLSSn-1682653909529)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251420641.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2tB5YbOF-1682653909529)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251422453.png)]

地址:https://www.kernel.org/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uDVfNUop-1682653909529)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251509616.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FvEJRyTY-1682653909529)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251535825.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UVFVugof-1682653909530)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251535044.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sD0lcRS9-1682653909530)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251536922.png)]

地址:https://www.kernel.org/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-huOxOmW6-1682653909530)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251542386.png)]

yum info kernel -q //检测内核版本,显示可以升级的内核

查看当前内核:uname -a

yum update kernel //升级内核

yum list kernel -q 查看已安装的内核

4、Linux系统备份与恢复

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IILRm43S-1682653909530)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251559402.png)]

安装dump:yum -y install dump

安装restore:yum -y install restore

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LJtUmimI-1682653909531)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251603224.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ciRzSTbi-1682653909531)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251607631.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qgBs47u2-1682653909531)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251618491.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HlYrZoJl-1682653909531)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251623508.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6TSFUoLr-1682653909531)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251625441.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ycNgZOB6-1682653909531)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251627170.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z7E5oNUM-1682653909532)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251634936.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zNsnPXXt-1682653909532)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251637631.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bKHHoMBt-1682653909532)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209251641395.png)]

5、Linux可视化管理-----webmin和bt运维工具

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1mLrCSFe-1682653909532)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252247105.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VLfZV4Mf-1682653909532)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252247471.png)]

地址:http://download.webmin.com/download/yum/

命令:wget http://download.webmin.com/download/yum/webmin-1.700-1noarch.rpm

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ua4fgrYR-1682653909533)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252304826.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z2kvbIug-1682653909533)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252313259.png)]

还有任务调度,mysql等

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XDRoDfYh-1682653909533)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252320967.png)]

yum install -y wget安装wget指令

&&先执行前面的在执行后面的

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KEXwzXc0-1682653909533)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252327119.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WEhmjTtB-1682653909533)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252329737.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N5NPB0my-1682653909534)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209252340133.png)]

6、Linux面试题—(腾讯、美团、百度、滴滴)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eo6BzyWI-1682653909534)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262034094.png)]

1、

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tF3GLa64-1682653909534)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262036202.png)]

cut -d ‘/’:以/为分隔符进行截取

sort 排序从小到大,加-nr :排序从大到小

uniq -c 统计次数

2、

netstat -an | grep ESTABLISHED

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yehs7zUP-1682653909534)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262045747.png)]

awk -F " " ‘{print $5}’:以空格为分割符,打印第五部分

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-coqelKBn-1682653909534)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262048521.png)]

一定要先排序再统计再排序

因为uniq -c是根据连续多少个1相同的进行统计的

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-chRsR9Ai-1682653909535)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262051613.png)]

1、

vim /etc/my.cnf

在【mysqld】下写入一句话:skip-grant-tables

重启mysqld服务:service mysqld restart

重新进入mysql,此时无需密码

在mysql数据库中有user表:

use mysql

update user set password=password(‘new_password’) where user=‘root’;
mysql> flush privileges;
mysql >exit;

这样就把密码修改了, 改完了密码之后,需要恢复权限:把之前对/etc/my.cnf的 skip-grant-tables 删掉

然后执行 service mysqld restart;

然后mysql -u root -p

Enter Password :你的新密码;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ScKPVE4z-1682653909535)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262058185.png)]

2、

access.log

192.168.130.21 aaa.html
192.168.130.20 aaa.html
192.168.130.20 aaa.html
192.168.130.20 aaa.html
192.168.130.23 aaa.html
192.168.130.20 aaa.html
192.168.130.25 aaa.html
192.168.130.20 aaa.html
192.168.130.20 aaa.html
192.168.130.25 aaa.html
192.168.130.20 aaa.html

cat access.log | awk -F " " ‘{print $1}’ |sort |uniq -c |sort -nr| head -2

head -2 查看前2行

3、

tcpdump -i ens33 host 192.168.200.1 and port 22 >> /opt/interview/tcpdump.log

4、

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gfJQUwcL-1682653909535)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262110284.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HTu7Mani-1682653909535)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262112909.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZTwYXXow-1682653909535)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262115690.png)]

chattr(change attribute)

chattr +i /etc/passwd/ 锁定

也可以隐藏命令,改名

which命令. which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。. 也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。. 我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:. which 查看可执行文件的位置。. whereis 查看文件的位置。. locate 配合数据库查看文件位置。. find 实际搜寻硬盘查询文件名称。. which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eEZwQxzi-1682653909536)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262125597.png)]

chattr -i /etc/passwd:解锁

Tripwire官网:https://www.tripwire.com/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jxiIQzQX-1682653909536)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262133113.png)]

1、能读,不能修改,能删除

2、不能,进不去目录

3、能读,不能修改,不能删除

4、能读,不能修改,能删除

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Zp4GCBRa-1682653909536)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262145962.png)]

看word笔记

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-45tGjnVa-1682653909536)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262154066.png)]

1、

netstat //网络状态监控

top //系统运行状态

lsblk //查看硬盘分区

find //查看

ps -aux 查看运行进程

chkconfig //查看服务启动状态

systemctl //管理系统服务器

2、

top

iotop (yum install iotop)

df -lh

netstat -tunlp

ps -aux

3、

cat t2.txt | awk -F " " ‘{sum+=$2} END {print sum}’

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ehYdVBeE-1682653909537)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262204139.png)]

1、

if [ -f 文件名 ] then echo “存在” else echo “不存在” fi

2、

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MBGu3IqG-1682653909537)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262209578.png)]

3、

grep -r “cat” /home | cut -d “:” -f 1

4、

find /home -name “*.*” | xargs wc -l

xargs显示行数和总行数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-djgRGG0y-1682653909537)(https://gitcode.net/weixin_57836635/md-img/-/raw/master/img/202209262221055.png)]

1、Nginx、Haproxy、keepalived、LVS

2、

vim mail.sh

#!/bin/bash
ca /var/spool/ && /bin/tar zcvf /home/mail-`date +%Y-%m-%d_%H%M%S`.tar.gz mail/

crontab -e

30 20 * * * /root/mail.sh

3、

①对linux的架构的优化,和原则分析(示意图)

②对linux系统本身的优化-规则

  1. 不用root,使用sudo提升权限
  2. 定时的自动更新服务升级,使用npdate npt1.aliyun.com,让crond定时更新
  3. 配置yum源,指向国内镜像(清华,163)
  4. 配置合理的防火墙策略,打开必要的端口,关闭不必要的端口
  5. 打开最大文件数(调整文件描述的数量)vim /etc/profile ulimit -SHn 65535
  6. 配置合理的监控策略
  7. 配置合理的系统重要文件的备份策略
  8. 对安装的软件进优化,比如Nginx,apache
  9. 对内核参数进行优化 /etc/sysctl.conf
  10. 锁定一些重要的系统文件 chattr /etc/passwd /etc/shadow /etc/inittab
  11. 禁用不必要的服务 setup,ntsysv
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值