팁: Linux 로그인에는 username@machine 대신 < 문자가 있습니다.

팁: Linux 로그인에는 username@machine 대신 < 문자가 있습니다.

내 Linux 장치에 문제가 있습니다. 시작한 후 때때로 쉘에 이 문자만 표시되고 , / 등과 <같은 일반 쉘 명령을 실행할 수 있지만 1개의 문자만 표시됩니다. 실행하면 모든 줄을 볼 수 있습니다(따라서 유일한 문제는 입력에 문자가 1개 있다는 것입니다).lscatecho

다음은 명령을 실행한 후의 터미널 예입니다 pwd.

<d
/home/root
< 

기기를 시작할 때 쉘 스크립트를 많이 실행했기 때문에 처음에는 일부 스크립트가 완료되지 않는 줄 알았는데, 스크립트가 스택되어 있으면 일반 쉘 명령을 실행할 수 없어야 한다고 생각했습니다. 이는 부팅 프로세스의 약 10%에서 발생합니다. 내가 실행하면 echo $PS1:

<1  
\u@\h:\w\$
< 
echo $PS2 : $PS3 : $PS4   =>   > : : +      

맞는 것 같습니다. SSH를 통해 액세스할 수 있고 시스템이 괜찮아 보입니다. 프롬프트가 복구되는지 확인하기 위해 많은 서비스/프로세스를 종료하려고 시도했지만 exit프롬프트에 ''를 쓰거나 /bin/login -f 프로세스를 종료하거나 종료하면 시스템을 복구할 수 있습니다 -sh( 사용자 이름@컴퓨터가 표시됩니다. 첫 번째 시도 control+ D실패

<로그아웃으로 인해 작업이 중지되었습니다.
control두 번째로 +를 누르면 D로그아웃했다가 자동으로 로그인되는데,
로그인: 루트(자동 로그인)
현재 상태 좋습니다( root@device:~#)

내가 시도해 볼 수 있는 제안이 있는 사람이 있나요? 이 캐릭터가 왜 존재하는지 아시는 분 계신가요? 해당 상태에서 장치가 수행한 작업을 이해하기 위해 실행된 마지막 명령을 볼 수 있는 방법이 있습니까?

시작에 따라 때로는 작동하고 때로는 작동하지 않기 때문에 터미널 문제는 아니라고 생각합니다. 나는 달렸다 printf '%s\n' "$COLUMNS":

6 

TERM환경 변수:

용어 = @BAUDRATE@

그리고 stty -a:

speed 115200 baud;
rows 13; columns 6;
line = 0;
intr = ^C;
quit = ^\;
erase = ^?;
kill = ^U;
eof = ^D;
eol = <undef>;
eol2 = <undef>;
swtch = <undef>;
start = ^Q;
stop = ^S;
susp = ^Z;
rprnt = ^R;
werase = ^W;
lnext = ^V;
flush = ^O;
min = 1; time = 0;
-parenb
-parodd
cs8
hupcl
-cstopb
cread
clocal
-crtscts
-ignbrk
-brkint
-ignpar
-parmrk
-inpck
-istrip
-inlcr
-igncr
icrnl
ixon
ixoff
-iuclc
-ixany
-imaxbel
iutf8
opost
-olcuc
-ocrnl
onlcr
-onocr
-onlret
-ofill
-ofdel
nl0
cr0
tab0
bs0
vt0
ff0
isig
icanon
-iexten
echo
echoe
echok
-echonl
-noflsh
-xcase
-tostop
-echoprt
echoctl
echoke

관련 정보