gconv.Map()

func Map(value interface{}, tags ...string) map[string]interface{} {
	if value == nil {
		return nil
	}
	if r, ok := value.(map[string]interface{}); ok {
		return r
	} else {
		// Only assert the common combination of types, and finally it uses reflection.
		m := make(map[string]interface{})
		switch value.(type) {
		case map[interface{}]interface{}:
			for k, v := range value.(map[interface{}]interface{}) {
				m[String(k)] = v
			}
		case map[interface{}]string:
			for k, v := range value.(map[interface{}]string) {
				m[String(k)] = v
			}
		case map[interface{}]int:
			for k, v := range value.(map[interface{}]int) {
				m[String(k)] = v
			}
		case map[interface{}]uint:
			for k, v := range value.(map[interface{}]uint) {
				m[String(k)] = v
			}
		case map[interface{}]float32:
			for k, v := range value.(map[interface{}]float32) {
				m[String(k)] = v
			}
		case map[interface{}]float64:
			for k, v := range value.(map[interface{}]float64) {
				m[String(k)] = v
			}
		case map[string]bool:
			for k, v := range value.(map[string]bool) {
				m[k] = v
			}
		case map[string]int:
			for k, v := range value.(map[string]int) {
				m[k] = v
			}
		case map[string]uint:
			for k, v := range value.(map[string]uint) {
				m[k] = v
			}
		case map[string]float32:
			for k, v := range value.(map[string]float32) {
				m[k] = v
			}
		case map[string]float64:
			for k, v := range value.(map[string]float64) {
				m[k] = v
			}
		case map[int]interface{}:
			for k, v := range value.(map[int]interface{}) {
				m[String(k)] = v
			}
		case map[int]string:
			for k, v := range value.(map[int]string) {
				m[String(k)] = v
			}
		case map[uint]string:
			for k, v := range value.(map[uint]string) {
				m[String(k)] = v
			}
		// Not a common type, use reflection
		default:
			rv := reflect.ValueOf(value)
			kind := rv.Kind()
			// If it is a pointer, we should find its real data type.
			if kind == reflect.Ptr {
				rv = rv.Elem()
				kind = rv.Kind()
			}
			switch kind {
			case reflect.Map:
				ks := rv.MapKeys()
				for _, k := range ks {
					m[String(k.Interface())] = rv.MapIndex(k).Interface()
				}
			case reflect.Struct:
				if v, ok := value.(apiMapStrAny); ok {
					return v.MapStrAny()
				}
				rt := rv.Type()
				name := ""
				tagArray := structTagPriority
				switch len(tags) {
				case 0:
					// No need handle.
				case 1:
					tagArray = append(strings.Split(tags[0], ","), structTagPriority...)
				default:
					tagArray = append(tags, structTagPriority...)
				}
				for i := 0; i < rv.NumField(); i++ {
					// Only convert the public attributes.
					fieldName := rt.Field(i).Name
					if !utilstr.IsLetterUpper(fieldName[0]) {
						continue
					}
					name = ""
					fieldTag := rt.Field(i).Tag
					for _, tag := range tagArray {
						if name = fieldTag.Get(tag); name != "" {
							break
						}
					}
					if name == "" {
						name = strings.TrimSpace(fieldName)
					} else {
						// Support json tag feature: -, omitempty
						name = strings.TrimSpace(name)
						if name == "-" {
							continue
						}
						array := strings.Split(name, ",")
						if len(array) > 1 {
							switch strings.TrimSpace(array[1]) {
							case "omitempty":
								if empty.IsEmpty(rv.Field(i).Interface()) {
									continue
								} else {
									name = strings.TrimSpace(array[0])
								}
							default:
								name = strings.TrimSpace(array[0])
							}
						}
					}
					m[name] = rv.Field(i).Interface()
				}
			default:
				return nil
			}
		}
		return m
	}
}

 

