跳到主要內容

發表文章

目前顯示的是 2018的文章

解決 Error: namespace configuration error: inbox=yes namespace missing

原本Email都正常 後來出現提示 連線錯誤。 12月4日 後即無法擷取來自此帳戶的郵件。 讀取郵件時發生錯誤。 伺服器傳回錯誤「Connection closed by remote host: The other server terminated our connection....」 連線錯誤。 伺服器傳回錯誤「Connection refused」 連回伺服器用內建的roundcube 登入信箱也是顯示錯誤 可正常發信是因為 exim正常 POP/IMAP是由dovecot負責 查看 log檔 出現/var/log/dovecot.log Initialization failed: namespace configuration error: inbox=yes namespace missing 解決辦法 vi /etc/dovecot/conf.d/15-mailboxes.conf namespace inbox { } 之間 加入 inbox = yes 重啟 dovecot 修復完畢

防止 Network Manager 覆寫/etc/resolv.conf

使用CentOS7後,發現/etc/resolv.conf會自動被覆寫 DNS可以通過/etc/sysconfig/network-scripts/目錄下的網卡配置文件來添加 DNS1=8.8.8.8 DNS2=8.8.4.4 DNS3=1.1.1.1 配置完會自動複寫/etc/resolv.conf 檔案內訊息如下 nameserver 8.8.8.8 nameserver 8.8.4.4 nameserver 1.1.1.1 最多配置3個 如不要自動複寫則 您需要確保完全禁用Network Manager : # systemctl disable NetworkManager.service # systemctl stop NetworkManager.service 或是 修改完/etc/resolv.conf 將文件改為只讀 chattr +i /etc/resolv.conf

GCP 承諾使用折扣 購買教學 Google Cloud Platform Quota 'COMMITMENTS' exceeded. Limit: 0.0 in region

剛好有人問到,就順便發個文紀錄一下 時間長度 1年 大概是 便宜30% 就是7折 時間長度 1年 大概是 便宜40% 就是6折 到承諾使用折購 購買頁面 點購買 然後依照你要的方案 假設你已經有建立VM虛擬機 是1vCPU  2G記憶體 你可以在下面設定好 輸入模式選自訂 可以自行設定 這時候左下角會出現 錯誤訊息 Quota 'COMMITMENTS' exceeded. Limit: 0.0 in region 這是說配合不足,所以我們要先申請配額 我們先點左邊選項配合 再點 前往 IAM 與管理員的配額頁面 在配額頁面 配額類型 選 所有配額 指標 選 無 然後在搜尋框 輸入  commitments 然後選擇   commitments 你可以看到右邊 上限 顯示為0 就是沒有配額 這時候勾選你要的伺服器位置 點擊上方的  編輯配額 右邊會出現要你輸入資料 還有電話號碼 要輸入電話號碼原因是 只有在支援小組就您的要求與您聯絡時,才會使用您的電話號碼。 下一步之後 就會出現 新增配額頁面 目前限制 0 可以輸入1 就好 填好要求說明後 點完成  提交要求即可 然後會出現下面訊息 Compute Engine API 感謝您向 Google Cloud Platform 支援小組提交支援要求 (案例 ID:600f66666witmanto)。您要求的配額如下: 將「Commitments - asia-east1」從 0 變更為 1 我們正在處理您的要求。系統會傳送電子郵件給您,確認我們已收到您的要求。如需後續協助,請回覆這封電子郵件。 然後就會收到一封信 說已經收到配額請求 需要兩個工作日來處理 但是其實大概 過10分鐘就會完成要求 然後 回到承諾使用折扣 購買 頁面 重新購買即可,之後會自動啟用 下個月帳單會自動抵扣 以上這些步驟主要是Google 自動化系統 會徵測可疑帳戶並自動停權 這些步驟其實就算是一種驗證步驟 除非你要求配額一次很高 不

修改 OpenWrt Luci預設port

openwrt是利用uhttpd作為web服務器,實現客戶端web頁面配置功能。 所以我們編輯uhttpd設定 輸入 vi /etc/config/uhttpd 修改 80 改為你要的port 重啟 uhttpd /etc/init.d/uhttpd restart 之後你原本訪問路由 192.168.0.1 時就能進入Luci管理介面 要記得加上port    例如 192.168.0.1:8081 就能正常訪問

ESXi 遠端管理 port Openwrt軟路由設定

