Questions tagged «proc»

4
监视每个用户的CPU总时间最公平的方法是什么?
在多用户系统上,我想以cpu时间的秒数衡量每个用户的CPU使用率。出于此测量的目的,我假设如果PID属于某个用户,则该用户正在导致CPU时间-也就是说,我忽略了守护进程和内核。 目前,我每五秒钟执行一次: 获取每个用户及其正在运行的PID ps aux 对于每一个PID,得到x的总和,UTIME,cutime,STIME和cstime从/proc/[pid]/stat 计算t = x / interval(高负载时间隔并不总是精确地为5秒) 如果运行此命令,则将获得明智的外观值。例如:该系统上的一个用户正在使用python(while True: pass)旋转,并且该系统每秒显示大约750毫秒的CPU时间。当系统挂起一会儿时,它报告了1600毫秒,时间间隔为1秒。这似乎是正确的,但我已了解,这些值可以是deceiptful,特别是考虑到我并不真正了解他们。 所以我的问题是这样的: 有一种公平,正确的方法来按用户衡量CPU负载? 该方法必须相当准确。该系统上可能有数百个用户,因此从中提取百分比ps aux将不够准确,尤其是对于许多软件喜欢生成的短寿命线程。 尽管这可能很复杂,但我绝对知道这是可能的。这是我的出发点: 内核跟踪进程的创建时间以及它在生命周期中消耗的CPU时间。每次时钟滴答,内核都会以当前时间更新系统和用户模式所花费的时间。—(来自Linux Documentation Project) 我要输入的值是用户在CPU上花费的秒数(秒),而不是系统负载或cpu使用率的百分比。 重要的是,我们在进程仍在运行时测量CPU时间。有些进程将仅持续半秒,有些进程将持续数月-我们需要同时捕获这两种类型,以便我们能够以精细的粒度考虑用户的CPU时间。
25 kernel  cpu-load  proc  uptime 

4
如何将“ / proc / * / environ”文件分成几行?
我正在尝试以/proc/*PID*/environ更具可读性的格式获取任何文件的内容。我可以按照下面显示的方式进行操作,但是我确信这不是正确的方法。 $ cat "/proc/$(pgrep gnome-session -n -U $UID)/environ" USER=spasTEXTDOMAIN=im-configXDG_SEAT=seat0XDG_SESSION_TYPE=waylandSHLVL=1QT4_IM_MODULE=ximHOME=/home/spasDESKTOP_SESSION=ubuntuGNOME_SHELL_SESSION_MODE=ubuntuDBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/busIM_CONFIG_PHASE=2LOGNAME=spasGTK_IM_MODULE=ibusJOURNAL_STREAM=9:147845_=/usr/bin/gnome-sessionUSERNAME=spasXDG_SESSION_ID=70PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/binXDG_RUNTIME_DIR=/run/user/1000LANG=en_US.UTF-8XDG_CURRENT_DESKTOP=ubuntu:GNOMEXDG_SESSION_DESKTOP=ubuntuXMODIFIERS=@im=ibusSHELL=/bin/bashGDMSESSION=ubuntuTEXTDOMAINDIR=/usr/share/locale/XDG_VTNR=2QT_IM_MODULE=ximPWD=/home/spasCLUTTER_IM_MODULE=ximXDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktopXDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg $ cat -e "/proc/$(pgrep gnome-session -n -U $UID)/environ" USER=spas^@TEXTDOMAIN=im-config^@XDG_SEAT=seat0^@XDG_SESSION_TYPE=wayland^@SHLVL=1^@QT4_IM_MODULE=xim^@HOME=/home/spas^@DESKTOP_SESSION=ubuntu^@GNOME_SHELL_SESSION_MODE=ubuntu^@DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus^@IM_CONFIG_PHASE=2^@LOGNAME=spas^@GTK_IM_MODULE=ibus^@JOURNAL_STREAM=9:147845^@_=/usr/bin/gnome-session^@USERNAME=spas^@XDG_SESSION_ID=70^@PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin^@XDG_RUNTIME_DIR=/run/user/1000^@LANG=en_US.UTF-8^@XDG_CURRENT_DESKTOP=ubuntu:GNOME^@XDG_SESSION_DESKTOP=ubuntu^@XMODIFIERS=@im=ibus^@SHELL=/bin/bash^@GDMSESSION=ubuntu^@TEXTDOMAINDIR=/usr/share/locale/^@XDG_VTNR=2^@QT_IM_MODULE=xim^@PWD=/home/spas^@CLUTTER_IM_MODULE=xim^@XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktop^@XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg^@ $ cat -e "/proc/$(pgrep gnome-session -n -U $UID)/environ" | sed 's/\^@/\n/g' USER=spas TEXTDOMAIN=im-config XDG_SEAT=seat0 XDG_SESSION_TYPE=wayland ... 也许我必须为指定一个特定的值$IFS,但这是什么?实现上述结果的正确方法是什么?

