欧美vvv,亚洲第一成人在线,亚洲成人欧美日韩在线观看,日本猛少妇猛色XXXXX猛叫

新聞資訊

    今天抽時間折騰了一套無盤的 win10,簡單來講,使用 ipxe 網絡啟動,將 win10 安裝到網絡的 iscsi 硬盤(存在服務器上的單獨文件)中,然后正常啟動。這中間主要使用的幾個軟件工具及作用如下:

    1. tftpd(必須) tftp 的服務器,網絡啟動必備。openwrt 的路由器的 dnsmasq 可以提供這個功能。不過,因為我后續還要有 web 服務和共享服務,還有 iscsi target 的服務,都是在虛擬機中,不想在路由器上大動干戈
    2. web(可選) tftp 的傳輸方式太慢了,還是 http/https 的比較快,所以就弄了一個這個
    3. samba(windows 安裝必須) windows 安裝的時候,必須使用默認的安裝程序安裝,不能使用 pe 的方式安裝,pe 的方式安裝的時候會少驅動,導致啟動后,因為沒有網絡 iscsi 設備而藍屏,并提示啟動設備有問題
    4. tgt(iscsi 共享存儲服務)或其他等效的我用的是 ubuntu 來做上面的服務器,在 ubuntu 上很簡單,直接 apt install tgt 就可以了。
    5. netboot.xyz(或者其他的 ipxe,或者自己編譯) 沒有其他的原因,正好我一直在用 netboot.xyz 作為網絡啟動的管理,而且手邊有 netboot.xyz 的源代碼,編譯又省事,所以就用它了

    我用的 virtualbox 進行的測試,virtualbox 中創建了 openwrt,ubuntu, wins 三個虛擬機。并且在同一個內網中。openwrt 用來做網關和提供 dhcp 服務,因此需要雙網卡。ubutu 我為了主機訪問文件方便,也弄了個雙網卡。具體的使用和配置可以從網上搜索。wins 配置從網絡啟動,不添加硬盤,不從 uefi 啟動。

    準備工作

    openwrt 中的配置(可選)

    因為我的 openwrt 僅僅提供基本的網絡服務,因此其他的服務都是在 ubuntu 這個系統中的,包括 tftpd 服務,因此需要將 tftpd 的訪問信息攔截并轉發到 ubuntu 中。dnsmasq YYDS!!。在/etc/dnsmasq.conf 中添加下面的內容


    dhcp-option-force=211,60i #這個好像是設置超時的
    dhcp-option=option:tftp-server,192.168.1.127 #這個設置真實的tftp服務器的,這個ip就是ubuntu系統在內網中的服務器,不能跨網段,本文中調到的這個ip需要換成實際的
    
    dhcp-boot=ipxe/netboot.xyz.kpxe,192.168.1.127,192.168.1.127 #這個是bios方式的ipx啟動文件,后面的是tftp服務對應的域名和ip
    
    dhcp-match=set:efi-x86_64,option:client-arch,7 #這兩行是efi啟動方式,我沒有測試過
    dhcp-boot=tag:efi-x86_64,ipxe/netboot.xyz.efi,192.168.1.127
    

    ubuntu 系統(可選)

    下面這些其實都可以扔到 openwrt 中,只是我沒有想著擴充 openwrt,好像硬盤只有 1G 還是多少的。ubuntu 系統安裝 docker, tgt。


    apt-get -y remove docker docker-engine docker.io containerd runc
        apt-get -y update
        apt-get -y install ca-certificates curl gnupg lsb-release tgt
    
        curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor  -o /usr/share/keyrings/docker-archive-keyring.gpg
        echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
        apt-get update -y
        apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
        #普通用戶想要執行docker命令可以在普通用戶權限下運行這個添加權限
        #sudo usermod -aG docker $USER
    

    ipxe 等服務的 docker 啟動配置


    version: '3'
    services:
      tftp:
        image: pghalliday/tftp
        restart: always
        volumes:
        - ./buildout/buildout:/var/tftpboot:rw
        ports:
        - "69:69/udp"
        - "69:69/tcp"
        logging:
          driver: "json-file"
      samba:
        image: andyzhangx/samba:win-fix
        command:  "-r -w WORKGROUP -s \"share;/share;yes;no;yes;all;all\" "
        restart: always
        environment:
        - TZ=CST6CDT
        - NMBD=true
        - FILEMASK=0777
        - DIRECTORYMASK=0777
        - FORCEGROUP=root
        - FORCEUSER=root
        - USERID=0
        - GROUPID=0
        volumes:
        - /data:/share #/data中的目錄將被顯示在共享文件的share中
        ports:
        - "139:139"
        - "445:445"
        logging:
          driver: "json-file"
      web:
        image: nginx:alpine
        restart: always
        ports:
        - "80:80"
        volumes:
        - ./buildout:/var/www/html:rw
        - /data:/var/www/html/buildout/iso:rw
        - ./nginx-site.conf:/etc/nginx/conf.d/default.conf:rw
        logging:
          driver: "json-file"
    

    配置中的 nginx 的配置文件:


    server {
    listen       80;
    server_name  localhost;
    
    root /var/www/html/buildout;
    index index.php index.html index.htm;
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    client_max_body_size    512m;
    client_body_buffer_size 512m;
    autoindex on;
    location / {
    try_files $uri $uri/ /index.html;
    }
    }
    

    netboot.xyz 構建(ipxe 必須)

    roles/netbootxyz/files/ipxe/local/general.h 中添加如下配置,開啟 sanboot 相關功能


    #define PXE_STACK               /* PXE stack in iPXE - you want this! */
    #define PXE_MENU                /* PXE menu booting */
    #define DOWNLOAD_PROTO_NFS      /* Network File System Protocol */
    #define SANBOOT_PROTO_ISCSI     /* iSCSI protocol */
    #define SANBOOT_PROTO_AOE       /* AoE protocol */
    #define SANBOOT_PROTO_IB_SRP    /* Infiniband SCSI RDMA protocol */
    #define SANBOOT_PROTO_FCP       /* Fibre Channel protocol */
    #define SANBOOT_PROTO_HTTP      /* HTTP SAN protocol */
    #define PXE_CMD         /* PXE commands */
    

    user_overrides.yml 中修改相關配置:


    boot_domain: 192.168.1.127
    bootloader_http_enabled: true
    

    我寫了個小腳本來進行 netbootxyz 的編譯:


    #!/bin/bash
    cd netboot.xyz
    docker build -t localbuild -f Dockerfile .
    docker run --rm -it -v $(pwd)/../buildout:/buildout localbuild
    

    netbootxyz 構建出的 menu.ipxe 中添加下面的內容(我的在 buildout 目錄中):


    #item --gap Default: 這行下面添加
    item win10_boot ${space} win10_64_boot
    item win10_install ${space} win10_64_install
    
    #下面的添加到最后
    :win10_boot
    echo "boot win10 from iscsi"
    set keep-san 1
    #ip地址需要注意,對于默認的tgt來說,iqn之前的冒號前有個1
    sanboot iscsi:192.168.1.127:::1:iqn.rix.test.win:win10 || goto mainmenu
    
    :win10_install
    echo "install win10 to iscsi"
    imgfree
    set keep-san 1
    sanhook iscsi:192.168.1.127:::1:iqn.rix.test.win:win10
    kernel http://${boot_domain}/wimboot
    initrd  http://${boot_domain}/iso/win10/boot/bcd BCD
    initrd  http://${boot_domain}/iso/win10/boot/boot.sdi boot.sdi
    initrd  http://${boot_domain}/iso/win10/sources/boot.wim boot.wim
    boot
    

    上面的 iso/win10 目錄下存放的是從 win10 鏡像中解壓縮出來的文件

    tgt 配置

    我的 tgt 沒有放到 docker 中,所以單獨配置下吧。在/etc/tgt/conf.d 目錄下隨便添加一個.conf 后綴的文件,內容如下:


    <target iqn.rix.test.win:win10>
    backing-store /data/disks/win.img
    </target>
    

    上面的那個 iqn 是很重要的,配置啟動的時候需要用到。然后使用下列命令創建一個磁盤鏡像:


    fallocate -l 40G /data/disks/win10.img
    

    我將所有磁盤鏡像,windows 的安裝文件啥的都扔在/data 目錄下。重啟并檢查 tgt:


    sudo systemctl restart tgt
    sudo tgtadm --mode target --op show #這個命令應該可以看到我們的iqn以及對應的磁盤文件
    

    安裝

    win10 的虛擬機啟動,如果準備工作正確的話,會看到 netboot.xyz 的界面,并且看到我們添加的自定義的菜單,然后選賊 win10_install。正確的話,會啟動 win10 的安裝流程,這個在虛擬機中運行的時候,等待的時間比較長,也可能是以為我給虛擬機分配的內存比較少??傊?,如果看到 win10 的選擇語言的選項,就說明正常了。

    如果這個時候按照正常的安裝邏輯的話,在安裝程序啟動后,會找不到磁盤。所以,我們在語言之后,要選擇“修復計算機”->“疑難解答”->“命令行提示符”然后在彈出的命令行中輸入以下代碼:

    net use \\192.168.1.127\share
    \\192.168.1.127\share\win10\sources\setup.exe
    

    第一行表示使用共享目錄。第二行執行共享目錄下 win10 目錄中原始的安裝程序。之后和正常的 win10 安裝一樣了。最后到倒計時重啟。重啟后,選擇 win10_64_boot 這項進行啟動,以后都可以使用這個來進行啟動。

    使用體驗

    使用流程除了從網絡啟動外,其他的和有磁盤的方式沒太大區別。默認的情況下,數據也可以保存,數據保存是自動通過網絡保存到服務器上的,只是啟動的過程比較慢,文件讀寫涉及到網卡速度,估計大文件會比較慢。

    使用這種方式創建的無盤系統只是作為一個參考,比不得專業的無盤系統的效率。

    重裝系統,一個很常見的名詞。

    很多人對重裝系統也有需求。隨便搜搜某寶,各種相關店鋪一堆,可見很多人不會這項技能。

    授人以魚不如授人以漁,接下來介紹一個我認為最簡單的方法。

    首先請出本文的主角,''Media Creation Tool'',其為微軟官方推薦裝系統工具。

    百度上搜"Media Creation Tool"


    官方網頁

    點擊紅箭頭的位置,下載軟件。最新軟件名為“MediaCreationTool2004”。如果網頁打不開,可以關注我私信我取軟件

    點擊軟件,進行以下一系列操作

    1.以管理員身份運行軟件,進入到以下界面


    點擊接受,靜候...

    2.點擊 為另一臺電腦創建安裝介質(U盤、DVD或ISO文件),此處我們選擇U盤,U盤需要至少為8G。


    點擊下一步,選擇對應U盤,然后自動下載解析Win10文件




    至此,Win10系統盤已經制作完畢,后續介紹如何重裝系統。

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有