다음을 통해 공유


Linux용 Windows 하위 시스템에 대한 릴리스 정보

빌드 21364

빌드 21364에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • 이제 GUI 앱을 사용할 수 있습니다! 자세한 내용은 이 블로그 게시물 참조하세요.
  • \\wsl.localhost\를 통해 파일에 액세스할 때 발생하는 오류를 해결합니다.
  • LxssManager 서비스의 잠재적 교착 상태를 수정합니다.

빌드 21354

빌드 21354에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • 네트워크에 "wsl"이라는 컴퓨터가 있는 경우 문제를 방지하려면 \wsl 접두사를 \wsl.localhost로 전환합니다. \wsl$는 계속 작동합니다.
  • wow 프로세스에 Linux 빠른 액세스 아이콘을 사용하도록 설정합니다.
  • 버전 2가 항상 wslapi RegisterDistribution을 통해 전달되는 업데이트 문제입니다.
  • 파일이 실행 파일로 표시되도록 /usr/lib/wsl/lib 디렉터리의 fmask를 222로 변경합니다[GH 3847]
  • Virtual Machine Platform을 사용하도록 설정하지 않은 경우 wsl 서비스 충돌을 해결합니다.

빌드 21286

빌드 21286에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • 명령의 현재 작업 디렉터리를 설정하는 wsl.exe --cd 명령을 소개합니다.
  • NTSTATUS와 Linux 오류 코드의 매핑을 개선합니다. [GH 6063]
  • wsl.exe --mount 오류 보고 개선.
  • /etc/wsl.conf에 시작 명령을 사용하도록 설정하는 옵션이 추가되었습니다.
[boot]
command=<string>

빌드 20226

빌드 20226에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • LxssManager 서비스의 충돌을 수정합니다. [GH 5902]

빌드 20211

빌드 20211에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • 물리적 또는 가상 디스크를 탑재하기 위한 wsl.exe --mount 소개합니다. 자세한 내용은 Windows 및 WSL 2에서 Linux 파일 시스템에 액세스하는 방법에 대한 를 참조하세요.
  • VM이 유휴 상태인지 확인할 때 LxssManager 서비스의 충돌을 수정합니다. [GH 5768]
  • 압축된 VHD 파일을 지원합니다. [GH 4103]
  • C:\windows\system32\lxss\lib에 설치된 Linux 사용자 모드 라이브러리가 OS 업그레이드에서 유지되는지 확인합니다. [GH 5848]
  • wsl --install --list-distributions함께 설치할 수 있는 사용 가능한 배포를 나열하는 기능이 추가되었습니다.
  • 이제 사용자가 로그오프하면 WSL 인스턴스가 종료됩니다.

빌드 20190

빌드 20190에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • WSL1 인스턴스가 시작되지 않도록 하는 버그를 수정합니다. [GH 5633]
  • Windows 프로세스 출력을 리디렉션할 때 발생하는 멈춤 현상을 수정합니다. [GH 5648]
  • %userprofile%\.wslconfig 옵션을 추가하여 VM 유휴 시간 제한(wsl2.vmIdleTimeout=<time_in_ms>)을 제어합니다.
  • WSL에서 앱 실행 별칭을 통해 앱을 시작하는 것을 지원합니다.
  • WSL2 커널 및 배포판 설치에 대한 지원이 wsl.exe --install에 추가되었습니다.

빌드 20175

빌드 20175에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • WSL2 VM의 기본 메모리 할당을 호스트 메모리의 50% 또는 8GB로 조정합니다. 이 중 [GH 4166]이 적습니다.
  • URI 구문 분석을 지원하도록 \\wsl$ 접두사를 \\wsl로 변경합니다. 이전 \\wsl$ 경로는 계속 지원됩니다.
  • 기본적으로 amd64에서 WSL2에 중첩된 가상화를 사용하도록 설정합니다. %userprofile%\.wslconfig([wsl2] nestedVirtualization=false)를 통해 사용하지 않도록 설정할 수 있습니다.
  • wsl.exe을(를) 만들고 --update 요청이 Microsoft 업데이트를 시작합니다.
  • DrvFs에서 읽기 전용 파일의 이름 바꾸기를 지원합니다.
  • 오류 메시지가 항상 올바른 코드 페이지에 인쇄되는지 확인합니다.

빌드 20150

빌드 20150에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • WSL2 GPU 컴퓨팅에 대한 자세한 내용은 Windows 블로그 참조하세요.
  • wsl.exe --install 명령줄 옵션을 도입하여 WSL을 쉽게 설정합니다.
  • WSL2 커널에 대한 업데이트를 관리하는 wsl.exe --update 명령줄 옵션을 소개합니다.
  • WSL2를 기본값으로 설정합니다.
  • WSL2 vm 정상 종료 시간 제한을 늘입니다.
  • 디바이스 메모리를 매핑할 때 virtio-9p의 경합 상태를 수정합니다.
  • UAC를 사용하지 않도록 설정한 경우 관리자 권한 9p 서버를 실행하지 마세요.

빌드 19640

빌드 19640에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] virtio-9p(drvfs)의 안정성 향상.

빌드 19555

빌드 19555에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] 메모리 cgroup을 사용하여 설치 및 변환 작업에 사용되는 메모리 양 제한 [GH 4669]
  • 기능 검색 기능을 개선하기 위해 Linux용 Windows 하위 시스템 선택적 구성 요소가 활성화되지 않은 경우 wsl.exe 표시합니다.
  • WSL 선택적 구성 요소가 설치되어 있지 않은 경우 도움말 텍스트를 인쇄하도록 wsl.exe 변경
  • 인스턴스를 만들 때 경합 상태 수정
  • 모든 명령줄 기능을 포함하는 wslclient.dll 만들기
  • LxssManagerUser 서비스 중지 중 충돌 방지
  • distroName 매개 변수가 NULL인 경우 wslapi.dll 빠른 실패 수정

빌드 19041

빌드 19041에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] 프로세스를 시작하기 전에 신호 마스크 지우기
  • [WSL2] Linux 커널을 4.19.84로 업데이트
  • symlink가 상대가 아닌 경우 /etc/resolv.conf symlink 만들기 처리

빌드 19028

빌드 19028에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] Linux 커널을 4.19.81로 업데이트
  • [WSL2] /dev/net/tun의 기본 사용 권한을 0666으로 변경 [GH 4629]
  • [WSL2] Linux VM에 할당된 기본 메모리 양을 호스트 메모리의 80% 조정
  • [WSL2] 잘못된 호출자가 서버를 중단할 수 없도록 시간 제한으로 요청을 처리하도록 interop 서버를 수정합니다.

빌드 19018

빌드 19018에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] dotnet 앱을 수정하려면 9p 탑재의 기본값으로 cache=mmap을 사용합니다.
  • [WSL2] localhost 릴레이에 대한 수정 사항 [GH 4340]
  • [WSL2] 배포판 간 상태 공유를 위한 tmpfs 탑재 기능 도입
  • \\wsl$에 대한 영구 네트워크 드라이브 복원 수정

빌드 19013

빌드 19013에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] WSL 유틸리티 VM의 메모리 성능을 향상시킵니다. 더 이상 사용되지 않는 메모리는 호스트로 반환됩니다.
  • [WSL2] 커널 버전을 4.19.79로 업데이트합니다. CONFIG_HIGH_RES_TIMERS, CONFIG_TASK_XACCT, CONFIG_TASK_IO_ACCOUNTING, CONFIG_SCHED_HRTICK 및 CONFIG_BRIDGE_VLAN_FILTERING를 추가합니다.
  • [WSL2] stdin이 닫혀 있지 않은 파이프 핸들인 경우를 처리하도록 입력 릴레이 수정 [GH 4424]
  • \\wsl$ 대/소문자를 구분하지 않는지 확인합니다.
[wsl2]
pageReporting = <bool>    # Enable or disable the free memory page reporting feature (default true).
idleThreshold = <integer> # Set the idle threshold for memory compaction, 0 disables the feature (default 1).

빌드 19002

빌드 19002에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL] 일부 유니코드 문자 처리 관련 문제 해결: https://github.com/microsoft/terminal/issues/2770
  • [WSL] 빌드 간 업그레이드 직후 즉시 실행된 경우 배포판이 드물게 등록 해제되는 문제를 수정했습니다.
  • [WSL] 인스턴스 유휴 타이머가 취소되지 않은 wsl.exe --shutdown과 관련된 사소한 문제를 해결합니다.

빌드 18995

빌드 18995에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] 작업이 중단된 후 DrvFs 탑재가 작동을 중지하는 문제 해결(예: ctrl-c) [GH 4377]
  • [WSL2] 매우 큰 hvsocket 메시지 처리 방법 수정 [GH 4105]
  • [WSL2] stdin이 파일인 경우 interop 문제 해결 [GH 4475]
  • [WSL2] 예기치 않은 네트워크 상태가 발생할 때 서비스 충돌 해결 [GH 4474]
  • [WSL2] 현재 프로세스에 환경 변수가 없는 경우 interop 서버에서 배포판 이름을 쿼리합니다.
  • [WSL2] stdin이 파일일 때의 interop 문제 해결
  • [WSL2] Linux 커널 버전을 4.19.72로 업데이트
  • [WSL2] .wslconfig를 통해 추가 커널 명령줄 매개 변수를 지정하는 기능 추가
[wsl2]
kernelCommandLine = <string> # Additional kernel command line arguments

빌드 18990

빌드 18990에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • \\wsl$의 디렉터리 목록 성능 향상
  • [WSL2] 추가 부팅 엔트로피 삽입 [GH 4416]
  • [WSL2] su / sudo를 사용할 때 Windows 상호 운용성 문제 수정 [GH 4465]

빌드 18980

빌드 18980에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • FILE_READ_DATA 거부하는 symlink 읽기를 수정합니다. 여기에는 Windows에서 이전 버전과의 호환성을 위해 만드는 모든 symlink(예: "C:\Document and Settings") 및 사용자 프로필 디렉터리의 여러 symlink가 포함됩니다.
  • 예기치 않은 파일 시스템 상태를 치명적이 아닌 상태로 만들기 [GH 4334, 4305]
  • [WSL2] CPU/펌웨어가 가상화를 지원하는 경우 arm64에 대한 지원 추가
  • [WSL2] 권한 없는 사용자가 커널 로그를 볼 수 있도록 허용
  • [WSL2] stdout/stderr 소켓이 닫혔을 때 출력 릴레이 수정 [GH 4375]
  • [WSL2] 배터리 및 AC 어댑터의 패스스루 지원
  • [WSL2] Linux 커널을 4.19.67로 업데이트
  • /etc/wsl.conf에서 기본 사용자 이름을 설정하는 기능을 추가합니다.
[user]
default=<string>

빌드 18975

빌드 18975에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] 여러 localhost 안정성 문제 해결 [GH 4340]

빌드 18970

빌드 18970에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

  • [WSL2] 시스템을 절전 모드에서 재개할 때 호스트 시간과 동기화 [GH 4245]
  • [WSL2] 가능하면 Windows 볼륨에 NT symlinks를 만듭니다.
  • [WSL2] UTS, IPC, PID 및 탑재 네임스페이스에서 배포판을 만듭니다.
  • [WSL2] 서버가 localhost에 직접 바인딩할 때 localhost 포트 릴레이 수정 [GH 4353]
  • [WSL2] 출력이 리디렉션될 때 interop 수정 [GH 4337]
  • [WSL2] 절대 NT 심볼릭 링크 변환을 지원합니다.
  • [WSL2] 커널을 4.19.59로 업데이트
  • [WSL2] eth0에 대한 서브넷 마스크를 올바르게 설정합니다.
  • [WSL2] 종료 이벤트가 신호를 받으면 콘솔 작업자 루프를 중단하도록 논리를 변경합니다.
  • [WSL2] 배포판이 실행되고 있지 않으면 배포 vhd를 배출합니다.
  • [WSL2] 빈 값을 올바르게 처리하도록 구성 구문 분석 라이브러리를 수정합니다.
  • [WSL2] 교차 배포판 탑재를 만들어 Docker Desktop을 지원합니다. 배포판은 /etc/wsl.conf 파일에 다음 줄을 추가하여 이 동작을 옵트인할 수 있습니다.
[automount]
crossDistro = true

빌드 18945

빌드 18945에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • [WSL2] localhost:port를 사용하여 호스트에서 WSL2의 수신 대기 tcp 소켓에 액세스할 수 있도록 허용
  • [WSL2] 설치/변환 오류 및 향후 문제를 추적하기 위한 추가 진단 수정 [GH 4105]
  • [WSL2] WSL2 네트워크 문제의 진단 가능성 향상
  • [WSL2] 커널 버전을 4.19.55로 업데이트
  • [WSL2] docker에 필요한 구성 옵션을 사용하여 커널 업데이트 [GH 4165]
  • [WSL2] 경량 유틸리티 VM에 할당된 CPU 수를 호스트와 동일하게 늘림(이전에 커널 구성에서 CONFIG_NR_CPUS 8로 제한됨) [GH 4137]
  • [WSL2] WSL2 경량 VM에 대한 스왑 파일 만들기
  • [WSL2] \\wsl$\distro(예: sshfs)를 통해 사용자 탑재를 볼 수 있도록 허용 [GH 4172]
  • [WSL2] 9p 파일 시스템 성능 향상
  • [WSL2] vhd ACL이 무제한으로 증가하지 않는지 확인 [GH 4126]
  • [WSL2] 스쿼시 및 xt_conntrack 지원하도록 커널 구성 업데이트 [GH 4107, 4123]
  • [WSL2] /etc/wsl.conf의 interop.enabled 옵션 수정 [GH 4140]
  • [WSL2] 파일 시스템에서 EA를 지원하지 않는 경우 ENOTSUP을 반환합니다.
  • [WSL2] \\wsl$로 CopyFile 중단 수정
  • 기본 umask를 0022로 전환하고 /etc/wsl.conf에 filesystem.umask 설정을 추가합니다.
  • symlink를 제대로 해결하기 위해 wslpath를 수정합니다. 19h1에서 회귀되었습니다.[GH 4078]
  • WSL2 설정을 조정하기 위한 %UserProfile%\.wslconfig 파일 소개
