linux入门之必掌握知识点

#1024程序员节|征文#

在这里插入图片描述

Linux基础

top命令详解

top命令是用来查看进程系统资源使用情况的工具,它可以动态的现实。

top命令执行后,按大写M可以按内存使用情况进行排序,大写P可以按CPU使用情况进行排序,大写H可以显示线程数,数据1可以查看CPU个数

第一行:任务队列信息,同uptime命令执行效果

15:08:00 up 17:56, 3 users, load average: 0.19, 0.08, 0.07

当前时间;系统运行时间;当前登录用户数;系统负载(1分钟、5分钟、15分钟前到现在的系统平均负载)

第二行、第三行:进程和CPU的信息

Tasks: 111 total,   1 running, 110 sleeping,   0 stopped,   0 zombie

进程信息:进程总数;正在运行的进程数;睡眠的进程数;停止的进程数;僵尸进程数

%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

CPU信息:用户空间占用CPU的百分比;内核空间占用CPU百分比;用户进程空间内改变过优先级的进程占用CPU百分比;空闲的CPU百分比;等待输入输出的CPU时间百分比;硬件CPU中断占用百分比;软中断占用百分比;虚拟机占用百分比

第四行、第五行:内存信息

KiB Mem :   995896 total,   448676 free,   251164 used,   296056 buff/cache

内存:物理内存总量;空闲内存总量;使用的物理内存总量;用作缓存的内存总量

KiB Swap:  2097148 total,  2097148 free,        0 used.   587380 avail Mem 

交换区:交换区总量;空闲交换区总量;已使用的交换区总量;还可以给其他程序使用的内存

进程信息区:

PID:进程ID

USER:进程所有者的用户名

PR:优先级

NI:nice值(负值表示高优先级,正值表示低优先级)

VIRT:进程使用的虚拟内存总量(kb)

RES:进程使用的、未被换出的物理内存的大小(kb)

SHR:共享内存大小(kb)

S:进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)

%CPU:上次更新到现在的CPU时间占用百分比

%MEM:进程使用的物理内存百分比

TIME+:进程使用的CPU时间总计

COMMAND:命令名/命令行

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND    9 root      20   0       0      0      0 S  0.3  0.0   0:11.57 rcu_sched  4430 root      20   0  134024   3344   2072 S  0.3  0.3   0:04.97 keepalived 

用过哪些常见命令

1.文件操作类命令:cat、chmod、chown、cp、mv、file、find、grep、sed、awk、less、more(有进度条,自动退出)

2.压缩与备份类命令:gzip、gunzip、tar、bzip2、bunzip2、zip、unzip

3.磁盘操作类命令:cd、pwd、df(显示磁盘大小)、du(显示目录或文件大小)、ls、mkdir、tree(树状图显示目录内容)、pstree(树状图显示进程信息)

4.系统操作类命令:alias、unalias、date、exit、export(显示环境变量)、free、hostname、id(显示用户标识)、kill、passed、reboot、shutdown、top、dstat、glances、nethogs

5.网络通信类命令:netstat、ps、ss、ping、ssh、wget

Linux中进程之间的状态

1.TASK_RUNNING:可运行状态,处于该状态的进程可以被调度执行而成为当前进程.

2.TASK_INTERRUPTIBLE:可中断睡眠状态,处于该状态的进程在所需资源有效时被唤醒,也可以通过信号或者定时中断唤醒.

3.TASK_UNINTERRUPTIBLE:不可中断睡眠状态,处于该状态的进程仅当所需资源有效时被唤醒.

4.TASK_ZOMBLE:僵尸状态,表示进程结束且释放资源.但其task_struct仍未释放.

5.TASK_STOPPED:暂停状态.处于该状态的进程通过其他进程的信号才能被唤醒

软链接和硬链接的区别

1.创建方式

    软链接的创建方式:ln -s target link_name (软链接可以链接文件也可以链接文件夹,经常用来链接文件夹)硬链接的创建方式:ln target link_name (硬链接只能链接文件,不能链接文件夹)

2.硬链接:

    相当于起了个别名。不会创建新的inode号,链接文件和源文件共用一个inode号,只是源文件的引用数加一;如果删除源文件,链接文件仍然可以使用 ;链接文件和源文件的文件类型相同;硬链接不能跨文件系统,软链接可以;不可以对不存在的文件和目录创建硬链接;

