首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

设备没有剩余空间” 导致登录不上 SSH 的解决方法

没想到竟是因为设备没有 inode 了。 inode 是什么呢? 一般 UNIX 操作系统上的每个目录、文件都会有一个“元信息”,存储了文件名、创建者、创建时间等等信息。...因为 inode 本身也要存在硬盘里,所以也占一定的空间。...使用 df 命令解决“设备没有剩余空间”的报错 登录到服务器上后,看到了“设备没有剩余空间”的报错,touch 一个新文件也报这个错,rm 删除东西时就一直卡住了。...这个时候就可以通过 df -h 命令查一下空间使用情况,如果是空间使用满了,就用 du -sh 命令来查找大文件,删除无用的文件来腾空间。...tail 了一下发现有好多 “设备没有剩余空间” 的日志。

2.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

Linux网络名称空间和Veth虚拟设备的关系

在讨论Linux网络名称空间和veth(虚拟以太网对)之间的关系时,我们必须从Linux网络虚拟化的核心概念开始。...Linux网络名称空间和veth是Linux网络虚拟化和容器化技术的重要组成部分,它们之间的关系密不可分,对于构建隔离、高效的网络环境至关重要。1....Linux网络名称空间的作用Linux网络名称空间提供了一种强大的网络隔离机制,使得我们可以在同一物理机上创建多个独立的网络环境。...每个网络名称空间都有自己的网络设备、IP地址、路由表等网络资源,这些环境彼此隔离,互不干扰。...2. veth的角色veth(虚拟以太网对)是一种特殊的网络设备,主要用于连接不同网络名称空间或将网络名称空间连接到物理网络中。

14600

解决Linux系统删除文件后空间没有释放的问题

发现 / (根目录)的空间没有发生变化。...二、原因 未释放磁盘空间的原因:   在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的文件夹结构上解除链接(unlink),然而假设文件是被打开的(有一个进程正在使用),那么进程将仍然能够读取该文件...说明:   当Linux打开一个文件的时候,Linux内核会为每个进程在/proc/ 『/proc/nnnn/fd/文件夹(nnnn为pid)』建立一个以其pid为名的文件夹用来保存进程的相关信息,而其子文件夹...四、删除原理   一般来说,不会出现删除文件后空间不释放的情况,但是也存在例外,比如文件被进程锁定,或者有进程在使用这个文件,例如输出日志文件,要了解这个问题,就需要知道Linux下文件的存储机制和存储结构...之所以出现删除大文件后,空间没有释放,就是因为有进程一直在使用这个文件的指针,日志文件的服务还在运行,导致虽然删除了日志大文件,但文件对应的指针部分由于被进程锁定,并未从meta-data中清除,而由于指针并未被删除

10.3K30

内核线程为什么没有地址空间

内核线程没有独立的地址空间,这是因为内核线程是在操作系统内核空间中运行的,内核空间本身是所有进程共享的。以下是一些更详细的解释: 内核与用户态的区别:操作系统通常将内存分为用户空间和内核空间。...用户空间是为用户进程提供的,它们有各自的虚拟地址空间,相互之间隔离,不能直接访问内核空间。内核空间则是操作系统核心组件运行的地方,所有内核代码和数据都在这里。...地址空间的开销:每个用户态进程都有一个独立的地址空间,来确保进程之间的内存隔离和安全。然而,为每个内核线程创建和维护独立的地址空间会导致巨大的资源开销,包括内存和CPU时间。...内核线程共享内核地址空间,可以简化内核的内存管理机制,减少复杂性和可能的错误。 内核保护:尽管内核线程共享内核空间,这并不意味着它们没有保护机制。...总的来说,内核线程没有独立的地址空间是因为它们运行在共享的内核地址空间中,这样设计有助于提高系统性能,减少资源开销,并简化内核设计。

9010

linux交换空间

swap空间有两种形式:一是交换分区,二是交换文件。总之对它的读写都是磁盘操作。...linux内存通过 virtual memory 虚拟内存来管理整个内存, 虚拟内存管理着物理内存,也管理着swap交换空间。...Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。...那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。...其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。

3.9K70

linux没有wifi

---- layout: default title: linux没有wifi category: [技术, 安全] comments: true --- linux的wifi出现问题的介绍 几次重装...linux系统,经常出现没有wifi的状况 错误详情 之前安装过CentOS,Kylin,OpenSU,等等经常出现没有wifi的状况,虽说猜测是遇到驱动问题,但是一直没有花时间去尝试解决....the old content:Old Linux Wireless,因此我们需要参考的是Old Linux Wireless上的内容。...now 大功告成 附录 lspci -vv | grep Network (确定无线网卡的类型) lspci 显示当前主机的所有硬件配备 -v 显示PCI接口装置的详细信息 -vv 显示PCI接口设备的更详细的信息...说明 写这篇文章是作为使用linux的笔记.图片没有另外拍照,就没有重新上图了,不过确实正好解决问题.

