-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathfile-move-select.txt
More file actions
51 lines (39 loc) · 2.92 KB
/
file-move-select.txt
File metadata and controls
51 lines (39 loc) · 2.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
$username="user"
$ip="ip"
ssh ${username}@${ip} "mkdir -p ~/wsl/drivers; mkdir -p ~/wsl/lib;"
# Get available driver folders
$drivers = (Get-CimInstance -ClassName Win32_VideoController -Property *).InstalledDisplayDrivers | Select-String "C:\\Windows\\System32\\DriverStore\\FileRepository\\[a-zA-Z0-9\\._]+\\" | ForEach-Object { $_.Matches.Value.Substring(0, $_.Matches.Value.Length-1)
}
# Display available driver folders
Write-Host "Available driver folders:"
$drivers | ForEach-Object { Write-Host ($_ + " " + ($drivers.IndexOf($_) + 1)) }
# Prompt the user to select driver folders
$selectedIndices = Read-Host "Enter the indices of the driver folders you want to transfer, separated by commas (e.g., 1,3,5)"
$selectedIndicesArray = $selectedIndices -split ',' | ForEach-Object { $_.Trim() -as [int] }
# Transfer selected driver folders
$selectedIndicesArray | ForEach-Object {
$index = $_ - 1
if ($index -ge 0 -and $index -lt $drivers.Count) {
$selectedDriver = $drivers[$index]
scp -r $selectedDriver ${username}@${ip}:~/wsl/drivers/
}
}
echo "Driver files moved to guest, now configuring files for use by dxkg kernel module"
# Configure driver files moved to guest so they can be used by WSL kernel module.
scp -r "C:\Program Files\WSL\lib" ${username}@${ip}:~/wsl/ ;
ssh ${username}@${ip} "sudo -S cp ~/wsl/drivers/nv_dispi.inf_amd64_adf5a840df867035/nvidia-smi ~/wsl/lib/." ;
ssh ${username}@${ip} "sudo -S cp ~/wsl/drivers/nv_dispi.inf_amd64_adf5a840df867035/*.so* ~/wsl/lib/." ;
ssh ${username}@${ip} "sudo -S chmod -R 555 ~/wsl" ;
ssh ${username}@${ip} "sudo -S chown -R root:root ~/wsl" ;
ssh ${username}@${ip} "sudo -S mkdir -p $(echo /usr/lib/wsl/drivers/)" ;
ssh ${username}@${ip} "sudo -S mkdir -p $(echo /usr/lib/wsl/lib/)" ;
ssh ${username}@${ip} "sudo -S mv ~/wsl/lib/* /usr/lib/wsl/lib;sudo -S ln -s /usr/lib/wsl/lib/libd3d12core.so /usr/lib/wsl/lib/libD3D12Core.so;sudo -S mv ~/wsl/drivers/* /usr/lib/wsl/drivers" ;
ssh ${username}@${ip} "sudo -S ln -s /usr/lib/wsl/lib/libcuda.so.1.1 /usr/lib/wsl/lib/libcuda.so.1;sudo -S ln -s /usr/lib/wsl/lib/libcuda.so.1 /usr/lib/wsl/lib/libcuda.so;sudo -S ln -s /usr/lib/wsl/lib/libnvoptix_loader.so.1 /usr/lib/wsl/lib/libnvoptix.so.1" ;
ssh ${username}@${ip} "sudo -S echo '/usr/lib/wsl/lib' | sudo -S tee '/etc/ld.so.conf.d/ld.wsl.conf'" ;
ssh ${username}@${ip} "sudo -S mv /usr/lib/wsl/lib/libnvidia-ml.so.1 /usr/lib/wsl/lib/libnvidia-ml.so.1.1" ;
ssh ${username}@${ip} "sudo -S ln -s /usr/lib/wsl/lib/libnvidia-ml.so.1.1 /usr/lib/wsl/lib/libnvidia-ml.so.1" ;
ssh ${username}@${ip} "sudo -S ln -s /usr/lib/wsl/lib/libnvidia-ml.so.1 /usr/lib/wsl/lib/libnvidia-ml.so" ;
ssh ${username}@${ip} "sudo -S ldconfig" ;
ssh ${username}@${ip} "sudo -S echo "'export PATH=$PATH:/usr/lib/wsl/lib'" | sudo -S tee '/etc/profile.d/wsl.sh'" ;
ssh ${username}@${ip} "sudo -S chmod +x /etc/profile.d/wsl.sh" ;
echo "file configuration complete please proceed to begin compiling kernel module"