宿主機 下 安裝 Openwrt 軟路由 另一篇文章有教學 如何在Openwrt 設定 ddns 現在可以透過 ddns 訪問路由器 那宿主機 ESXi 要遠程管理 則設定好 預設閘道 為你虛擬機安裝的軟路由ip 我們假設 VM 虛擬機 安裝的 Openwrt 設定為 192.168.0.1 另假設ESXi實體主機ip為 192.168.0.50 (管理ESXi連入介面ip) 那ESXi 開機後 進入設定 選擇IPv4 Configuration 將 預設閘道 設定為你軟路由的ip 這個步驟建議一開始安裝時先設定好 再安裝軟路由 網路拓撲圖 先畫出來 先想好規劃好 再設定比較部會搞亂 IPv4 Address 就是ESXi的IP 這裡給 192.168.0.50 這樣設定好 透過 192.168.0.50 進入ESXi管理介面 新增虛擬機 安裝Openwrt 之後如果 OpenWRT 沒有自動抓到你的ESXi主機  就到DHCP內新增一個靜態租約 MAC位址填 ESXi 實體NIC  vmnic0網卡的mac位址 查看路徑 (登入ESXi > 網路 > 實體NIC > 複製 vmnic0 MAC位址) IPv4位址就是填 192.168.0.50  Openwrt防火牆 port轉發 設定 轉發端口 443 跟902 參考官方網頁: ESXi 主機的傳入和傳出防火牆連接埠 902, 443 TCP vSphere Web Client 用戶端連線 port 443為vSphere Client連線至ESXi Host所用的port port 902為vSphere Client使用虛擬機器的主控台(console)時所用的port port 903為遠程訪問VM控制台(TCP) 當然你也可以修改預設的port ssh至該主機上 編輯伺服器設定檔 # vi etc/vmware/config 在最下面加入這行即可 authd.client.port="443" 設定好後 就可以透過 ddns 設定的域名訪問 https://www.example.com:443/u

OpenWrt 設定 DDNS 自動向 Google Domains 更新IP

在 Google Domains 註冊好域名後 設定動態 DNS 綜合記錄 前往 Google Domains: domains.google.com/registrar 。 按一下所需網域的 [DNS] 分頁標籤  。 向下捲動至「綜合記錄」。 在綜合記錄類型清單中選取 [動態 DNS]。 5.輸入您預計指派動態 IP 的資源名稱,或是輸入子網域或預設網域 (「根網域」或「裸名網域」) 的 @。 如果不使用子網域 ,而是輸入 www.example.com 或 example.com 就轉到路由器則輸入 @ 6. 如果選取子網域,請輸入子網域名稱。 7.按一下 [新增]。 8.系統會在綜合記錄清單中建立動態 DNS 記錄。按一下記錄左側的「展開」三角形圖示即可查看記錄值。 9 .按一下 [查看憑證] 即可查看為這項記錄產生的使用者名稱和密碼。 10.記下系統為該項綜合記錄產生的使用者名稱和密碼。您需要這組使用者名稱和密碼來設定閘道或用戶端軟體,才能連上 Google 名稱伺服器。 您可以利用記錄旁的 [編輯] 和 [刪除] 按鈕來編輯或刪除記錄。 安裝以下套件 luci-app-ddns                     //動態域名系統 luci介面 <一般安裝這個也會安裝ddns-scripts luci-i18n-ddns-zh-tw          //動態域名系統 中文化 ddns-scripts                         //動態域名系統 libustream-openssl 如果沒安裝 openssl 會顯示如下錯誤  WARN : uclient-fetch: no HTTPS support! Additional install one of ustream-ssl packages - TERMINATE 然後到  名服務>動態DNS 輸入名稱 點新增  名稱是你自己辨識用 DDNS服務商 選擇 Google.com  當然有很多可以用 知名的粒如 NO-IP 也都有 點選更改提供者 設定的關鍵 一頂要勾選 H

ESXi 6.7 軟路由 OpenWrt x64 注意事項

虛擬機器選項 > 韌體  預設為 EFI  改成BIOS 如已建立卻無法正常開機 也可以修改 OpenWrt.vmx檔案 找到 firmware = "efi" 刪除 重新上傳 即可 注意:如果使用默認的EFI引導,OpenWrt將無法啟動,報如下錯誤 Attempting to start up from: → EFI Virtual disk (0.0) ... unsuccessful. → EFI Network... unsuccessful 安裝 中文介面、負載均衡、虛擬網卡、e1000e驅動、qos流控、sqm、DDNS opkg install luci-i18n-base-zh-tw luci-i18n-firewall-zh-tw ddns kmod-macvlan mwan3 luci-app-mwan3 luci-i18n-mwan3-zh-tw luci-app-qos qos-scripts luci-i18n-qos-zh-tw luci-app-sqm sqm-scripts kmod-e1000e luci-i18n-base-zh-tw           //預設介面中文化 luci-i18n-firewall-zh-tw     //防火牆中文化 ddns-scripts                         //動態域名系統 luci-app-ddns                     //動態域名系統 luci介面 <一般安裝這個也會安裝ddns-scripts luci-i18n-ddns-zh-tw          //動態域名系統中文化 kmod-macvlan                   //虛擬網卡 mwan3                               //負載均衡 luci-app-mwan3                 //負載均衡 luci介面 <一般安裝這個也會安裝mwan3 luci-i18n-mwan3-zh-tw    //負載均衡中文化 luci-app-qos                      //qos  luci介面 <一般安裝這個

