Это изменяется путем изменения переменной среды PS1
.
Вы видите текущее значение PS1
:
root@monu dev# echo $PS1
Вы видите значение, чтобы быть равными \u@\h \w\$
, где:
\u
:имя пользователя\h
: имя хоста\w
: текущий рабочий каталог\$
: a #
символ для пользователя root, a $
символ для других пользователейЕсли Вы хотите, чтобы изменение было постоянным, необходимо добавить сценарий, изменяющий значение PS1
в ~/.bashrc
, начиная с этого это выполняется каждый раз, когда пользователь входит в систему.
Вот 2 метода для отслеживания пикового использования памяти процессов.
Я не использовал этот инструмент, но он походит на то, что Вы ищете. Это назвало Густым.
Густой сценарий Python, который регулярно берет снимки загрузки в память и загрузку ЦП одного или нескольких рабочих процессов, чтобы динамично создать профиль их использования системных ресурсов.
$ syrupy.py myprog
PID DATE TIME ELAPSED CPU MEM RSS VSIZE
14634 2008-10-10 20:45:25 00:00 0.0 0.0 2996 6680
14634 2008-10-10 20:45:26 00:01 105 0.2 7804 12592
14634 2008-10-10 20:45:27 00:02 103 0.2 8996 13776
14634 2008-10-10 20:45:28 00:03 103 0.2 10468 15348
14634 2008-10-10 20:45:29 00:04 103 0.3 11412 16396
14634 2008-10-10 20:45:30 00:05 104 0.3 12492 17444
/usr/bin/time -v
Да иронически команда времени GNU может дать Вам пиковое использование памяти процесса. Это сообщает о пиковой памяти как так: Maximum resident set size (kbytes)
.
$ /usr/bin/time -v ~/projects/prime_numbers/eratosthenes_prime_sieve.pl 10 1000000
...
Command being timed: "/home/saml/projects/prime_numbers/eratosthenes_prime_sieve.pl 10 1000000"
User time (seconds): 1.12
System time (seconds): 0.05
Percent of CPU this job got: 54%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:02.19
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 79304
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 0
Minor (reclaiming a frame) page faults: 20014
Voluntary context switches: 83
Involuntary context switches: 274
Swaps: 0
File system inputs: 0
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0
Несмотря на то, что тема довольно старая, я хочу поделиться другим проектом, появившимся из функции ядра CGRUPS Linux.
https://github.com/gsauthof/cgmemimeTime :
CGMEMTIME измеряет использование памяти с высокой водой RSS + кэша процесса и его потомки процессы.
Быть в состоянии сделать это, это помещает процесс в свою собственную cgroup.
Например, процесс A выделения 10 MIB и вилки ребенка B, что выделяет 20 миб и этот вил ребенка C, который выделяет 30 миб. Все три процесса разделяют окно времени, где их выделения приводят к Соответствующий RSS (размер резидента) Использование памяти.
Теперь вопрос: сколько памяти на самом деле используется в результате Бег?
Ответ: 60 MIB
CGMemime - это инструмент для ответа на такие вопросы.
Примеры использования были бы:
$ sudo ./cgmemtime --setup -g <myusergroup> --perm 775
$ ./cgmemtime ./testa x 10 20 30
Parent PID is 27189
Allocating 10 MiBs
New Child: 27193
Allocating 20 MiBs
New Child: 27194
Allocating 30 MiBs
Child user: 0.000 s
Child sys : 0.005 s
Child wall: 6.006 s
Child high-water RSS : 11648 KiB
Recursive and acc. high-water RSS+CACHE : 61840 KiB
$ ./cgmemtime python -c 'print range(100000)[48517]'
48517
Child user: 0.014 s
Child sys : 0.014 s
Child wall: 0.029 s
Child high-water RSS : 9948 KiB
Recursive and acc. high-water RSS+CACHE : 5724 KiB