3.软链接:

    相当于Windows桌面上的快捷方式。会创建新的inode号,源文件和链接文件的inode号不相同;源文件的链接数不变,链接文件的链接数为1(不会被上一层引用);源文件和链接文件的文件类型不同,软链接文件权限为777,文件属性有标识,访问权限真正取决于源文件权限;删除源文件,链接文件就访问不了了;可以对不存在的文件和目录创建软链接;

硬链接和软连接的原理

硬链接其实就是新建目录项和原文件指向同一个inode。软连接:新建了一个文件,只是这个文件的data数据指向原文件的路径。因为硬链接连接其实就是创建一个新的目录项,指向同一个inode,所以删除原文件的时候,就是删除原文件的目录项信息,但是硬链接指向的inode号还是在那里的,所以还能访问得到;但是如果删除软连接,软连接是从头到尾生成一个全新的文件,这个文件里面的内容指向是指向以前的源文件的目录、路径,原文件的目录、路径被删除之后就获取不到,原文件的目录项被删除之后,软连接就获取不到数据了。

软中断和硬中断的区别

1、硬中断是由外部事件引起的因此具有随机性和突发性;软中断是执行中断指令产生的,无外面事件中断请求信号,因此软中断的发生不是随机的而是由程序安排好的。

2、硬中断的中断号是由中断控制器提供的(NMI硬中断号系统指定的为02h);软中断的中断号是由指令直接给出的,无需使用中断控制器。

3、硬中断的中断响应周期,CPU需要发中断回合信号(NMI不需要),软中断的中断响应周期,CPU不需要发中断回合信号。

4、硬中断是可屏蔽的(NMI硬中断不可屏蔽),软中断是不可屏蔽的。

文件系统如何取文件

1.首先,根据文件名,会从目录项中找到该文件名对应的inode号

2.会根据inode号,从inode-table表中找到文件的block号

3.block中存放着具体的数据,读取到文件内容。

如果是软链接文件,那么还会有第4步,block中存放的并不是具体的数据,而是存放链接文件的源文件名称,再根据源文件名称,重复以上三个步骤,找到真正的文件数据。

如果是硬链接文件,会根据硬链接文件名找到与源文件相同的inode号,然后进行第二三步,读取到文件数据

nginx运行过程中删除access.log日志,磁盘空间是否会释放?

磁盘空间不会释放,一个文件数据结构中会保留两个连接,一个i_link和一个i_count,i_link是我们人为可以去操纵的,而i_count则是给计算机程序去接触的。执行rm -rf access.log后,i_link的数值会减1,但是nginx的程序还在执行中,所以i_count不会为0,只有i_link和i_count同时为0,这个磁盘空间才会释放。所以删除日志文件,最好重新加载或者重启服务。

du和df的区别

du是查看目录的大小,而df是查看磁盘的使用情况

常见的df和du查看结果不一致情况是文件删除造成的。
du,disk usage,是通过搜索文件来计算每个文件的大小然后累加得到的,du能看到的文件只是一些当前存在的,没有被删除的。当一个文件被删除后,在文件系统目录中已经不可见了,所以du就不会再统计它了。
然而,df,disk free,通过磁盘来快速获取空间大小的信息,文件被删除后,i_link变为0,但是如果这个时候进程(i_count)持有这个已被删除了的文件的句柄,那么这个文件就不会真正在磁盘中被删除。这样df仍旧会统计这个被删除了的文件。因此找到还持有被删除文件句柄的进程,然后关闭进程或者杀掉进程用以释放空间。他比du强的地方就是能够看到已经删除的文件,而且计算大小的时候,把这一部分的空间也加上了,更精确了(程序看到统计的)。当文件系统也确定删除了该文件后(重新加载或重启服务),这时候du与df就一致了。
可以用lsof |grep delelted查看哪些文件删了但是仍然在占用资源。

Linux的开机启动流程

1.power on开机

2.进行POST开机自检,指计算机系统,接通电源,包括对CPU、系统主板、基本内存、扩展内存等设备的测试,如果发现错误,会给操作者提示或者警告。简化或者加快该过程,可以使系统能够快速启动。

3.BIOS程序,完成开机自检的程序。BIOS就是Basic Input Output system的缩写,简称基本输入输出系统。BIOS是电脑启动时加载的第一个软件。