OpenCart - RWD手機登入介面

OpenCart - RWD手機登入介面 依照各主題修改,有些付費主題並沒有RWD(回應式網頁設計)不支援行動裝置,RWD手機登入介面,無需轉跳專屬頁面,自適應瀏覽器大小自動切換成手機登入介面,依照使用者經驗設計UI,使登入更簡單 需要請聯繫 witmanto小老鼠gmail.com

OpenCart - 台灣手機格式驗證

修改 手機驗證判斷程式 新增 手機格式錯誤提醒訊息 驗證台灣手機號碼格式正確,避免金流系統取資料時產生錯誤,而無法超商取貨付款,手機格式正確時才能註冊,例如:0987654321正確10碼才能註冊,錯故格式例如:564564650、+886987654321、8860987654321、0712345678 不符合台灣手機格式皆無法註冊。 備註:其餘特殊需求可依照需求訂製。 需要請聯繫 witmanto小老鼠gmail.com

OpenCart - 註冊表單簡化

1.註冊表單優化 2.符合台灣使用習慣 3.簡化註冊步驟提高轉換效率 合併 姓氏fristname、名字lastname 合併為 名字 刪除 地址2(補充) 刪除 傳真號碼 刪除 公司名稱 刪除 鄉鎮市區 刪除 所在國家 刪除 縣市/地區 刪除 所有必填判斷程式 修改 訂閱電子報 預設是 修改 我已經閱讀並同意隱私政策 預設勾選 修改 地址填寫邏輯順序符合台灣使用習慣 備註:其餘特殊需求可依照需求訂製。 需要請聯繫 witmanto小老鼠gmail.com

OpenCart - 結帳頁優化

1.已登入會員結帳簡化 2.結帳註冊會員表單簡化 3.直接結帳資料表單簡化 合併 姓氏fristname、名字lastname 合併為 名字 刪除 地址2(補充) 刪除 傳真號碼 刪除 公司名稱 刪除 鄉鎮市區 刪除 所在國家 刪除 縣市/地區 修改 我已經閱讀並同意 隱私政策  預設直接勾選 修改 地址填寫邏輯順序符合台灣使用習慣 備註:其餘特殊需求可依照需求訂製。 需要請聯繫 witmanto小老鼠gmail.com

odoo openerp 台灣會計項目表 模組 符合IFRS 15 商業會計項目表 科目表

odoo 台灣會計項目表 模組 最新更新2018/8/16 依照 IFRS各業適用會計科(項)目名稱、定義及編號核定表 製作 符合 IFRS 15 商業會計科目表 適用 商業、營造業、工程業、製造業 等 如其他行業需新贈科目表可以配合新增 可代為安裝 台灣健保補充費 (二代健保) 設定 銷項稅、進項稅、加值型營業稅 設定 稅務扣繳設定 財務報表設定 另有 台灣銀行列表模組 台灣金融機構一覽表 模組

odoo 80 port 轉發到 8069 在端口80運行odoo

設置你的Ubuntu伺服器,並在端口80而不是在8069上運行Odoo 1.)使用ssh連接到你的Ubuntu伺服器 2.)使用你最喜歡的編輯器(vim,nano ...)來編輯/etc/rc.local文件 sudo vim /etc/rc.local 3.)在/etc/rc.local貼上 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8069 4.)重新啟動你的Ubuntu server sudo reboo 5.)在端口 80 訪問你的odoo

Simplify3D 機器設定 kossel Plus

 kossel Plus 列印面積  230x230x300mm

How to run InstaPy on a RaspberryPi 樹莓派上執行IG BOT

參考官方教學 https://github.com/timgrossmann/InstaPy/blob/e6c0071a9b17d64a30958e51eefb7cd063ae2648/docs/How_to_Raspberry.md 很重要一點 chromedriver 記得一定要移入assets資料夾內 For Chrome This assumes you're using the latest version of raspbian (stretch). Note that this works best running headless. Switch to the root user  sudo su Update apt source lists  echo "deb http://security.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list Update  apt-get update Install the browser  apt-get install chromium-browser Install the driver  apt-get install chromedriver Move the driver into the InstaPy/assets directory  mv /usr/bin/chromedriver /home/pi/Projects/InstaPy/assets/chromedriver nano instapy/settings.py change "chromedriver_min_version = 2.36" to "chromedriver_min_version = 2.33" & save file 之後記得安裝其他套件 sudo pip install selenium sudo pip install clarifai sudo pip install emoji 之後輸入 即可執行 python quickstart.py 如果要使用 pyt

