目錄
- 總結寫前面
- 一、Linux虛擬機
- 1 安裝VMware、ubuntu18.04
- 2 換源
- 3 改中文
- 4 中文輸入法
- 5 永不息屏
- 6 設置 root 密碼
- 7 安裝 terminator
- 8 安裝 htop(升級版top)
- 9 安裝 Vim
- 10 靜態IP-虛擬機ubuntu
- 11 安裝 ssh
- 12 安裝 MobaXterm (SSH)(windows)(漢化)
- 13 安裝 FileZilla (SFTP)(windows)
- 14 安裝 samba
- 15 安裝 nfs
- 16 安裝 Vscode remote-ssh(windows)
- 17 遇到的問題:Command 'ifconfig' not found
- 18 遇到的問題:虛擬機突然沒網
- 二、Linux物理機(服務器)
- 三、WSL
總結寫前面
嵌入式Linux開發,目前了解到三種方式:虛擬機、物理機(服務器)、WSL。
- 虛擬機:個人使用。
- 物理機(服務器):公司用。有舊電腦可以裝來玩,舊電腦裝Linux系統或雙系統,放家里當服務器用,就是性能太差。沒有公網IP,需要用內網穿透軟件,才能遠程操作服務器,網速太低,用SSH遠程命令行沒啥問題,傳文件太慢。總結就是太窮了,性能低、網速慢,玩不起來。(組高性能臺式機+公網IP)
- WSL:待測。
具體而言,涉及到一些技術和軟件的選擇,包括了windows與linux之間的:遠程命令行、文件傳輸、文件夾共享、代碼開發、遠程桌面、代碼同步。
功能 | Linux虛擬機 | Linux物理機(服務器) | WSL |
---|---|---|---|
遠程命令行 | SSH(主機用MobaXterm) | SSH(主機用MobaXterm)+ Zerotire(內網穿透) | |
文件傳輸 | SFTP(主機用FileZilla) | SFTP(主機用FileZilla) | |
共享文件夾 | NFS(與板卡)、Samba(與主機) | NFS(與板卡)、Samba(與主機) | |
遠程開發 | VS Code + Remote-SSH | VS Code + Remote-SSH | |
遠程桌面 | / | Todesk | |
代碼同步 | Git | Git |
實際測試了網絡延遲、網絡帶寬、Linux內核編譯速度:
網絡 | 網絡延遲 | Filezilla | samba | Linux內核編譯時間 | |
---|---|---|---|---|---|
虛擬機 | 局域網 | 0 | 300-350MB/s | 200-250MB/s | 1m30s(虛擬機32核i9 14代) |
物理機(服務器 | 局域網 | <10ms | 20-25MB/s | /(網速太低不實用就沒測) | 4m46s(物理機8核i5 9代) |
物理機(服務器 | Zerotire(工位->家里) | 26-33ms | 3MB/s | /(網速太低不實用就沒測) | 4m46s(物理機8核i5 9代) |
總結:目前還是用虛擬機吧,夠用。
- 服務器,受網速影響太大:就算一個局域網內都傳的很慢,不流暢啊,還不如直接U盤傳輸。
- 服務器,性能太差:用的舊電腦戴爾G3,純Linux系統編譯內核都不如新電腦的虛擬機編譯快。
- 虛擬機CPU利用率都能達到100%了,是不是說明就算把新電腦直接裝純Linux系統,效果也和虛擬機差不多?等下次重裝系統時試試這個新電腦裝Linux系統的編譯速度。
一、Linux虛擬機
電腦和軟件:
VMware | 16.2.3 |
---|---|
主機系統 | win11 |
虛擬機系統 | ubuntu18.04 |
CPU | Intel i9-14900HX |
內存 | 32G |
1 安裝VMware、ubuntu18.04
VMware安裝網上很多教程,或者參考之前寫的一篇:https://blog.csdn.net/weixin_44029896/article/details/122877171?fromshare=blogdetail&sharetype=blogdetail&sharerId=122877171&sharerefer=PC&sharesource=weixin_44029896&sharefrom=from_link
要注意的是:
內存:分配給虛擬機的內存>16G
硬盤:只編譯linux需要200G,還要編譯android的話要500G。(視芯片而定吧,IMX6U的就很小,RK3566的SDK就比較大)
CPU:前兩行隨便設置,最終只根據內核總數決定虛擬機CPU性能。我是直接拉滿了,使用起來感覺沒影響到主機的流暢使用。
2 換源
打開軟件和更新
點擊
選擇其他站點
選一個中國源,確認后點右下角關閉,彈出對話框,問你是否重新加載源,選是。
換完后,要更新源。
sudo apt update
3 改中文
點擊設置、區域和語言、管理安裝語言
點擊
找到中文簡體,勾選
重啟虛擬機。
重啟****后,彈窗,選擇保存原來的路徑名稱,即英文名稱。
4 中文輸入法
直接去這里設置即可
5 永不息屏
設置 -> 電源
6 設置 root 密碼
剛安裝好的Linux系統沒有設置root用戶密碼。passwd命令作用:修改用戶密碼,不指定用戶名就默認是修改root。
sudo passwd
su root
(su名字來源:switch user)
exit 或者 ctrl+d 退出root用戶。
7 安裝 terminator
sudo apt install terminator
配置成無限緩沖,不然編譯完系統想看過程中的輸出都被清理掉了。
8 安裝 htop(升級版top)
sudo apt install htop
界面配置:
選好后,按F10確認,按F10退出。ctrl+c退出無法保存配置。
最終效果:
9 安裝 Vim
ubuntu默認只安裝了vi,沒有vim(具體區別待日后體驗)
sudo apt install vim
10 靜態IP-虛擬機ubuntu
參考教程:https://blog.csdn.net/m0_74957207/article/details/142618269
- 查看網關,后續用到。
route -n
- 修改配置文件
sudo vim /etc/netplan/01-network-manager-all.yaml
更改其中的網絡名字、網關、需要固定的IP。即加粗部分。
network:version: 2renderer: NetworkManagerethernets:ens33: dhcp4: no addresses: [192.168.70.132/24] gateway4: 192.168.70.2 nameservers:addresses: [8.8.8.8, 114.114.114.114]
- 應用并重啟
sudo netplan apply
sudo systemctl restart systemd-networkd
- 驗證
ip -a
ping bing.com
11 安裝 ssh
- 安裝
sudo apt update # 更新軟件包列表
sudo apt install openssh-server # 安裝 SSH 服務端
sudo systemctl status ssh # 查看服務狀態(按 q 退出)
正常狀態應顯示 active (running)
- 重啟ssh
/etc/init.d/ssh restart
12 安裝 MobaXterm (SSH)(windows)(漢化)
Windows 官網下載安裝版本,安裝一路next。
13 安裝 FileZilla (SFTP)(windows)
Windows 官網下載安裝版本,安裝一路next。
14 安裝 samba
ubuntu18.04**:**
- 安裝
sudo apt install samba
- 創建共享文件
sudo mkdir -p /home/wyf/samba
sudo chmod 777 /home/wyf/samba
- 配置(使用的泰山派教程的配置)(迅為的配置有問題,win被拒絕訪問)
sudo vi /etc/samba/smb.conf
標黃部分自行更改
[Tai_Shan_Pai]comment = share folderpath = /home/wyf/sambavalid users = wyfwrite list = wyfbrowseable = yeswritable = yes create mask = 0644 directory mode = 0755 read only = no
- 設置訪問密碼(第一次使用需要)
sudo smbpasswd -a wyf
- 重啟
sudo service smbd restart
win11**:**
win+r,輸入\\ubuntu ip地址
如:\192.168.70.132。(win11無法連接的話,看下面的解決)
然后右鍵共享文件夾,點擊“映射網絡驅動器”。
samba相關命令
檢查Samba用戶是否存在:sudo pdbedit -L
檢查配置文件語法:testparm # 顯示最終生效的配置,檢查是否有語法錯誤
遇到問題:win11 無法連接 samba:
15 安裝 nfs
服務端:
- 安裝:
sudo apt install nfs-kernel-server
- 創建共享文件夾
sudo mkdir -p /home/nfs
- 配置,添加共享規則
sudo vi /etc/exports
/home/nfs/ *(rw,sync,no_root_squash)
- 重啟nfs
/etc/init.d/nfs-kernel-server restart
客戶端:
16 安裝 Vscode remote-ssh(windows)
插件中心搜索Remote-SSH。
點擊“+”新建,輸入ssh 主機名@主機ip
。如ssh wyf@192.168.70.132。
然后就可以直接訪問linux中的代碼,直接更改,寫完直接下面命令行輸入命令編譯。
17 遇到的問題:Command ‘ifconfig’ not found
原因:軟件包變更:Ubuntu 從 18.04 開始默認不再預裝 net-tools
軟件包(包含 ifconfig
、netstat
等傳統網絡工具)。官方推薦使用更現代的 ip
命令(來自 iproute2
軟件包)
功能 | 傳統命令 | 現代命令(ip) |
---|---|---|
查看 IP 地址 | ifconfig | ip addr 或 ip a |
查看路由表 | route -n | ip route |
啟用/禁用網卡 | ifconfig eth0 up | ip link set eth0 up |
添加臨時 IP | ifconfig eth0 add 192.168.1.100 | ip addr add 192.168.1.100/24 dev eth0 |
如果仍想使用ifconfig:
sudo apt install net-tools
18 遇到的問題:虛擬機突然沒網
sudo service network-manager stop
sudo rm /var/lib/NetworkManager/NetworkManager.state
sudo service network-manager start