4.boot启动顺序检查,启动第一启动顺序,boot启动顺序,一般来说是:可移动设备—>硬盘—>光驱—>网络中安装启动服务器,我们电脑在没有连接外驱设备的情况下,一般是选择硬盘作为第一启动顺序

5.启动硬盘并且加载MBR程序(主引导记录),并且启动MBR中的grub2引导程序

6.系统会加载文件系统的驱动来识别/boot目录中的其他文件,加载vmlinuz和initramfs这两个内核文件(vmlinuz,是内核程序文件,initramfs,给内核程序提供一个初始化的内存文件系统的镜像文件)

7.启动系统的第一个进程systemd

8.启动对应的运行级别的里的服务,我们一般是启动运行级别为3的multi-user多用户模式

开机启动级别:0 关机1 单用户模式2 多用户模式,不能使用nfs3 完全多用户模式 --》字符界面模式 --》非常正常的模式, 默认最小化安装的模式 multi-user4 保留,没使用5 图形界面6 重启centos7中只有3和5两个级别

9.启动相应运行级别的的服务,比如/etc/rc.local以及/etc/fstab文件(/etc/rc.local 启动的过程中,最后会运行这个脚本里的命令(这个文件必须要有可执行权限),/etc/fstab 启动的过程中,会加载这个文件里知道的磁盘分区)

10.用户输入用户名和密码以后,Linux系统会自动进入/etc/passwd文件和/etc/shadow文件里验证用户名和密码是否正确

11.登录成功之后,系统会运行/.bashrc、/.bash_profile、/etc/bashrc、/etc/profile这四个环境变量初始化文件

    /etc/profile  全局配置,对所有用户有效        /etc/bashrc  全局配置,对所有用户有效~/.bash_profile   局部配置,只对登录的用户生效~/.bashrc  局部配置,只对登录的用户生效

12.系统界面会出现bash提示符,表明开机启动已经完成

Centos6和Centos7的区别

(1)操作系统开机启动的第一个进程不一样,CentOS 6启动的是init进程,CentOS 7启动的是systemd进程
(2)文件系统类型不一样,CentOS 6默认的文件系统是ext4,CentOS 7默认的文件系统是xfs
(3)内核版本不一样,CentOS 6是2.6.x-x版本,CentOS 7是3.10.x-x版本
(4)开机启动的程序不一样,CentOS 6启动的是grub程序,CentOS 7启动的是grub2程序
(5)默认防火墙不一样,CentOS 6使用的是iptables防火墙,CentOS 7使用的是firewalld防火墙
(6)默认数据库不一样,CentOS 6默认数据库是MySQL,CentOS 7默认数据库是MariaDB
(7)文件结构不一样,CentOS 6中/bin、/sbin、/lib、/lib64存放在根目录下,CentOS 7中/bin、/sbin、/lib、/lib64存放在/usr目录下
(8)主机名存放路径不一样,CentOS 6是存放在/etc/sysconfig/network中,CentOS 7存放在/etc/hostname中

Centos7和Centos8的区别

(1)CentOS7的内核版本是3.10.x,CentOS8的内核版本是4.18.x
(2)CentOS7中使用的Python版本是Python2,CentOS8使用的是Python3
(3)CentOS7中时间同步服务支持NTP和Chronyd,CentOS8只支持Chronyd
(4)CentOS7的包管理工具是YUM(yum v3),CentOS8的是DNF(yum v4)

Centos和Ubuntu的区别

CentOS是由RHEL源代码编译的社区重新发布版,系统简单但非常稳定,命令行操作可以方便管理系统和应用,并且有帮助文档和社区的支持。
Ubuntu有亮丽的用户界面,完善的包管理系统,强大的软件源支持,并且Ubuntu对计算机硬件的支持好于CentOS和Debian。

区别:

1.安装。CentOS:使用.rpm包,以及使用yum进行软件管理。Ubuntu:使用.deb包,以及使用apt-get进行软件管理(部分Ubuntu也支持yum)

2.系统稳定性。CentOS:目前CentOS系统更加安全稳定。Ubuntu:升级包可能会造成系统的不稳定和不安全。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

SSH建立免密通道的步骤