httpd ram 使用過多 設定

先到 http://www.mysqlcalculator.com 計算自己的伺服器設定 看MySQL Memory 占用多少 我的配置如上 設定 MaxClients 7  (基於 (1740.8Mb Memory on server - 900Mb for MySQL + other stuff) / 111Mb average usage per httpd process = 7.5747747747747747747747747747748) 在/etc/httpd/conf/httpd.conf 添加如下 <IfModule prefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 7 MaxRequestsPerChild 4000 </IfModule> 注意,MaxClients預設最大為250,若要超過這個值就要顯式設置ServerLimit,且ServerLimit要放在MaxClients之前,值要不小於MaxClients,不然重啟HTTPd時會有提示。 目前持續測試 看有沒有其他問題

在CentOS 啟用 Swap交換空間

伺服器記憶體不足導致崩潰時可以配置Swap交換空間 檢查系統的Swap信息 首先我們需要檢查系統的存儲,看看是否已經配置過swap。一個系統可以設置多個swap文件或分區,不過一般來說一個就夠了。 使用 swapon 命令可以檢查系統是否已經配置過swap,這是一個通用的swap工具。使用-s標籤可列出當前存儲設備上的swap使用情況: swapon -s 如果該命令沒有返回出結果,則代表該系統尚未配置過swap。 或者,我們也可以使用 free 工具來查看系統的整體內存使用情況,這裡可以看到內存和swap的使用狀態 創建Swap文件 接下來我們將在文件系統上創建swap文件。我們要在根目錄( / )下創建一個名叫 swapfile 的文件,當然你也可以選擇你喜歡的文件名。該文件分配的空間將等於我們需要的swap空間。 文件大小建議配置為 記憶體的兩倍 ,我伺服器記憶體大小為2G 文件就配置4G dd if=/dev/zero of=/swapfile bs=1024 count=4096k 接著設置權限 chmod 600 /swapfile   swap文件的權限,確保只有root才可讀,否則會有很大的安全隱患。 該文件的讀寫都只有root才能操作。使用 ls -lh 命令檢查一下: ls -lh /swapfile 顯示結果如: -rw------- 1 root root 4.0G Apr 15 18:01 /swapfile Make Swap交換 - 現在使用 mkswap 命令make swap交換可用文件。 mkswap /swapfile 啟用交換 - 現在使用 swapon 命令安裝系統交換。 swapon /swapfile 現在,再次檢查交換是否啟用。 sudo swapon -s 你會看到的結果類似下面 Filename Type Size Used Priority /swapfile file 4194300 60 -1 使Swap文件永久生效 至此我們已經在系統中啟用了swap文件,然而

使用 VestaCP 跟 Google Cloud Platform 設置 SMTP代理 寄送EMAIL

在GCP上 無法正常寄送郵件使用 Sendgrid代理伺服器 第1步 - 註冊Sendgrid免費電子郵件帳戶 使用Sendgrid 註冊一個 免費的電子郵件帳戶 。 第2步 - 通過exim.conf設置與VestaCP的sendgrid i)可以用Google Console控制台SSH連入您的VM,並打開exim配置文件。但首先我們要做一個備份,這也需要以root身份登錄。 sudo su cp /etc/exim/exim.conf /etc/exim/exim.conf-backup sudo vim /etc/exim/exim.conf // 如果不想打指令可以直接使用VestaCP  操作 第3步 - 先點伺服器> 找到  exim 點設置 1、然後搜尋 begin authenticators 在下方添加: sendgrid_login:   driver = plaintext   public_name = LOGIN   client_send = : 帳號 : 密碼 // 填入你剛剛註冊的帳號密碼 2、找到ROUTERS CONFIGURATION 在下方添加:   send_via_sendgrid:   driver = manualroute   domains = ! +local_domains   transport = sendgrid_smtp   route_list = "* smtp.sendgrid.net::2525 byname"   host_find_failed = defer   no_more // 我們使用port 2525 因為25、465、578預設被Google Cloud阻擋 3、找到TRANSPORTS CONFIGURATION 在下方添加: sendgrid_smtp:   driver = smtp   hosts = smtp.sendgrid.net   hosts_require_auth = smtp.sendgrid.net   hosts_require_tls = smtp.sendgrid.net // 現在你可以發送電子郵件試試 如果出現下列錯誤訊息 VESTAC