[wsl2]
kernel=<path>              # An absolute Windows path to a custom Linux kernel.
memory=<size>              # How much memory to assign to the WSL2 VM.
processors=<number>        # How many processors to assign to the WSL2 VM.
swap=<size>                # How much swap space to add to the WSL2 VM. 0 for no swap file.
swapFile=<path>            # An absolute Windows path to the swap vhd.
localhostForwarding=<bool> # Boolean specifying if ports bound to wildcard or localhost in the WSL2 VM should be connectable from the host via localhost:port (default true).

# <path> entries must be absolute Windows paths with escaped backslashes, for example C:\\Users\\Ben\\kernel
# <size> entries must be size followed by unit, for example 8GB or 512MB

빌드 18917

빌드 18917에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 이제 WSL 2를 사용할 수 있습니다! 자세한 내용은 블로그 참조하세요.
  • symlinks를 통해 Windows 프로세스를 시작하는 것이 제대로 작동하지 않는 회귀 수정 [GH 3999]
  • wsl.exe --list --verbose, wsl.exe --list --quiet, 그리고 wsl.exe --import --version 옵션을 wsl.exe에 추가하십시오.
  • --shutdown 옵션 추가 wsl.exe
  • 계획 9: 쓰기가 성공하기 위해 디렉터리를 열 수 있도록 허용

빌드 18890

빌드 18890에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 비차단 소켓 누수 [GH 2913]
  • 터미널에 대한 EOF 입력은 후속 읽기를 차단할 수 있습니다.[GH 3421]
  • wsl.conf를 참조하도록 resolv.conf 헤더 업데이트[GH 3928에서 설명됨]
  • epoll 삭제 코드의 교착 상태 [GH 3922]
  • --import 및 –export에 대한 인수의 공백 처리 [GH 3932]
  • mmap'd 파일 확장이 제대로 작동하지 않음 [GH 3939]
  • ARM64 \\wsl$ 액세스가 제대로 작동하지 않는 문제 해결
  • wsl.exe 대한 더 나은 기본 아이콘 추가

빌드 18342

빌드 18342에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 사용자가 Windows에서 WSL 배포판의 Linux 파일에 액세스할 수 있는 기능이 추가되었습니다. 이러한 파일은 명령줄을 통해 액세스할 수 있으며 파일 탐색기, VSCode 등과 같은 Windows 앱도 이러한 파일과 상호 작용할 수 있습니다. \\wsl$\<distro_name>이동하여 파일에 액세스하거나 \\wsl$로 이동하여 실행 중인 배포 목록을 확인합니다.
  • 추가적인 CPU 정보 태그를 추가하고 Cpus_allowed[_list]의 값을 수정 [GH 2234]
  • 리더가 아닌 스레드에서 exec 지원 [GH 3800]
  • 구성 업데이트 오류를 치명적이 아닌 것으로 처리 [GH 3785]
  • 오프셋을 올바르게 처리하도록 binfmt 업데이트 [GH 3768]
  • Plan 9에 대한 네트워크 드라이브 매핑 사용 [GH 3854]
  • Windows -> Linux 및 Linux -> Windows 경로 변환용 바인드 마운트 지원
  • 읽기 전용으로 열린 파일에 대한 매핑을 위한 읽기 전용 섹션 만들기

빌드 18334

빌드 18334에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • Windows 표준 시간대가 Linux 표준 시간대에 매핑되는 방식 다시 디자인 [GH 3747]
  • 메모리 누수 수정 및 새 문자열 변환 함수 추가 [GH 3746]
  • 스레드가 없는 스레드 그룹의 SIGCONT는 no-op [GH 3741]
  • /proc/self/fd에 소켓 및 epoll 파일 설명자를 올바르게 표시합니다.

빌드 18305

빌드 18305에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 기본 스레드가 종료되면 pthreads가 파일에 액세스할 수 없게 됩니다.[GH 3589]
  • 필요한 경우가 아니면 TIOCSCTTY는 "force" 매개 변수를 무시해야 합니다.[GH 3652]
  • wsl.exe 명령줄 개선 및 가져오기/내보내기 기능 추가
Usage: wsl.exe [Argument] [Options...] [CommandLine]

Arguments to run Linux binaries:

    If no command line is provided, wsl.exe launches the default shell.

    --exec, -e <CommandLine>
        Execute the specified command without using the default Linux shell.

    --
        Pass the remaining command line as is.

Options:
    --distribution, -d <DistributionName>
        Run the specified distribution.

    --user, -u <UserName>
        Run as the specified user.

Arguments to manage Windows Subsystem for Linux:

    --export <DistributionName> <FileName>
        Exports the distribution to a tar file.
        The filename can be - for standard output.

    --import <DistributionName> <InstallLocation> <FileName>
        Imports the specified tar file as a new distribution.
        The filename can be - for standard input.

    --list, -l [Options]
        Lists distributions.

        Options:
            --all
                List all distributions, including distributions that are currently
                being installed or uninstalled.

            --running
                List only distributions that are currently running.

    -setdefault, -s <DistributionName>
        Sets the distribution as the default.

    --terminate, -t <DistributionName>
        Terminates the distribution.

    --unregister <DistributionName>
        Unregisters the distribution.

    --upgrade <DistributionName>
        Upgrades the distribution to the WslFs file system format.

    --help
        Display usage information.

빌드 18277

빌드 18277에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 빌드 18272에 도입된 "지원되는 인터페이스 없음" 오류 수정 [GH 3645]
  • umount syscall에 대한 MNT_FORCE 플래그 무시 [GH 3605]
  • 공식 CreatePseudoConsole API를 사용하도록 WSL interop 전환
  • FUTEX_WAIT 다시 시작할 때 시간 제한 값 유지 관리 안 하세요.

빌드 18272

빌드 18272에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 경고: WSL을 작동하지 않는 문제가 이 빌드에 있습니다. 배포를 시작하려고 하면 "지원되는 인터페이스 없음" 오류가 표시됩니다. 이 문제는 해결되었으며 다음 주에 배포될 인사이더 프로그램의 빠른 버전에 포함될 예정입니다. 이 빌드를 설치한 경우 Settings->Update & Security->Recovery에서 "이전 버전의 Windows 10으로 돌아가기"를 사용하여 이전 Windows 빌드로 롤백할 수 있습니다.

빌드 18267

빌드 18267에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 좀비 프로세스가 수확되지 않고 무기한으로 유지되는 문제를 해결합니다.
  • 오류 메시지가 최대 길이를 초과하면 WslRegisterDistribution이 중단됩니다.[GH 3592]
  • DrvFs의 읽기 전용 파일에 대해 fsync가 성공하도록 허용 [GH 3556]
  • [GH 3584] 내에 symlinks를 만들기 전에 /bin 및 /sbin 디렉터리가 있는지 확인합니다.
  • WSL 인스턴스에 대한 인스턴스 종료 시간 제한 메커니즘이 추가되었습니다. 시간 제한은 현재 15초로 설정됩니다. 즉, 마지막 WSL 프로세스가 종료된 후 인스턴스가 15초 후에 종료됩니다. 배포를 즉시 종료하려면 다음을 사용합니다.
wslconfig.exe /terminate <DistributionName>

빌드 17763(1809)

빌드 17763에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • Setpriority syscall 권한 검사는 동일한 스레드 우선 순위를 변경하기 위해 너무 엄격합니다.[GH 1838]
  • clock_gettime(CLOCK_BOOTTIME)에 대한 음수 값을 반환하지 않도록 부팅 시간에 편견 없는 인터럽트 시간이 사용되는지 확인합니다.[GH 3434]
  • WSL binfmt 인터프리터에서 symlink를 처리합니다 [GH 3424]
  • 스레드 그룹 리더 파일 설명자 정리를 보다 효율적으로 처리합니다.
  • 오버플로를 방지하기 위해 KeQueryPerformanceCounter 대신 KeQueryInterruptTimePrecise를 사용하도록 WSL 전환 [GH 3252]
  • Ptrace 연결로 인해 시스템 호출에서 잘못된 반환 값이 발생할 수 있음 [GH 1731]
  • 여러 AF_UNIX 관련 문제 해결 [GH 3371]
  • 현재 작업 디렉터리가 5자 미만인 경우 WSL interop이 실패할 수 있는 문제 해결 [GH 3379]
  • 존재하지 않는 포트로의 루프백 연결에서 1초 지연을 방지 [GH 3286]
  • /proc/sys/fs/file-max 스텁 파일 추가 [GH 2893]
  • 보다 정확한 IPV6 범위 정보입니다.
  • PR_SET_PTRACER 지원 [GH 3053]
  • 파이프 파일시스템이 의도치 않게 에지 트리거된 epoll 이벤트를 삭제함 [GH 3276]
  • NTFS symlink를 통해 시작된 Win32 실행 파일은 symlink 이름을 존중하지 않습니다.[GH 2909]
  • 향상된 좀비 지원 [GH 1353]
  • Windows interop 동작을 제어하기 위한 wsl.conf 항목 추가 [GH 1493]
      [interop]
    
      enabled=false # enable launch of Windows binaries; default is true
    
      appendWindowsPath=false # append Windows path to $PATH variable; default is true
    
  • 항상 UNIX 소켓 패밀리 유형을 반환하지 않는 getsockname에 대한 수정 [GH 1774]
  • TIOCSTI에 대한 지원 추가 [GH 1863]
  • 연결 프로세스의 비차단 소켓은 쓰기 시도에 대해 EAGAIN을 반환해야 합니다[GH 2846]
  • 탑재된 VHD에서 상호 운용성 지원 [GH 3246, 3291]
  • 루트 폴더에 대한 권한 검사 문제 해결 [GH 3304]
  • TTY 키보드 ioctls KDGKBTYPE, KDGKBMODE 및 KDSKBMODE에 대한 제한된 지원.
  • Windows UI 앱은 백그라운드에서 시작된 경우에도 실행되어야 합니다.
  • wsl -u 또는 --user 옵션 추가 [GH 1203]
  • 빠른 시작이 사용하도록 설정된 경우 WSL 시작 문제 해결 [GH 2576]
  • Unix 소켓은 연결이 끊긴 피어 자격 증명을 유지해야 함 [GH 3183]
  • 비차단 Unix 소켓이 EAGAIN 오류로 무한정 실패 [GH 3191]
  • case=off는 새로운 기본 drvfs 탑재 유형입니다.[GH 2937, 3212, 3328]
    • 자세한 내용은 블로그 참조하세요.
  • wslconfig /terminate를 추가하여 배포 실행을 중지합니다.
  • 공백이 있는 경로를 올바르게 처리하지 않는 WSL 셸 상황에 맞는 메뉴 항목과 관련된 문제를 해결합니다.
  • 디렉터리별 대/소문자 구분을 확장 특성으로 노출
  • ARM64: 캐시 유지 관리 작업을 에뮬레이트합니다. 의 dotnet 문제을 해결하세요.
  • DrvFs: 이스케이프된 문자에 해당하는 프라이빗 범위의 문자를 비스케이프합니다.
  • ELF 파서 인터프리터 길이 유효성 검사에서 하나씩 오류 수정 [GH 3154]
  • 과거 시각이 설정된 WSL 절대 타이머가 작동하지 않음 [GH 3091]
  • 새로 생성된 재구문 분석 지점이 부모 디렉터리에 해당 방식으로 나열되도록 합니다.
  • DrvFs 환경에서 대/소문자를 구분하는 디렉터리를 자동으로 만듭니다.
  • 파일이 있는 경우에도 다중 스레드 작업이 ENOENT를 반환할 수 있는 추가 문제가 해결되었습니다. [GH 2712]
  • UMCI를 사용할 때 WSL 시작 실패가 수정되었습니다. [GH 3020]
  • 탐색기 상황에 맞는 메뉴를 추가하여 WSL [GH 437, 603, 1836]을 시작합니다. 사용하려면 Shift 키를 누른 채 탐색기 창에서 마우스 오른쪽 단추를 클릭합니다.
  • Unix 소켓 비차단 동작 수정 [GH 2822, 3100]
  • GH 2026에서 보고된 NETLINK 명령의 멈춤 문제를 해결합니다.
  • 탑재 전파 플래그 [GH 2911]에 대한 지원을 추가합니다.
  • 트렁케이트로 인해 inotify 이벤트가 발생하지 않는 문제를 해결합니다[GH 2978].
  • wsl.exe에 대해 셸 환경 없이 단일 바이너리 파일을 호출하는 --exec 옵션을 추가합니다.
  • wsl.exe 대한 --distribution 옵션을 추가하여 특정 배포를 선택합니다.
  • dmesg에 대한 지원이 제한되어 있습니다. 이제 애플리케이션이 dmesg에 로그할 수 있습니다. WSL 드라이버는 제한된 정보를 dmesg로 기록합니다. 나중에 드라이버에서 다른 정보/진단을 전달하도록 확장할 수 있습니다.
    • 참고: dmesg는 현재 /dev/kmsg 디바이스 인터페이스를 통해 지원됩니다. syslog syscall 인터페이스는 아직 지원되지 않습니다. 따라서 dmesg, -S 같은 -C 명령줄 옵션 중 일부는 작동하지 않습니다.
  • 기본 gid 및 직렬 디바이스 모드를 네이티브와 일치하도록 변경 [GH 3042]
  • DrvFs는 이제 확장된 특성을 지원합니다.
    • 참고: DrvFs에는 확장 특성의 이름에 몇 가지 제한 사항이 있습니다. 일부 문자(예: '/', ':' 및 '*')는 허용되지 않으며 확장 특성 이름은 DrvFs에서 대/소문자를 구분하지 않습니다.

빌드 18252(미리 건너뛰기)