1、在A机器上生成公钥对,(如果有公钥对,则不需要重新生成),默认会放在当前用户家目录下的.ssh/文件下,会生成一个id_rsa(私钥),id_rsa.pub(公钥)

[root@mysql-binary ~]# ssh-keygen #生成,中间一直敲回车,选择默认
2、在B机器上目标用户的家目录下面~/.ssh/authorized_keys文件里将A机器的公钥复制粘贴过来,没有此文件就创建,并且确保这个文件的权限设为600
3、查看公钥认证是否成功
在A机器上执行 ssh root@B机器的ip
不需要输入密码就可以登陆到B机器,则表示免密码登陆成功

SHELL命令的执行过程:mkdir -p xieshan

1.首先,shell解释器会对我们敲入的命令进行语法解析,分解成一个一个的token(token是最基本的单元):mkdir 是命令,-p是选项,/xieshan是参数;

语法解析的具体过程如下:

首先会判断这是一个绝对路径的命令还是其他,是绝对路径命令就直接由bash去执行
如果是其他就会判断这是否是一个别名命令,别名命令会将其展开为原始命令
然后会再判断这是外部命令还是内部命令,是内部命令就执行
如果是外部命令就会到PATH变量中遍历寻找,找到命令路径就会往下执行,找不到bash就会抛出command not  found 异常
tips:可以使用type命令来查看一个命令属于内部命令还是外部命令

2.shell解释器会到磁盘的PATH变量中查找mkdir命令的路径,经过查找发现mkdir命令存放在磁盘的/usr/bin/mkdir

3.磁盘会告诉Linux内核mkdir命令的位置,加载mkdir命令的二进制可执行程序到内存里

4.Linux内核首先会查看内存里是否有足够的空间,如果有,就会创建进程,加载代码,整个进程进入就绪队列

5.内存执行mkdir命令,在这个过程中由于时间片等原因,内存会和CPU发生上下文切换(也就是不断在就绪、执行、阻塞过程中环绕)

6.内存将执行结果返回给shell解释器,shell解释器再通过标准输出将命令的执行结果返回给用户

统计nginx访问日志中每一个ip地址访问了多少次

cat access.log |awk ‘{print $1}’|sort|uniq -c

统计nginx访问日志中访问前十的IP地址

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

截取出ip add中的ip地址

ip add|awk -F’ ’ ‘NR==9 {print $2}’

或者ip add|grep inet|awk -F “[: ]+” ‘{print $3}’|head -3|tail -1|awk -F “/” ‘{print $1}’

("[: ]+"表示以1个或多个冒号或空格作为分隔符)

拓展:使用ifconfig命令仅查看本机的ip地址(ifconfig|grep inet|awk -F “[: ]+” ‘{print $3}’|head -1)

文本三剑客之grep过滤常用命令选项

-i:查找忽略大小写;

-v:反转查找,过滤出没有的;

-n:显示匹配的行及行号;

-o:显示匹配的行的内容;

-r:递归搜索所有文件以及目录下的所有子文件。

-E:支持更多的元字符(扩展正则);

-A:找到匹配的行以及后几行。

-B:输出匹配的行以及前几行。

—C:找到匹配行以及前后几行

文本三剑客之awk 截取+过滤+统计

awk命令的内置变量: N F : 最后一个字段 ∗ ∗ ; ∗ ∗ NF:最后一个字段**;** NF:最后一个字段(NF-1):倒数第2个字段

NR:当前处理的行,可以表示行号

FS:当前的输入分隔符,默认是空白字符(空格和tab);

OFS:当前的输出分隔符,默认是空格字符(空格)

文本三剑客——sed 修改、替换

常用选项:-n:只显示匹配的行;-e:执行多个编辑命令时(一般用;代替);-i:直接在文件中进行修改,而不是输出到屏幕。-r:支持扩展正则表达式;-f:从脚本文件中读取内容并执行。

常用编辑命令'/编辑命令/':p:打印匹配行;d:删除指定行;a:在匹配行后面追加;i:在匹配前面插入;c:整行替换;r:将文件的内容读入;w:将文本写入文件;s:字符串替换(匹配正则表达式);=:输出行号。$p:表示打印最后一行;$0:表示整行;

## 查看Linux服务器系统版本

cat /etc/centos - release # 通过查看文件uname -r #使用命令进行查看

查看Linux内核版本版本及架构

