1.前言 因为我这里使用的是阿里云服务器,所以一开始买的时候里面就已经装过jdk,但因为不是我装的,所以我也不晓得jdk它到底安装在哪里.自己上网查了查,说句不好听的话,很多博客里面写的都很扯淡,上来就让人家通过...echo $JAVA_HOME,一开始我自己也用了这种方法,但是后来想了想,我都没有设置过环境变量,这个命令怎么可能会生效呢,所以很多博客完全就是扯淡的,根本就没有考虑过大多数人的感受.终于找到了正确的解决办法...,这里记录一下. 2.步骤 2.1检查jdk是否安装 首先我们要确定我们的系统上面的确有jdk,否则一切都是白搭 java -version 如果查询出来下面的界面就说明的确有jdk ?...2.2 查找java命令的位置 which java 这样我们便能看到相应的路径名称 ? 2.3查找列出该链接所指向的原始文件或目录 ls -l /usr/bin/java ?.../usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64 即为jdk的安装目录
Linux文件删除,但是df之后磁盘空间没有释放 //删除文件 sudo rm -rf file // 查看文件大小 ls -lht //查看硬盘空间 df -h //可以查看每个文件夹的大小,此举可以快速定位大文件所存在的位置
网络名称空间(Network Namespaces)是Linux内核特性之一,提供了隔离网络环境的能力,使得每个网络名称空间都拥有独立的网络设备、IP地址、路由表、端口号范围以及iptables规则等。...这一特性在Linux虚拟化技术中占据了核心位置,它不仅为构建轻量级虚拟化解决方案(如容器)提供了基础支持,也在传统的虚拟机技术中发挥作用,实现资源隔离和网络虚拟化。1....网络功能虚拟化(NFV)网络名称空间在网络功能虚拟化(NFV)中也有其位置。NFV旨在利用虚拟化技术来构建网络服务,如虚拟私有网络(VPN)、防火墙、负载均衡等。...兼容性和生态系统视角 网络名称空间得到了广泛的支持和应用,成为Linux虚拟化技术生态系统的一个重要组成部分。...此外,围绕网络名称空间,开发了众多工具和库(如CNI、Netlink库等),为自定义网络解决方案的开发提供了便利。4. 结论 网络名称空间在Linux虚拟化技术中占据着不可或缺的位置。
背景 我们有时候,需要在linux上安装软件,但又没有root权限,就只能用源码安装了。有些小伙伴只会用root权限的apt install,这里就以安装tmux演示一下。...安装tmux 下载 tmux 的源代码包 您可以从 tmux 的官方网站(https://github.com/tmux/tmux)下载最新版本的源代码包,或者使用以下命令从终端下载 mkdir -pv...安装 tmux 使用以下命令将 tmux 安装到指定目录下 make install 添加环境变量 为了能够在任何位置使用 tmux 命令,您需要将 tmux 所在的目录添加到 PATH 环境变量中。...请注意,您安装的 tmux 将与当前用户关联,并且仅对当前用户可用。...卸载 tmux 进入之前编译的 tmux 源代码目录 cd ~/software/package/tmux/tmux-3.2a 执行以下命令以卸载 tmux,该命令将删除之前编译并安装的 tmux 文件
项目需求是跟用户当前位置判断是否在给定的地理位置范围内,符合位置限制才可以打卡,其中的位置范围是一个或多个不规则的多边形。如下图,判断用户是在清华还是北大。 ?...在官方提供的示例上稍加改动即可获取选定的位置坐标。 ? 存储位置 取到坐标位置后,接着就是怎么存储?...开放地理空间联盟(OGC)是一个由 250多家公司,机构和大学组成的国际联盟,参与开发公开可用的空间解决方案,这些解决方案可用于管理空间数据的各种应用程序。...为了遵循 OGC 规范,MySQL 将空间 extensions 实现为具有 Geometry Types 环境的 SQL 的子集,提供生成、存储、分析空间的功能。...,使用 MySQL 自带的 Polygon 数据类型实现了空间数据的存储,用ST_Contains(g1,g2) 函数代入了后台预置的地理区域和前端获取到的用户地理位置可以得出用户是否在打卡范围内。
在Linux下,如果有root权限的话,使用sudo apt install 就可以很方便的安装软件,而且同时也会帮你把一些依赖文件也给编译安装好。...但是如果不是用的自己的机器,一般情况下是没有root 权限的。所以就需要自己动手下载tar文件,解压安装。在安装中遇到的最大的问题是依赖的问题。.../configure –prefix=/path/to/install 设置安装路径。因为是没有root权限的,所以需要修改安装路径,安装到自己有权限的文件夹下。...不过由于系统中有旧版本的GCC,但是由于没有ROOT权限,所以不能将旧版本卸载掉,所以需要添加的自己的path中。 在这之前,先看一下GCC能不能用,图中,下面的GCC 7.2.0就是新安装的GCC。...解决方法是,在~下的.bashrc 中编辑export LD_LIBRARY_PATH 之后再source .bashrc就可以了 参考: GNU/Linux GCC 指定动态库路径_牧马人_新浪博客
环境里安装了多个版本的 python,有时我们需要指定版本的 python 来运行我们的程序。这时候就需要知道 python 的安装位置了。有两种方法。
一、查看软件安装路径: Linux软件安装的地方不止一个地方,先说查看软件安装的所有路径(地址)。 这里以Mysql为例。...如果你没有安装mysql,则不会显示文件路径出来。...、查询运行文件所在路径: 如果你只要查询文件的运行文件所在地址,直接用下面的命令就可以了(还是以Mysql为例): which MySQL 结果会显示: /usr/bin/MySQL 内容扩展 Linux...查看软件安装目录及位置4种方法 说起是3种方法,无非是Linux下的几个个命令而已,find、whereis、which、locate都可以,特别是前两个命令更加的好。...到此这篇关于linux查看软件的安装位置简单方法的文章就介绍到这了,更多相关linux如何查看软件的安装位置内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn
-i 强制安装即可 … is needed by … … is not installed … 此包需要的一些软件你没有安装可以用 rpm –nodeps -i 来忽略此信息 也就是说...如果只是想知道可执行程序放到那里去了,也可以用which,比如 which mysql 4.一个rpm包中包含那些文件 一个没有安装过的软件包,使用rpm -qlp ****.rpm 一个已经安装过的软件包...一个没有安装过的软件包,使用rpm -qip ****.rpm 一个已经安装过的软件包,还可以使用rpm -qi ****.rpm 6.某个程序是哪个软件包安装的,或者哪个软件包包含这个程序...在系统中安装了rpm管理系统 以后,只要是符合rpm文件标准的打包的程序都可以方便的安装,升级,卸载 3.是不是所有的linux都使用rpm 任何系统都需要包管理系统,因此很多linux都使用...时遇到的一些特殊问题 Q 我用rpm -e **.rpm无法删除rpm包 A 包名不要包括rpm, rpm -e 包名,可以包含版本号等信息,但是不可以有后缀.rpm Q 在MS的系统下有没有读
1.可选步骤--把WSL 1设置为默认版本以管理员身份打开Powershell,输入命令wsl --set-default-version 1*2.启用适用于Linux的Windows子系统控制面板--...程序--程序和功能--启用或关闭Windows功能选中 适用于Linux的Windows子系统,确定完成后重启生效*3.下载WSL Linux手动安装包选择Linux版本,下载https://learn.microsoft.com.../en-us/windows/wsl/install-manual#downloading-distributions*4.安装.AppxBundle安装包改名为zip文件,解压,找到文件名包含x64的....appx文件,再次改名为.zip文件,解压到D盘比较好找的目录,如D:\Ubuntu点击ubuntu.exe安装,在D:\Ubuntu目录中有一个rootfs文件,即为安装目录5.设置默认用户为rootUbuntu...:ubuntu.exe config --default-user root关闭Ubuntu,重新打开,默认已经是root用户6.配置Python环境在Ubunbu运行如下命令,找到python文件的位置
发现 / (根目录)的空间并没有发生变化。...二、原因 未释放磁盘空间的原因: 在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的文件夹结构上解除链接(unlink),然而假设文件是被打开的(有一个进程正在使用),那么进程将仍然能够读取该文件...说明: 当Linux打开一个文件的时候,Linux内核会为每个进程在/proc/ 『/proc/nnnn/fd/文件夹(nnnn为pid)』建立一个以其pid为名的文件夹用来保存进程的相关信息,而其子文件夹...四、删除原理 一般来说,不会出现删除文件后空间不释放的情况,但是也存在例外,比如文件被进程锁定,或者有进程在使用这个文件,例如输出日志文件,要了解这个问题,就需要知道Linux下文件的存储机制和存储结构...之所以出现删除大文件后,空间还没有释放,就是因为有进程一直在使用这个文件的指针,日志文件的服务还在运行,导致虽然删除了日志大文件,但文件对应的指针部分由于被进程锁定,并未从meta-data中清除,而由于指针并未被删除
这个命令可以将表中的空间碎片进行合并,并且可以消除由于删除或者更新造成的空间浪费 。OPTIMIZE TABLE 命令只对 MyISAM 、 BDB 和 InnoDB 表起作用 。...如果没有被压缩,则为 NULL。 Null : 如果列含有 NULL,则含有 YES。如果没有,则为空。...但是删除一半数据后,.MYD.MYI 尽然连 1KB 都没有减少 ,这是多么的可怕啊。...当你删除数据 时,mysql 并不会回收,被已删除数据的占据的存储空间,以及索引位。...被删除的记录被保持在链接清单中,后续的 INSERT 操作会重新使用旧的记录位置。您可以使用 OPTIMIZE TABLE 来重新 利用未使用的空间,并整理数据文件的碎片。
内核线程没有独立的地址空间,这是因为内核线程是在操作系统内核空间中运行的,内核空间本身是所有进程共享的。以下是一些更详细的解释: 内核与用户态的区别:操作系统通常将内存分为用户空间和内核空间。...用户空间是为用户进程提供的,它们有各自的虚拟地址空间,相互之间隔离,不能直接访问内核空间。内核空间则是操作系统核心组件运行的地方,所有内核代码和数据都在这里。...地址空间的开销:每个用户态进程都有一个独立的地址空间,来确保进程之间的内存隔离和安全。然而,为每个内核线程创建和维护独立的地址空间会导致巨大的资源开销,包括内存和CPU时间。...内核线程共享内核地址空间,可以简化内核的内存管理机制,减少复杂性和可能的错误。 内核保护:尽管内核线程共享内核空间,这并不意味着它们没有保护机制。...总的来说,内核线程没有独立的地址空间是因为它们运行在共享的内核地址空间中,这样设计有助于提高系统性能,减少资源开销,并简化内核设计。
swap空间有两种形式:一是交换分区,二是交换文件。总之对它的读写都是磁盘操作。...linux内存通过 virtual memory 虚拟内存来管理整个内存, 虚拟内存管理着物理内存,也管理着swap交换空间。...Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。...那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。...其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。
---- layout: default title: linux没有wifi category: [技术, 安全] comments: true --- linux的wifi出现问题的介绍 几次重装...linux系统,经常出现没有wifi的状况 错误详情 之前安装过CentOS,Kylin,OpenSU,等等经常出现没有wifi的状况,虽说猜测是遇到驱动问题,但是一直没有花时间去尝试解决....sudo apt-get install firmware-b43-installer(不建议,最好通过网站下载) 下载安装b43-fwcutter是因为b43-fwcutter tool will...接下来我们进入下载目录,步骤4567是对b43-fwcutter进行解压,编译和安装,步骤9,10是对驱动文件解压和安装。...说明 写这篇文章是作为使用linux的笔记.图片没有另外拍照,就没有重新上图了,不过确实正好解决问题.
linux驱动程序一般工作在内核空间,但也可以工作在用户空间。下面我们将详细解析,什么是内核空间,什么是用户空间,以及如何判断他们。...Linux简化了分段机制,使得虚拟地址与线性地址总是一致,因此,Linux的虚拟地址空间也为0~4G。Linux内核将这4G字节的空间分为两部分。...而将较低的3G字节(从虚拟地址 0x00000000到0xBFFFFFFF),供各个进程使用,称为“用户空间)。因为每个进程可以通过系统调用进入内核,因此,Linux内核由系统内的所有进程共享。...于是,从具体进程的角度来看,每个进程可以拥有4G字节的虚拟空间。 Linux使用两级保护机制:0级供内核使用,3级供用户程序使用。...对内核空间来说,其地址映射是很简单的线性映射,0xC0000000就是物理地址与线性地址之间的位移量,在Linux代码中就叫做PAGE_OFFSET。 内核空间和用户空间之间如何进行通讯?
linux中的gcc编译器默认是从 "cd /usr/include/" 中查找头文件的,但是在该目录下并没有发现sys子目录。那么这个sys到底对应于系统的哪个目录?...经过一番查找,我发现#include 在:"cd /usr/include/x86_64-linux-gnu/sys/stat.h"这个里面。 我的操作如下图所示: ?
发现一台服务器的home空间满了,要清空无用的文件,但删除文件后,发现可用空间没有变化 os:centos6.0 现象: 发现当前磁盘空间使用情况: [root@ticketb ~]# df...,发现没有/home空间没有变化 [root@ticketb ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev.../mapper/vgbackup-lvbackup 193G 7.8G 175G 5% /u01/backup 这个郁闷啊,明明删除文件了,怎么空间没有被释放啊...2.6G /home/oracle 2.6G /home 可这里显示空间已经释放了啊,于是google下, 未释放磁盘空间原因: 在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接...一种方法是kill掉相应的进程,或者停掉使用这个文件的应用,让os自动回收磁盘空间 我这个环境有很多进程在使用的这个文件,停掉进程有点麻烦,再有就是风险很大 当linux打开一个文件的时候,Linux
扩展1:为什么地址空间要存在? 如果没有地址空间,操作系统如何工作 ?...磁盘中存在很多可执行程序 进程被加载到物理内存中,其中包括了PCB、代码和数据 CPU读取进程的代码和数据按顺序去执行 操作系统加载第二个进程时,在物理内存中申请没有被用到的空间,把PCB、代码和数据放入空间中...拓展3:重新理解地址空间 程序在被编译的时候,没有被加载到内存,程序内部有地址 源代码被编译的时候,就是按照虚拟地址空间的方式进行对代码和数据就已经编号了对应的编制 虚拟地址不只会影响操作系统,还要让编译器遵守规则...进程地址空间+页表的意义: 1.防止地址随意访问,保护物理内存与其他进程 若没有地址空间的存在,则直接使用cPU调用物理地址,会有野指针的问题存在 2.将进程管理和内存管理进行解耦合 因为有虚拟地址和页表的存在...,所以不关心进程对应的物理地址所处位置
type 类型b 块设备, d 目录, c 字符设备文档, p 管道文档, l 符号链接文档, f 普通文档name 文件名支持通配符size 文件大小+ 表示...
领取专属 10元无门槛券
手把手带您无忧上云