我们经常程序在生产环境上上线好几天了,突然不工作了,反复查找原因,发现在Linux操作系统下无法创建目录或文件了,那一般有哪些原因会导致出现这种情况呢?
1.磁盘满
最常出现的问题就是磁盘满了,第一时间查看这个原因,在linux系统下执行df命令,Use%这一列是否有100%的磁盘。
2.文件名称长度限制
linux系统下ext3文件系统内给文件/目录命名,最长只能支持127个中文字符,英文则可以支持255个字符,包含完整路径名称及目录(/)的完整文件名为4096个字符。
测试代码:
LENTH=`for i in {1..255};do for x in a;do echo -n $x;done;done`
touch $LENTH
当增加到256时,touch报错,File name too long
3.目录数量的限制
ext3文件系统下一级子目录是有数量限制的,一般是31998(个),为什么是这个数字,我也不清楚,网上有说是Linux为了cpu的搜索效率而规定的,要想改变数目大概要重新编译内核.
测试代码:
for i in {1..32000};do mkdir $i;done
mkdir: cannot create directory `31999': Too many links
mkdir: cannot create directory `32000': Too many links
4.文件个数限制
目录下对于文件个数没有限制,文件个数的限制主要取决于磁盘文件系统的inode数。
df -i或者使用tune2fs -l /dev/sdaX或者dumpe2fs -h /dev/sdaX查看可用inode数,后两个命令输出结果是一样的,但是跟df所得出的可用inode数会有些误差,至今不明白什么原因。
5.打开文件数限制(文件句柄、文件描述符)
ulimit -n 65535设置,或者/etc/security/limit.conf里设置用户打开文件数、进程数、CPU等
分享到:
相关推荐
Linux操作系统是计算机科学领域的重要组成部分,它是一种自由和开源的Unix-like操作系统。Linux的核心由Linus Torvalds创建,它的命名来源于开发者本人的名字。Linux不仅仅是一个操作系统内核,它还包括了GNU工具集...
本资料"Linux操作系统基础.rar"主要围绕单片机环境下的Linux基础知识进行讲解,包括Linux内核、文件系统、进程管理、网络通信等多个方面。 首先,我们要理解Linux内核是整个操作系统的核心,它负责管理和调度硬件...
在操作系统实验报告“文件管理”部分,我们关注的是如何为Unix/Linux系统设计一个简单的二级文件系统。这个实验旨在让学生深入理解文件系统的内部运作机制及其功能实现。以下是该实验涉及的关键知识点: 1. 文件...
### Linux操作系统基础教程知识点梳理 #### 一、Linux概述 - **定义**:Linux是一种开源、免费的操作系统,兼容于UNIX,并支持Intel系列处理器(包括CYRIX和AMD)。它不仅适用于个人电脑,还具备完整的32位多用户...
Linux操作系统中的文件系统是其核心组成部分之一,负责管理和组织存储在磁盘上的数据。Linux的文件系统采用了一种树状的层次结构,其中包含了文件、目录、符号链接等多种元素,这些元素都存储在一系列的块中,这些块...
### Linux系统创建SFTP用户及权限限制实战步骤详解 #### 一、说明 本文将详细介绍如何在Linux系统中创建SFTP用户并实现权限限制。通过使用系统自带的internal-sftp功能,可以有效地限制用户只能在其home目录下进行...
### 基于Linux操作系统文件权限的设置 #### 摘要 随着Linux操作系统的快速发展与广泛应用,系统管理员与软件开发者越来越重视Linux的安全性。本文着重从文件权限配置的角度探讨了Linux操作系统中文件安全的问题,...
umask(用户文件创建掩码)用于设置新创建文件和目录的默认权限,确保新文件不会对所有用户开放写权限。权限设置要保证关键文件和目录的安全,防止未授权访问。查找未授权的SUID/SGID文件是因为这些文件可能被用来...
在笔记中还提到了Linux操作系统的基本操作,比如创建文件和目录、编辑文件、查看文件内容、搜索文件内容、压缩和解压缩文件等。例如,使用vim、nano等文本编辑器可以创建和编辑文件,使用cat、less、head、tail等...
Linux操作系统是一种广泛应用于服务器、嵌入式设备和个人电脑上的开源操作系统。它的核心是Linux内核,由Linus Torvalds于1991年创建,旨在实现与UNIX系统的兼容性和可移植性。Linux遵循GNU公共许可证(GPL),这...
在这个“Linux操作系统课程设计实验”中,学生被要求模拟一个简单的操作系统文件系统。这个实验的主要目标是理解并实现操作系统中的核心组件,如文件系统、位示图管理和文件分配表(FAT)。以下是具体涉及的知识点:...
本试卷涵盖了 Linux 操作系统的多个方面,包括进程管理、文件系统、权限管理、网络配置、系统管理等。下面是对试卷中所涉及到的知识点的详细解释: 一、单选题 1. 从后台启动进程,应在命令的结尾加上符号 &。这是...
Linux操作系统内核实习是计算机科学领域的一个重要主题,它涵盖了操作系统的核心组成部分,这些部分负责管理硬件资源、提供系统服务、确保多任务并发执行,并为上层应用程序提供接口。Linux内核是一个开源项目,由...
Linux 文件系统制作涉及到了Linux操作系统的核心概念和技术,其中包括虚拟文件系统VFS、各种类型的文件系统以及针对嵌入式系统特别是闪存存储的特殊文件系统。首先,Linux的虚拟文件系统VFS是Linux内核中一个至关...
Linux文件系统是Linux操作系统的核心组成部分,它负责组织和管理存储设备上的数据,为用户提供访问和管理文件的统一接口。在嵌入式系统中,构建一个高效、精简且安全的文件系统尤其重要,因为资源有限,同时需要确保...
嵌入式Linux根文件系统是将操作系统的核心组件和应用程序打包成一个特定的文件系统,用于在嵌入式设备上启动和运行。这个概念是嵌入式系统开发中的关键部分,因为它直接影响到系统的性能、可靠性和资源利用率。在...
在 Linux 操作系统移植到树莓派的过程中,需要熟悉 Linux 操作系统的基本概念和命令,了解树莓派的硬件特点和限制。本节内容将从 Linux 操作系统的基本概念开始,逐步深入到树莓派的移植过程。 首先,Linux 操作...
权限设置则允许对不同用户访问文件和目录的权限进行限制,这是保障数据安全的重要机制。这部分功能的实现可能涉及到对用户身份验证和访问控制列表(ACL)的概念。 附带的“模拟文件系统报告.pdf”很可能是对整个...
Linux操作系统是目前广泛使用的开源操作系统,其内核设计的高效性和稳定性让它成为服务器和桌面平台的主流选择。为了深入理解Linux内核的设计艺术,我们可以从以下几个方面着手分析: 一、主奴机制设计思想 Linux...
在嵌入式系统开发中,Linux操作系统因其开源、可裁剪和丰富的开发资源而受到广泛应用。根文件系统是Linux内核启动过程中至关重要的一部分,它包含了操作系统运行所需的最基本文件和目录,如执行程序、库、配置文件等...