linux文件系统下的一个目录中最多可以存放多少个文件?
linux的ext3文件系统一级子目录的个数默认为31998(个),准确地说是32000个。Linux为了cpu的搜索效率而规定的,要想改变数目限制需要重新编译内核。在kernel代码中有这样的:
include/linux/ext2_fs.h:#define EXT2_LINK_MAX 32000include/linux/ext3_fs.h:#define EXT3_LINK_MAX 32000为什么说31998个呢?
这是因为mkdir创建一个目录时,目录下默认就会创建两个子目录的,一个是.目录(代表当前目录),另一个是..目录(代表上级目录)。
这两个子目录是删除不掉的,“ rm . ” 会得到“rm: cannot remove `.' or `..'”的提示。所以32000-2=31998。ext3文件系统下单个目录里的最大文件数无特别的限制,是受限于所在文件系统的inode数。
linux怎么给文件rwrr权限?
在 Linux 中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录。通过设定权限可以从以下三种访问方式限制访问权限:
只允许用户自己访问(所有者);
允许一个预先指定的用户组中的用户访问(用户组);
允许系统中的任何用户访问(其他用户)。
所有者就是创建文件的用户,用户是所有用户所创建文件的所有者,用户可以允许所在的用户组能访问用户的文件。
通常,用户都组合成用户组,例如,某一类或某一项目中的所有用户都能够被系统管理员归为一个用户组,一个用户能够授予所在用户组的其他成员的文件访问权限。
最后,用户也将自己的文件向系统内的所有用户开放,在这种情况下,系统内的所有用户都能够访问用户的目录或文件。在这种意义上,系统内的其他所有用户就是 other 用户类。这有点类似于 QQ 空间的访问权限,这个 QQ 空间是属于我的,我相当于管理者(也就是“所有者”),我想怎么访问就怎么访问。
同时,我可以设置允许 QQ 好友访问,而这些 QQ 好友则类似于“用户组”,当然,我可以允许所有人访问,这里的所有人则类似于“其他用户”。同时,用户能够控制一个给定的文件或目录的访问程度,一个文件或目录可能有读、写及执行权限。
每一个用户都有它自身的读、写和执行权限。
第一组权限控制访问自己的文件权限,即所有者权限。
第二组权限控制用户组访问其中一个用户的文件的权限。
第三组权限控制其他所有用户访问一个用户的文件的权限。
这三组权限赋予用户不同类型(即所有者、用户组和其他用户)的读、写及执行权限就构成了一个有9种类型的权限组。
第1个字母代表文件的类型:“d” 代表文件夹、“-” 代表普通文件、“c” 代表硬件字符设备、“b” 代表硬件块设备、“l” 代表软链接文件。
后 9 个字母分别代表三组权限:文件所有者、用户者、其他用户拥有的权限。
r ( read,读取 ):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
w ( write,写入 ):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
x ( execute,执行 ):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。
– :不具备任何权限。
linux查看mp4类型文件数量?
Linux文件数打开数查看当前系统最大的文件打开数,在linux终端中输入ulimit -a“open files”参数选项后面的数值就是当前系统支持的最大打开文件数修改linux最大文件打开数如果要修改linux最大文件打开数,可以通过参数命令 unlimit -n 后面接需要设置的文件数量。
设置好之后,再次查看 unlimit -a 你会发现已经设置为新的数量了设置好之后,再次编辑修改重启设置的服务,已经没有刚刚那个1024文件数限制的报错提示其他修改方法除此之外,如果针对不同的用户。
也可以通过编辑修改 /etc/rc.local文件设置环境变量,添加 unlimit -n,重启之后一般就自动设置好了查看系统句柄文件数当前系统文件句柄的最大数目,只用于查看,不能设置修改cat /proc/sys/fs/file-max查看进程打开文件数如果需要查看所有进程的文件打开数,命令lsof |wc -l
求救LINUX创建文件权限不够怎么办?SU密码忘记了,怎么办?
linux 下面的管理员叫 root ,没 admininstrator 什么事。su 的密码忘了还要看你的系统了,某些系统没有 root 密码(不是空密码,两个意思,特点是保存密码的 /etc/shadow 里面 root 的密码是 * ),比如 ubuntu 。用 sudo 命令即可,没密码的 root ,会被提示输入当前用户密码,不过需要运行的用户加入 wheel 组才可以 sudo 。如果确实是有 root 密码的,真忘了。两个选择:
1、用 LiveCD 启动计算机,之后挂载 Linux 分区,修改 /etc/shadow 文件,或者 chroot 过去 passwd -d root 删掉密码。
2、grub 启动后,修改 kernel 启动行,加参数 init=/bin/bash 启动。修改密码方式同上。注意,这两种方式可以很简单的屏蔽,比如加 BIOS 密码禁止设置光盘启动,或者 GRUB 加密码禁止修改参数。甚至还有分区加密的办法。