linux 大总结[通俗易懂]

linux 大总结[通俗易懂]1.Linux介绍Linux内核最初只是由芬兰人林纳斯·托瓦兹(LinusTorvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。目前市面上较

大家好,又见面了,我是你们的朋友全栈君。

1.Linux介绍

Linux 内核最初只是由芬兰人林纳斯·托瓦兹( Linus Torvalds) 在赫尔辛基大学上学时出于个人爱好而编写的。 Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。 Linux 能运 行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。 Linux 继承 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、 Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等,其中以 centos在企业中使用最广。

linux 大总结[通俗易懂]

linux 大总结[通俗易懂]

2.Centos 安装

1)下载地址

官网下载链接: http://isoredirect.centos.org/centos/7/isos/x86_64/

阿里云站点: http://mirrors.aliyun.com/centos/7/isos/x86_64/

2)安装 VMWARE15.5

  参考地址:https://blog.csdn.net/weixin_43921994/article/details/105765088

vmware是一个虚拟化工具,它可以安装在我们windows,然后在 vmware里安装 linux系统

3)在VMWARE中安装linux系统

第一步 :选择创建新的虚拟机

linux 大总结[通俗易懂]

第二步:选择默认典型,下一步

linux 大总结[通俗易懂]

第三步:选择默认的稍后安装操作系统

linux 大总结[通俗易懂]

第四步:选择linux和对应的安装版本

linux 大总结[通俗易懂]

第五步:安装位置选择资源充足的盘

linux 大总结[通俗易懂]

第六步:磁盘大小更改成40G,大数据组件需要较多的存储,资源不充足最少 20G

linux 大总结[通俗易懂]

linux 大总结[通俗易懂]

第七步:完成之后界面

linux 大总结[通俗易懂]

第八步:选择上面虚拟机中的设置修改

linux 大总结[通俗易懂]

#内存:改为 2-4GB(电脑总内存 8GB就每台给 2G,电脑内存 16GB就每台给 4G)

#CPU:可以选择1*2或 2*2核心的配置

#ISO 镜像选择 :一定选择自己准备的ISO镜像的路径

#网络:此处选择 nat模

linux 大总结[通俗易懂]

第九步:选择第一行的install安装

默认进入选型是第二个,用鼠标左键点入进入黑窗口,按键盘的向上键跳到第一行,选择Enter确认安装想要把鼠标跳出黑窗口,按ctrl+alt键

linux 大总结[通俗易懂]

第十步:等待出现这个界面,选择英文即可

linux 大总结[通俗易懂]

第十一步进入配置修改界面

#修改时间,日期,时区选择亚洲上海,选择左上角 done保存退出

#更改安装包的方式,默认 mininal安装代表最小化;更改安装方式为 GNOME desktop(这是桌面化安装生产机房一般采专用此方式 ),完成后左 上角选择 done。

linux 大总结[通俗易懂]

#配置 hosts主机名和网络,此处我们只设置一下 host名字,进入系统后采用命令行的方式修改也可以

我们将host名设置为 node01,选择 apply应用,左上角 done退出。其中 ens33是网卡的名字

linux 大总结[通俗易懂]

第十二步:选择右下角开始安装

linux 大总结[通俗易懂]

第十三步:设置root用户密码和普通用户的密码

#更改 root密码: ********

#设置普通用户名称 test,密码 *********

linux 大总结[通俗易懂]

第十四步:等待安装

linux 大总结[通俗易懂]

第十五步:安装完成,选择reboot重启

linux 大总结[通俗易懂]

#设置 lisense许可证

linux 大总结[通俗易懂]

第十六步:一路next

linux 大总结[通俗易懂]

4)网络配置

选择虚拟网络编辑器

linux 大总结[通俗易懂]

选择 nat模式,然后点击右下角的更改设置

设置子网 IP:192.168.52.0

子网掩码:255.255.255.0

linux 大总结[通俗易懂]

linux 大总结[通俗易懂]

linux 大总结[通俗易懂]

个人电脑网络设置:找到网络连接中的VMnet8

linux 大总结[通俗易懂]

