Linux2025. 9. 17. 11:14

엥....?? 일반권한이랑 root 권한이랑 출력포맷이 다르네?

무슨 dd 한번 썼다고 시스템 크래시 난 줄 -_-

$ cat nvme.log 
$ sudo time dd if=/dev/zero of=test bs=1G count=1 conv=fsync
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 5.92836 s, 181 MB/s
0.00user 1.06system 0:06.00elapsed 17%CPU (0avgtext+0avgdata 1051008maxresident)k
0inputs+2097152outputs (0major+262242minor)pagefaults 0swaps

 

time 자체는 하나인데 권한에 따라서 포맷이나 옵션이 다르게 작동하는 것 같다.

$ whereis time
time: /usr/bin/time /usr/share/man/man7/time.7.gz /usr/share/man/man2/time.2.gz /usr/share/man/man3/time.3am.gz /usr/share/man/man3/time.3avr.gz /usr/share/man/man1/time.1.gz /usr/share/info/time.info.gz

 

$ sudo whereis time
time: /usr/bin/time /usr/share/man/man7/time.7.gz /usr/share/man/man2/time.2.gz /usr/share/man/man3/time.3am.gz /usr/share/man/man3/time.3avr.gz /usr/share/man/man1/time.1.gz /usr/share/info/time.info.gz

 

$ ls -al /usr/bin/time
-rwxr-xr-x 1 root root 27160  3월 25  2022 /usr/bin/time

 

일반 유저는 -v를 쓸 수 없는 것 같고

$ time ls

real 0m0.004s
user 0m0.001s
sys 0m0.003s

 

root 에서 -p를 주면 원래 보면 포맷이긴 한데 시간 정밀도가 떨어진다. 왜지?

$ sudo time -p ls
real 0.00
user 0.00
sys 0.00

 

$ sudo time ls
0.00user 0.00system 0:00.00elapsed 66%CPU (0avgtext+0avgdata 2432maxresident)k
0inputs+0outputs (0major+106minor)pagefaults 0swaps

 

$ sudo time -v ls
Command being timed: "ls"
User time (seconds): 0.00
System time (seconds): 0.00
Percent of CPU this job got: 90%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.00
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): 2432
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 0
Minor (reclaiming a frame) page faults: 107
Voluntary context switches: 1
Involuntary context switches: 0
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

 

도움말에 먼가 보이긴 한데..

언제부터 이렇게 바뀐겨? root로 시간 측정할 일이 없으니.. 당황했네

$ man time
FORMATTING THE OUTPUT
       The format string FORMAT controls the contents of the time output.  The
       format string can be set using the `-f' or `--format', `-v' or
       `--verbose', or `-p' or `--portability' options.  If they are not
       given, but the TIME environment variable is set, its value is used as
       the format string.  Otherwise, a built-in default format is used.  The
       default format is:
         %Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k
         %Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps

'Linux' 카테고리의 다른 글

proc fs smp_affinity  (0) 2025.09.19
dd 로 덤프 하면서 바로 압축하기  (0) 2025.07.24
gpiod - gpiomon  (0) 2025.07.17
scrub  (0) 2025.02.04
Block SCSI generic (bsg) driver  (0) 2024.04.16
Posted by 구차니