成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在 Linux 下追溯進(jìn)程的發(fā)起者

系統(tǒng)
在 Linux 下要確認(rèn)一個進(jìn)程的發(fā)起者身份,比如用戶 tom 登錄系統(tǒng),sudo su - 到 root,然后執(zhí)行了腳本 hey.sh,要想在 hey.sh 中追溯到發(fā)起進(jìn)程的是 tom 這個用戶,并不是很容易做到準(zhǔn)確無誤,花了點(diǎn)時間,找到了一個相對靠譜的方式。

在 Linux 下要確認(rèn)一個進(jìn)程的發(fā)起者身份,比如用戶 tom 登錄系統(tǒng),sudo su - 到 root,然后執(zhí)行了腳本 hey.sh,要想在 hey.sh 中追溯到發(fā)起進(jìn)程的是 tom 這個用戶,并不是很容易做到準(zhǔn)確無誤,花了點(diǎn)時間,找到了一個相對靠譜的方式。

先說說遇到的幾個問題:

  1. 用戶登錄之后,使用 sudo hey.sh 的方式執(zhí)行 hey.sh,倒是可以通過環(huán)境變量 SUDO_USER 獲取到 sudo 之前的用戶,但沒有辦法解決上面提到的 sudo su - 這樣不繼承之前用戶環(huán)境變量的問題。
  2. 可以用 tty 命令獲取當(dāng)前進(jìn)程的 controlling terminal,然后通過 controlling terminal 文件的屬主來確認(rèn)登錄用戶,這可以解決 1 中提到的問題,但是如果當(dāng)前進(jìn)程的父進(jìn)程是 daemon 或者關(guān)掉了標(biāo)準(zhǔn)輸入,就沒有 controlling terminal。
  3. 可以通過讀取 /proc/self/loginuid 獲取當(dāng)前進(jìn)程的登錄用戶 ID,對于沒有 controlling terminal 的進(jìn)程也可以獲取到 ID,但對于 daemon 進(jìn)程來說,獲取的 ID 可能是 4294967295。

在我的場景下,對于第三個問題,并不是特別要緊,找不到對應(yīng)的用戶,fallback 回 effective user 就好, 所以,用來追溯進(jìn)程發(fā)起用戶身份的 bash 腳本是這樣:

  1. #!/bin/bash 
  2. # A relatively reliable way to find process initiator on Linux 
  3. user_entry=`getent passwd $(cat /proc/self/loginuid)` 
  4. if [ $? -eq 0 ]; then 
  5.      login_user=`echo ${user_entry} | cut -d: -f1` 
  6. else 
  7.      login_user=${SUDO_USER:-${LOGNAME}} 
  8.      if [ "${login_user}" = "" ]; then 
  9.           login_user=`id -urn` 
  10.      fi 
  11. fi  
  12. echo ${login_user} 
責(zé)任編輯:黃丹 來源: xupeng.me
相關(guān)推薦

2013-12-19 15:01:03

LinuxLinux進(jìn)程

2015-12-31 09:10:48

DebianIan Murdock去世

2021-03-08 09:41:50

?Aurora自動駕駛

2014-08-01 15:38:37

Linux進(jìn)程管理

2020-09-18 11:19:03

惡意軟件Linux網(wǎng)絡(luò)攻擊

2017-04-11 16:00:40

Linuxsyslog進(jìn)程

2009-09-16 08:43:51

linux進(jìn)程線程

2010-01-05 10:00:48

Linux進(jìn)程間通信

2017-05-03 11:10:14

Linux進(jìn)程監(jiān)控cpustat

2019-07-10 10:40:10

Linux庫注入命令

2019-05-08 11:10:05

Linux進(jìn)程語言

2016-08-23 10:17:42

2009-10-27 08:57:50

linux殺死進(jìn)程

2017-05-27 14:45:04

Linux命令進(jìn)程

2024-09-10 09:16:06

2010-07-14 10:41:58

Perl線程

2019-08-08 14:40:18

開發(fā)者技能工具

2019-05-23 10:11:39

Python編程語言singledispa

2010-01-22 10:51:54

svn命令linux

2011-01-05 09:40:33

windowslinux
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 久久99一区二区 | 国产aaaaav久久久一区二区 | 欧美激情一区二区 | 又爽又黄axxx片免费观看 | 欧美国产日韩一区 | 久久久久免费观看 | 夜夜草 | 欧美日韩视频网站 | 亚洲视频 欧美视频 | 中文字幕一区二区三区精彩视频 | 久久激情视频 | 99久久精品免费看国产高清 | 91亚洲国产精品 | 久久免费精品视频 | 亚洲精品一区中文字幕 | 日韩在线 | 超碰在线97国产 | 国产精品久久久久久久久免费丝袜 | 亚洲人免费视频 | 天天草视频 | 欧美一区二区在线免费观看 | 视频1区 | 97国产精品视频人人做人人爱 | 天天干天天谢 | 久久精品在线 | 9191在线播放 | 国产精品毛片久久久久久 | 欧美视频三区 | 看av片网站 | 欧美一级免费看 | 99成人在线视频 | 国产精品久久久久久网站 | 日本久久久久久 | 国产精品18久久久久久久 | 日韩精品在线免费观看 | 国产精品视频一二三区 | 亚洲一区二区av在线 | 久久91精品国产 | 久久久久网站 | 伊人网影院| 欧美成人精品一区二区男人看 |