网卡设置:#vim /etc/sysconfig/network-scripts/ifcfg-ens33 进入网卡设置

编辑

TYPE=Ethernet 
PROXY_METHOD=none 
BROWSER_ONLY=no 
#需编辑
BOOTPROTO=static 
DEFROUTE=yes 
IPV4_FAILURE_FATAL=no 
IPV6INIT=yes 
IPV6_AUTOCONF=yes 
IPV6_DEFROUTE=yes 
IPV6_FAILURE_FATAL=no 
IPV6_ADDR_GEN_MODE=stable-privacy 
NAME=ens33 
UUID=4f81f256-131f-4fdb-9365-1ae4c7882aa2 
DEVICE=ens33 

#需编辑
ONBOOT=yes 
IPADDR=192.168.52.100 
NETMASK=255.255.255.0 
GATEWAY=192.168.52.1 DNS1=8.8.8.8

#重启网卡 service network restart

测试网络是否连通外网:ping www.baidu.com

到此 centos7.4安装完成,网络也配置成功

5)Linux远程连接工具

Linux系统中是通过 SSH服务实现的远程登录功能,默认 ssh服 务端口号为 22。Window系统上Linux 远程登录客户端有 SecureCRT, Putty, SSH Secure Shell,XShell等

SecureCRT安装:https://blog.csdn.net/qq_39052513/article/details/100272502

3.Linux文件与目录结构

1)文件

Linux系统中一切皆文件

2)目录结构

linux 大总结[通俗易懂]

4.linux中文本编辑器

vim是从 vi 发展出来的一个文本编辑器 。代码补完、编译及错误跳转等方便编程的功能特别丰富

1.进入插入模式
    i: 插入光标前一个字符
    I: 插入行首
    a: 插入光标后一个字符
    A: 插入行未 
    o: 向下新开一行 ,插入行首
    O: 向上新开一行 ,插入行首
2.进入末行模式
    在命令模式下 ,用户按 “:”键即可进入末行模式
3.退出   
    :q 退出 
    :q! 退出并不保存
    :w 保存 :wq 保存并退出
    :x 保存并退出
4.查找命令
    /: str查找 
    n: 下一个
    N:上一个
5.替换命令
    把 abc全部替换成 123
    :%s/abc/123/g---末行模式下,将当前文件中的所有 abc替换成 123。如果不使用 g, 则只会替换每一行的第一个 abc
    :1, 10s/abc/123/g---末行模式下,将第一行至第 10行之间的 abc替换成 123
6.vim里面执行shell下命令
    末行模式里输入 !,后面跟命令
7.进入命令模式
    ESC:从插入模式或末行模式进入命令模式
8.移动光标
    h: 左移 
    j: 下移 
    k: 上移 
    l: 右移 
    M: 光标移动到当前屏幕的中间行
    L: 光标移动到当前屏幕最后一行行首
    gg: 光标移动 文件开头
    G: 光标移动到文件末尾
    G: 移动到指定行 ,行号 G (扩展:打开文件时跳转指定行 ,vi 文件名 +行数 ) 
    w: 向后一次移动一个字
    b: 向前一次移动一个字
    {: 按段移动 ,上移 
    }: 按段移动 ,下移 
    Ctr-d: 向下翻半屏
    Ctr-u: 向上翻半屏
    Ctr-f: 向下翻一屏
    Ctr-b: 向上翻一屏
9.撤销命令
    u: 一步一步撤销
    Ctr-r: 反撤销
10.删除命令
    x: 删除光标后一个字符 ,相当于 Del 
    X: 删除光标前一个字符 ,相当于 Backspace 
    dd: 删除光标所在行 ,n dd 删除指定的行数
    D: 删除光标后本行所有内容 ,包含光标所在字符
    d0: 删除光标前本行所有内容 ,不包含光标所在字符
    dw: 删除光标开始位置的字 ,包含光标所在字符
11.复制粘贴
    yy: 复制当前行 ,n yy 复制 n 行 
    p: 在光标所在位置向下新开辟一行 ,粘贴
12.替换操作
    r: 替换当前字符
    R: 替换当前行光标后的字符