8.2K60

linux 设备

,fpga", "rockchip,rk3399"; 3.2节点名 理论个节点名只要是长度不超过31个字符的ASCII字符串即可,Linux内核还约定设备名应写成形如[@]的形式,其中name就是设备名...unit_address一般是设备地址,用来唯一标识一个节点 Linux中的设备树还包括几个特殊的节点,比如chosen,chosen节点不描述一个真实设备,而是用于firmware传递一些数据给OS...这样就可以实现类似函数调用的效果 3.KEY 在设备树中,键值对是描述属性的方式,比如,Linux驱动中可以通过设备节点中的”compatible”这个属性查找设备节点 inux设备树语法中定义了一些具有规范意义的属性...此外,还有一些Linux内核定义好的,一类设备通用的有默认意义的属性,这些属性一般不能被内核自动解析生成相应的设备信息,但是内核已经编写的相应的解析提取函数,常见的有 “mac_addr”,”gpio”...,如果没有设置这个属性,会自动依附父节点的 interrupts,一个中断标识符列表,表示每一个中断输出信号 3.4gpio gpio-controller,用来说明该节点描述的是一个gpio控制器 #

3.1K20

linux之用户空间和内核空间

linux驱动程序一般工作在内核空间,但也可以工作在用户空间。下面我们将详细解析,什么是内核空间,什么是用户空间,以及如何判断他们。...Linux简化了分段机制,使得虚拟地址与线性地址总是一致,因此,Linux的虚拟地址空间也为0~4G。Linux内核将这4G字节的空间分为两部分。...而将较低的3G字节(从虚拟地址 0x00000000到0xBFFFFFFF),供各个进程使用,称为“用户空间)。因为每个进程可以通过系统调用进入内核,因此,Linux内核由系统内的所有进程共享。...于是,从具体进程的角度来看,每个进程可以拥有4G字节的虚拟空间Linux使用两级保护机制:0级供内核使用,3级供用户程序使用。...对内核空间来说,其地址映射是很简单的线性映射,0xC0000000就是物理地址与线性地址之间的位移量,在Linux代码中就叫做PAGE_OFFSET。 内核空间和用户空间之间如何进行通讯?

3.9K20

Linux 常见主设备设备清单

Linux 常见主设备设备清单# 在Linux系统中,设备通常通过主设备号和次设备号来标识。主设备号用于区分设备的大类,例如硬盘、字符设备等;次设备号用于在同一大类设备中区分不同的设备。...以下是一些常见设备类型及其固定的主设备号: 设备类型 主设备设备描述 RAM disk 1 虚拟磁盘设备,其存储空间位于RAM中 TTY 4 控制台设备,如 tty1、tty2 等 ttyS (串行端口设备...在 Linux 系统中,NVMe 设备通常具有 /dev/nvmeXnY 格式的设备文件名,其中 X 是控制器的编号,Y 是命名空间的编号。...Linux 源码定义# 设备号的分配在早期的 Linux 内核版本中是静态的,设备号的列表可以在内核源代码的 Documentation/admin-guide/devices.txt 文件中找到。...但在现代的 Linux 内核中,许多设备设备号是动态分配的,它们并不会直接在内核源代码中定义。例如,NVMe 设备设备号是由内核在运行时动态分配的,这在内核源代码中没有明确的定义。

45710

Linux设备驱动之字符设备(一)

Linux设备驱动的分类 从上图可以看到Linux系统将各异的设备分为三大类:字符设备,块设备和网络设备。内核针对每一类设备都提供了对应驱动模型架构,包括基本的内核设施和文件系统接口。...网络设备: 网络设备不同于字符设备和块设备,它是面向报文的。同时在/dev目录下没有设备节点这样一说,在应用层是用户是通过API的socket函数来使用网络设备的。比如网卡等。...主设备号用来标识对于的设备驱动程序,而次设备号则由驱动程序使用,用来标识它所管理的若干同类设备设备号的表示 在linux系统中,设备号用dev_t表示。这是个32位的无符号整数。... --------------------------- typedef __kernel_dev_t dev_t; typedef __u32 _...随着Linux系统的演变,上述的主次设备号的分发可能在将来会发生变化,所以设备驱动程序开发者应该避免直接使用主次设备号所占的位宽来获得对于的主设备号或次设备号。

7.1K52

CentOS删除文件后没有释放空间

