关于linux-0.11文件属组为4096的问题与解答

ls -l

关于linux-0.11文件属组为4096的问题与解答_第1张图片

为什么出现了4096?

chown root:root mtools.howto也不管用!

如果删除了mtools.howto

就会出现

关于linux-0.11文件属组为4096的问题与解答_第2张图片

哪里出了问题?系统工具出了问题。系统工具是linux-0.12下的,不适合linux-0.11

linux-0.11\include\sys下的types.h

里面

typedef unsigned short uid_t;
typedef unsigned char gid_t;

而linux-0.12\include\sys下的types.h

typedef unsigned short uid_t;
typedef unsigned short gid_t;


参考下面的定义:

#include <sys/types.h>

struct stat {
    dev_t    st_dev;
    ino_t    st_ino;
    umode_t    st_mode;
    nlink_t    st_nlink;
    uid_t    st_uid;
    gid_t    st_gid;
    dev_t    st_rdev;
    off_t    st_size;
    time_t    st_atime;
    time_t    st_mtime;
    time_t    st_ctime;
};

而不是oldlinux论坛里面说的linux-0.11的文件系统不稳定,linux-0.12同样用的minix-1.0的文件系统。


关于linux-0.11文件属组为4096的问题与解答_第3张图片

上图是把usr/include/sys/types.h里面的

typedef unsigned char gid_t;

改为

typedef unsigned short gid_t;

之后编译stat.c

然后我们可以看到gid变为4096而所属组变为???也就是未知。



你可能感兴趣的:(关于linux-0.11文件属组为4096的问题与解答)