13.文本行移动
    >>: 文本行右移
    <<: 文本行左移
14.重复命令
    .: 重复上一次操作的命令
15.可视模式
    v: 按字符移动 ,选中文本
    V: 按行移动 ,选中文本可视模式可以配合 d, y, >>, << 实现对文本块的删除 ,复制 ,左右移动

5.linux常用基本命令

1)基础快捷键

ctrl + c 停止进程 
ctrl+l 清屏;彻底清屏是: reset 
ctrl + q 退出 
善于用 tab键补全 提示 (更重要的是可以防止敲错 ) 
上下键 查找执行过的命令
ctrl +alt

2)文件命令

#pwd 显示当前工作目录的绝对路径
#ls,ll,ll -a 
#cd 进入到某一个目录下
#mkdir 创建文件夹 
#rmdir 删除文件夹 
#touch 创建文件 
#cp 复制文件 /文件夹 
#cp -r 递归复制,多级目录
#mv 移动文件 夹/重命名
#rm 删除文件 
#rm -rf 强制删除文件不需要确认
#cat 查看文件
#more 查看文件
#less 查看文件
#echo 输出 #head 查看文件头部
#tail 查看文件末尾
#tail -f 实时查看文件末尾
#nl 文件带行号标准输出
# > 覆盖 
# >> 追加
#ln -s 目标目录 软链接地址 创建 软链接
rm -rf 软链接地址 删除软连接
ln -snf 新目标目录 软链接地址 修改软连接
# history 查看已经执行过历史命令

3)文本处理类命令

wc [option] [file]... 
    -l: 统计行数 
    -c: 统计字节数 
    -w;统计单词数

tr: 转换字符或删除字符 
    tr '集合 1' '集合 2' 
    tr -d '字符集合 '

cut:
    -d字符:指定分隔符   
    -f#: 指定要显示字段   
    单个数字:一个字段   
    逗号分隔的多个数字:指定多个离散字段   
    -:连续字段,如 3-5;
    例子:cut test.txt -f "1,3" -d " "------# 以空格分开每一行并输出第 1个和第 3个字段

sort [option] file... 
    -f: 忽略字符大小写;
    -n: 比较数值大小;
    -t: 指定分隔符 
    -k: 指定分隔后进行比较字段
    -u: 重复的行,只显示一次;
uniq:移除重复的行
    -c:显示每行重复的次数
    -d:仅显示重复过的行
    -u: 仅显示不曾重复的行


4)系统信息命令

#date 查看当前系统时间
#data -s 修改时间 
#w 显示登陆用户
#uname -a 查看系统内核
#cat /proc/cpuinfo 查看 cpu信息 
#cat /proc/meminfo 查

5)压缩/解压命令

#tar -xvf file.tar 解压 .tar结尾的 
#tar -zxvf file.tar.gz 解压 .tar.gz文件 
#tar -cf file.tar file 创建包含 files的文件 file.tar 
#gzip -d file.gz 将 file.gz解压缩为 file

6)网络命令

#ping host(主机名 ) 网络是否连通 
#telnet ip 端口  网络是否连通
#curl url 调用
#ifconfig 查看本机 ip等信息
#telnet ip 端口 查看端口是否占用
(没有这个命令执行 yum -y install telnet ) 
#wget file 下载文件 
#tcpdump tcp port 端口 抓包 tcp
#hostname  查看主机名

7)权限命令

1.文件权限命令:
#chmod 777 file 为所有用户添加读,写,执行权限
#chmod 755 file 为所有者添加 rwx权限,为组和其他用户添加
rx权限 
2.文件所属用户和用户组权限命令:
#chown hadoop:hadoop file 将 file的用户和用户组都改为 hadoop

8)用户管理命令

useradd 用户名 添加新用户 
useradd -g 组名 用户名 给某个组创建用户
passwd 用户名 设置用户密码 
cat /etc/passwd 查看创建了那些用户
Su 用户名 切换用户 
userdel 用户名 删除用户但保存用户主目录
userdel -r 用户名 用户和用户主目录,都删除
whoami 显示自身用户名称
who am i 显示登录用户的用户名
usermod -g 更改用户组 用户名