uname -a #查看内核版本

cat /proc/version #查看Linux内核版本可以得到类似的更详细信息

查看Linux内核里的限制参数:ulimit -a

查看Linux内核里存储的最大进程:ulimit -n

查看系统内核参数

systemctl -a ;/etc/sysctl.conf 修改内核参数文件(调优)

Linux系统包含的几大模块

Linux系统包含的五大子系统,分别是:

1.进程调度

2.文件系统

3.内存管理

4.网络接口

5.进程通信

部署LVM的流程

首先创建物理卷,让磁盘设备支持LVM技术;然后创建卷组,将多块物理卷加入到该卷组中;然后创建自定义大小的逻辑卷;之后再对创建好的逻辑卷进行格式化文件系统,最后再对其进行挂载操作

Linux系统如何限制用户能打开的最大文件数

使用ulimit -a命令可以查看系统用户的所有限制值,使用ulimit -n 65535可以对用户打开的最大文件数进行更改,不过只对当前进程生效;想要使相关配置永久生效的话需要修改/etc/security/limits.conf文件
举例:

echo “* soft nofile 65535” >> /etc/security/limits.conf

echo “* hard nofile 65535” >> /etc/security/limits.conf

如何过滤掉一个配置文件里面的空行和注释行

cat 文件名|egrep -v “#|$”

Linux系统里常用的网络排错工具

网络不通的话常用的有ping,telnet,curl
域名与IP的解析工具有nslookup、dig
traceroute命令用来进行路由追踪
netstat命令用来查看网络系统的状态

Linux系统里常用查看系统资源使用情况的命令(CPU\内存\磁盘\进程\网络\流量)

**查看系统CPU使用情况:**top:动态显示当前耗费资源最多进程信息。

**查看磁盘信息:**df -h\df -Th

**查看内存信息:**free -m

查看进程:ps:显示瞬间进程状态;ps -aux:显示所有包含其他使用者的进程;ps -ef:显示所有进程信息,连同命令行;pstress -p:查看当前进程数。**nethogs:**查看本机的进程,知道哪些进程和外面进行通信(动态显示)。

查看端口号:netstatnetstat -anplut)、lsof (lsof -i :【端口号】)和 ss都只能看本机开放了哪些端口。nc 和nmap:扫描别人机器上开放了哪些端口。

**查看网络连接信息:ping:**测试网络连通性。**fping:**批量去ping,可以接网段也可以指定文件里的ip地址去ping。netstat :显示网络状态信息。netstat -apu:显示UDP端口号的使用情况。ifconfig :查看网络情况。

查看网络流量: tcpdumpifconfig :字符界面的抓包工具—Linux中。**wireshark :**Linux和windows里的图形化的抓包工具。iftop:查看网络上流量的使用情况。

**查看某个进程消耗了多少流量\带宽(知道哪些进程和外面进行通信):**nethogs

**监听系统CPU、内存、磁盘I/O等使用情况:**glances

1.top    系统时间 登录用户  负载 进程 cpu 内存 swap  进程详细信息
2.htop(eple)  系统时间 登录用户  负载 进程 cpu 内存 swap  进程详细信息 支持鼠标 树状 快捷键
3.uptime  当前系统时间、登录用户、负载 
4.free   监控内存
5.vmstat  程、虚存、页面交换空间及 CPU
5.iostat  磁盘I/O统计
6.df   硬盘 -h block -i inode
7.iftop   流量监控工具
8.nethogs  查看进程占用的网络带宽
9.iotop   进程占用的硬盘I/O

Linux中的用户权限

img

Linux系统内核调优

调优的思路:先讲硬件,再讲软件,再是对代码进行调优,然后就是sql语句和底层代码,还可以是对架构进行调优,从一台服务器到多台服务器等(可以加缓存服务器(比如redis、mangdb等)或者中间件,提高访问速度)

1.硬件调优:可以加内存,换ssd磁盘,换网卡等,也就是用更好的设备,这个效果最是显著,也很简单粗暴,就是会增加开销

2.系统调优:对操作系统进行调优,包括对内核、IO调度、网络、swap分区、文件描述符等进行调优,还可以对应用软件进行调优,也就是对nginx、ssh、mysql等进行调优

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