빌드 18252에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • lxssmanager dll에서 별도의 도구 폴더로 init 및 bsdtar 이진 파일 이동
  • CLONE_FILES 사용할 때 파일 디스크립터를 닫는 경쟁 조건 수정
  • DrvFs 경로를 변환할 때 /proc/pid/mountinfo에서 선택적 필드 처리
  • S_IFREG 대한 메타데이터 지원 없이 DrvFs mknod가 성공하도록 허용
  • DrvFs에서 만든 읽기 전용 파일에는 읽기 전용 특성 집합이 있어야 합니다.[GH 3411]
  • /sbin/mount.drvfs 도우미를 추가하여 DrvFs 마운트 처리
  • DrvFs에서 POSIX 이름 변경을 사용합니다.
  • 볼륨 GUID 없이 볼륨에서 경로 변환을 허용합니다.

빌드 17738 (빠른)

빌드 17738에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • Setpriority syscall 권한 검사는 동일한 스레드 우선 순위를 변경하기 위해 너무 엄격합니다.[GH 1838]
  • clock_gettime(CLOCK_BOOTTIME)에 대한 음수 값을 반환하지 않도록 부팅 시간에 편견 없는 인터럽트 시간이 사용되는지 확인합니다.[GH 3434]
  • WSL binfmt 인터프리터에서 symlink를 처리합니다 [GH 3424]
  • 스레드 그룹 리더 파일 설명자 정리를 보다 효율적으로 처리합니다.

빌드 17728(빠른)

빌드 17728에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 오버플로를 방지하기 위해 KeQueryPerformanceCounter 대신 KeQueryInterruptTimePrecise를 사용하도록 WSL 전환 [GH 3252]
  • Ptrace 연결로 인해 시스템 호출에서 잘못된 반환 값이 발생할 수 있음 [GH 1731]
  • 여러 AF_UNIX 관련 문제 해결 [GH 3371]
  • 현재 작업 디렉터리가 5자 미만인 경우 WSL interop이 실패할 수 있는 문제 해결 [GH 3379]

빌드 18204(미리 건너뛰기)

빌드 18204에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 파이프 파일시스템이 의도치 않게 에지 트리거된 epoll 이벤트를 삭제함 [GH 3276]
  • NTFS symlink를 통해 시작된 Win32 실행 파일은 symlink 이름을 존중하지 않습니다.[GH 2909]

빌드 17723 (패스트)

빌드 17723에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 존재하지 않는 포트로의 루프백 연결에서 1초 지연을 방지 [GH 3286]
  • /proc/sys/fs/file-max 스텁 파일 추가 [GH 2893]
  • 보다 정확한 IPV6 범위 정보입니다.
  • PR_SET_PTRACER 지원 [GH 3053]
  • 파이프 파일시스템이 의도치 않게 에지 트리거된 epoll 이벤트를 삭제함 [GH 3276]
  • NTFS symlink를 통해 시작된 Win32 실행 파일은 symlink 이름을 존중하지 않습니다.[GH 2909]

빌드 17713

빌드 17713에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 향상된 좀비 지원 [GH 1353]
  • Windows interop 동작을 제어하기 위한 wsl.conf 항목 추가 [GH 1493]
      [interop]
    
      enabled=false # enable launch of Windows binaries; default is true
    
      appendWindowsPath=false # append Windows path to $PATH variable; default is true
    
  • 항상 UNIX 소켓 패밀리 유형을 반환하지 않는 getsockname에 대한 수정 [GH 1774]
  • TIOCSTI에 대한 지원 추가 [GH 1863]
  • 연결 프로세스의 비차단 소켓은 쓰기 시도에 대해 EAGAIN을 반환해야 합니다[GH 2846]
  • 탑재된 VHD에서 상호 운용성 지원 [GH 3246, 3291]
  • 루트 폴더에 대한 권한 검사 문제 해결 [GH 3304]
  • TTY 키보드 ioctls KDGKBTYPE, KDGKBMODE 및 KDSKBMODE에 대한 제한된 지원.
  • Windows UI 앱은 백그라운드에서 시작된 경우에도 실행되어야 합니다.

빌드 17704

빌드 17704에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • wsl -u 또는 --user 옵션 추가 [GH 1203]
  • 빠른 시작이 사용하도록 설정된 경우 WSL 시작 문제 해결 [GH 2576]
  • Unix 소켓은 연결이 끊긴 피어 자격 증명을 유지해야 함 [GH 3183]
  • 비차단 Unix 소켓이 EAGAIN 오류로 무한정 실패 [GH 3191]
  • case=off는 새로운 기본 drvfs 탑재 유형입니다.[GH 2937, 3212, 3328]
    • 자세한 내용은 블로그 참조하세요.
  • wslconfig /terminate를 추가하여 배포 실행을 중지합니다.

빌드 17692

빌드 17692에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 공백이 있는 경로를 올바르게 처리하지 않는 WSL 셸 상황에 맞는 메뉴 항목과 관련된 문제를 해결합니다.
  • 디렉터리별 대/소문자 구분을 확장 특성으로 노출
  • ARM64: 캐시 유지 관리 작업을 에뮬레이트합니다. 의 dotnet 문제을 해결하세요.
  • DrvFs: 이스케이프된 문자에 해당하는 프라이빗 범위의 문자를 비스케이프합니다.

빌드 17686

빌드 17686에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • ELF 파서 인터프리터 길이 유효성 검사에서 하나씩 오류 수정 [GH 3154]
  • 과거 시각이 설정된 WSL 절대 타이머가 작동하지 않음 [GH 3091]
  • 새로 생성된 재구문 분석 지점이 부모 디렉터리에 해당 방식으로 나열되도록 합니다.
  • DrvFs 환경에서 대/소문자를 구분하는 디렉터리를 자동으로 만듭니다.

빌드 17677

빌드 17677에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 파일이 있는 경우에도 다중 스레드 작업이 ENOENT를 반환할 수 있는 추가 문제가 해결되었습니다. [GH 2712]
  • UMCI를 사용할 때 WSL 시작 실패가 수정되었습니다. [GH 3020]

빌드 17666

빌드 17666에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

경고: 일부 AMD 칩셋 [GH 3134]에서 WSL이 실행되지 않도록 하는 문제가 있습니다. 수정이 준비되었으며 Insider Build 분기로 이동합니다.

  • 탐색기 상황에 맞는 메뉴를 추가하여 WSL [GH 437, 603, 1836]을 시작합니다. Shift 키를 누른 상태로 사용하려면 탐색기 창에서 마우스 오른쪽 단추를 클릭합니다.
  • unix 소켓 비차단 동작 수정 [GH 2822, 3100]
  • GH 2026에서 보고된 NETLINK 명령의 멈춤 문제를 해결합니다.
  • 탑재 전파 플래그 [GH 2911]에 대한 지원을 추가합니다.
  • 트렁케이트로 인해 inotify 이벤트가 발생하지 않는 문제를 해결합니다[GH 2978].
  • wsl.exe에 대해 셸 환경 없이 단일 바이너리 파일을 호출하는 --exec 옵션을 추가합니다.
  • wsl.exe 대한 --distribution 옵션을 추가하여 특정 배포를 선택합니다.

빌드 17655(미리 건너뛰기)

빌드 17655에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • dmesg에 대한 지원이 제한되어 있습니다. 이제 애플리케이션이 dmesg에 로그할 수 있습니다. WSL 드라이버는 제한된 정보를 dmesg로 기록합니다. 나중에 드라이버에서 다른 정보/진단을 전달하도록 확장할 수 있습니다.
    • 참고: dmesg는 현재 /dev/kmsg 디바이스 인터페이스를 통해 지원됩니다. syslog sycall 인터페이스는 아직 지원되지 않습니다. 따라서 dmesg, -S 같은 -C 명령줄 옵션 중 일부는 작동하지 않습니다.
  • 파일이 있는 경우에도 다중 스레드 작업이 ENOENT를 반환할 수 있는 문제를 해결했습니다. [GH 2712]

빌드 17639(미리 건너뛰기)

빌드 17639에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 기본 gid 및 직렬 디바이스 모드를 네이티브와 일치하도록 변경 [GH 3042]
  • DrvFs는 이제 확장된 특성을 지원합니다.
    • 참고: DrvFs에는 확장 특성의 이름에 몇 가지 제한 사항이 있습니다. 특히 일부 문자(예: '/', ':' 및 '*')는 허용되지 않으며 확장 특성 이름은 DrvFs에서 대/소문자를 구분하지 않습니다.

빌드 17133(빠른)

빌드 17133에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • WSL에서 멈춤 현상을 수정합니다. [GH 3039, 3034]

빌드 17128(빠른)

빌드 17128에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 없음

빌드 17627(미리 건너뛰기)

빌드 17627에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • futex pi 인식 작업에 대한 지원을 추가합니다. [GH 1006]
    • 우선 순위는 현재 지원되는 WSL 기능이 아니므로 제한 사항이 있지만 표준 사용은 차단 해제해야 합니다.
  • WSL 프로세스에 대한 Windows 방화벽 지원. [GH 1852]
    • 예를 들어, WSL python 프로세스가 모든 포트에서 수신 대기할 수 있도록 하려면 관리자 권한으로 실행된 Windows 명령 프롬프트를 사용합니다. netsh.exe advfirewall firewall add rule name=wsl_python dir=in action=allow program="C:\users\<username>\appdata\local\packages\canonicalgrouplimited.ubuntuonwindows_79rhkp1fndgsc\localstate\rootfs\usr\bin\python2.7" enable=yes
    • 방화벽 규칙을 추가하는 방법에 대한 자세한 내용은 링크 참조하세요.
  • wsl.exe사용하는 경우 사용자의 기본 셸을 준수합니다. [GH 2372]
  • 모든 네트워크 인터페이스를 이더넷으로 보고합니다. [GH 2996]
  • 손상된 /etc/passwd 파일의 더 나은 처리. [GH 3001]

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17618(미리 건너뛰기)

빌드 17618에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • NT interop [GH 988, 1366, 1433, 1542, 2370, 2406]에 대한 의사콘솔 기능을 소개합니다.
  • 레거시 설치 메커니즘(lxrun.exe)은 더 이상 사용되지 않습니다. 배포를 설치하기 위해 지원되는 메커니즘은 Microsoft Store를 통해 이루어집니다.

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17110

빌드 17110에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • Windows [GH 2928]에서 /init를 종료하도록 허용합니다.
  • 이제 DrvFs는 기본적으로 디렉터리별 대/소문자 구분을 사용합니다("case=dir" 탑재 옵션에 해당).
    • "case=force"(이전 동작)를 사용하려면 레지스트리 키를 설정해야 합니다. 다음 명령을 실행하여 사용해야 하는 경우 "case=force"를 사용하도록 설정합니다. reg add HKLM\SYSTEM\CurrentControlSet\Services\lxss /v DrvFsAllowForceCaseSensitivity /t REG_DWORD /d 1
    • 대소문자를 구분해야 하는 이전 버전의 Windows에서 WSL을 사용해 만든 기존 디렉터리가 있다면, fsutil.exe를 사용하여 해당 디렉터리를 대소문자를 구분하도록 설정하십시오. fsutil.exe 파일 setcasesensitiveinfo <path> 실행
  • NULL은 uname syscall에서 반환된 문자열을 종료합니다.

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17107

빌드 17107에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • 마스터 pty 엔드포인트 [GH 2552]에서 TCSETSF 및 TCSETSW를 지원합니다.
  • 동시에 상호 운용 프로세스를 시작하면 EINVAL [GH 2813]이 발생할 수 있습니다.
  • /proc/pid/status에서 적절한 추적 상태를 표시하도록 PTRACE_ATTACH 수정합니다.
  • CLEARTID 및 SETTID 플래그로 복제되어 일시적으로 실행되는 프로세스가 TID 주소를 지우지 않고 종료되는 경합 상태를 수정합니다.
  • 17093 이전 빌드에서 이동할 때 Linux 파일 시스템 디렉터리를 업그레이드할 때 메시지를 표시합니다. 17093 파일 시스템 변경에 대한 자세한 내용은 17093대한 릴리스 정보를 참조하세요.

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17101

빌드 17101에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • signalfd에 대한 지원. [GH 129]
  • 개인 유니코드 문자로 인코딩하여 잘못된 NTFS 문자를 포함하는 파일 이름을 지원합니다. [GH 1514]
  • 쓰기가 지원되지 않는 경우 자동 탑재가 읽기 전용으로 대체됩니다. [GH 2603]
  • 유니코드 서로게이트 쌍(예: 이모지 문자)의 붙여넣기를 허용합니다. [GH 2765]
  • /proc 및 /sys의 의사 파일은 select, poll, epoll 등에서 읽기 및 쓰기 준비 상태를 반환해야 합니다. [GH 2838]
  • 레지스트리가 변조되었거나 손상된 경우 서비스가 무한 루프로 전환될 수 있는 문제를 해결합니다.
  • 최신(업스트림 4.14) 버전의 iproute2에서 작동하도록 netlink 메시지를 수정합니다.

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17093

빌드 17093에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

중요하다:

