当前位置: 首页 > news >正文

15、【Ubuntu】【VSCode】VSCode 断联问题分析:UID 补充

【声明】本博客所有内容均为个人业余时间创作,所述技术案例均来自公开开源项目(如Github,Apache基金会),不涉及任何企业机密或未公开技术,如有侵权请联系删除

背景

上篇 blog
【Ubuntu】【VSCode】VSCode 断联问题分析:hostname(二)
介绍了下互联网上的全限定域名 www.xxx.com 和域名 xxx.com 的区别,顺便还简单说了下 curl 命令,下面回归正题

VSCode 断联问题

回归正题
在这里插入图片描述
之前 blog 【Ubuntu】【VSCode】VSCode 断联问题分析:UID 里面提到了

  • UID 1000 是在安装系统时创建的第一个用户,所以不一定是当前用户,因为如果这个服务器是多人使用的话,UID 可能就不一样,这个时候最好先用 id 命令查询下自己的 UID 先,这样最保险
    在这里插入图片描述
    当然,如果是只有自己使用的话,那么 UID 一般是 1000,然后动态去调整 /run/user/UID 这里的 UID 目录
  • 而 UID 120 是 gdm(Gnome Display Manager)
    在这里插入图片描述
    之前的 blog 【OS】【Nuttx】【周边】效果呈现方案解析:strace 日志解析(三)简单介绍过,GNOME 全称 GNU Network Object Model Environment,是一个自由开源的桌面环境,也是 Linux 系统上最流行的桌面环境之一,像 Ubuntu,Fedora,Debian 等主流 Linux 发行版都在用

gdm 作为图形登录管理器(系统用户),负责显示登录界面,管理图形会话的生命周期,在普通用户登录前就运行,是一个后台服务程序(使用 systemd --user 创建 UID 比普通用户早),当 gdm 启动图形服务时,systemd 为其创建了 /run/user/120/ 运行空间并挂载 tmpfs 可以存放其运行时 socket(不是指这里的 VSCode IPC socket),D-Bus 实例等

其实不管是 UID 1000,还是 UID 120,它们都有自己独立的 /run/user/UID 目录,但每个人只能访问自己的,所以 lsof 会对 /run/user/120 报 WARNING,因为当前登录用户是 UID 1000,如果想直接访问 120 目录,也是不行的,比如终端输入

ls /run/user/120

可以看到会被拒绝
在这里插入图片描述

另外,对于 1201000 这些用户数字,没有统一的硬性规定说 UID 120 必须是 gdm 或者 UID 1000 必须是第一个用户,但有原则性规范,这些数字背后有一套广泛遵循的标准和设计哲学,查看 systemd 项目的 UID/GID 分配指南 https://systemd.io/UIDS-GIDS/,这是目前最权威的现代 Linux 用户/组 ID 分配标准,其 UID 范围大致如下:

  • UID 0:root 用户,超级管理员
    在这里插入图片描述

  • UID 1 ~ 999 :系统用户,属于非人类用户

  • UID >=1000:普通用户,属于人类用户
    在这里插入图片描述
    另外,再说下 /run/user/1000/home/username 目录的区别,/home/username//run/user/1000/ 虽然都属于同一个用户(UID 1000),但它们的用途,生命周期,存储位置完全不同

  • /home/username/:存放在持久化主目录,生命周期永久(除非删除),存储位置在磁盘上(比如 ext4/btrfs 等),用来存放文档,配置,代码等长期数据,终端输入 df ~
    在这里插入图片描述
    可以看到其文件系统类型为 NVMe,全称 Non Volatile Memory Express,为非易失性内存,所以终端上运行的路径也在 ~/ 这上面,比如随便创建个文件,等重启后,这个文件并不会消失

  • /run/user/1000/:存放在临时运行时目录,生命周期只在用户登录期间存在,存储位置在内存上,存放 socket,锁,D-Bus,IPC 等临时通信文件,终端输入 df /run/user/1000
    在这里插入图片描述
    可以看到其文件类型为 tmpfs

ok,先分析到这里,下篇 blog 继续

http://www.dtcms.com/a/520250.html

相关文章:

  • 本地网站404错误德州网站怎样建设
  • 从被动防御到主动防护:雷池WAF+cpolar的安全实践
  • 网络营销咨询网站源码多平台网页制作
  • 广州在建火车站在哪里国内最好的危机公关公司
  • mysql锁整理
  • linux下java程序使用jprofiler进行压测
  • R语言随机森林分析显示R方和P值
  • 《Python爬虫 + 飞书自动化上传》全流程详细讲解
  • ELK——logstash
  • 图像进行拼接-后进行ocr检测识别
  • 登封网站设计wordpress终极简码
  • 网站服务器关闭建设网站需要的安全设备
  • STM32 RS422异步UART通信测试全方案C++软件开发,嵌入式软件开发,Linux
  • Qt笔记:的初次使用Qt-Advanced-Docking-System
  • 基于PyTorch和CuPy的GPU并行化遗传算法实现
  • Apollo Canbus模块技术深度解析
  • DeepSeek-OCR 嵌入dify工作流
  • Linux小课堂: Vim与Emacs之Linux文本编辑器的双雄格局及Vim安装启动详解
  • 江宁外贸网站建设国内付费代理ip哪个好
  • 多种大连网站建设景观设计公司理念
  • KP201FLGA电机驱动电源方案SOT23-6恒压恒流恒功率电路原理图分析
  • Hadoop报错 Couldn‘t find datanode to read file from. Forbidden
  • 【案例实战】HarmonyOS分布式购物车:多设备无缝协同的电商体验
  • OpenCV工程中直接包含调用vs2022
  • 怎么看一个网站用什么做的北京建设公司有哪些
  • 上海交大刘鹏飞:智能不在于数据堆砌,78个样本训练出超强Agent,数据效率提升128倍
  • SpringAI1-快速⼊⻔
  • 本地局域网邮件管理系统:从原理到实现的完整指南
  • 面向小样本蜂窝网络故障诊断的模型与知识互增强方法
  • 上海网站推广方法河北石家庄属于几线城市