操作系统调优:
ulimit -n 10000		--》Linux内核参数的调优--》文件描述符	--》进程
[root@lb ~]# vim /etc/sysctl.conf
[root@lb ~]# sysctl -p	#让内核读取/etc/sysctl.conf里的配置,生效
vm.swappiness = 10	--》先使用物理内存,最后使用swap分区	--》内存
net.ipv4.ip_forward = 1	--》网络参数调优,打开路由功能	--》网络
net.ipv4.tcp_synack_retries = 7	--》网络参数调优,syn的数量
应用软件调优nginx:
1.参数调优worker_connections 2048;worker_processes 2;keepalive_timeout 65;proxy_buffer_size 16k;
2.功能开启或者关闭
关闭不需要的模块,开启需要的模块,安装更好的插件(比如nginx.plus)

3.DBA可以对sql进行调优;还有开发人员可以对代码进行调优

4.架构的调优,可以搞集群,加缓存,加中间件,加CDN等

总结

学习Linux基础知识是一个循序渐进的过程,涉及到操作系统的多个方面。文章主要是对Linux基础知识学习的一个总结,旨在帮助初学者构建一个坚实的基础。对于初学者来说,按照这个工作用到的重点知识点来学习,可以主要的对linux有个大概的了解,然后再深入去学习其中细节知识点。随着经验的积累,可以进一步探索更高级的知识点学习。

先祝大家程序员节快乐哦!学习的脚步不停!
我是柚子哟!快来我的主页v我哦,我们一起探讨更多技术知识。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/883148.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GNN+A2C 强化学习训练一个粒子避障决策模型

最近想尝试下使用GNN A2C 进行强化学习,GNN 可以充当一个特征提取器,这样可以增加强化学状态空间因为张量长度受限泛化能力不足的缺点,之前做强化学习的时候受限于需要在环境里提取每个对手的特征,在每个不同场景下因为对手的数量…

使用excel.js(layui-excel)进行layui多级表头导出,根据单元格内容设置背景颜色,并将导出函数添加到toolbar

本段是菜狗子的碎碎念,解决办法请直接从第二段开始看。layui多级表头的导出,弄了两天才搞定,中途一度想放弃,还好坚持下来了。一开始用的是layui的toolbar里自带的那个导出,但是多级表头没有正常导出,单元格…

【功能安全】技术安全概念TSC

目录 01 TSC定义 02 TSC注意事项 03 TSC案例 01 TSC定义 所处位置 TSC:Technical safety concept技术安全概念 TSR:Technical safety requirement技术安全需求 在系统开发阶段属于安全活动4-6 系统层产品开发示例 TSC目的

Codeforces Round 981 (Div. 3)

前言: 记录一下自己昨天晚上打的div3吧,感觉自己好久没写博客,以后可能会更新一些其他内容,在这里先买个关子,我要现在今年沉淀几个月,所以这几天可能不会更新博客,今天先出来冒个泡先。 正文&a…

数理统计(第3章:单侧假设检验)

目录 概念,步骤 单个正态母体 两个正态母体 概念,步骤 如果构造统计量是一个未知数,则构造不成统计量,所以拿来构造统计量,用保守估计作为假设:有无显著提高,减小,则假设没有显著…

【在Win11下安装ubuntu +图形化界面】

