지금 아주 이상한 상황에 직면했습니다. TMUX 세션에서 SSH를 통해 Ubuntu를 실행하는 클라우드 VM에서 무언가를 관리하고 있습니다. 이제 두 개의 창이 열려 있고 동일한(가상) PC에 있더라도 서로 다른 파일이 표시됩니다.
터미널 1:
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ pwd
/home/pan/shared/Lammps/new-lengths/125
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ hostname
gergo-skynet-master.desy.de
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ ls
*****_annotated.in data.lammps ******.py process rg run1.restart
SHAKE_10 dump_*****.lammpstrj lammps.out process.py rg.dump ******.data
SHAKE_7 extract_data.sh log.lammps process_all.py run.restart
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$
NO2. 터미널:
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ pwd
/home/pan/shared/Lammps/new-lengths/125
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ hostname
gergo-skynet-master.desy.de
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ ls
*****_annotated.in extract_data.sh *****.py process process.py process_all.py ******.data
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$
일부 파일 이름을 검열해야 했지만 이해하실 겁니다.
내가 확인한 사항:
- 나는 똑같은 파일 시스템 위치에 있습니다.
ls
두 터미널 모두 별칭이 없습니다.- 나는 동일한 컴퓨터의 두 터미널에서 동일한 사용자입니다.
위의 것이 올바른 것이라고 확신하지만 이것이 어떻게 가능한지 혼란스럽습니다. 하위 터미널에서 CD를 사용해도 상위 터미널에서 보는 파일이 모두 표시되지는 않습니다. 이 상황을 디버깅하려면 어디서부터 시작해야 할지 모르겠습니다. 앞으로도 같은 문제로 중요한 파일들을 못 볼까봐 걱정이 되어서 꼭 터미널을 닫기 전에 무슨 일이 일어났는지 알아보고 싶습니다.
어떤 아이디어가 있나요? 어떤 추가 정보가 유용할까요?
답변1
이 동작에는 여러 가지 이유가 있을 수 있습니다. 다음과 같은 일련의 이벤트를 고려해보세요.
디렉토리를 생성하고 그 디렉토리로 이동하여 파일을 생성합니다:
mkdir /tmp/dir1 cd /tmp/dir1 touch file{1,2,3}
다른 터미널에서 디렉터리 이름을 바꾸고 원래 이름으로 새 디렉터리를 만든 다음 다른 파일로 채웁니다.
mv /tmp/dir1 /tmp/dir2 mkdir /tmp/dir1 cd /tmp/dir1 touch file{4,5,6}
이제 원래 터미널에 다음이 표시됩니다.
$ pwd /tmp/dir1 $ ls file1 file2 file3
두 번째 터미널에는 다음이 표시됩니다.
$ pwd /tmp/dir1 $ ls file4 file5 file6
이 동작을 일으킬 수 있는 다른 상황이 있습니다(예: 두 터미널에 대해 별도의 설치 네임스페이스에서 실행(아마도 컨테이너에서 실행)). 그러나 위의 설명이 가장 그럴듯한 설명인 것 같습니다.