mc
열려면 10-30 초가 걸리지 않도록하는 방법이 있습니까?
답변
그것은 지금 나를 위해 작동합니다. 나는 사용하고있다
GNU 미드 나잇 사령관 4.8.21
오랫동안 기다리다
connect(3, {sa_family=AF_INET, sin_port=htons(6011),
sin_addr=inet_addr("x.x.x.x")}, 16) = ? ERESTARTSYS
(To be restarted if SA_RESTART is set)'
나는 이것을 시도했다 :
# hostname
이것을 위해 사용하십시오 /etc/hosts
:
nameofhost=hostname
이 추가 $nameofhost
받는 /etc/hosts
선에서 시작에
127.0.0.1 localhost ... $nameofhost
건배!
답변
mc / subshell 통합은 빈번한 범인입니다. 확인하려면 다음을 시도하십시오.
alias mc="mc --nosubshell"
답변
실제로 / etc / hosts를 편집하면 문제가 해결되었습니다.
시작하는 동안 mc가 로컬 호스트 이름을 IP 주소로 확인하려고하기 때문에 내 mc가 시작하는 데 10 초가 걸렸습니다.
다음 줄을 / etc / hosts에 추가했습니다 (내 호스트 이름은 FOO입니다)
127.0.0.2 FOO.domain FOO
. 즉시 문제를 해결했습니다.
답변
검사
host `hostname`
빠른 결과를 얻다
MC는 처음에 호스트 이름을 사용하여 내부 서비스에 연결
Fedora 18의 비슷한 상황에서 / etc / hosts에 호스트 이름 값을 추가하면 도움이됩니다.
답변
서브 쉘을 시작하므로 (Ctrl-O를 누르면 표시됨) 서브 쉘을 시작할 때만 UI를 표시하므로 느리게 시작될 수 있습니다. zsh를 사용하는데 ~/.zshrc
파일 mc를 제거하면 즉시 시작됩니다.
답변
시작하는 데 약 10 초가 걸렸습니다 mc
. strace -r -tt -o mc.strace mc
내가 가진 달리기 :
...
0.000023 pipe([7, 8]) = 0
0.000028 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7fcad000fa50) = 3332
0.000247 write(5, " PROMPT_COMMAND=${PROMPT_COMMAND"..., 75) = 75
0.000050 rt_sigaction(SIGINT, {0x449960, [], SA_RESTORER, 0x7fcaced23740}, NULL, 8) = 0
0.000034 select(8, [5 7], NULL, NULL, {10, 0}) = 1 (in [5], left {9, 999996})
0.000039 read(5, " PROMPT_COMMAND=${PROMPT_COMMAND"..., 128) = 76
0.000032 select(8, [5 7], NULL, NULL, {9, 999996}) = 1 (in [5], left {9, 985005})
0.015050 read(5, "[yuri@yuri ~] PROM", 128) = 19
0.000031 select(8, [5 7], NULL, NULL, {9, 985005}) = 1 (in [5], left {9, 985001})
0.000036 read(5, "PT_COM", 128) = 6
0.000026 select(8, [5 7], NULL, NULL, {9, 985001}) = 1 (in [5], left {9, 984998})
0.000033 read(5, "MAND=", 128) = 5
0.000026 select(8, [5 7], NULL, NULL, {9, 984998}) = 1 (in [5], left {9, 984995})
0.000033 read(5, "${PR", 128) = 4
0.000025 select(8, [5 7], NULL, NULL, {9, 984995}) = 1 (in [5], left {9, 984992})
0.000034 read(5, "OMPT", 128) = 4
0.000025 select(8, [5 7], NULL, NULL, {9, 984992}) = 1 (in [5], left {9, 984989})
0.000034 read(5, "_COM", 128) = 4
0.000026 select(8, [5 7], NULL, NULL, {9, 984989}) = 1 (in [5], left {9, 984986})
0.000034 read(5, "MAND", 128) = 4
0.000025 select(8, [5 7], NULL, NULL, {9, 984986}) = 1 (in [5], left {9, 984983})
0.000033 read(5, ":+$", 128) = 3
0.000025 select(8, [5 7], NULL, NULL, {9, 984983}) = 1 (in [5], left {9, 984980})
0.000033 read(5, "PRO", 128) = 3
0.000025 select(8, [5 7], NULL, NULL, {9, 984980}) = 1 (in [5], left {9, 984977})
0.000033 read(5, "MPT", 128) = 3
0.000025 select(8, [5 7], NULL, NULL, {9, 984977}) = 1 (in [5], left {9, 984974})
0.000033 read(5, "_CO", 128) = 3
0.000025 select(8, [5 7], NULL, NULL, {9, 984974}) = 1 (in [5], left {9, 984971})
0.000033 read(5, "MMA", 128) = 3
0.000026 select(8, [5 7], NULL, NULL, {9, 984971}) = 1 (in [5], left {9, 984968})
0.000032 read(5, "ND;", 128) = 3
0.000025 select(8, [5 7], NULL, NULL, {9, 984968}) = 1 (in [5], left {9, 984965})
0.000033 read(5, " }", 128) = 2
0.000026 select(8, [5 7], NULL, NULL, {9, 984965}) = 1 (in [5], left {9, 984962})
0.000033 read(5, "'pw", 128) = 3
0.000025 select(8, [5 7], NULL, NULL, {9, 984962}) = 1 (in [5], left {9, 984959})
0.000033 read(5, "d>", 128) = 2
0.000026 select(8, [5 7], NULL, NULL, {9, 984959}) = 1 (in [5], left {9, 984956})
0.000032 read(5, "&8;", 128) = 3
0.000026 select(8, [5 7], NULL, NULL, {9, 984956}) = 1 (in [5], left {9, 984953})
0.000032 read(5, "ki", 128) = 2
0.000025 select(8, [5 7], NULL, NULL, {9, 984953}) = 1 (in [5], left {9, 984950})
0.000033 read(5, "ll ", 128) = 3
0.000026 select(8, [5 7], NULL, NULL, {9, 984950}) = 1 (in [5], left {9, 984947})
0.000032 read(5, "-S", 128) = 2
0.000025 select(8, [5 7], NULL, NULL, {9, 984947}) = 1 (in [5], left {9, 984944})
0.000033 read(5, "TO", 128) = 2
0.000025 select(8, [5 7], NULL, NULL, {9, 984944}) = 1 (in [5], left {9, 984941})
0.000033 read(5, "P ", 128) = 2
0.000025 select(8, [5 7], NULL, NULL, {9, 984941}) = 1 (in [5], left {9, 984938})
0.000033 read(5, "$$", 128) = 2
0.000033 select(8, [5 7], NULL, NULL, {9, 984938}) = 1 (in [5], left {9, 984935})
0.000034 read(5, "'\r\n", 128) = 3
0.000025 select(8, [5 7], NULL, NULL, {9, 984935}) = 1 (in [5], left {9, 984886})
0.000082 read(5, "bash: PROMPT_COMMAND: line 1: sy"..., 128) = 128
0.000033 select(8, [5 7], NULL, NULL, {9, 984886}) = 1 (in [5], left {9, 984882})
0.000071 read(5, "tory -r; ; pwd>&8;kill -STOP $$'"..., 128) = 48
0.000061 select(8, [5 7], NULL, NULL, {9, 984882}) = 0 (Timeout)
9.995037 rt_sigaction(SIGINT, {SIG_IGN, [], SA_RESTORER, 0x7fcaced23740}, NULL, 8) = 0
0.000090 write(1, "\33[?1001s\33[?1002h\33[?1006h", 24) = 24
0.000066 write(1, "\33[?2004h", 8) = 8
0.000034 geteuid() = 1000
0.000064 access("/home/yuri/.config/mc/filehighlight.ini", R_OK) = -1 ENOENT (No such file or directory)
0.000061 access("/etc/mc/filehighlight.ini", R_OK) = 0
0.000042 access("/etc/mc/filehighlight.ini", R_OK) = 0
0.000044 stat("/etc/mc/filehighlight.ini", {st_mode=S_IFREG|0644, st_size=1119, ...}) = 0
0.000035 open("/etc/mc/filehighlight.ini", O_RDONLY) = 9
...
이 출력을 보면 mc
비어있는 PROMPT_COMMAND
( PROMPT_COMMAND= mc
) 로 시작하기로 결정하고 즉시 시작되었습니다. 나는 공통점이 있다고 생각했다.
history -a; history -c; history -r;
UPD 좀 더 파고 나면 역사 ( PROMPT_COMMAND=';' strace -r -tt -o mc.strace -s 1000 mc
) 와 관련이 없습니다 .
0.000197 write(5, " PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'pwd>&8;kill -STOP $$'\n", 75) = 75
0.000068 rt_sigaction(SIGINT, {0x449960, [], SA_RESTORER, 0x7f12567fc660}, NULL, 8) = 0
0.000049 select(8, [5 7], NULL, NULL, {10, 0}) = 1 (in [5], left {9, 999996})
0.000055 read(5, " PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'pwd>&8;kill -STOP $$'\r\n", 128) = 76
0.000050 select(8, [5 7], NULL, NULL, {9, 999996}) = 1 (in [5], left {9, 981008})
0.019073 read(5, "bash: PROMPT_COMMAND: line 0: syntax error near unexpected token `;'\r\nbash: PROMPT_COMMAND: line 0: `;'\r\n", 128) = 105
0.000041 select(8, [5 7], NULL, NULL, {9, 981008}) = 1 (in [5], left {9, 980786})
0.000292 read(5, "[\33[1;30myuri\33[0m@\33[1;33myuri\33[0m ~] PROM", 128) = 41
0.000070 select(8, [5 7], NULL, NULL, {9, 980786}) = 1 (in [5], left {9, 980782})
0.000075 read(5, "PT_COMMAN", 128) = 9
0.000061 select(8, [5 7], NULL, NULL, {9, 980782}) = 1 (in [5], left {9, 980778})
0.000058 read(5, "D=${PRO", 128) = 7
0.000047 select(8, [5 7], NULL, NULL, {9, 980778}) = 1 (in [5], left {9, 980775})
0.000059 read(5, "MPT_CO", 128) = 6
0.000048 select(8, [5 7], NULL, NULL, {9, 980775}) = 1 (in [5], left {9, 980772})
0.000058 read(5, "MMAND", 128) = 5
0.000047 select(8, [5 7], NULL, NULL, {9, 980772}) = 1 (in [5], left {9, 980768})
0.000056 read(5, ":+$P", 128) = 4
0.000047 select(8, [5 7], NULL, NULL, {9, 980768}) = 1 (in [5], left {9, 980764})
0.000057 read(5, "ROMPT", 128) = 5
0.000047 select(8, [5 7], NULL, NULL, {9, 980764}) = 1 (in [5], left {9, 980761})
0.000056 read(5, "_COM", 128) = 4
0.000047 select(8, [5 7], NULL, NULL, {9, 980761}) = 1 (in [5], left {9, 980758})
0.000057 read(5, "MAND", 128) = 4
0.000046 select(8, [5 7], NULL, NULL, {9, 980758}) = 1 (in [5], left {9, 980755})
0.000057 read(5, "; }'", 128) = 4
0.000046 select(8, [5 7], NULL, NULL, {9, 980755}) = 1 (in [5], left {9, 980752})
0.000056 read(5, "pwd>", 128) = 4
0.000047 select(8, [5 7], NULL, NULL, {9, 980752}) = 1 (in [5], left {9, 980749})
0.000057 read(5, "&8;k", 128) = 4
0.000047 select(8, [5 7], NULL, NULL, {9, 980749}) = 1 (in [5], left {9, 980746})
0.000057 read(5, "ill", 128) = 3
0.000058 select(8, [5 7], NULL, NULL, {9, 980746}) = 1 (in [5], left {9, 980743})
0.000057 read(5, " -ST", 128) = 4
0.000046 select(8, [5 7], NULL, NULL, {9, 980743}) = 1 (in [5], left {9, 980740})
0.000058 read(5, "OP ", 128) = 3
0.000046 select(8, [5 7], NULL, NULL, {9, 980740}) = 1 (in [5], left {9, 980736})
0.000056 read(5, "$$'\r\n", 128) = 5
0.000048 select(8, [5 7], NULL, NULL, {9, 980736}) = 1 (in [5], left {9, 980721})
0.000069 read(5, "bash: PROMPT_COMMAND: line 1: syntax error near unexpected token `;;'\r\nbash: PROMPT_COMMAND: line 1: `;; pwd>&8;kill -STOP $$'\r\n", 128) = 128
0.000049 select(8, [5 7], NULL, NULL, {9, 980721}) = 1 (in [5], left {9, 980713})
0.000062 read(5, "[\33[1;30myuri\33[0m@\33[1;33myuri\33[0m ~] ", 128) = 36
0.000047 select(8, [5 7], NULL, NULL, {9, 980713}) = 0 (Timeout)
9.990855 rt_sigaction(SIGINT, {SIG_IGN, [], SA_RESTORER, 0x7f12567fc660}, NULL, 8) = 0
내 mc
결말 PROMPT_COMMAND
은 잘못된 방식으로 엉망 이다. 가 PROMPT_COMMAND
포함되어 있으면 ;
bash 오류가 발생 하도록 변경됩니다 . 따라서 descriptor에 아무것도 기록 8
되지 않아서 시간이 초과 될 때까지 프로세스를 차단합니다. 틀린 점 있으면 지적 해주세요.
답변
나는이 문제를 오랫동안 가지고 있었고 더 이상 자정 사령관을 사용하지 않았습니다 …
하지만 최근에 해결책을 찾았습니다 !!! 제 경우에는 대체 쉘과 관련이 있습니다. 나는 생선을 사용하고 있습니다. http://fishshell.com/
둘이 함께 작동하지 않습니다. 방금 mc가 물고기가 아닌 bash를 사용하도록 스크립트를 변경했습니다.