靜態 IP
# 創建一個內部的虛擬機交換機(附帶會創建一個虛擬網卡)
New-VMSwitch -SwitchName "NAT-VM-CentOS" -SwitchType Internal
# 查看虛擬網卡 NAT-VM 的ifindex
Get-NetAdapter
Get-NetAdapter -Name "*NAT-VM-CentOS*" | Format-List -Property "InterfaceIndex"
# 給虛擬網卡設置 IP,InterfaceIndex 參數自行調整為上一步獲取到的 ifindex。這一步等同於在 控制面版-網卡屬性 中設置 IP
New-NetIPAddress -IPAddress 192.168.200.1 -PrefixLength 24 -InterfaceIndex 49
# 創建一個 NAT 網絡(關鍵在這里!)
New-NetNat -Name NAT-VM-CentOS -InternalIPInterfaceAddressPrefix 192.168.200.0/24
# 給名稱是"CentOS"的VM設置使用這個交換機, 也可以通過hyper-v管理器操作
Get-VM -Name CentOS | Get-VMNetworkAdapter | Connect-VMNetworkAdapter -SwitchName "NAT-VM-CentOS"
設置 Linux 網絡靜態 IP,編輯文件 vi /etc/sysconfig/network-scripts/ifcfg-eth0
:
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
IPADDR="192.168.200.101"
NETMASK="255.255.255.0"
GATEWAY="192.168.200.1"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="eth0"
UUID="68fd9207-ce73-43e4-9a77-ba43069c8da4"
DEVICE="eth0"
ONBOOT="yes"
說明:
- 主要是
BOOTPROTO
的dhcp
換成static
和IPADDR
接着設置 DNS,否則 ping www.baidu.com
可能是不通的。編輯 vim /etc/resolv.conf
,添加(這是Google提供的公用DNS):
nameserver 8.8.8.8
nameserver 8.8.4.4
重啟網絡:
service network restart
PS:管理員 powershell 里面運行這個,可以把本地的虛擬機暴露出來, 通過PC機IP+2022端口來訪問VM
Add-NetNatStaticMapping -ExternalIPAddress "0.0.0.0/24" -ExternalPort 2022 -Protocol TCP -InternalIPAddress "192.168.200.101" -InternalPort 22 -NatName NATNetwork
參考:
YUM 源配置
YUM 源的配置
常用 RPM 包
yum install -y vim \
net-tools \
wget \
git \
lrzsz \
gcc \
zsh \
samba
net-tools
提供ifconfig
命令
Git 配置
ssh-keygen -t rsa -C "649168982@qq.com"
git config --global user.email "649168982@qq.com"
git config --global user.name "michael728"
git config --global http.sslverify false
git config --global https.sslverify false
具體配置文件,在 ~/.gitconfig
免密登錄 VM
如下操作可以將本機的公鑰添加到 VM 上的 authorized_keys
文件中:
ssh-copy-id root@<IP>
在 VM 中執行 systemctl restart sshd
。
為了在本機上可以方便登錄,可以給 Host
取個別名,在 Windows 機器上的 C:\Users\<user>\.ssh
目錄下,添加一個 config
文件,增加如下內容:
Host vm
HostName <IP>
User root
Port 22
IdentityFile C:\Users\<user>\.ssh\id_rsa
ssh vm
即可免密登錄到遠端虛機上
網絡設置
交換機設備配置好之后,需要連接外網,那么還需要配置 proxy
,為了省事,因為這個虛機就在自己本地,並不會其他共享,直接用賬號的方式配置即可。編輯 ~/.zshrc
添加如下:
export http_proxy="http://<user>:<passwd>*@proxy.michael.com:8080/"
export https_proxy="http://<user>:<passwd>*@proxy.michael.com:8080/"
export no_proxy="127.0.0.1, localhost"
如果密碼有特殊字符,需要利用encode工具編碼。
除此以外,可能還需要配置:
/etc/resolv.conf
- 為了避免證書的問題,需要在 Linux 機器上導入證書
Java
Java 安裝
mkdir -p /opt/3rdComponent
wget https://mirrors.huaweicloud.com/openjdk/13.0.2/openjdk-13.0.2_linux-x64_bin.t ar.gz
tar xvzf openjdk-13.0.2_linux-x64_bin.tar.gz
ln -s jdk-13.0.2 jdk
編輯 /etc/prfile
添加環境變量:
export JAVA_HOME=/opt/3rdComponent/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
輸入 java -version
驗證:
openjdk version "13.0.2" 2020-01-14
OpenJDK Runtime Environment (build 13.0.2+8)
OpenJDK 64-Bit Server VM (build 13.0.2+8, mixed mode, sharing)
Python
Python 安裝
mkdir -p /opt/3rdComponent
cd /opt/3rdComponent
wget http://www./centos_Python-3.7.3.tar.gz
tar xvzf centos_Python-3.7.3.tar.gz
環境變量:
export PATH=/opt/3rdComponent/Python-3.7.3/bin:$PATH
PyPi 源配置
Hyper-V 啟動報錯
在 PowerShell
中執行 Get-Service "vm[cm]*"
,看看 vmcompute 和 vmms 兩個服務是不是都處於 Running 狀態。
vmms 未啟動
管理員權限執行:
sc config vmms start=auto
sc start vmms
sudo: java: command not found解決辦法
Visual Studio Code is unable to watch for file changes in this large workspace
cat /proc/sys/fs/inotify/max_user_watches
編輯 /etc/sysctl.conf
末尾添加:
fs.inotify.max_user_watches=524288
最后重啟:sudo sysctl -p
Visual Studio Code is unable to watch for file changes in this large workspace