例子:
2.修改配置文件
[root@hadoop101 ~]#vi /etc/sudoers 修改 /etc/sudoers 文件,找到下面一行 (91行),在 root下面添加一行,
如下所示:
## Allow root to run any commands anywhere 
root ALL=(ALL) ALL 
hadoopALL=(ALL) ALL 
或者配置成采用 sudo命令时,不需要输入密码
## Allow root to run any commands anywhere 
root ALL=(ALL) ALL 
hadoopALL=(ALL) NOPASSWD:ALL 
修改完毕,现在可以用 hadoop帐号登录,然后用命令 sudo ,即可 获得 root权限进行操作。

9)用户组管理命令

groupadd 组名 添加组
groupdel 组名 删除组
groupmod -n 新组名 老组名 指定工作组的新组名
cat /etc/group 查看创建了哪些组

10)搜索查找命令

1.find查找文件或者目录
    常用: find / -name file 查找 /目录下 file文件
2.grep 过滤查找及“ “|”管道符 (详细使用见下一章中的 grepgrep)
    1.管道符,“ ,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
    2.grep常常跟在 |的后面做过滤查找
    3.反转 grep -v 
    4.示例 
        #查找某文件在第几行 ls | grep -n test 
        #查找某进程 ps -ef | grep PID 
        #查看日志中含有 errer cat file |grep error
3.which 查找命令
    white 命令

11)磁盘分区挂载命令

df -h 查看磁盘使用 /剩余空间 
fdisk -l 磁盘分区
mount 挂载
umount 卸载

12)进程管理命令

UID 用户 ID 
PID 进程 ID 
ps aux | grep xxx 查看系统中所有进程
ps -ef | grep xxx 可以查看子父进程之间的关系
kill -9 PID 强制杀死进程
top 查看所有进程 /cpu/内存 /负载 
netstat -anp |grep 进程号 查看该进程网络信息
netstat -nlp | grep 端口号 查看网络端口号占用情况

13)crond系统定时任务

Crontab -e 编辑定时文件

参考文档:https://blog.csdn.net/qq_22172133/article/details/81263736

14)rpm包管理与yum管理

1.rpm相关命令:
rpm -qa|grep 包名 查找已经安装的 rpm某包 
rpm -ivh 包名 安装 rpm包 
rpm -e 包名 删除 rpm包 
rpm -e -- nodeps 软件包 删除 rpm包不检查依赖
2.yum源管理:详情见链接文档
https://blog.csdn.net/qingfenggege/article/details/80394564 
3.yum在线安装 lrzsz上传下载工具
yum -y install lrzsz

15)ssh免密

1.ssh是什么? 
SSH(SecureShell),是建立在应用层基础上的安全协议,其 SSH客户端适用于多种平台,可以有效防止远程管理过程中的信息泄露问题。
2.配置 hadoop用户 ssh免密: 
ssh-keygen -t rsa 
三台机器在 hadoop用户下,执行以下命令将公钥拷贝到 node01服 务器上面去
ssh-copy-id node01 
node01在 hadoop用户下,执行以下命令,将 authorized_keys拷贝 到 node02与 node03服务器 
cd /home/hadoop/.ssh/ scp authorized_keys node02:$PWD
scp authorized_keys node03:$PWD

16)防火墙

systemctl stop firewalld.service 关闭防火墙
systemctl status firewalld.service 查看防火墙状态
systemctl disable firewalld.service 禁止开启启动防火墙

6.linux实用故障排查

1)排查思路

大数据集群运行在linux系统上总会遇见各种各样的问题,我们要定位问题,基本从这几个方面入手排查: cpu, 内存,磁盘 IO,网络, GC等。

2) cpu

一些概念:多核,超线程,CPU频率( 2.2GHZ)(节能模式,普通模式,超能模式,bios里设置, 搭集群要注意下这个参数尽量关闭节能模式) bios里可以关闭 。

#1 查看物理 CPU个数
cat /proc/cpuinfo |grep “physical id”|sort |uniq|wc -l

#2查看逻辑 cpu个数
cat /proc/cpuinfo |grep “processor”|wc -l

