整理了一些常見問題(不看白不看):
Q:SSH基本命令不理解、不會、在哪裡運行?
A:不會?有兩個選擇:選擇①:可以關閉此網頁,沒必要為難自己。
選擇②:可以在 論壇 或 百度搜索 linux 或者openwrt 相關教程,只要願意學沒有學不會的,自己懶就不要拿小白這個詞當擋箭牌了。
一些命令大都是命令+參數的形式,大多數命令可以用命令+–help顯示相關用法,或者 https://www.baidu.com/ 搜索linux下的用法,看不懂?https://www.baidu.com/s?wd=翻譯
基本操作也不會?https://www.baidu.com/s?wd=linux+關鍵詞
大部分命令是要在 電腦或手機使用ssh軟體登陸路由以後在終端執行的。
Q:SSH用戶名、密碼?
A:SSH用戶名是admin,密碼是你的網頁管理密碼。(網頁管理密碼和SSH密碼是分開保存的,如果你開機後改過網頁密碼(比如執行恢復出廠設置相當於改成預置的admin),ssh密碼不會立即同步,還是上一次的,重啟才會同步成網頁的管理密碼),如果你不記得你的密碼了就長按復位鍵恢復出廠設置,如果用WinSCP登陸協議要選擇SCP。
Q:有線怎麼樣?無線怎麼樣?穩定性怎麼樣?XXX怎麼樣?
A:這些是無法二次修改、優化或負優化的,原版什麼樣這個也什麼樣,原汁原味的官方固件,沒有修改寫入任何nvram參數,如果你不用SSH,效果是等同於官方的!(有些官方固件的問題請等待官方固件版本升級來解決,請不要把黑鍋甩給我)。(還有不要一有問題就把鍋甩給固件,固件出廠有嚴格的測試流程,不會專門針對為難你一個人。)
Q:怎麼進入CFE?
A:見刷入方法2,機器通電初始化設備後CFE會根據預設的時間等待幾秒,這時候如果按下了復位鍵,CFE檢測到就會中斷暫停引導系統,如果沒有按下按鍵就會正常引導啟動系統,CFE的IP讀取當前的NVRAM值,是動態的,如果官方固件修改過IP或者刷了梅林固件,IP也隨之更改,如果不記得了IP也可以使用 ASUS Device Discovery 來查找IP 。
Q:怎麼恢復出廠設置?重置nvram?
A:有問題,捅復位
方法1:進入CFE網頁,點擊 Restore NVRAM 重置NVRAM (lede固件沒有使用nvram,不適用)
方法2:系統完全啟動以後(通電5分鐘以後)長按復位鍵10秒進行復位(個別梅林固件沒有適配不行) (系統啟動後會運行按鈕檢查程序,檢測到長按按鍵後就觸發執行重置操作,沒啟動完你就按是沒用的)(lede固件有時候長按無效,斷電重啟重試幾次就可以了)
Q:怎麼刷回原版?
A:這個固件基本等於原版固件,用上面說的CFE web方式,或者 nvram把版本號改小然後自動升級,或者SSH工具箱 刷機&還原 恢復原廠 。
Q:手動升級或者CFE頁面無法刷入官方固件?
A:系統dev_info分區丟失 或者 dg_ver版本太高,可以自行恢復備份 或者到 SSH工具箱–→系統&其它–→其它–→恢復降級 dev_info 。
Q:怎麼在此版本基礎上 更新升級 或者 轉刷LEDE?
A:看樓下,固件傳到路由/tmp目錄,然後dd命令刷 或者 用上面說的CFE web方式。(SSH工具箱已經集成,一鍵在線升級,一鍵轉刷lede)
Q:已經是LEDE怎麼刷這個?
A:見上面刷機方法1後半部分,直接lede的web升級,或者看樓下,固件傳到路由/tmp目錄,然後用mtd命令刷 或者 用上面說的CFE web方式。
Q:怎麼清理已經安裝的軟體?
A:通過opkg安裝的文件保存在/root/opt目錄,其它在/root目錄,看誰不順眼就刪誰(認真的)。(可以看opkg的幫助 或者 opt install local重裝entware可以刪除全部通過opkg安裝的源里的軟體,/root目錄的不會刪除)或者SSH工具箱 清理&刪除
Q:怎麼防火牆開啟額外埠(比如遠程訪問transmission、Aria2、SSH、FTP等)、自定義iptable規則?
A:看原貼,/etc/firewall.user裡面加,比如SSH是22埠,手動運行或相關服務重啟時或重啟路由生效。(SSH工具箱系統&其它)
Q:怎麼自定義定時任務,計劃任務?
A:看原貼,定時wifi,定時發送微信信息等命令 按格式加到/etc/crontabs/admin裡面。
Q:怎麼查看、更改wifi發射功率?
A:看樓下。
或者參考官方命令(V21.6.8.46、V21.6.11.58 以上版本才支持) 數字 100 穿牆、75 正常、50 節能,可以自己修改相應數字大小來調節
2.4G
wl -i eth1 pwr_percent 75
5G
wl -i eth2 pwr_percent 100
Q:怎麼修改hosts 和 自定義dnsmasq參數、配置、啟動命令?
A:不經常改動的添加到/etc/hosts第四行以後(新版才有),動態的hosts可以利用dnsmasq的addn-hosts配置參數,dnsmasq見原貼樓下,重啟dnsmasq才生效。
Q:安裝軟體有web界面嗎?
A:沒有(一些軟體自身有單獨的管理頁面),軟體和界面是獨立的,你得自己開發相應的界面(SSH工具箱–→系統&其它–→WebUI 有簡單的控制守護界面)。
Q:/opt空間不夠,怎麼利用USB?
A:建議到 SSH工具箱–→系統&其它–→擴展opt,也可以把比較大的目錄比如/opt/bin、/opt/lib等目錄改成鏈接到usb存儲的軟鏈接。(如果/root/opt目錄整體搬遷到usb,/opt/etc這個目錄不建議放到usb)
Q:一些軟體能集成嗎?
A:不能,大部分軟體沒有GUI沒必要,在不破壞原版的功能和穩定前提下,除了必要的運行庫以外沒有值得集成的軟體,軟體還需要經常更新,而系統目錄是只讀的,會給更新、運行帶來不便或錯誤、弊大於利。
Q:可寫目錄,存儲位置、大小?
A:可寫目錄/root(實際掛載點是/tmp/media/nand),/opt實際也是鏈接到/root/opt目錄下的,所有的文件都保存在這個目錄下,分區mtd8,分區格式yaffs2, 分區名brcmnand,可用總大小80M。
Q:需要一些別的軟體?
A:如果是單純腳本可以自己移植,如果是二進制的:①可以先看看entware軟體源 http://pkg.entware.net/binaries/armv7/Packages.html 查找看看人家提前編譯了沒有,有就直接opkg安裝。
②也可以直接用同平台架構的如梅林固件的現成的ELF二進制文件,如缺少依賴lib可以運行前export LD_LIBRARY_PATH=/xxx/lib目錄。
③還是沒有就需要找個toolchain拿源碼自己交叉編譯了。
Q:如何修改VLAN?
A:用不到,沒機會研究,不會弄,自己搜索相關教程。系統自帶了vconfig程序,也可以從梅林固件複製robocfg程序(11KB)。
Q:系統分區只讀,臨時修改系統只讀分區的文件或目錄?
A:如果非要修改可以使用mount –bind覆蓋的方式,可以是文件或目錄,見原貼minidlna介紹。
Q:web界面或屏幕上的終端品牌圖標是根據網卡OUI文件/etc/oui/vendor.json來識別的,怎麼修改自定義?
A:屏幕程序默認會優先讀取/root/oui/vendor.json這個文件,可以把/etc/oui/vendor.json複製到/root/oui/目錄按照格式自己修改增加,也可以使用mount –bind覆蓋的方法,修改後實時生效。
Q:需要在CFE裡面清理NVRAM嗎?
A:不用(除非你刷了一些華碩固件,而且確信它們的分區格式一樣、分區偏移一樣、寫入到了官方NVRAM分區、且確信會對官方固件有影響再嘗試)。官方固件和LEDE固件使用完全不同的配置分區,偏移和格式都不一樣,官方使用NVRAM參數保存配置(在CFE的後面),LEDE使用jffs2分區的文件保存(在固件的後面),它們之間互不影響(所以刷完LEDE繞回來原來的設置還在),強迫症可以到:官方固件—-功能設置—-備份恢復—-恢復出廠設置(實際上也是格式化nvram分區)(LEDE固件界面下的恢復和官方固件沒有關係)。
Q:怎麼不能telnet連接?
A:刪除了utelnetd(telnet服務端,官方默認也是關閉的),替換成更強大、更安全的SSH,只有路由器上運行相應的telnet&SSH服務端以後,才能在客戶端上使用telnet或者ssh連接上路由。如果想用telnet可以運行busybox telnetd
telnet服務端原版固件下默認都是關閉的,原版固件手動開啟telnet方式,或工具自動方式實質都是修改的mtd4的7和8字節,原版固件開機會運行telnet_startupd程序,這個程序會檢測這兩個字節,如果是1070就會啟動utelnetd telnet服務端,默認ff是不會啟動的,如果是1070啟動服務端以後就能用telnet客戶端連接路由,然而新版官方固件已經更改這個檢測機制,就算是1070也不會啟動utelnetd的。開啟telnet或者ssh以後最終目的是為了在終端執行命令或刷寫固件,這個root固件的telnet_startup和utelnetd已經都刪除替換成了功能更強大SSH了,telnet和ssh執行命令的效果是一樣的。
Q:修改了一些腳本、配置文件後導致運行出錯?
A:文件換行符號不同,Windows格式文件的換行符為\r\n ,而Unix&Linux文件的換行符為\n。可以使用Notepad++、EmEditor、UltraEdit等文本編輯軟體轉換換行編碼為Linux的,也可以使用自帶的dos2unix命令轉換。
Q:網線不插WAN口插LAN口用,K3想聯網?當AP用?
A:比如 上級路由A IP:192.168.1.1
設置K3:
功能設置—>LAN設置 設置IP 192.168.1.2
功能設置—>上網設置—>上網方式(靜態地址)
IP 192.168.3.11 網關 192.168.3.1(WAN、LAN限制不能同網段)
首選DNS 填上級路由A IP 192.168.1.1
/opt/started_script.sh增加一條
route add default gw 192.168.1.1
重啟
按上面的設置完,接LAN口、空WAN口的K3自身可以聯網,如果想使用K3的去廣告服務: 連接K3 LAN的設備PC手動設置IP 如:192.168.1.3,DNS和網關都設置成K3的IP:如192.168.1.2
Q:如何屏蔽固件升級提醒?
A:多種方法,升級固件、修改系統文件、簡單的辦法就是修改nvram保存的固件版本號,大於或等於官方最新的版本號就可以
/opt/started_script.sh增加一條
nvram set fw_version=V22.6.8.46 && nvram commit
Q:刷機需要備份哪些分區?怎麼備份?
A:分區這個概念是對於某一個固件而言,名字固件隨便起,怎麼劃分是固件編譯時配置文件說了算,不同固件不一樣,不同固件只能用flash的偏移來說,比如官方固件定義的dev_info分區偏移是0x380000-0x3a0000,在一些沒有適配的華碩固件下這個偏移被定義成了固件分區,那麼刷完華碩後這部分數據就被覆蓋破壞了。
對於K3官方固件:
mtd0 boot
cfe引導分區,建議備份,還包含了部分nvram參數和MAC等信息,不要刷入別人的,也不要隨意刷寫這個分區。
mtd1 nvram
設置分區,不用備份,保存了路由的所有設置信息,恢復出廠時會格式化然後從cfe和當前固件複製默認參數。
mtd2 nvram_back
從名字看像是nvram的備份,實際固件沒有使用,全部空白,不用備份。
mtd3 res_info
沒有使用,全部空白,不用備份。
mtd4 pro_info
只有6字節數據,00904C17F234,所有機器都一樣,可選備份,就算沒備份把這6字節複製過去就恢復了。
mtd5 dev_info
176字節數據,好像是加密的固件的版本一些信息,刷寫官方固件版本號發生變化時候這裡的數據就變化,可選備份。
mtd6 linux
整個固件分區,平常刷寫官方固件或者LEDE都是刷到這裡,官方提供固件下載,只要cfe正常隨便刷,不用備份。
mtd7 rootfs
動態的,包含在linux分區,mtd6減去當前固件內核部分,是固件的後半部分,而固件是一個整體,當然不用備份。
mtd8 brcmnand
存儲分區,日誌文件、自己安裝的軟體保存再這裡,固件版本信息變化時系統會格式化,不用備份,也不要恢復。
備份方法:
刷完此固件putty登陸路由:
cd /tmpcat /dev/mtd0 > boot.bincat /dev/mtd4 > pro_info.bincat /dev/mtd5 > dev_info.bin
然後用WinSCP把三個文件從路由/tmp目錄複製回電腦。(SSH工具箱已經集成)
Q:設置或存儲分區有問題 導致系統錯誤 或者連ssh也進不去了?
A:有一個後備計劃,找一個u盤 根目錄建立一個沒有擴展名的文件 k3_safe_mode ,插入k3重啟動開機以後會用臨時目錄覆蓋掛載一次/root目錄(類似於安全模式,所有啟動項&設置臨時恢復至默認),確保可以啟動ssh,ssh登陸後umount -l /root 卸載掛載後就可以操作真實的/root目錄了。
TP-LINK TL-XDR5430千兆無線路由器怎麼設置?
問:TP-LINK TL-XDR5430 AX5400千兆無線路由器怎麼設置上網?
騰達路由器 AC8 如何設置上網
本教學適用於第一次安裝AC8的用戶,下面將詳細講解不同上網方式下,如何設置AC8上網。