在win11下安装ubuntu 一、安装流程1. 前期准备:先配置好基础设置2. 安装 ubuntu3. ubuntu进行配置4. 下载图形化界面 并安装 二、遇到的问题问题1. win11安装wsl报错:无法解析服务器的名称或地址1. 方法一:更改DNS(对本人无效&…

SpringBoot最佳实践之 - 项目中统一记录正常和异常日志

1. 前言 此篇博客是本人在实际项目开发工作中的一些总结和感悟。是在特定需求背景下,针对项目中统一记录日志(包括正常和错误日志)需求的实现方式之一,并不是普适的记录日志的解决方案。所以阅读本篇博客的朋友,可以参考此篇博客中记录日志的…

【问题解决】三维相关:​Unity Package Manager中没有Newtonsoft Json‌​

问题: 在Unity开发中,用到复杂的json的数据格式,需要将对象和json数据之间相互转换。Unity原生json支持不适用复杂json(例如嵌套数组、动态键值对等)。大部分人推荐直接在Package Manager中搜索导入(如怎么在unity3D工…

Jupyter Notebook 中使用render_notebook渲染pyecharts图像不显示的一种情况

一开始我发现自己的jupyter文件在渲染pyecharts图片时一开始可以显示,但后来不知道怎么的就不显示了,查找了很多方法,但是没有效果,都是改js渲染什么的,还有就是参数不对的,对于我来说都没什么用&#xff0…

excel中,将时间戳(ms或s)转换成yyyy-MM-dd hh:mm.ss或毫秒格式

问题 在一些输出为时间戳的文本中,按照某种格式显示更便于查看。 如下,第一列为时间戳(s),第二列是转换后的格式。 解决方案: 在公式输入框中输入:yyyy/mm/dd hh:mm:ss TEXT((A18*3600)/8640070*36519, "yyy…

从传统到智能,从被动监控到主动预警,解锁视频安防平台EasyCVR视频监控智能化升级的关键密钥

视频监控技术从传统监控到智能化升级的过程是一个技术革新和应用场景拓展的过程。智能视频监控系统通过集成AI和机器学习算法,能够实现行为分析、人脸识别和异常事件检测等功能,提升了监控的准确性和响应速度。这些系统不仅用于传统的安全防护&#xff0…

Ribbon客户端负载均衡策略测试及其改进

文章目录 一、目的概述二、验证步骤1、源码下载2、导入IDE3、运行前修改配置4、策略说明5、修改策略 三、最终结论四、改进措施1. 思路分析2. 核心代码3. 测试页面 一、目的概述 为了验证Ribbon客户端负载均衡策略在负载节点失效的情况下,是否具有故障转移的功能&a…

一家生物技术企业终止,科创属性可能不足,报告期内专利数猛增

轩凯生物九成以上营业收入来源于植物营养领域,收入来源结构单一,产品下游应用领域较为集中。报告期内公司应收账款账面价值逐年上升,回款比例显著低于前两年,遭交易所问询是否存在较大的坏账风险。 轩凯生物核心技术是否成熟以及是…

【SDL】微软SDL建设指南

【SDL】微软SDL建设指南 1.建立安全标准、指标和治理2.要求使用经过验证的安全功能、语言和框架3.执行安全设计审查和威胁建模4.定义并使用密码学标准5.确保软件供应链安全6.确保工程环境安全7.执行安全测试8.确保运营平台安全9.实施安全监控和响应(态势管理或漏洞管…

二十、Innodb底层原理与Mysql日志机制深入剖析

文章目录 一、MySQL的内部组件结构1、Server层1.1、连接器1.2、查询缓存1.3、分析器1.4、优化器1.5、执行器 2、存储引擎层 二、Innodb底层原理与Mysql日志机制1、redo log重做日志关键参数2、binlog二进制归档日志2.1、binlog日志文件恢复数据 3、undo log回滚日志4、错误日志…

群晖通过 Docker 安装 Firefox

1. 获取 firefox 镜像 在注册表搜索 jlesage/firefox,并且下载 2. 创建容器 运行映像 jlesage/firefox,开始创建容器 3. 配置容器 启用自动重新启动,重点配置存储空间和环境变量,其他默认。 创建文件夹,及子文件夹…

高效设备管理:中小企业的Spring Boot解决方案

1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理中小企业设备管理系统的相关信息成为必然。…

Lucas带你手撕机器学习——SVM支持向量机

#1024程序员节|征文# 支持向量机(SVM)的详细讲解 什么是SVM? 支持向量机(Support Vector Machine,SVM)是一种用于分类和回归的监督学习算法。它的主要任务是从给定的数据中找到一个最佳的决策…

原来“有符号数变成无符号数,并不是-1变成1,-15变成15”!!

不怕大家伙笑话,我以前一直以为在C语言中,有符号变无符号仅仅就是去掉数字前面的符号就行,如今做了一道题,细细研究,才发现,原来不是! 如果你也感兴趣,那就学学今天这节吧~ 话不多说…

前端必知必会-JavaScript 简介

文章目录 JavaScript 简介JavaScript 可以更改 HTML 内容JavaScript 可以更改 HTML 属性值JavaScript 可以更改 HTML 样式 (CSS)JavaScript 可以隐藏 HTML 元素JavaScript 可以显示 HTML 元素 总结 JavaScript 简介 本页包含一些 JavaScript 功能的示例。 JavaScript 可以更改…