[root@jtappj-app-0006 /]# strace ls -al execve("/usr/bin/ls", ["ls", "-al"], 0x7ffeaa9ed658 /* 21 vars */) = 0 brk(NULL) = 0x5652e24ed000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=65082, ...}) = 0 mmap(NULL, 65082, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f036f52b000 close(3) = 0 openat(AT_FDCWD, "/usr/lib64/libselinux.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\177\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=166176, ...}) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f036f529000 mmap(NULL, 177672, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f036f4fd000 mprotect(0x7f036f504000, 135168, PROT_NONE) = 0 mmap(0x7f036f504000, 102400, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f036f504000 mmap(0x7f036f51d000, 28672, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20000) = 0x7f036f51d000 mmap(0x7f036f525000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x27000) = 0x7f036f525000 mmap(0x7f036f527000, 5640, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f036f527000 close(3) = 0 openat(AT_FDCWD, "/usr/lib64/libcap.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000#\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=27328, ...}) = 0 mmap(NULL, 29432, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f036f4f5000 mmap(0x7f036f4f7000, 12288, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f036f4f7000 mmap(0x7f036f4fa000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f036f4fa000 mmap(0x7f036f4fb000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f036f4fb000 close(3) = 0 openat(AT_FDCWD, "/usr/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\\\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1828080, ...}) = 0 mmap(NULL, 1836248, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f036f334000 mprotect(0x7f036f359000, 1646592, PROT_NONE) = 0 mmap(0x7f036f359000, 1347584, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x7f036f359000 mmap(0x7f036f4a2000, 294912, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16e000) = 0x7f036f4a2000 mmap(0x7f036f4eb000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b6000) = 0x7f036f4eb000 mmap(0x7f036f4f1000, 13528, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f036f4f1000 close(3) = 0 openat(AT_FDCWD, "/usr/lib64/libsecurity.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\20\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=14232, ...}) = 0 mmap(NULL, 16400, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f036f32f000 mmap(0x7f036f330000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f036f330000 mmap(0x7f036f331000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f036f331000 mmap(0x7f036f332000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f036f332000 close(3) = 0 openat(AT_FDCWD, "/usr/lib64/libpcre2-8.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\"\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=604512, ...}) = 0 mmap(NULL, 606856, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f036f29a000 mmap(0x7f036f29c000, 425984, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f036f29c000 mmap(0x7f036f304000, 167936, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6a000) = 0x7f036f304000 mmap(0x7f036f32d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x92000) = 0x7f036f32d000 close(3) = 0 openat(AT_FDCWD, "/usr/lib64/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\21\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=14448, ...}) = 0 mmap(NULL, 16528, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f036f295000 mmap(0x7f036f296000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f036f296000 mmap(0x7f036f297000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f036f297000 mmap(0x7f036f298000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f036f298000 close(3) = 0 openat(AT_FDCWD, "/usr/lib64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P|\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=116440, ...}) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f036f293000 mmap(NULL, 131552, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f036f272000 mmap(0x7f036f279000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f036f279000 mmap(0x7f036f288000, 20480, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7f036f288000 mmap(0x7f036f28d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7f036f28d000 mmap(0x7f036f28f000, 12768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f036f28f000 close(3) = 0 mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f036f26f000 arch_prctl(ARCH_SET_FS, 0x7f036f26f800) = 0 mprotect(0x7f036f4eb000, 12288, PROT_READ) = 0 mprotect(0x7f036f28d000, 4096, PROT_READ) = 0 mprotect(0x7f036f298000, 4096, PROT_READ) = 0 mprotect(0x7f036f32d000, 4096, PROT_READ) = 0 mprotect(0x7f036f332000, 4096, PROT_READ) = 0 mprotect(0x7f036f4fb000, 4096, PROT_READ) = 0 mprotect(0x7f036f525000, 4096, PROT_READ) = 0 mprotect(0x5652e247e000, 8192, PROT_READ) = 0 mprotect(0x7f036f563000, 4096, PROT_READ) = 0 munmap(0x7f036f52b000, 65082) = 0 set_tid_address(0x7f036f26fad0) = 313349 set_robust_list(0x7f036f26fae0, 24) = 0 rt_sigaction(SIGRTMIN, {sa_handler=0x7f036f2796a0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f036f285c40}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {sa_handler=0x7f036f279740, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7f036f285c40}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 prctl(PR_CAPBSET_READ, CAP_MAC_OVERRIDE) = 1 prctl(PR_CAPBSET_READ, 0x30 /* CAP_??? */) = -1 EINVAL (Invalid argument) prctl(PR_CAPBSET_READ, 0x28 /* CAP_??? */) = -1 EINVAL (Invalid argument) prctl(PR_CAPBSET_READ, CAP_BLOCK_SUSPEND) = 1 prctl(PR_CAPBSET_READ, 0x26 /* CAP_??? */) = -1 EINVAL (Invalid argument) prctl(PR_CAPBSET_READ, CAP_AUDIT_READ) = 1 statfs("/sys/fs/selinux", 0x7fff061e4de0) = -1 ENOENT (No such file or directory) statfs("/selinux", 0x7fff061e4de0) = -1 ENOENT (No such file or directory) brk(NULL) = 0x5652e24ed000 brk(0x5652e250e000) = 0x5652e250e000 openat(AT_FDCWD, "/proc/filesystems", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0 read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tr"..., 1024) = 379 read(3, "", 1024) = 0 close(3) = 0 access("/etc/selinux/config", F_OK) = 0 openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=215157200, ...}) = 0 mmap(NULL, 215157200, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f036253e000 close(3) = 0 ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(1, TIOCGWINSZ, {ws_row=56, ws_col=138, ws_xpixel=0, ws_ypixel=0}) = 0 openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=2997, ...}) = 0 read(3, "# Locale name alias data base.\n#"..., 4096) = 2997 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/usr/share/locale/en_US.UTF-8/LC_TIME/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/share/locale/en_US.utf8/LC_TIME/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/share/locale/en_US/LC_TIME/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_TIME/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_TIME/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/share/locale/en/LC_TIME/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib64/gconv/gconv-modules.cache", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=26398, ...}) = 0 mmap(NULL, 26398, PROT_READ, MAP_SHARED, 3, 0) = 0x7f036f534000 close(3) = 0 futex(0x7f036f4f0548, FUTEX_WAKE_PRIVATE, 2147483647) = 0 openat(AT_FDCWD, ".", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3 fstat(3, {st_mode=S_IFDIR|0555, st_size=4096, ...}) = 0 getdents64(3, /* 28 entries */, 32768) = 720 statx(AT_FDCWD, ".", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0555, stx_size=4096, ...}) = 0 lgetxattr(".", "security.selinux", "system_u:object_r:root_t:s0", 255) = 28 access("/var/run/setrans/.setrans-unix", F_OK) = -1 ENOENT (No such file or directory) futex(0x7f036f5285e8, FUTEX_WAKE_PRIVATE, 2147483647) = 0 getxattr(".", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr(".", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 4 connect(4, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(4) = 0 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 4 connect(4, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(4) = 0 openat(AT_FDCWD, "/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 4 fstat(4, {st_mode=S_IFREG|0644, st_size=1516, ...}) = 0 read(4, "#\n# /etc/nsswitch.conf\n#\n# An ex"..., 4096) = 1516 read(4, "", 4096) = 0 close(4) = 0 openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4 fstat(4, {st_mode=S_IFREG|0644, st_size=65082, ...}) = 0 mmap(NULL, 65082, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7f036252e000 close(4) = 0 openat(AT_FDCWD, "/lib64/tls/x86_64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64/tls/x86_64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib64/tls/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64/tls/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib64/tls/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64/tls/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib64/tls/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64/tls", {st_mode=S_IFDIR|0555, st_size=6, ...}) = 0 openat(AT_FDCWD, "/lib64/x86_64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64/x86_64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/lib64", {st_mode=S_IFDIR|0555, st_size=61440, ...}) = 0 openat(AT_FDCWD, "/usr/lib64/tls/x86_64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64/tls/x86_64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib64/tls/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64/tls/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib64/tls/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64/tls/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib64/tls/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64/tls", {st_mode=S_IFDIR|0555, st_size=6, ...}) = 0 openat(AT_FDCWD, "/usr/lib64/x86_64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64/x86_64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib64/x86_64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64/x86_64", 0x7fff061e3b30) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib64/libnss_sss.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib64", {st_mode=S_IFDIR|0555, st_size=61440, ...}) = 0 munmap(0x7f036252e000, 65082) = 0 openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4 fstat(4, {st_mode=S_IFREG|0644, st_size=65082, ...}) = 0 mmap(NULL, 65082, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7f036252e000 close(4) = 0 openat(AT_FDCWD, "/usr/lib64/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 4 read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0203\0\0\0\0\0\0"..., 832) = 832 fstat(4, {st_mode=S_IFREG|0755, st_size=55416, ...}) = 0 mmap(NULL, 83416, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x7f0362519000 mprotect(0x7f036251c000, 40960, PROT_NONE) = 0 mmap(0x7f036251c000, 28672, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x7f036251c000 mmap(0x7f0362523000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xa000) = 0x7f0362523000 mmap(0x7f0362526000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xc000) = 0x7f0362526000 mmap(0x7f0362528000, 21976, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f0362528000 close(4) = 0 mprotect(0x7f0362526000, 4096, PROT_READ) = 0 munmap(0x7f036252e000, 65082) = 0 openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC) = 4 lseek(4, 0, SEEK_CUR) = 0 fstat(4, {st_mode=S_IFREG|0644, st_size=2118, ...}) = 0 read(4, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2118 close(4) = 0 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 4 connect(4, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(4) = 0 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 4 connect(4, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(4) = 0 openat(AT_FDCWD, "/etc/group", O_RDONLY|O_CLOEXEC) = 4 lseek(4, 0, SEEK_CUR) = 0 fstat(4, {st_mode=S_IFREG|0644, st_size=916, ...}) = 0 read(4, "root:x:0:\nbin:x:1:\ndaemon:x:2:\ns"..., 4096) = 916 close(4) = 0 statx(AT_FDCWD, "..", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0555, stx_size=4096, ...}) = 0 lgetxattr("..", "security.selinux", "system_u:object_r:root_t:s0", 255) = 28 getxattr("..", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("..", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "boot", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0555, stx_size=4096, ...}) = 0 lgetxattr("boot", "security.selinux", "system_u:object_r:boot_t:s0", 255) = 28 getxattr("boot", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("boot", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "dev", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=4060, ...}) = 0 lgetxattr("dev", "security.selinux", 0x5652e24fe680, 255) = -1 ENODATA (No data available) getxattr("dev", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("dev", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "home", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0777, stx_size=165, ...}) = 0 lgetxattr("home", "security.selinux", "system_u:object_r:home_root_t:s0"..., 255) = 33 getxattr("home", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("home", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "proc", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0555, stx_size=0, ...}) = 0 lgetxattr("proc", "security.selinux", 0x5652e24fea50, 255) = -1 EOPNOTSUPP (Operation not supported) getxattr("proc", "system.posix_acl_access", NULL, 0) = -1 EOPNOTSUPP (Operation not supported) statx(AT_FDCWD, "run", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=1000, ...}) = 0 lgetxattr("run", "security.selinux", 0x5652e24feb80, 255) = -1 ENODATA (No data available) getxattr("run", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("run", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "sys", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0555, stx_size=0, ...}) = 0 lgetxattr("sys", "security.selinux", 0x5652e24fecb0, 255) = -1 ENODATA (No data available) getxattr("sys", "system.posix_acl_access", NULL, 0) = -1 EOPNOTSUPP (Operation not supported) statx(AT_FDCWD, "var", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=4096, ...}) = 0 lgetxattr("var", "security.selinux", "system_u:object_r:var_t:s0", 255) = 27 getxattr("var", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("var", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "etc", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=8192, ...}) = 0 lgetxattr("etc", "security.selinux", 0x5652e24fee10, 255) = -1 ENODATA (No data available) getxattr("etc", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("etc", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "root", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0550, stx_size=4096, ...}) = 0 lgetxattr("root", "security.selinux", 0x5652e24fee10, 255) = -1 ENODATA (No data available) getxattr("root", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("root", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "usr", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=144, ...}) = 0 lgetxattr("usr", "security.selinux", 0x5652e24fee10, 255) = -1 ENODATA (No data available) getxattr("usr", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("usr", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "bin", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFLNK|0777, stx_size=7, ...}) = 0 lgetxattr("bin", "security.selinux", 0x5652e24fee10, 255) = -1 ENODATA (No data available) readlink("bin", "usr/bin", 8) = 7 statx(AT_FDCWD, "sbin", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFLNK|0777, stx_size=8, ...}) = 0 lgetxattr("sbin", "security.selinux", 0x5652e24fee10, 255) = -1 ENODATA (No data available) readlink("sbin", "usr/sbin", 9) = 8 statx(AT_FDCWD, "lib", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFLNK|0777, stx_size=7, ...}) = 0 lgetxattr("lib", "security.selinux", 0x5652e24fee30, 255) = -1 ENODATA (No data available) readlink("lib", "usr/lib", 8) = 7 statx(AT_FDCWD, "lib64", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFLNK|0777, stx_size=9, ...}) = 0 lgetxattr("lib64", "security.selinux", 0x5652e24fee70, 255) = -1 ENODATA (No data available) readlink("lib64", "usr/lib64", 10) = 9 statx(AT_FDCWD, "media", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=6, ...}) = 0 lgetxattr("media", "security.selinux", 0x5652e24feeb0, 255) = -1 ENODATA (No data available) getxattr("media", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("media", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "mnt", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=40, ...}) = 0 lgetxattr("mnt", "security.selinux", 0x5652e24feed0, 255) = -1 ENODATA (No data available) getxattr("mnt", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("mnt", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "opt", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0777, stx_size=200, ...}) = 0 lgetxattr("opt", "security.selinux", 0x5652e24feef0, 255) = -1 ENODATA (No data available) getxattr("opt", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("opt", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "srv", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=6, ...}) = 0 lgetxattr("srv", "security.selinux", 0x5652e24fef10, 255) = -1 ENODATA (No data available) getxattr("srv", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("srv", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "tmp", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0777, stx_size=580, ...}) = 0 lgetxattr("tmp", "security.selinux", 0x5652e24fef30, 255) = -1 ENODATA (No data available) getxattr("tmp", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("tmp", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "box", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0777, stx_size=6, ...}) = 0 lgetxattr("box", "security.selinux", 0x5652e24fef50, 255) = -1 ENODATA (No data available) getxattr("box", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("box", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, ".exectl_all", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=0, ...}) = 0 lgetxattr(".exectl_all", "security.selinux", 0x5652e24fef70, 255) = -1 ENODATA (No data available) getxattr(".exectl_all", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "sudo", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0711, stx_size=16, ...}) = 0 lgetxattr("sudo", "security.selinux", 0x5652e24fef90, 255) = -1 ENODATA (No data available) getxattr("sudo", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("sudo", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "data", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0777, stx_size=94, ...}) = 0 lgetxattr("data", "security.selinux", 0x5652e24fefb0, 255) = -1 ENODATA (No data available) getxattr("data", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("data", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "titan", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=19, ...}) = 0 lgetxattr("titan", "security.selinux", 0x5652e24fefd0, 255) = -1 ENODATA (No data available) getxattr("titan", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr("titan", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, ".gnupg", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0700, stx_size=108, ...}) = 0 lgetxattr(".gnupg", "security.selinux", 0x5652e24feff0, 255) = -1 ENODATA (No data available) getxattr(".gnupg", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available) getxattr(".gnupg", "system.posix_acl_default", NULL, 0) = -1 ENODATA (No data available) statx(AT_FDCWD, "nasdata", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW, STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_SIZE,
最新发布
12-04
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值