发现一台服务器的home空间满了,要清空无用的文件,但删除文件后,发现可用空间没有变化 os:centos6.0 现象: 发现当前磁盘空间使用情况: [root@ticketb ~]# df...,发现没有/home空间没有变化 [root@ticketb ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev...2.6G /home/oracle 2.6G /home 可这里显示空间已经释放了啊,于是google下, 未释放磁盘空间原因: 在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接...一种方法是kill掉相应的进程,或者停掉使用这个文件的应用,让os自动回收磁盘空间 我这个环境有很多进程在使用的这个文件,停掉进程有点麻烦,再有就是风险很大 当linux打开一个文件的时候,Linux...我们都知道,linux环境中,任何事物都是文件, 设备是文件,目录是文件,甚至sockets也是文件。所以,用好lsof命令,对日常的linux管理非常有帮助。

3.4K10

Linux设备驱动之字符设备(二)

通过上一节Linux设备驱动字符设备(一)了解了Linux设备驱动的分类,设备号的构成,设备号的申请以及设备号的释放。 在Linux内核中使用struct cdev结构来代码字符设备。... -------------------------------------------------- struct cdev { struct kobject...struct kobject kobj 内核的内嵌对象,是Linux设备驱动模型的重要成员。...该部分在后面Linux字符设备框架一节会详细分析,目前只要明白主要流程即可。 字符设备的注销 当驱动程序需要从系统卸载的时候,就需要使用cdev_del释放字符设备占用的内存。...目前为止,已经了解了设备号,设备号的构成,字符设备分配,字符设备的初始化,字符设备的注册以及字符设备的注销。将在下一节通过一个简单的字符设备驱动程序来再次熟悉整个流程,然后总结字符设备驱动的编写模型。

6.1K20

Linux进程地址空间

Linux进程地址空间是学习Linux的过程中,我们遇见的第一个难点,也是重中之重的重点。虽然它很难,但是,等我们真正懂得了这样设计的原理,我们不禁会感叹:这真的是太妙了。...一.程序地址空间 大家在系统学习C/C++时,有没有见过这张图: 这就是著名的内存地址模型。越往上地址越高。这些区域为什么按照这种顺序排列呢?这种排列顺序对吗?...但在他们的世界里没有代码给我们带来的快乐,而我们有!!哈哈哈哈哈 如今的我们体会到了敲代码的乐趣,任何东西想用代码来搞一搞。...arg_start,结束arg_end,环境段的开始env_start,结束env_end unsigned long saved_auxv[AT_VECTOR_SIZE]; struct linux_binfmt...问大家:代码在没有被加载到内存之前,代码内部有地址吗?是什么地址? 其实,在未加载内存之前时,代码内部是有地址的,是虚拟地址。 大家在学习C语言时,看过代码的汇编语言?

6410

Linux】进程地址空间

显示相同地址,却是不同的值 下面在Linux上验证 创建test.c文件 st.c  ⮀...扩展1:为什么地址空间要存在? 如果没有地址空间,操作系统如何工作 ?...磁盘中存在很多可执行程序 进程被加载到物理内存中,其中包括了PCB、代码和数据 CPU读取进程的代码和数据按顺序去执行 操作系统加载第二个进程时,在物理内存中申请没有被用到的空间,把PCB、代码和数据放入空间中...拓展3:重新理解地址空间 程序在被编译的时候,没有被加载到内存,程序内部有地址 源代码被编译的时候,就是按照虚拟地址空间的方式进行对代码和数据就已经编号了对应的编制 虚拟地址不只会影响操作系统,还要让编译器遵守规则...进程地址空间+页表的意义: 1.防止地址随意访问,保护物理内存与其他进程 若没有地址空间的存在,则直接使用cPU调用物理地址,会有野指针的问题存在 2.将进程管理和内存管理进行解耦合 因为有虚拟地址和页表的存在

3K10

Linux】进程地址空间

文章目录 一、前言 二、什么是进程地址空间 三、进程地址空间如何进行管理 四、为什么会存在进程地址空间 五、进程地址空间区域的严格划分 一、前言 学习Linux系统编程一共要翻越三座大山 – 进程地址空间...Linux中,三者的意思是一样的,都表示虚拟地址,大家不用过于区分。...所以和管理进程一样,操作系统会使用一种内核数据结构来对地址空间进行管理,Linux中用于 管理地址空间的内核数据结构叫做 mm_struct,操作系统会为每个进程创建一个 mm_struct 对象,然后通过管理结构体对象来间接管理进程地址空间...Linux 中 mm_struct 源码如下: 可以看到,进程地址空间其实也是进程属性的一种,我们可以通过进程的 task_struct 来找到/管理进程对应的地址空间。...注:我们今天讲的进程地址空间其实只将了一部分,其中还有很多比较复杂的细节我们没有涉及,比如页表分级、缺页、命中等等,这部分内容我们会在后面学习文件系统以及多线程的时候慢慢补充。 ----

3.8K00
领券