#3 在生产集群中我们通常通过 top来查看 cpu的使用率来判断系统
的负载情况 ,Top 然后按 1,可以看到 cpu的使用率

3)内存

#1,常见内存大小 64 G— 128G– 256G— 512G,通过 free -g来查看系 统内存是否不足

4)磁盘IO

#1磁盘种类:
sata(150M/s左右 ) sas(300 M/S左右) ssd(最快也最贵)一般磁盘 2T-4T,服务器支持的最大存储也不同,比较常见的 48T,一 般服务器可以支持 12-24块盘 。

#2磁盘 io的查看: 可以定位是否是因为 io过大导致性能下降
iostat -mx 2
如果没有这个命令:yum install -y sysstat

#3 df -h 查看磁盘空间

#4 df -T 查看磁盘的格式化的格式,主流一般是 xfs和 ext4,系统盘默认是 xfs,后续添加数据盘尽量也是 xfs格式这样统一比较好,也方便写脚本批量挂盘

#5 lsblk 能够查看盘与分区以及 ssd盘,用 fdisk查看盘可能识别不到ssd

#6 fdisk -l 查看磁盘与未挂载的磁盘和分区信息

#7 cat /etc/fstab 查看磁盘挂载信息,新加磁盘要手动永久挂在需要在这个配置文件里添加, 6列。如果这个文件写错了,重启服务器正常模式下是启动不了的!!!

5)网络

#1 查看是否 ping通:ping IP

#2 查看某端口是否被监听
示例:比如你起启动datanode没有启动,查看日志报错: Address in used ,翻译过来就是端口被占用,那你得查看下这个端口被哪个程序占用了,就用 netatat -anp|grep 端口号,就可以知道它的进程,比如下图进程pid就是 107484,就可以用 kill -9 PID强制杀死

#3网卡模式配置( bound6,负载均衡

6)系统负载

Top
Uptime
W
cat /proc/loadavg

7)GC问题

#1是否 full GC(GC是 java里面 JVM的东西,不了解的可以去看下)
Jps查出要查看的 pid,用 jstat -gcutil pid,看第四列 O如果 100%就是 fullGC

8)日志查看

#1首先要知道日志的位置 ,一种是去配置文件查看有没有配置相关位置,一种是去通过进程查看如下 用 ps -ef |grep pid通过显示出来的信息可以找到日志的位置 。

# 2查看日志
实时查看日志文件后100行: tail -f 100 file
静态查看:vim filelog,然后 可以通过关键字 error/warn等查

7.linux运维之生产监控工具

1.zabbix:https://blog.51cto.com/u_14154700/2419934

2.nagios(网络监控):https://www.cnblogs.com/52-qq/p/9773880.html

3.Prometheus(普罗米修斯 ):https://blog.csdn.net/csolo/article/details/82460539

4.ganglia (hadoop集群监控常用工具):https://www.cnblogs.com/marility/p/9444357.html

8.自动化运维工具ansible与pdsh

https://www.cnblogs.com/keerya/p/7987886.html#_label2_0_1

https://blog.csdn.net/weixin_42193400/article/details/82148974

9.并行管理工具 pdsh与 pssh

相关文档:https://www.cnblogs.com/goldenblade/p/9604642.html

10.linux知识点扩展

1)运行级别

运行级别 0:系统停机状态,系统默认运行级别不能设为 0,否则不能正常启动
运行级别 1:单用户工作状态 root权限,用于系统维护,禁止远程登陆运行级别

2:多用户状态 (没有 NFS) 运行级别

3:完全的多用户状态 (有 NFS),登陆后进入控制台命令行模式运行级别

4:系统未使用,保留运行级别

5:X11控制台,登陆后进入图形 GUI模式 运行级别 6:系统正常关闭并重启,默认运行级别不设为

6,否则不能正常启动

2)运行级别原理

1.在目录 /etc/rc.d/init.d下有许多服务器脚本程序,一般称为服务(service)

2.在/etc/rc.d下有 7个名为 rcN.d的目录,对应系统的 7个运行级别

