누군가 이것을 설명할 수 있습니까?
Centos6에서 실행되는 CC7 기반 컨테이너 내부의 명령입니다.
[cmsbuild@f6c45f375b0e build]$ cat /etc/system-release
CentOS Linux release 7.2.1511 (Core)
[cmsbuild@f6c45f375b0e build]$ uname -a
Linux f6c45f375b0e 2.6.32-642.11.1.el6.x86_64 #1 SMP Wed Nov 16 09:40:09 CET 2016 x86_64 x86_64 x86_64 GNU/Linux
el6
명령 출력에 왜 하나가 있습니까 uname
? 호스트 시스템에서 나오나요?
답변1
응, 보고돼핵심버전, 호스트에서 실행 중입니다. 컨테이너는 가상 머신과 달리 호스트 머신과 커널을 공유합니다.
컨테이너를 가상 머신처럼 생각하는 대신 격리된 네임스페이스 집합이 있는 프로세스 또는 프로세스 집합으로 생각하세요.
- 파일 시스템
- 네트워크 스택
- 사용자 ID
- 그리고 더
컨테이너 파일 시스템에 로드되지 않는 커널이 포함되어 있더라도 컨테이너 프로세스의 시스템 라이브러리는 기존 실행 커널과 통신합니다.
uname 바이너리는 커널과 직접 대화하는 uname() 시스템 호출을 호출하며 파일 시스템의 어떤 파일도 보지 않습니다.