ข้อมูลถูกเก็บไว้ใน init / version.c:
struct uts_namespace init_uts_ns = {
.kref = {
.refcount = ATOMIC_INIT(2),
},
.name = {
.sysname = UTS_SYSNAME,
.nodename = UTS_NODENAME,
.release = UTS_RELEASE,
.version = UTS_VERSION,
.machine = UTS_MACHINE,
.domainname = UTS_DOMAINNAME,
},
.user_ns = &init_user_ns,
.proc_inum = PROC_UTS_INIT_INO,
};
EXPORT_SYMBOL_GPL(init_uts_ns);
สตริงตัวเองอยู่ในรวม / สร้าง / compile.h:
#define UTS_MACHINE "x86_64"
#define UTS_VERSION "#30 SMP Fri Apr 11 00:24:23 BST 2014"
และรวมอยู่ใน / สร้าง / utsrelease.h:
#define UTS_RELEASE "3.14.0-v2-v"
UTS_SYSNAME อาจกำหนดไว้ใน include / linux / uts.h
#ifndef UTS_SYSNAME
#define UTS_SYSNAME "Linux"
#endif
หรือเป็น #define ใน makefiles
ในที่สุดชื่อโฮสต์และชื่อโดเมนสามารถควบคุมได้โดย / proc / sys / kernel / {ชื่อโฮสต์, ชื่อโดเมน} ต่อไปนี้เป็นเนมสเปซ UTS:
# hostname
hell
# unshare --uts /bin/bash
# echo test > /proc/sys/kernel/hostname
# hostname
test
# exit
# hostname
hell
domainname
ฟิลด์ที่กำหนดโดยdomainname
คำสั่งโดยใช้setdomainname
ระบบโทร ในทำนองเดียวกันnodename
ฟิลด์ถูกตั้งค่าโดยhostname
คำสั่งโดยใช้การsethostname
เรียกระบบ ( อาจเก็บค่าnodename
/hostname
ค่าไว้/etc/nodename
ได้)