3.rcN.d目录下都是一些符号链接文件,这些链接文件都指向 init.d目 录下的 service脚本文件,命名规则为 K+nn+服务名或 S+nn+服务名,其中 nn为两位数字。
4。系统会根据指定的运行级别进入对应的 rcN.d目录,并按照文件名顺序检索目录下的链接文件
对于以 K开头的文件,系统将终止对应的服务对于以 S开头的文件,系统将启动对应的服务
5。查看运行级别用: runlevel

6。进入其它运行级别用: init N

7。另外 init0为关机, init 6为重启系统
        由于现在的 Linux系统安装完后就运行在第 5个级别,即系统启动后直接进入图形界面,而不用在字符模式下登录后用 startx或者 xinit 来起动图形界面。建议在系统安装完成后把系统的默认运行等级设置在第 3级,在字符终端登录后,再手工输入 startx 命令起动图 形界面。可以用如下的方法修改:

用文本编辑器修改 /etc/inittab文件:

把代码 : id:5:initdefault:这一行,修改成代码 : id:3:initdefault:保存后就 reboot重起,系统就默认起动到字符界面。不同运行级别之间的 差别的在于系 统默认起动的服务的不同,如运行级别 3默认不启动 X图形界面服务,而运行级别 5 却默认起动。

本质上是没有区别的,更无所谓不同级别间功能强弱的问题。用户完全可自给定义不同级别的默认服务。在任何运行级别,用户都可用 init 命令来切换到其他运行级别。

3)开机过程

通电 ->BIOS->MBR->GRUB->Kernel->/sbin/init->Runlevel

1.BIOS

BIOS: Basic Input/Output System 执行系统完整性检查,从软盘,光盘,硬盘中查找 boot loader(取决与你的启动顺序)BIOS的主要功能就是搜索并加载执行 MBR boot loader程序

2.MBR

MBR: Master Boot Record. MBR位于主盘的第一快扇区,如 :/dev/hda或者 /dev/sda.MBR共 512bytes. 1-446bytes存放主要的 boot loader信息, 447~510bytes存放 分区表信息,最后 2个 bytes存放 mbr验证信息。MBR包含 GRUB信息。(或者 LILO信息) MBR 的主要功能就是加载并执行 GRUB boot loader。

3.GRUB

GRUB:Grand Unified Bootloader. 如果你有多个 kernel p_w_picpaths安装在你的系统中,你可以通过GRUB选择那个被执行。GRUB启动的时候会有个选择界面,几秒钟没有任何输入的话,将会
加载你 GRUB配置文件中指定的默认 kernel p_w_picpath 。

GRUB的配置文件:/boot/grub/grub.conf (/etc/grub.conf is a link to this).

GRUB 的主要功能就是加载并执行 Kernel and initrd p_w_picpaths.

4.Kernel

挂载 grub.conf 中指定 “root=” 的根目录
执行 /sbin/init 程序 因为 /sbin/init 是 LINUX kernel执行的第一程序,理所当然 /sbin/init 的 PID为 1. ‘ps -ef | grep init’ 命令可以验证 .

initrd: Initial RAM Disk. 在 kernel完全起来, root文件系统被挂载之前, initrd被 kernel当做 临时 root文件系统。当然 initrd还包含了一些编译好的驱动,这些驱动用来在启动的时候访问硬件。

5.Init

查看 /etc/inittab配置文件来决定 Linux的运行( run level)。

LINUX的运行级别:
0 – halt (关机 )

1 – Single user mode (单用户模式 )

2 – Multiuser, without NFS (多用户模式 ,无网络 )

3 – Full multiuser mode (多用户模式 ,有网络 ,无图形界面 )

4 – unused (没用 ,用户自定义 )

5 – X11 (多用户模式 ,有网络 ,有图形界面 )

6– reboot (重启 )

Init从/etc/inittab配置文件中得到默认启动级别,然后加载并执行相应级别的程序 . 执行 ‘grep initdefault /etc/inittab’ 命令可得到你系统的默认启动级别 。

6.Runlevel programs