이 빌드로 업그레이드한 후 처음으로 WSL을 시작할 때 Linux 파일 시스템 디렉터리를 업그레이드하는 작업을 수행해야 합니다. 이 작업은 최대 몇 분 정도 걸릴 수 있으므로 WSL이 느리게 시작되는 것처럼 보일 수 있습니다. 이는 스토어에서 설치한 각 배포에 대해 한 번만 발생합니다.

  • DrvFs에서 대소문자 구분 지원이 향상되었습니다.
    • DrvFs는 이제 디렉터리별 대/소문자 구분을 지원합니다. 이것은 디렉터리에 설정할 수 있는 새로운 플래그로, 해당 디렉터리 내의 모든 작업이 대/소문자 구분으로 처리되도록 합니다. 이로 인해 Windows 애플리케이션에서도 대/소문자만 다른 파일을 올바르게 열 수 있습니다.
    • DrvFs에는 디렉터리별로 대/소문자 구분을 제어하는 새로운 탑재 옵션이 있습니다.
      • case=force: 모든 디렉터리(드라이브 루트 제외)는 대/소문자를 구분하는 것으로 처리됩니다. WSL로 생성된 새 디렉터리는 대/소문자 구분이 적용됩니다. 새 디렉터리를 대소문자 구분으로 표시하는 것을 제외하고는 기존의 동작 방식입니다.
      • case=dir: 디렉터리별 대/소문자 구분 플래그가 있는 디렉터리만 대/소문자를 구분하는 것으로 처리됩니다. 다른 디렉터리에서는 대/소문자를 구분하지 않습니다. WSL로 생성된 새 디렉터리는 대/소문자 구분이 적용됩니다.
      • case=off: 디렉터리별 대/소문자 구분 플래그가 있는 디렉터리만 대/소문자를 구분하는 것으로 처리됩니다. 다른 디렉터리에서는 대/소문자를 구분하지 않습니다. WSL을 사용하여 만든 새 디렉터리에서는 대/소문자를 구분하지 않는 것으로 표시됩니다.
    • 참고: 이전 릴리스에서 WSL에서 만든 디렉터리에는 이 플래그가 설정되어 있지 않으므로 "case=dir" 옵션을 사용하는 경우 대/소문자를 구분하지 않습니다. 기존 디렉터리에서 이 플래그를 설정하는 방법은 곧 제공될 예정입니다.
    • 이러한 옵션을 사용하여 탑재하는 예제(기존 드라이브의 경우 먼저 다른 옵션으로 탑재하려면 먼저 탑재를 해제해야 합니다.): sudo mount -t drvfs C: /mnt/c -o case=dir
    • 지금은 case=force가 여전히 기본 옵션입니다. 나중에 case=dir로 변경됩니다.
  • 이제 DrvFs를 마운트할 때 Windows 경로에서 슬래시(/)를 사용할 수 있습니다(예: sudo mount -t drvfs //server/share /mnt/share).
  • 이제 WSL은 인스턴스 시작 [GH 2636]을 시작하는 동안 /etc/fstab 파일을 처리합니다.
    • DrvFs 드라이브를 자동으로 탑재하기 전에 이 작업을 수행합니다. fstab에 의해 이미 탑재된 모든 드라이브는 자동으로 다시 탑재되지 않으므로 특정 드라이브의 탑재 지점을 변경할 수 있습니다.
    • 이 동작은 wsl.conf를 사용하여 해제할 수 있습니다.
  • /proc의 mount, mountinfo 및 mountstats 파일은 백슬래시 및 공백과 같은 특수 문자를 제대로 이스케이프합니다 [GH 2799]
  • 이제 DrvFs를 사용하여 만든 WSL 기호 링크, 또는 메타데이터가 활성화되었을 때의 fifo 및 소켓 같은 특수 파일을 Windows에서 복사하거나 이동할 수 있습니다.

wsl.conf를 사용하여 WSL을 더 구성할 수 있습니다.

하위 시스템을 시작할 때마다 적용되는 WSL의 특정 기능을 자동으로 구성하는 메서드를 추가했습니다. 여기에는 자동 탑재 옵션 및 네트워크 구성이 포함됩니다. 자세한 내용은 블로그 게시물: https://aka.ms/wslconf

AF_UNIX WSL의 Linux 프로세스와 Windows 네이티브 프로세스 간의 소켓 연결을 허용합니다.

WSL 및 Windows 애플리케이션은 이제 Unix 소켓을 통해 서로 통신할 수 있습니다. Windows에서 서비스를 실행하고 Windows 및 WSL 앱에서 모두 사용할 수 있도록 하려는 경우를 상상해 보십시오. 이제 Unix 소켓에서 가능합니다. https://aka.ms/afunixinterop 블로그 게시물에서 자세히 알아보기

WSL

  • MAP_NORESERVE 사용하여 mmap() 지원 [GH 121, 2784]
  • CLONE_PTRACE와 CLONE_UNTRACED를 지원 [GH 121, 2781]
  • 클론에서 SIGCHLD 이외의 종료 신호 처리 [GH 121, 2781]
  • 스텁 /proc/sys/fs/inotify/max_user_instances 및 /proc/sys/fs/inotify/max_user_watches [GH 1705]
  • 0이 아닌 오프셋이 있는 로드 헤더가 포함된 ELF 이진 파일을 로드하는 동안 오류 발생 [GH 1884]
  • 이미지를 로드할 때 후행 페이지 바이트를 0으로 설정합니다.
  • execve가 프로세스를 자동으로 종료하는 사례 줄이기

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17083

빌드 17083에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • Epoll과 관련된 버그 검사 수정 [GH 2798, 2801, 2857]
  • ASLR을 끌 때 중단 현상이 수정되었습니다 [GH 1185, 2870]
  • mmap 작업이 원자성을 갖도록 확인 [GH 2732]

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17074

빌드 17074에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • DrvFs 메타데이터의 스토리지 형식이 수정됨 [GH 2777]
    중요: 이 빌드 전에 생성된 DrvFs 메타데이터는 잘못 표시되거나 전혀 표시되지 않을 수 있습니다. 영향을 받는 파일을 수정하려면 chmod 및 chown을 사용하여 메타데이터를 다시 적용합니다.
  • 여러 신호 및 다시 시작 가능한 syscall과 관련된 문제를 해결했습니다.

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17063

빌드 17063에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL

  • DrvFs는 추가 Linux 메타데이터를 지원합니다. 이를 통해 chmod/chown을 사용하여 파일의 소유자 및 모드를 설정하고 fifo, unix 소켓 및 디바이스 파일과 같은 특수 파일을 만들 수 있습니다. 아직 실험적이므로 지금은 기본적으로 사용하지 않도록 설정됩니다. 참고: DrvFs에서 사용하는 메타데이터 형식의 버그를 수정했습니다. 메타데이터는 이 빌드에서 실험을 위해 작동하지만 이후 빌드는 이 빌드에서 만든 메타데이터를 올바르게 읽지 않습니다. 수정된 파일의 소유자를 수동으로 업데이트해야 할 수도 있으며, 사용자 지정 장치 ID가 있는 디바이스는 새로 만들어야 합니다.

    이를 사용하도록 설정하려면 메타데이터 옵션을 사용하여 DrvFs를 탑재합니다(기존 탑재에서 사용하도록 설정하려면 먼저 탑재를 해제해야 합니다.)

    mount -t drvfs C: /mnt/c -o metadata
    

    Linux 권한은 파일에 추가 메타데이터로 추가됩니다. Windows 권한에는 영향을 미치지 않습니다. Windows 편집기를 사용하여 파일을 편집하면 메타데이터가 제거됩니다. 이 경우 파일은 기본 사용 권한으로 되돌아갑니다.

  • 메타데이터 없이 파일을 제어하기 위해 DrvFs에 탑재 옵션이 추가되었습니다.

    • uid: 모든 파일의 소유자에 사용되는 사용자 ID입니다.
    • gid: 모든 파일의 소유자에 사용되는 그룹 ID입니다.
    • umask: 모든 파일 및 디렉터리에 대해 제외할 수 있는 권한의 8진수 마스크입니다.
    • fmask: 모든 일반 파일에 대해 제외할 수 있는 권한의 8진수 마스크입니다.
    • dmask: 모든 디렉터리에 대해 제외할 수 있는 권한의 8진수 마스크입니다.

    예를 들어:

    mount -t drvfs C: /mnt/c -o uid=1000,gid=1000,umask=22,fmask=111
    

    메타데이터 옵션과 결합하여 메타데이터가 없는 파일에 대한 기본 권한을 지정합니다.

  • WSL과 Win32 간에 환경 변수가 흐르는 방식을 구성하기 위해 WSLENV새 환경 변수를 도입했습니다.

    예를 들어:

    WSLENV=GOPATH/l:USERPROFILE/pu:DISPLAY
    

    WSLENV는 Win32에서 WSL 프로세스를 시작하거나 WSL에서 Win32 프로세스를 시작할 때 포함할 수 있는 환경 변수가 콜론으로 구분된 목록입니다. 각 변수는 슬래시와 플래그를 접미사로 하여 변환 방법을 지정할 수 있습니다.

    • p: 값은 WSL 경로와 Win32 경로 간에 변환해야 하는 경로입니다.
    • l: 값은 경로 목록입니다. WSL에서는 콜론으로 구분된 목록입니다. Win32에서는 세미콜론으로 구분된 목록입니다.
    • u: Win32에서 WSL을 호출할 때만 값을 포함해야 합니다.
    • w: WSL에서 Win32를 호출할 때만 값을 포함해야 합니다.

    사용자에 대한 .bashrc 또는 사용자 지정 Windows 환경에서 WSLENV 설정할 수 있습니다.

  • drvfs 마운트는 tar, cp -p(GH 1939)의 타임스탬프를 올바르게 유지합니다.

  • drvfs symlinks는 올바른 크기를 보고합니다(GH 2641)

  • 매우 큰 IO 크기에 대한 읽기/쓰기 작업(GH 2653)

  • waitpid는 프로세스 그룹 ID(GH 2534)에서 작동합니다.

  • 대규모 예약 지역의 mmap 성능이 크게 향상되었으며, ghc 성능도 개선되었습니다(GH 1671).

  • READ_IMPLIES_EXEC에 대한 특성 지원; maxima 및 clisp 수정(GH 1185)

  • mprotect는 PROT_GROWSDOWN 지원합니다. clisp 수정(GH 1128)

  • 과다 할당 모드의 페이지 결함 수정; sbcl(GH 1128) 해결

  • 복제는 더 많은 플래그 조합을 지원합니다.

  • epoll 파일의 select/epoll 기능을 지원합니다 (이전에는 no-op).

  • 구현되지 않은 시스템 호출을 ptrace에 알립니다.

  • resolv.conf 이름 서버를 생성할 때 실행되지 않는 인터페이스 무시 [GH 2694]

  • 실제 주소가 없는 네트워크 인터페이스를 열거합니다. [GH 2685]

  • 추가 버그 수정 및 개선 사항.

Windows에서 개발자가 사용할 수 있는 Linux 도구

  • Windows 명령줄 도구 체인에는 bsdtar(tar) 및 curl이 포함됩니다. 이 블로그 읽고 이러한 두 가지 새로운 도구의 추가에 대해 자세히 알아보고 Windows에서 개발자 환경을 형성하는 방법을 알아보세요.

  • AF_UNIX Windows 참가자 SDK(17061 이상)에서 사용할 수 있습니다. 이 블로그를 읽고 AF_UNIX 및 Windows 개발자가 이를 활용하는 방법에 대해 자세히 알아보세요.

콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17046

빌드 17046에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 활성 터미널 없이 프로세스를 실행할 수 있습니다. [GH 709, 1007, 1511, 2252, 2391, 외.]
  • CLONE_VFORK 및 CLONE_VM 더 나은 지원. [GH 1878, 2615]
  • WSL 네트워킹 작업에서 TDI 필터 드라이버를 무시합니다. [GH 1554]
  • DrvFs는 특정 조건이 충족될 때 NT symlinks를 만듭니다. [GH 353, 1475, 2602]
    • 링크 대상은 상대 경로여야 하며 탑재 지점 또는 심볼릭 링크를 교차해서는 안 되며 존재해야 합니다.
    • 개발자 모드가 켜져 있지 않다면, 사용자에게는 SE_CREATE_SYMBOLIC_LINK_PRIVILEGE 권한이 필요합니다(일반적으로 wsl.exe을 관리자 권한으로 실행해야 합니다).
    • 다른 모든 상황에서 DrvFs는 여전히 WSL symlink를 만듭니다.
  • 상승된 WSL 인스턴스와 비-관리자 권한 WSL 인스턴스를 동시에 실행하도록 허용합니다.
  • /proc/sys/kernel/yama/ptrace_scope를 지원
  • wslpath를 추가하여 WSL<->Windows 경로 변환을 수행합니다. [GH 522, 1243, 1834, 2327, 외.]
      wslpath usage:
        -a    force result to absolute path format
        -u    translate from a Windows path to a WSL path (default)
        -w    translate from a WSL path to a Windows path
        -m    translate from a WSL path to a Windows path, with '/' instead of '\\'
    
        EX: wslpath 'c:\users'
    

    콘솔

  • 수정 사항이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17040

빌드 17040에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 17035 이후 수정이 없습니다.

콘솔

  • 17035 이후 수정이 없습니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17035

빌드 17035에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 경우에 따라 EINVAL에서 DrvFs의 파일에 액세스하지 못할 수 있습니다. [GH 2448]

콘솔

  • VT 모드에서 선을 삽입/삭제할 때 색이 약간 손실됩니다.

LTP 결과:

테스트 진행 중입니다.

빌드 17025

빌드 17025에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 새 포그라운드 프로세스 그룹 [GH 1653, 2510]에서 초기 프로세스를 시작합니다.
  • SIGHUP 처리 수정 [GH 2496].
  • [GH 2497]이 제공되지 않은 경우 기본 가상 브리지 이름을 생성합니다.
  • /proc/sys/kernel/random/boot_id [GH 2518]을 구현합니다.
  • 더 많은 상호운용성 stdout/stderr 파이프 수정.
  • 스텁은 시스템 호출을 동기화합니다.

콘솔

  • 타사 콘솔에 대한 입력 VT 변환 수정 [GH 111]

LTP 결과:

테스트 진행 중입니다.

빌드 17017

빌드 17017에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 빈 ELF 프로그램 헤더 [GH 330]을 무시합니다.
  • LxssManager가 비대화형 사용자(ssh 및 예약된 작업 지원)에 대한 WSL 인스턴스를 만들 수 있도록 허용[GH 777, 1602].
  • WSL->Win32->WSL("초기화") 시나리오 [GH 1228]를 지원합니다.
  • interop [GH 1614]를 통해 호출된 콘솔 앱의 종료에 대한 지원이 제한됩니다.
  • devpts [GH 1948]에 대한 마운트 옵션을 지원합니다.
  • Ptrace로 인해 자식 프로세스 시작이 차단됨 [GH 2333].
  • EPOLLET에서 일부 이벤트가 누락됨 [GH 2462].
  • PTRACE_GETSIGINFO 대한 더 많은 데이터를 반환합니다.
  • lseek이 있는 Getdent는 잘못된 결과를 제공합니다.
  • 더 이상 데이터가 없는 파이프에서 입력을 기다리며 일부 Win32 interop 앱이 중단되는 문제를 해결합니다.
  • O_ASYNC tty/pty 파일에 대한 지원입니다.
  • 추가 개선 사항 및 버그 수정

콘솔

  • 이 릴리스에서는 콘솔 관련 변경 내용이 없습니다.

LTP 결과:

테스트 진행 중입니다.

Fall Creators Update

빌드 16288

빌드 16288에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 소켓 파일 설명자에 대한 uid, gid 및 모드를 올바르게 초기화하고 보고합니다.[GH 2490]
  • 추가 개선 사항 및 버그 수정

콘솔

  • 이 릴리스에서는 콘솔 관련 변경 내용이 없습니다.

LTP 결과:

16273 이후 변경 내용 없음

빌드 16278

빌드 162738 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • LX MM 상태를 해제할 때 파일 백업 섹션의 매핑된 뷰를 명시적으로 매핑 해제[GH 2415]
  • 추가 개선 사항 및 버그 수정

콘솔

  • 이 릴리스에서는 콘솔 관련 변경 내용이 없습니다.

LTP 결과:

16273 이후 변경 내용 없음

빌드 16275

빌드 162735 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 이 릴리스에서는 WSL 관련 변경 내용이 없습니다.

콘솔

  • 이 릴리스에서는 콘솔 관련 변경 내용이 없습니다.

LTP 결과:

16273 이후 변경 내용 없음

빌드 16273

빌드 16273에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • DrvFs에서 디렉터리에 대해 잘못된 파일 형식을 보고하는 문제가 해결되었습니다.[GH 2392]
  • uevent를 사용하는 프로그램 차단을 해제하는 NETLINK_KOBJECT_UEVENT 소켓 만들기 허용 [GH 1121, 2293, 2242, 2295, 2235, 648, 637]
  • 비차단 연결에 대한 지원 추가 [GH 903, 1391, 1584, 1585, 1829, 2290, 2314]
  • CLONE_FS 복제 시스템 호출 플래그 구현 [GH 2242]
  • NT interop에서 탭 또는 따옴표를 올바르게 처리하지 않는 것과 관련된 문제 해결 [GH 1625, 2164]
  • WSL 인스턴스를 다시 시작하려고 할 때 액세스 거부 오류 해결 [GH 651, 2095]
  • futex FUTEX_REQUEUE 및 FUTEX_CMP_REQUEUE 작업 구현 [GH 2242]
  • 다양한 SysFs 파일에 대한 권한 수정 [GH 2214]
  • 설치 중에 Haskell 스택 중단 수정 [GH 2290]
  • binfmt_misc 'C' 'O' 및 'P' 플래그 구현 [GH 2103]
  • /proc/sys/kernel /shmmax /shmmni & /threads-max 추가 [GH 1753]
  • ioprio_set 시스템 호출에 대한 부분 지원 추가 [GH 498]
  • 스텁 SO_REUSEPORT & netlink 소켓에 대한 SO_PASSCRED 대한 지원 추가 [GH 69]
  • 배포가 현재 설치되거나 제거되는 경우 RegisterDistribution에서 다른 오류 코드를 반환합니다.
  • wslconfig.exe 통해 부분적으로 설치된 WSL 배포판의 등록 취소 허용
  • udp::msg_peek로 인한 Python 소켓 테스트 정지 수정
  • 추가 개선 사항 및 버그 수정

콘솔

  • 이 릴리스에서는 콘솔 관련 변경 내용이 없습니다.

LTP 결과:

총 테스트: 1904
건너뛰어진 테스트 총 209개
총 실패 수: 229

빌드 16257

빌드 16257에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • prlimit64 시스템 호출 구현
  • ulimit -n(setrlimit RLIMIT_NOFILE)에 대한 지원 추가 [GH 1688]
  • TCP 소켓에 대한 MSG_MORE 스텁 구현 [GH 2351]
  • 잘못된 AT_EXECFN 보조 벡터 동작 수정 [GH 2133]
  • 콘솔/tty에 대한 복사/붙여넣기 동작을 수정하고 더 나은 전체 버퍼 처리 추가 [GH 2204, 2131]
  • set-user-ID 및 set-group-ID 프로그램에 대한 보조 벡터에서 AT_SECURE 설정 [GH 2031]
  • 의사 터미널 마스터 엔드포인트가 TIOCPGRP를 처리하지 않음 [GH 1063]
  • LxFs에서 디렉터리를 처음으로 되돌리는 기능을 하는 lseek 수정 [GH 2310]
  • /dev/ptmx는 사용량이 많은 후 잠금 [GH 1882]
  • 추가 개선 사항 및 버그 수정

콘솔

LTP 결과:

16251 이후 변경 없음

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

prlimit64

알려진 문제

GitHub 문제 2392: WSL에서 인식할 수 없는 Windows 폴더 ...

빌드 16257에서 WSL은 /mnt/c/...통해 Windows 파일/폴더를 열거할 때 문제가 발생합니다. 이 문제는 해결되었으며 2017년 8월 14일부터 일주일 동안 참가자 빌드에서 릴리스되어야 합니다.


빌드 16251

빌드 16251에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • WSL 선택적 구성 요소에서 베타 태그를 제거합니다. 자세한 내용은 블로그 게시물 참조하세요.
  • exec 실행 시 set-user-ID 및 set-group-ID 이진 파일의 저장된 집합 uid 및 gid를 올바르게 초기화합니다 [GH 962, 1415, 2072].
  • ptrace PTRACE_O_TRACEEXIT 대한 지원 추가 [GH 555]
  • NT_FPREGSET과 함께 ptrace의 PTRACE_GETFPREGS 및 PTRACE_GETREGSET에 대한 지원이 추가되었습니다 [GH 555]
  • 무시된 신호에서 중지하도록 ptrace가 수정되었습니다.
  • 추가 개선 사항 및 버그 수정

콘솔

  • 이 릴리스에서는 콘솔 관련 변경 내용이 없습니다.

LTP 결과:

통과 테스트 수: 768
실패한 테스트 수: 244
건너뛴 테스트 수: 96


빌드 16241

빌드 16241에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

WSL

  • 이 릴리스에서는 WSL 관련 변경 내용이 없습니다.

콘솔

  • 교차 선 DEC에 대해 잘못된 문자를 출력하는 문제를 수정했습니다. 이 문제는 처음에 에 보고된 것으로,에서 언급되었습니다.
  • 코드 페이지 65001(utf8)에 출력 텍스트가 표시되지 않도록 수정
  • 선택 변경 시 한 색의 RGB 값에 대한 변경 내용을 색상표의 다른 부분으로 전송하지 마세요. 이렇게 하면 콘솔 속성 시트를 훨씬 쉽게 사용할 수 있습니다.
  • Ctrl+S가 제대로 작동하지 않음
  • ANSI 이스케이프 코드에 굵게/흐리게 기능이 전혀 없음 [GH 2174]
  • 콘솔에서 Vim 색 테마를 올바르게 지원하지 않음 [GH 1706]
  • 특정 문자를 붙여 넣을 수 없음 [GH 2149]
  • 재플로 리사이즈가 편집/명령줄에 콘텐츠가 있을 때 bash 창 크기 조정과 이상하게 상호 작용합니다. [GH ConEmu 1123]
  • Ctrl-L 화면을 더럽게 남깁니다 [GH 1978]
  • HDPI에 VT를 표시할 때 콘솔 렌더링 버그 [GH 1907]
  • 유니코드 문자 U+30FB로 일본 문자가 이상하게 보입니다.[GH 2146]
  • 추가 개선 사항 및 버그 수정

빌드 16237

빌드 16237에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • lxfs(루트, 루트, 0000)에서 EA가 없는 파일에 기본 특성 사용
  • 확장 특성을 사용하는 배포에 대한 지원이 추가됨
  • getdents 및 getdents64에서 반환된 항목에 대한 패딩 수정
  • shmctl SHM_STAT 시스템 호출에 대한 권한 검사 수정 [GH 2068]
  • ttys에 대한 잘못된 초기 epoll 상태를 수정했습니다.[GH 2231]
  • DrvFs readdir이 모든 항목을 반환하지 않는 문제를 해결합니다.[GH 2077]
  • 파일이 연결되지 않은 경우 LxFs readdir 수정 [GH 2077]
  • procfs를 통해 연결되지 않은 drvfs 파일을 다시 열 수 있도록 허용
  • WSL 기능을 사용하지 않도록 설정하기 위한 전역 레지스트리 키 재정의 추가(interop/드라이브 탑재)
  • DrvF(및 LxFs)의 "통계"에서 잘못된 블록 개수 수정 [GH 1894]
  • 추가 개선 사항 및 버그 수정

빌드 16232

빌드 16232에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 이 릴리스에서는 WSL 관련 변경 내용이 없습니다.

빌드 16226

빌드 16226에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • xattr 관련 시스템 호출 지원 (getxattr, setxattr, listxattr, removexattr).
  • security.capability xattr 지원.
  • MS가 아닌 SMB 서버를 포함하여 특정 파일 시스템 및 필터와의 호환성이 향상되었습니다. [GH #1952]
  • OneDrive 자리 표시자, GVFS 자리 표시자 및 압축된 Compact OS 파일에 대한 지원이 향상되었습니다.
  • 추가 개선 사항 및 버그 수정

빌드 16215

빌드 16215에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • WSL에는 더 이상 개발자 모드가 필요하지 않습니다.
  • drvfs에서 디렉터리 접합을 지원합니다.
  • WSL 배포용 appx 패키지의 제거를 처리합니다.
  • 프라이빗 및 공유 매핑을 표시하도록 프로시저를 업데이트합니다.
  • wslconfig.exe 부분적으로 설치되거나 제거된 배포를 정리하는 기능을 추가합니다.
  • TCP 소켓에 대한 IP_MTU_DISCOVER 대한 지원이 추가되었습니다. [GH 1639, 2115, 2205]
  • AF_INADDR 경로에 대한 프로토콜 패밀리를 유추합니다.
  • 직렬 장치 개선 [GH 1929].

빌드 16199

빌드 16199에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 이러한 릴리스에서는 WSL 관련 변경 내용이 없습니다.

빌드 16193

빌드 16193에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • SIGCONT 전송과 스레드 그룹 종료 간의 경합 상태 [GH 1973]
  • FILE_DEVICE_CONSOLE 대신 FILE_DEVICE_NAMED_PIPE 보고하도록 tty 및 pty 디바이스 변경 [GH 1840]
  • IP_OPTIONS에 대한 SSH 수정
  • DrvFs 마운트를 init 데몬으로 이동 [GH 1862, 1968, 1767, 1933]
  • DrvFs에 NT 심볼릭 링크를 따르는 기능 지원이 추가되었습니다.

빌드 16184

빌드 16184에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • apt 패키지 유지 관리 작업 제거(lxrun.exe /update)
  • Windows 프로세스 내에서 출력이 표시되지 않는 문제가 수정됨 [GH 1840] node.js
  • lxcore에서 정렬 요구 사항 완화 [GH 1794]
  • 여러 시스템 호출에서 AT_EMPTY_PATH 플래그 처리 수정했습니다.
  • 핸들이 열려 있는 DrvFs 파일을 삭제하면 파일이 정의되지 않은 동작을 나타내는 문제가 해결되었습니다.[GH 544,966,1357,1535,1615]
  • /etc/hosts는 이제 Windows 호스트 파일(%windir%\system32\drivers\etc\hosts)에서 항목을 상속합니다. [GH 1495]

빌드 16179

빌드 16179에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 이번 주에는 WSL이 변경되지 않습니다.

빌드 16176

빌드 16176에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 직렬 지원 사용하도록 설정
  • IP 소켓 옵션 IP_OPTIONS 추가됨 [GH 1116]
  • pwritev 함수 구현(nginx/PHP-FPM파일을 업로드하는 동안) [GH 1506]
  • IP 소켓 옵션 IP_MULTICAST_IF & IPV6_MULTICAST_IF 추가됨 [GH 990]
  • 소켓 옵션 IP_MULTICAST_LOOP & IPV6_MULTICAST_LOOP 지원 [GH 1678]
  • 앱 노드, 추적 경로, dig, nslookup, 호스트에 대한 IP(V6) _MTU 소켓 옵션이 추가됨
  • IP 소켓 옵션 IPV6_UNICAST_HOPS 추가됨
  • 파일 시스템 개선
    • UNC 경로 탑재 허용
    • drvfs에서 CDFS 지원 사용
    • drvfs의 네트워크 파일 시스템에 대한 사용 권한을 올바르게 처리합니다.
    • drvfs에 원격 드라이브에 대한 지원 추가
    • drvfs에서 FAT 지원 사용
  • 추가 수정 및 개선 사항

LTP 결과

15042 이후 변경 내용 없음


빌드 16170

빌드 16170에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

WSL을 테스트하기 위한 노력에 대해 논의하는 새로운 블로그 게시물을 발표했습니다.

수정됨

  • 소켓 옵션 지원 IP_ADD_MEMBERSHIP & IPV6_ADD_MEMBERSHIP [GH 1678]
  • PTRACE_OLDSETOPTIONS 대한 지원을 추가합니다. [GH 1692]
  • 추가 수정 및 개선 사항

LTP 결과

15042 이후 변경 내용 없음


Windows 10 크리에이터스 업데이트 빌드 15046

Windows 10 크리에이터스 업데이트에 포함될 WSL 수정 사항 또는 기능은 더 이상 없습니다. WSL에 대한 릴리스 정보는 다음 주요 Windows 업데이트를 대상으로 하는 추가 작업을 위해 앞으로 몇 주 후에 재개될 예정입니다. 빌드 15046 및 이후 참가자 릴리스에 대한 일반적인 Windows 정보는 Windows 블로그참조하세요.


빌드 15042

빌드 15042에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • "."로 끝나는 경로를 제거할 때 교착 상태 수정
  • FIONBIO가 성공에 대해 0을 반환하지 않는 문제를 해결했습니다.[GH 1683]
  • inet 데이터그램 소켓의 길이가 0인 데이터 읽기 문제 해결
  • drvfs inode 조회에서 경쟁 조건으로 인해 발생할 수 있는 교착 상태 수정 [GH 1675]
  • unix 소켓 보조 데이터에 대한 추가 지원; SCM_CREDENTIALS 및 SCM_RIGHTS [GH 514, 613, 1326]
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 737
통과하지 못한 횟수(실패, 건너뛰기 등):255


빌드 15031

빌드 15031에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 시간(2)이 산발적으로 잘못 동작하는 버그가 수정되었습니다.
  • *SIGPROCMASK syscall이 신호 마스크를 손상시킬 수 있는 문제가 해결되었습니다.
  • 이제 WSL 프로세스 생성 알림에서 전체 명령줄 길이를 반환합니다. [GH 1632]
  • 이제 WSL은 GDB의 중단 시 ptrace를 통해 스레드 종료를 보고합니다. [GH 1196]
  • 무거운 tmux IO 후에 ptys가 중단되는 버그가 수정되었습니다. [GH 1358]
  • 많은 시스템 호출(futex, semtimedop, ppoll, sigtimedwait, itimer, timer_create)에서 시간 제한 유효성 검사를 수정했습니다.
  • eventfd EFD_SEMAPHORE 지원 추가 [GH 452]
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 737
통과하지 못한 횟수(실패, 건너뛰기 등):255


빌드 15025

빌드 15025에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • grep 2.27을 중단한 버그 수정 [GH 1578]
  • eventfd2 syscall에 대한 EFD_SEMAPHORE 플래그 구현 [GH 452]
  • 구현된 /proc/[pid]/net/ipv6_route [GH 1608]
  • Unix 스트림 소켓에 대한 신호 기반 IO 지원 [GH 393, 68]
  • 지원 F_GETPIPE_SZ 및 F_SETPIPE_SZ [GH 1012]
  • recvmmsg() 시스템 호출 구현 [GH 1531]
  • epoll_wait()가 대기하지 않는 버그 수정 [GH 1609]
  • /proc/version_signature 구현
  • 두 파일 설명자가 동일한 파이프를 참조하는 경우 Tee syscall은 이제 오류를 반환합니다.
  • Unix 소켓에 대한 SO_PEERCRED 대한 올바른 동작 구현
  • tkill 시스템 호출에서 잘못된 매개변수 처리를 수정함
  • drvfs의 성능 향상을 위한 변경 내용
  • Ruby IO 차단에 대한 사소한 수정
  • inet 소켓에서 MSG_DONTWAIT 플래그로 인해 recvmsg()가 EINVAL을 반환하던 문제가 수정되었습니다. [GH 1296]
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 732
통과하지 못한 횟수(실패, 건너뛰기 등):255


빌드 15019

빌드 15019에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • procfs 파일 시스템에서 htop 같은 도구에 대해 CPU 사용량을 잘못 보고하는 버그를 수정했습니다 (GH 823, 945, 971).
  • 기존 파일에서 open()을 O_TRUNC로 호출할 때, inotify는 이제 IN_OPEN 전에 IN_MODIFY를 생성합니다.
  • postgres를 사용하도록 설정하는 unix 소켓 getsockopt SO_ERROR 수정 [GH 61, 1354]
  • GO 언어에 대해 /proc/sys/net/core/somaxconn 구현
  • 이제 Apt-get 패키지 업데이트 백그라운드 작업이 보기에서 숨겨집니다.
  • ipv6 localhost(Spring-Framework(Java) 실패)에 대한 범위를 명확히 합니다.
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 714
통과하지 못한 횟수(실패, 건너뛰기 등):249


빌드 15014

빌드 15014에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • Ctrl+C는 이제 의도한 대로 작동합니다.
  • 이제 htop 및 ps auxw가 올바른 리소스 사용률을 표시합니다(GH #516)
  • 신호에 대한 NT 예외의 기본 변환입니다. (GH #513)
  • `fallocate`은 공간이 부족할 때 이제 `EINVAL` 대신 `ENOSPC` 오류를 반환합니다 (GH #1571).
  • /proc/sys/kernel/sem이 추가되었습니다.
  • 구현된 semop 및 semtimedop 시스템 호출
  • IP_RECVTOS & IPV6_RECVTCLASS 소켓 옵션으로 nslookup 오류 수정(GH 69)
  • 소켓 옵션 IP_RECVTTL 및 IPV6_RECVHOPLIMIT 지원
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 709
통과하지 못한 횟수(실패, 건너뛰기 등): 255

시스템 호출 요약

총 시스템 호출: 384
총 구현: 235
총 스텁: 22
총 미구현: 127


빌드 15007

빌드 15007에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

알려진 문제

  • 콘솔에서 일부 Ctrl + <key> 입력을 인식하지 못하는 알려진 버그가 있습니다. 여기에는 일반적인 'c' 키 프레스 역할을 하는 ctrl-c 명령이 포함됩니다.

    • 해결 방법: Ctrl+C에 대체 키를 매핑합니다. 예를 들어 Ctrl+K를 Ctrl+C에 매핑하려면 stty intr \^k을(를) 사용하세요. 이 매핑은 터미널별로 수행되며 bash가 시작될 때마다 수행해야 합니다. 사용자는 .bashrc에 포함하는 옵션을 살펴볼 수 있습니다.

수정됨

  • WSL을 실행하면 CPU 코어 100개% 사용하는 문제를 해결했습니다.
  • 소켓 옵션 IP_PKTINFO 및 IPV6_RECVPKTINFO가 이제 지원됩니다. (GH #851, 987)
  • 네트워크 인터페이스 물리적 주소를 lxcore에서 16바이트로 자른다(GH #1452, 1414, 1343, 468, 308)
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 709
통과하지 못한 횟수(실패, 건너뛰기 등): 255


빌드 15002

빌드 15002에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

알려진 문제

알려진 두 가지 문제:

  • 콘솔에서 일부 Ctrl + <key> 입력을 인식하지 못하는 알려진 버그가 있습니다. 여기에는 일반적인 'c' 키 프레스 역할을 하는 ctrl-c 명령이 포함됩니다.

    • 해결 방법: Ctrl+C에 대체 키를 매핑합니다. 예를 들어 Ctrl+K를 Ctrl+C에 매핑하려면 stty intr \^k을(를) 사용하세요. 이 매핑은 터미널별로 수행되며 bash가 시작될 때마다 수행해야 합니다. 사용자는 .bashrc에 포함하는 옵션을 살펴볼 수 있습니다.
  • WSL이 실행되는 동안 시스템 스레드는 CPU 코어의 100% 사용합니다. 근본 원인이 내부적으로 해결되었습니다.

수정됨

  • 이제 모든 bash 세션을 동일한 권한 수준에서 만들어야 합니다. 다른 수준에서 세션을 시작하려고 하면 차단됩니다. 즉, 관리자 콘솔과 비관리 콘솔을 동시에 실행할 수 없습니다. (GH #626)
  • 다음 NETLINK_ROUTE 메시지 구현(Windows 관리자 필요)
    • RTM_NEWADDR(ip addr add지원)
    • RTM_NEWROUTE(ip route add지원)
    • RTM_DELADDR(ip addr del지원)
    • RTM_DELROUTE(ip route del지원)
  • 업데이트할 패키지에 대한 예약된 작업 확인은 더 이상 요금제 연결에서 실행되지 않습니다(GH #1371).
  • 배관이 막히는 오류 수정(즉, bash -c "ls -alR /" | bash -c "cat") (GH #1214)
  • 구현된 TCP_KEEPCNT 소켓 옵션(GH #843)
  • 구현된 IP_MTU_DISCOVER INET 소켓 옵션(GH #720, 717, 170, 69)
  • NT 경로 조회를 사용하여 init에서 NT 이진 파일을 실행하는 레거시 기능이 제거되었습니다. (GH #1325)
  • /dev/kmsg의 모드를 수정하여 그룹/기타에 읽기 권한을 허용하도록 설정(0644)(GH #1321)
  • 구현된 /proc/sys/kernel/random/uuid(GH #1092)
  • 프로세스 시작 시간이 2432년으로 표시된 수정된 오류(GH #974)
  • 기본 TERM 환경 변수를 xterm-256color로 전환(GH #1446)
  • 프로세스 포크 중에 프로세스 커밋이 계산되는 방식을 수정했습니다. (GH #1286)
  • /proc/sys/vm/overcommit_memory가 구현되었습니다. (GH #1286)
  • 구현된 /proc/net/route 파일(GH #69)
  • 바로 가기 이름이 잘못 지역화된 오류를 수정했습니다(GH #696).
  • 프로그램 헤더의 유효성을 잘못 검사하는 elf 구문 분석 논리가 PATH_MAX 보다 작거나 같아야 하는 수정되었습니다. (GH #1048)
  • procfs, sysfs, cgroupfs 및 binfmtfs에 대한 구현된 statfs 콜백(GH #1378)
  • 닫지 않는 AptPackageIndexUpdate 창이 수정되었습니다(GH #1184, GH #1193에서도 설명됨)
  • ASLR 성격 ADDR_NO_RANDOMIZE 지원이 추가되었습니다. (GH #1148, 1128)
  • AV(GH #875) 동안 적절한 gdb 스택 추적을 위해 PTRACE_GETSIGINFO와 SIGSEGV를 향상시켰습니다.
  • ELF 구문 분석이 더 이상 patchelf 바이너리에 실패하지 않습니다. (GH #471)
  • /etc/resolv.conf에 전파된 VPN DNS(GH #416, 1350)
  • 보다 안정적인 데이터 전송을 위해 TCP 닫기를 개선했습니다. (GH #610, 616, 1025, 1335)
  • 이제 너무 많은 파일이 열릴 때 올바른 오류 코드를 반환합니다(EMFILE). (GH #1126, 2090)
  • Windows 감사 로그는 이제 프로세스 생성 감사에서 이미지 이름을 보고합니다.
  • 이제 bash 창 내에서 bash.exe 시작할 때 정상적으로 실패합니다.
  • interop가 LxFs(예: notepad.exe .bashrc)에서 작업 디렉터리에 액세스할 수 없는 경우 오류 메시지가 추가됨
  • WSL에서 Windows 경로가 잘린 문제가 해결되었습니다.
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 690
통과하지 못한 횟수(실패, 건너뛰기 등):274


Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

shmctl
shmget
shmdt
shmat

빌드 14986

빌드 14986에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • Netlink 및 Pty IOCTL을 사용한 버그 검사 수정
  • 커널 버전은 이제 Xenial과의 일관성을 위해 4.4.0-43을 보고합니다.
  • 입력이 'nul:'(GH #1259)으로 전달될 때 Bash.exe가 실행됩니다.
  • 이제 스레드 ID가 procfs에서 올바르게 보고됨 (GH #967)
  • IN_UNMOUNT | IN_Q_OVERFLOW | IN_IGNORED | IN_ISDIR 플래그는 이제 inotify_add_watch()에서 지원됩니다(GH #1280).
  • timer_create 및 관련 시스템 호출을 구현합니다. 이를 통해 GHC 지원(GH #307)
  • ping이 0.000ms(GH #1296)의 시간을 반환하는 문제를 해결했습니다.
  • 파일을 너무 많이 열면 올바른 오류 코드를 반환합니다.
  • 인터페이스의 하드웨어 주소가 32바이트인 경우 네트워크 인터페이스 데이터에 대한 Netlink 요청이 EINVAL에서 실패하는 WSL의 문제가 해결되었습니다(예: Teredo 인터페이스).
    • Linux "ip" 유틸리티에는 WSL이 32 바이트 하드웨어 주소를 보고하는 경우 작동이 중단되는 버그가 포함되어 있습니다. WSL이 아닌 "ip"의 버그입니다. "ip" 유틸리티는 하드웨어 주소를 인쇄하는 데 사용되는 문자열 버퍼의 길이를 하드 코딩하고 해당 버퍼가 너무 작아서 32 바이트 하드웨어 주소를 인쇄할 수 없습니다.
  • 추가 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 669
통과하지 못한 횟수(실패, 건너뛰기 등): 258


Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

timer_create
timer_delete
timer_gettime
timer_settime

빌드 14971

빌드 14971에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 제어할 수 없는 상황으로 인해 이 빌드에는 Linux용 Windows 하위 시스템에 대한 업데이트가 없습니다. 정기적으로 예약된 업데이트는 다음 릴리스에서 다시 시작됩니다.

LTP 결과:

14965
통과 횟수에서 변경되지 않음: 664
통과하지 못한 횟수(실패, 건너뛰기 등)): 263


빌드 14965

빌드 14965에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • Netlink 소켓 NETLINK_ROUTE 프로토콜의 RTM_GETLINK 및 RTM_GETADDR 지원(GH #468)

    • 네트워크 열거형에 ifconfig 및 ip 명령을 사용하도록 설정합니다.
  • /sbin은 기본적으로 사용자의 경로에 있습니다.

  • 이제 기본적으로 WSL 경로에 NT 사용자 경로가 추가되었습니다(즉, 이제 Linux 경로에 System32를 추가하지 않고도 notepad.exe 입력할 수 있음).

  • /proc/sys/kernel/cap_last_cap 대한 지원이 추가됨

  • 현재 작업 디렉터리에 비 ANSI 문자가 포함된 경우 WSL에서 NT 바이너리를 실행할 수 있습니다(GH #1254).

  • 연결이 끊긴 unix 스트림 소켓에서 종료를 허용합니다.

  • PR_GET_PDEATHSIG 대한 지원이 추가되었습니다.

  • CLONE_PARENT 대한 지원이 추가되었습니다.

  • 배관이 막히는 오류 수정(즉, bash -c "ls -alR /" | bash -c "cat") (GH #1214)

  • 현재 터미널에 연결하기 위한 요청을 처리합니다.

  • /proc/<pid>/oom_score_adj 쓰기 가능으로 표시합니다.

  • /sys/fs/cgroup 폴더를 추가합니다.

  • sched_setaffinity 선호도 비트 마스크의 수를 반환해야 합니다.

  • 인터프리터 경로 길이가 64자 미만이어야 한다고 잘못 가정하는 ELF 유효성 검사 논리를 수정합니다. (GH #743)

  • 파일 설명자를 열면 콘솔 창을 열어 둘 수 있습니다(GH #1187)

  • 대상 이름(GH #1008)에서 후행 슬래시로 이름 바꾸기()가 실패한 오류를 수정했습니다.

  • /proc/net/dev 파일 구현

  • 타이머 해상도로 인해 0.000ms 핑 지연 문제가 해결되었습니다.

  • /proc/self/environ이 구현되었습니다 (GH #730)

  • 추가 버그 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 664
통과하지 못한 횟수(실패, 건너뛰기 등): 263


빌드 14959

빌드 14959에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • Windows용 Pico 프로세스 알림이 향상되었습니다. WSL 블로그에서 추가 정보를 찾았습니다.
  • Windows 상호 운용성으로 안정성 향상
  • EDP(Enterprise Data Protection)를 사용할 때 bash.exe 시작할 때 오류 0x80070057 수정됨
  • 추가 버그 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 665
통과하지 못한 횟수(실패, 건너뛰기 등):263


빌드 14955

빌드 14955에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 제어할 수 없는 상황으로 인해 이 빌드에는 Linux용 Windows 하위 시스템에 대한 업데이트가 없습니다. 정기적으로 예약된 업데이트는 다음 릴리스에서 다시 시작됩니다.

LTP 결과:

통과 테스트 수: 665
통과하지 못한 횟수(실패, 건너뛰기 등):263


빌드 14951

빌드 14951에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

새 기능: Windows/Ubuntu 상호 운용성

이제 WSL 명령줄에서 직접 Windows 이진 파일을 호출할 수 있습니다. 이를 통해 사용자는 불가능했던 방식으로 Windows 환경 및 시스템과 상호 작용할 수 있습니다. 빠른 예제로 이제 사용자가 다음 명령을 실행할 수 있습니다.

$ export PATH=$PATH:/mnt/c/Windows/System32
$ notepad.exe
$ ipconfig.exe | grep IPv4 | cut -d: -f2
$ ls -la | findstr.exe foo.txt
$ cmd.exe /c dir

자세한 내용은 다음에서 확인할 수 있습니다.

수정됨

  • 이제 모든 새 WSL 인스턴스에 대해 Ubuntu 16.04(Xenial)가 설치되었습니다. 기존 14.04(신뢰할 수 있는) 인스턴스가 있는 사용자는 자동으로 업그레이드되지 않습니다.
  • 설치 중에 설정된 로캘이 이제 표시됩니다.
  • WSL 프로세스를 파일로 리디렉션하는 것이 항상 작동하지 않는 버그를 포함한 터미널 개선 사항
  • 콘솔 수명은 bash.exe 수명에 연결되어야 합니다.
  • 콘솔 창 크기는 버퍼 크기가 아닌 표시되는 크기를 사용해야 합니다.
  • 추가 버그 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 665
통과하지 못한 횟수(실패, 건너뛰기 등):263


빌드 14946

빌드 14946에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 공백 또는 따옴표를 포함하는 NT 사용자 이름을 가진 사용자에 대한 WSL 사용자 계정을 만들지 못하는 문제를 해결했습니다.

  • 통계에서 디렉터리의 링크 수에 대해 0을 반환하도록 VolF 및 DrvF를 변경합니다.

  • IPV6_MULTICAST_HOPS 소켓 옵션을 지원합니다.

  • tty당 단일 콘솔 I/O 루프로 제한합니다. 예: 다음 명령을 사용할 수 있습니다.

    • bash -c "echo data" | bash -c "ssh user@example.com 'cat > foo.txt'"
  • 공백을 /proc/cpuinfo의 탭으로 바꾸기(GH #1115)

  • 이제 탑재된 Windows 볼륨과 일치하는 이름으로 mountinfo에 DrvF가 표시됩니다.

  • /home 및 /root가 이제 올바른 이름을 가진 mountinfo에 표시됩니다.

  • 추가 버그 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 665
통과하지 못한 횟수(실패, 건너뛰기 등):263


빌드 14942

빌드 14942에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • SSH를 차단하는 "NOEXECUTE MEMORY의 시도된 실행" 네트워킹 충돌을 포함하여 많은 버그 검사가 해결되었습니다.
  • DrvFs의 Windows 애플리케이션에서 생성된 알림에 대한 inotify 지원은 이제 에 있습니다.
  • mongod에 대한 TCP_KEEPIDLE 및 TCP_KEEPINTVL 구현합니다. (GH #695)
  • pivot_root 시스템 호출 구현
  • SO_DONTROUTE 소켓 옵션 구현
  • 추가 버그 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 665
통과하지 못한 횟수(실패, 건너뛰기 등):263

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

pivot_root

빌드 14936

빌드 14936에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

참고: WSL은 예정된 릴리스에서 Ubuntu 14.04(Trusty) 대신 Ubuntu 버전 16.04(Xenial)를 설치합니다. 이 변경 내용은 인사이더 프로그램에 참여하는 사용자가 새 인스턴스를 설치하거나(lxrun.exe /install 또는 첫 실행 시 bash.exe) 할 때 적용됩니다. Trusty를 사용하는 기존 인스턴스는 자동으로 업그레이드되지 않습니다. 사용자는 do-release-upgrade 명령을 사용하여 신뢰할 수 있는 이미지를 Xenial로 업그레이드할 수 있습니다.

알려진 문제

WSL에서 일부 소켓 구현에 문제가 발생했습니다. 버그 확인은 "NOEXECUTE MEMORY를 실행하려고 시도함" 오류로 인해 크래시로 나타납니다. 이 문제의 가장 일반적인 징후는 ssh를 사용할 때 발생하는 크래시입니다. 근본적인 원인은 내부 빌드에서 해결되었으며, 가능한 한 빠르게 인사이더 프리뷰 사용자들에게 푸시됩니다.

수정됨

  • chroot 시스템 호출 구현
  • inotify 개선 사항에는 DrvFs의 Windows 애플리케이션에서 생성된 알림에 대한 지원이 포함됩니다.
    • 수정: 현재 Windows 애플리케이션에서 발생한 변경 내용에 대해 Inotify의 지원이 제공되지 않습니다.
  • IPV6::<port n> 소켓 바인딩은 이제 IPV6_V6ONLY 지원합니다(GH #68, #157, #393, #460, #674, #740, #982, #996)
  • 구현된 waitid systemcall에 대한 WNOWAIT 동작(GH #638)
  • IP 소켓 옵션 IP_HDRINCL 및 IP_TTL 지원
  • 길이가 0인 read()는 즉시 반환되어야 합니다(GH #975)
  • .tar 파일에 NULL 종결자를 포함하지 않는 파일 이름 및 파일 이름 접두사를 올바르게 처리합니다.
  • /dev/null에 대한 epoll 지원
  • /dev/alarm 시간 소스 수정
  • 이제 Bash -c 파일로 리디렉션할 수 있습니다.
  • 추가 버그 수정 및 개선 사항

LTP 결과:

통과 테스트 수: 664
통과하지 못한 횟수(실패, 건너뛰기 등):264

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

chroot

빌드 14931

빌드 14931에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 제어할 수 없는 상황으로 인해 이 빌드에는 Linux용 Windows 하위 시스템에 대한 업데이트가 없습니다. 정기적으로 예약된 업데이트는 다음 릴리스에서 다시 시작됩니다.

빌드 14926

빌드 14926에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • Ping은 이제 관리자 권한이 없는 콘솔에서 작동합니다.
  • Ping6은 이제 관리자 권한 없이 지원됩니다.
  • WSL을 통해 수정된 파일에 대한 inotify 지원. (GH #216)
    • 지원되는 플래그:
      • inotify_init1: LX_O_CLOEXEC, LX_O_NONBLOCK
      • inotify_add_watch 이벤트: LX_IN_ACCESS, LX_IN_MODIFY, LX_IN_ATTRIB, LX_IN_CLOSE_WRITE, LX_IN_CLOSE_NOWRITE, LX_IN_OPEN, LX_IN_MOVED_FROM, LX_IN_MOVED_TO, LX_IN_CREATE, LX_IN_DELETE, LX_IN_DELETE_SELF, LX_IN_MOVE_SELF
      • inotify_add_watch 특성: LX_IN_DONT_FOLLOW, LX_IN_EXCL_UNLINK, LX_IN_MASK_ADD, LX_IN_ONESHOT, LX_IN_ONLYDIR
      • 출력 읽기: LX_IN_ISDIR, LX_IN_IGNORED
    • 알려진 문제: Windows 애플리케이션에서 파일을 수정해도 이벤트가 생성되지 않습니다.
  • Unix 소켓은 이제 SCM_CREDENTIALS 지원합니다.

LTP 결과:

통과 테스트 수: 651
통과하지 못한 횟수(실패, 건너뛰기 등): 258


빌드 14915

빌드 14915에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • unix 데이터그램 소켓용 소켓 쌍 (GH #262)
  • SO_REUSEADDR 대한 Unix 소켓 지원
  • SO_BROADCAST 대한 UNIX 소켓 지원(GH #568)
  • SOCK_SEQPACKET 대한 Unix 소켓 지원(GH #758, #546)
  • unix 데이터그램 소켓 전송, 수신 및 종료에 대한 지원 추가
  • 비고정 주소에 대한 잘못된 mmap 매개 변수 유효성 검사로 인한 버그 검사를 수정합니다. (GH #847)
  • 터미널 상태의 일시 중단/재개 지원
  • 화면 유틸리티 차단을 해제하는 TIOCPKT ioctl 지원(GH #774)
    • 알려진 문제: 함수 키가 작동하지 않음
  • TimerFd에서 LxpTimerFdWorkerRoutine(GH #814)이 해제된 멤버 'ReaderReady'에 접근할 수 있었던 경합 상태를 수정했습니다.
  • futex, poll 및 clock_nanosleep 대해 다시 시작할 수 있는 시스템 호출 지원을 사용하도록 설정합니다.
  • 바인드 마운트 지원 추가
  • 탑재 네임스페이스 지원을 위한 공유 해제
    • 알려진 문제: unshare(CLONE_NEWNS) 사용하여 새 탑재 네임스페이스를 만들 때 현재 작업 디렉터리가 이전 네임스페이스를 계속 가리킵니다.
  • 추가 개선 사항 및 버그 수정

빌드 14905

빌드 14905에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 다시 시작 가능한 시스템 호출이 지원됩니다(GH #349, GH #520)
  • 현재 /로 끝나는 디렉터리에 대한 심링크가 작동합니다 (GH #650)
  • /dev/random에 대한 RNDGETENTCNT ioctl 구현
  • /proc/[pid]/mounts, /proc/[pid]/mountinfo 및 /proc/[pid]/mountstats 파일을 구현했습니다.
  • 추가 버그 수정 및 개선 사항

빌드 14901

Windows 10 1주년 업데이트 릴리스에 대한 첫 번째 참가자 빌드입니다.

빌드 14901에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 후행 슬래시 문제 수정함
    • 이제 $ mv a/c/ a/b/ 같은 명령이 작동합니다.
  • 이제 설치하면 Ubuntu 로캘을 Windows 로캘로 설정해야 하는지 묻는 메시지가 표시됩니다.
  • ns 폴더에 대한 Procfs 지원
  • tmpfs, procfs 및 sysfs 파일 시스템에 대한 탑재 및 분리가 추가됨
  • mknod[at] 32비트 ABI 서명 수정
  • 디스패치 모델로 이동된 Unix 소켓
  • setsockopt를 사용하여 설정된 INET 소켓 수신 버퍼 크기를 존중해야 합니다.
  • MSG_CMSG_CLOEXEC unix 소켓 수신 메시지 플래그 구현
  • Linux 프로세스 표준 입력/표준 출력 파이프 리디렉션 (GH #2)
    • CMD에서 bash -c 명령을 파이핑하는 것이 가능합니다. 예: >dir | bash -c "grep foo"
  • 이제 여러 페이지 파일이 있는 시스템에 Bash를 설치할 수 있습니다(GH #538, #358)
  • 기본 INET 소켓 버퍼 크기는 기본 Ubuntu 설정과 일치해야 합니다.
  • xattr syscall을 listxattr에 정렬
  • SIOCGIFCONF에서 유효한 IPv4 주소가 있는 인터페이스만 반환합니다.
  • ptrace에 의해 삽입될 때 신호 기본 동작 수정
  • /proc/sys/vm/min_free_kbytes를 구현합니다.
  • sigreturn에서 컨텍스트를 복원할 때 컴퓨터 컨텍스트 레지스터 값 사용
    • 이렇게 하면 일부 사용자에게 Java 및 javac가 매달려 있는 문제가 해결됩니다.
  • /proc/sys/kernel/hostname 구현하기

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

waitid
epoll_pwait


Windows 10 1주년 업데이트에 빌드 14388

빌드 14388에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 8/2의 Windows 10 1주년 업데이트 준비 수정
    • 1주년 업데이트의 WSL에 대한 자세한 내용은 블로그

빌드 14376

빌드 14376에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • apt-get이 중단되는 일부 인스턴스가 제거됨(GH #493)
  • 빈 탑재가 올바르게 처리되지 않는 문제를 해결했습니다.
  • ramdisk가 올바르게 탑재되지 않은 문제를 해결했습니다.
  • 플래그를 지원하도록 unix 소켓 수락 변경(부분 GH #451)
  • 일반적인 네트워크 관련 블루스크린이 수정되었습니다.
  • /proc/[pid]/task에 액세스할 때 파란색 화면이 수정됨(GH #523)
  • 일부 pty 시나리오에 대한 높은 CPU 사용률 수정(GH #488, #504)
  • 추가 버그 수정 및 개선 사항

빌드 14371

빌드 14371에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • ptrace를 사용할 때 SIGCHLD 및 wait()와 관련된 타이밍 경쟁 조건을 수정함
  • 경로에 후행/(GH #432)가 있을 때 일부 동작이 수정되었습니다.
  • 자식에 대해 열려 있는 핸들로 인해 이름 변경 또는 연결 끊기 작업이 실패하는 문제를 해결했습니다.
  • 추가 버그 수정 및 개선 사항

빌드 14366

빌드 14366에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • symlinks로 파일 생성 문제 수정
  • Python용 listxattr 추가(GH 385)
  • 추가 버그 수정 및 개선 사항

Syscall 지원

  • 다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

listxattr

빌드 14361

빌드 14361에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 이제 DrvF는 Windows의 Ubuntu에서 Bash에서 실행할 때 대/소문자를 구분합니다.
    • 사용자는 /mnt/c 드라이브에서 case.txt 및 CASE.TXT을(를) 사용할 수 있습니다.
    • 대/소문자 구분은 Windows의 Ubuntu에서 Bash 내에서만 지원됩니다. Bash NTFS 외부에서 파일을 올바르게 보고하지만 Windows의 파일과 상호 작용하는 예기치 않은 동작이 발생할 수 있습니다.
    • 각 볼륨의 루트(예: /mnt/c)는 대/소문자를 구분하지 않습니다.
    • Windows에서 이러한 파일을 처리하는 방법에 대한 자세한 내용은 여기에서찾을 수 있습니다.
  • pty/tty 지원이 크게 향상되었습니다. TMUX와 같은 애플리케이션이 이제 지원됨(GH #40)
  • 사용자 계정이 항상 만들어지지 않는 설치 문제가 해결됨
  • 매우 긴 인수 목록을 허용하는 최적화된 명령줄 인수 구조입니다. (GH #153)
  • 이제 DrvFs에서 read_only 파일을 삭제하고 chmod할 수 있습니다.
  • 터미널이 연결을 해제할 때 멈추는 일부 인스턴스가 수정됨(GH #43)
  • chmod 및 chown은 이제 tty 장치에서 작동합니다.
  • 0.0.0.0 및 :: localhost로 연결 허용(GH #388)
  • Sendmsg/recvmsg는 이제 >1의 IO 벡터 길이를 처리합니다(부분 GH #376).
  • 이제 사용자는 자동 생성된 호스트 파일(GH #398)을 옵트아웃할 수 있습니다.
  • 설치 중에 Linux 로캘을 NT 로캘에 자동으로 일치(GH #11)
  • /proc/sys/vm/swappiness 파일 추가(GH #306)
  • 이제 strace가 올바르게 종료됩니다.
  • /proc/self/fd를 통해 파이프를 다시 열 수 있도록 허용(GH #222)
  • DrvFs에서 %LOCALAPPDATA%\lxss 아래의 디렉터리 숨기기(GH #270)
  • bash.exe ~의 처리 향상. 이제 "bash ~ -c ls"과 같은 명령이 지원됩니다(GH #467)
  • 이제 소켓이 종료 중에 사용 가능한 epoll 읽기를 알립니다(GH #271)
  • lxrun /uninstall은 파일 및 폴더를 삭제하는 더 나은 작업을 수행합니다.
  • 수정된 ps -f(GH #246)
  • xEmacs(GH #481)와 같은 x11 앱에 대한 지원 향상
  • 기본 Ubuntu 설정과 일치하도록 초기 스레드 스택 크기를 업데이트하고 크기를 get_rlimit syscall에 올바르게 보고(GH #172, #258)
  • pico 프로세스 이미지 이름 보고 개선(예: 감사용)
  • df 명령에 대한 /proc/mountinfo 구현
  • 자식 이름에 대한 symlink 오류 코드가 수정되었습니다. 그리고..
  • 추가 개선 버그 수정 및 개선 사항

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

GETTIMER
MKNODAT
RENAMEAT
SENDFILE
SENDFILE64
SYNC_FILE_RANGE

빌드 14352

빌드 14352에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • 대용량 파일이 제대로 다운로드/생성되지 않은 문제가 해결되었습니다. npm 및 기타 시나리오(GH #3, GH #313)의 차단을 해제해야 합니다.
  • 소켓이 중단되는 일부 인스턴스가 제거됨
  • 일부 ptrace 오류를 수정했습니다.
  • 255자보다 긴 파일 이름을 허용하는 WSL 문제 해결
  • 영어가 아닌 문자에 대한 지원 향상
  • 현재 Windows 표준 시간대 데이터 추가 및 기본값으로 설정
  • 각 탑재 지점에 대한 고유 디바이스 ID(jre 수정 – GH #49)
  • "." 및 "."을 포함하는 경로와 관련된 문제를 수정합니다.
  • Fifo 지원 추가(GH #71)
  • 네이티브 Ubuntu 형식과 일치하도록 resolv.conf의 형식이 업데이트됨
  • 일부 절차 정리
  • 관리자 콘솔에서 ping 기능 활성화(GH #18)

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

FALLOCATE
EXECVE
LGETXATTR
FGETXATTR

빌드 14342

빌드 14342에 대한 일반적인 Windows 정보는 Windows 블로그.

VolF 및 DriveF에 대한 정보는 WSL 블로그에서 찾을 수 있습니다.

수정됨

  • Windows 사용자에게 사용자 이름에 유니코드 문자가 있는 경우의 설치 문제가 해결되었습니다.
  • FAQ의 apt-get 업데이트 udev 해결 방법은 이제 첫 번째 실행 시 기본적으로 제공됩니다.
  • DriveFs(/mnt/<drive>) 디렉터리에서 symlink 사용
  • 이제 Symlink가 DriveF와 VolF 간에 작동합니다.
  • 해결된 최상위 경로 구문 분석 문제: ls .// 이제 예상대로 작동합니다.
  • 이제 DriveFs에 npm 설치 및 -g 옵션이 작동합니다.
  • PHP 서버가 시작되지 않도록 하는 문제를 해결했습니다.
  • 네이티브 Ubuntu와 더 가깝게 일치하도록 $PATH 같은 기본 환경 값이 업데이트됨
  • apt 패키지 캐시를 업데이트하기 위한 주간 유지 관리 작업이 Windows에 추가됨
  • ELF 헤더 유효성 검사와 관련된 문제가 해결되었습니다. 이제 WSL은 모든 Melkor 옵션을 지원합니다.
  • Zsh 셸이 작동합니다.
  • 이제 미리 컴파일된 Go 이진 파일이 지원됩니다.
  • Bash.exe 첫 번째 실행 시 나타나는 메시지가 올바르게 지역화되었습니다.
  • /proc/meminfo가 이제 올바른 정보를 반환합니다.
  • 이제 VFS에서 지원되는 소켓
  • /dev가 이제 tempfs로 탑재됨
  • 이제 Fifo가 지원됨
  • 이제 /proc/cpuinfo에 올바르게 표시되는 다중 코어 시스템
  • 처음 실행하는 동안 다운로드하는 추가 개선 사항 및 오류 메시지
  • Syscall 개선 사항 및 버그 수정 아래의 지원되는 syscall 목록입니다.
  • 추가 버그 수정 및 개선 사항

알려진 문제

  • '.'을(를) 해결하지 않습니다. 경우에 따라 DriveFs에서 올바르게 작동함

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새로운 또는 향상된 syscall 목록입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

FCHOWNAT
GETEUID
GETGID
GETRESUID
GETXATTR
PTRACE
SETGID
SETGROUPS
SETHOSTNAME
SETXATTR

빌드 14332

빌드 14332에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

수정됨

  • DNS 항목의 우선 순위 지정을 포함하여 resolv.conf 생성 개선
  • /mnt 드라이브와 비/mnt 드라이브 간에 파일 및 디렉터리 이동과 관련된 문제
  • 이제 symlinks를 사용하여 Tar 파일을 만들 수 있습니다.
  • 인스턴스를 만들 때 기본 /run/lock 디렉터리가 추가됨
  • 적절한 통계 정보를 반환하도록 /dev/null 업데이트
  • 처음 실행하는 동안 다운로드할 때 추가 오류 발생
  • Syscall 개선 사항 및 버그 수정 아래의 지원되는 syscall 목록입니다.
  • 추가 개선 버그 수정 및 개선 사항

Syscall 지원

다음은 WSL에서 일부 구현이 있는 새 syscall입니다. 이 목록의 syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

READLINKAT

빌드 14328

빌드 14332에 대한 일반적인 Windows 정보는 Windows 블로그방문하세요.

새 기능

  • 이제 Linux 사용자를 지원합니다. Windows에서 Ubuntu에 Bash를 설치하면 Linux 사용자를 만들라는 메시지가 표시됩니다. 자세한 내용은 https://aka.ms/wslusers 방문하세요.
  • 이제 호스트네임이 Windows 컴퓨터 이름으로 설정되며 더 이상 @localhost가 아닙니다.
  • 빌드 14328에 대한 자세한 내용은 다음을 참조하세요. https://aka.ms/wip14328

수정됨

  • /mnt/<drive> 파일에 대한 Symlink 개선 사항
    • 이제 npm 설치가 작동합니다.
    • jdk / jre는 이제 여기에서 찾은 지침을 사용하여설치할 수 있습니다.
    • 알려진 문제: Windows 탑재에 대해 symlinks가 작동하지 않습니다. 기능은 이후 빌드에서 사용할 수 있습니다.
  • 이제 top과 htop이 표시됩니다.
  • 일부 설치 실패에 대한 추가 오류 메시지
  • Syscall 개선 사항 및 버그 수정 아래의 지원되는 syscall 목록입니다.
  • 추가 개선 버그 수정 및 개선 사항

Syscall 지원

다음은 WSL에서 일부 구현이 있는 syscall 목록입니다. 이 목록의 Syscall은 하나 이상의 시나리오에서 지원되지만 현재는 모든 매개 변수가 지원되지 않을 수 있습니다.

ACCEPT
ACCEPT4
ACCESS
ALARM
ARCH_PRCTL
BIND
BRK
CAPGET
CAPSET
CHDIR
CHMOD
CHOWN
CLOCK_GETRES
CLOCK_GETTIME
CLOCK_NANOSLEEP
CLONE
CLOSE
CONNECT
CREAT
DUP
DUP2
DUP3
EPOLL_CREATE
EPOLL_CREATE1
EPOLL_CTL
EPOLL_WAIT
EVENTFD
EVENTFD2
EXECVE
EXIT
EXIT_GROUP
FACCESSAT
FADVISE64
FCHDIR
FCHMOD
FCHMODAT
FCHOWN
FCHOWNAT
FCNTL64
FDATASYNC
FLOCK
FORK
FSETXATTR
FSTAT64
FSTATAT64
FSTATFS64
FSYNC
FTRUNCATE
FTRUNCATE64
FUTEX
GETCPU
GETCWD
GETDENTS
GETDENTS64
GETEGID
GETEGID16
GETEUID
GETEUID16
GETGID
GETGID16
GETGROUPS
GETPEERNAME
GETPGID
GETPGRP
GETPID
GETPPID
GETPRIORITY
GETRESGID
GETRESGID16
GETRESUID
GETRESUID16
GETRLIMIT
GETRUSAGE
GETSID
GETSOCKNAME
GETSOCKOPT
GETTID
GETTIMEOFDAY
GETUID
GETUID16
GETXATTR
GET_ROBUST_LIST
GET_THREAD_AREA
INOTIFY_ADD_WATCH
INOTIFY_INIT
INOTIFY_RM_WATCH
IOCTL
IOPRIO_GET
IOPRIO_SET
KEYCTL
KILL
LCHOWN
LINK
LINKAT
LISTEN
LLSEEK
LSEEK
LSTAT64
MADVISE
MKDIR
MKDIRAT
MKNOD
MLOCK
MMAP
MMAP2
MOUNT
MPROTECT
MREMAP
MSYNC
MUNLOCK
MUNMAP
NANOSLEEP
NEWUNAME
OPEN
OPENAT
PAUSE
PERF_EVENT_OPEN
PERSONALITY
PIPE
PIPE2
POLL
PPOLL
PRCTL
PREAD64
PROCESS_VM_READV
PROCESS_VM_WRITEV
PSELECT6
PTRACE
PWRITE64
READ
READLINK
READV
REBOOT
RECV
RECVFROM
RECVMSG
RENAME
RMDIR
RT_SIGACTION
RT_SIGPENDING
RT_SIGPROCMASK
RT_SIGRETURN
RT_SIGSUSPEND
RT_SIGTIMEDWAIT
SCHED_GETAFFINITY
SCHED_GETPARAM
SCHED_GETSCHEDULER
SCHED_GET_PRIORITY_MAX
SCHED_GET_PRIORITY_MIN
SCHED_SETAFFINITY
SCHED_SETPARAM
SCHED_SETSCHEDULER
SCHED_YIELD
SELECT
SEND
SENDMMSG
SENDMSG
SENDTO
SETDOMAINNAME
SETGID
SETGROUPS
SETHOSTNAME
SETITIMER
SETPGID
SETPRIORITY
SETREGID
SETRESGID
SETRESUID
SETREUID
SETRLIMIT
SETSID
SETSOCKOPT
SETTIMEOFDAY
SETUID
SETXATTR
SET_ROBUST_LIST
SET_THREAD_AREA
SET_TID_ADDRESS
SHUTDOWN
SIGACTION
SIGALTSTACK
SIGPENDING
SIGPROCMASK
SIGRETURN
SIGSUSPEND
SOCKET
SOCKETCALL
SOCKETPAIR
SPLICE
STAT64
STATFS64
SYMLINK
SYMLINKAT
SYNC
SYSINFO
TEE
TGKILL
TIME
TIMERFD_CREATE
TIMERFD_GETTIME
TIMERFD_SETTIME
TIMES
TKILL
TRUNCATE
TRUNCATE64
UMASK
UMOUNT
UMOUNT2
UNLINK
UNLINKAT
UNSHARE
UTIME
UTIMENSAT
UTIMES
VFORK
WAIT4
WAITPID
WRITE
WRITEV