3
如何永久更改/ proc / acpi / wakeup?
进入暂停状态后,我的Ubuntu 12.04立即唤醒时出现问题。我通过更改/ proc / acpi / wakeup中的设置解决了该问题,如以下问题所示:如何防止从挂起和/或休眠状态立即唤醒?。 更改设置后,系统会完美无缺地进入挂起状态并保持挂起状态,但是在我将其唤醒后,/ proc / acpi / wakeup中的设置与我设置的设置不同。 暂停之前: cat /proc/acpi/wakeup Device S-state Status Sysfs node SMB0 S4 *disabled pci:0000:00:03.2 PBB0 S4 *disabled pci:0000:00:09.0 HDAC S4 *disabled pci:0000:00:08.0 XVR0 S4 *disabled pci:0000:00:0c.0 XVR1 S4 *disabled P0P5 S4 *disabled P0P6 S4 *disabled pci:0000:00:15.0 GLAN S4 *enabled …
17 suspend  wakeup  proc 

4
我收到Fsync失败错误。为什么?
我试图在Ec2实例(Ubuntu 12.04)中更改tcp时间戳。我打开了编辑器,并1从更改了值0。当我尝试保存文件时,出现此错误: /proc/sys/net/ipv4/tcp_timestamps" E667: Fsync failed 我对Ubuntu非常陌生。有人可以帮我吗?
12 12.04  proc 

1
在/ etc / fstab中是否需要/ proc挂载?
ZFS指南声称: Ubuntu的桌面安装程序可能会增加dev,proc,sys,或tmp行到/etc/fstab文件中,但这样的项目不是严格必需的现代企业制度。如果需要,请立即添加。 这有多真实?我的Ubuntu 12.04安装包含显式/proc安装。如果不必要,Ubuntu为什么要包含它?

1
大型/ proc / kcore文件-这是什么意思?
我不得不中止系统的备份,因为它停滞在文件上/proc/kcore。我检查了它的大小,然后文件很大。在检查Google时,似乎还有许多其他人也拥有非常大的kcore文件。 我有三个问题: 我应该担心kcore的大小吗? 如果是的话,如何缩小尺寸? 有什么理由要备份/ proc /目录吗?
9 backup  proc 

4
如何永久提高entropy_avail级别?
自从我购买新计算机并安装Ubuntu 11.10以来,我已经注意到键盘/鼠标挂起和其他问题。 我研究了在哪里增加/ proc / sys / kernel / random / entropy_avail会有所帮助。 目前,我是通过$ ls -R /在终端中运行 来实现的。当然,这只是读取目录和文件。 实际上,它确实将其提高到4000多。然后又下降到300和400。 在寻找并尝试找到解决方案之后,如何在不从终端手动加载硬盘驱动器的情况下增加entrophy_avail? 我必须承认,自8.04起我就一直在使用Ubuntu,而从Natty开始,Windows完全免费。我不太了解entropy_avail,但是在高峰使用率很高时,我的计算机似乎表现更好。
8 proc 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.