当 LINUX系统启动完成后,你会发现许多的服务进程也启动了,例如:“starting sendmail …. OK”. 这些服务程序都放在相应 LINUX系 统启动级别的文件夹下面。根据你 LINUX默认启动级别,系统将会执行以下其中一个文件架下面的服务程序:

Run level 0 – /etc/rc.d/rc0.d/

Run level 1 – /etc/rc.d/rc1.d/

Run level 2 – /etc/rc.d/rc2.d/

Run level 3 – /etc/rc.d/rc3.d/

Run level 4 – /etc/rc.d/rc4.d/

Run level 5 – /etc/rc.d/rc5.d/

Run level 6 – /etc/rc.d/rc6.d/

11.linux的零拷贝

参考文档:https://www.cnblogs.com/skying555/p/11122072.html

“零拷贝 ” 描述的是 CPU不执行拷贝数据从一块内存区域到另一块区域的任务的计算机操作。它通常用于在网络上传输文件时节省 CPU周期和内存带宽。简单来说,零拷贝就是一种避免 CPU 将数据从一 块存储拷贝到另外一块存储的技术。
“零拷贝 ”正是通过消除这些 多余的拷贝来提升性能的 。在数据传输的过程中, 避免数据在内核空间缓冲区和用户空间缓冲区之间进行拷贝 ,以及数据在内核空间缓冲区内的 CPU拷贝 。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134133.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • matlab plot函数详解_matlab floor函数用法

    matlab plot函数详解_matlab floor函数用法plot是绘制二维图形的最基本函数,它是针对向量或矩阵的列来绘制曲线的。也就是说,使用plot函数之前,必须首先定义好曲线上每一点的x及y坐标。1.plot(x)当x为一向量时,以x元素的值为纵坐标,x的序号为横坐标值绘制曲线。当x为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线。2.plot(x,y)以x元素为横坐标值,y元素为纵坐标值绘制曲线3….

  • 利用python建立股票量化交易系统(一)——小市值选股票模型[通俗易懂]

    利用python建立股票量化交易系统(一)——小市值选股票模型[通俗易懂]从今天开始正式开启我的博客之旅,博客内容全部是我自己的量化心得,主要还是为自己将来中工作之中遇到相似问题,可以方便的找到答案,如果能帮到有相似问题的其他同学,我也很开心,如果帮不到的话,不喜勿喷,如果文章中有什么不对的地方,欢迎批评指正。建立第一个简单的量化模型——小市值选股票模型。思路:在A股市场之中,在每个月月底的时候,按照市值排名,选择最小市值的10只股票买入,持有到下个月月底…

  • pycharm打包python项目_pycharm 打包与在线上传文件「建议收藏」

    pycharm打包python项目_pycharm 打包与在线上传文件「建议收藏」大致分为以下两部分1.本地操作将包文件按照标准格式进行规范处理、打包备份项目开发过程中:经常会涉及到备份操作常规:通过tar命令,将程序文件压缩备份较常见:可以通过系统提供的打包操作,将文件自动按照标准化格式存储2.远程操作[专门用于协同]将包文件进行标准化构建将包文件进行打包处理上传发布到网络上具体操作以下以一个例子作为说明image.png1。在包文件中,添加一个构建模块setup.pyim…

  • go语言runtime_中台怎么理解

    go语言runtime_中台怎么理解funcCaller(skipint)(pcuintptr,filestring,lineint,okbool)参数:skip是要提升的堆栈帧数,0-当前函数,1-上一层函数,….返回值:pc是uintptr这个返回的是函数指针file是函数所在文件名目录line所在行号ok是否可…

    2022年10月25日
  • 关系数据库的设计_关系型数据库的设计原则

    关系数据库的设计_关系型数据库的设计原则1、设计一个合适的关系数据库系统的关键是关系数据库模式的设计,即应构造几个关系模式, 每个模式有哪些属性,怎样将这些相互关联的关系模式组建成一个适合的关系模型,关系数据库 的设计必须在关系数据库设计理论的指导下进行。2、关系数据库设计理论有三个方面的内容:函数依赖、范式和模式设计。函数依赖起核心作用, 它是模式分解和模式设计的基础,范式是模式分解的标准。【例1】设计一个学生课程数据库,其关系…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号