發表文章

目前顯示的是 6月, 2023的文章

用Windows command line 做程式看門狗

圖片
 公司的應用軟體不明原因自已關閉,造成困懮,為解決自已關閉問題在還沒找出原因之前,先想了一個暫時解套的方法。以下以 Firefox 做為案例 1. 先找出 Firefox 的執行檔。 2. 編輯一個bat檔,例:test.bat echo off echo ************************************************************* >>c:\log\log.txt echo %date% %time% >> c:\log\log.txt tasklist | find /i "firefox.exe" >nul 2>nul && goto 存在 || goto 不存在 :存在 echo software exists >>c:\log\log.txt goto end :不存在 start "firefox" "C:\Program Files\Mozilla Firefox\firefox.exe" echo restart firefox >> c:\log\log.txt :end echo ************************************************************* >>c:\log\log.txt 存檔,測試 開啟 Firefox 時 log 正常 關閉 Firefox 時 log 正常,並重新啟動了 Firefox ========================================================================= 以下是筆者另外加的,用 Telegram 即時通知程式問題 因為會用到 curl ,所以先去下載  curl  (https://curl.se/windows/),解壓縮放至你想放的地方,例:c:\curl 在:不存在最下方加入這一行 C:\curl\bin\curl.exe -s -X POST https://api.telegram.org/bot<you are token>/sendMessage -d chat_id=<you ...

用 Line 即時通知 Linux 各式警告

圖片
 用 Line 即時通知 Linux 各式警告 前幾天寫了用 Telegram 即時通知機器狀態,但老闆說他沒裝 Telegram 也不想用 Telegram,不能用 Line 就好嗎? 好吧,他來了。 首先要先去 Line 申請權杖(TOKEN), Line Notify  位置 先複製起來備用。 然後到要安裝的機器下載程式  下載頁面 wget https://github.com/moznion/linenotcat/releases/download/0.2.1/linenotcat_linux_amd64_0.2.1 chmod +x linenotcat_linux_amd64_0.2.1 echo "you are TOKEN" > ~/.linenotcat /root/linenotcat_linux_amd64_0.2.1 --config_file=/root/.linenotcat -m 123 測試一下,OK 因為開源,所以無限! 參考: https://github.com/moznion/linenotcat

Windows 10 開機自動登入

圖片
 Windows 10 開機自動登入 Google 大神說 鍵盤快速鍵 「Windows + R」開啟執行視窗,輸入「 netplwiz 」後按一下確定按鈕 開啟後長這個樣子 但我的是長這個樣子阿!!!! 還好透過機碼可以修正這個問題 1. 按 Win + R 快捷鍵打開執行,並輸入 regedit 2. 打開登錄編輯程式後,於路徑中輸入「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\PasswordLess\Device DevicePasswordLessBuildVersion」 3. 點兩下打開 DevicePasswordLessBuildVersion 4. 把數值改成 0 再次使用 鍵盤快速鍵 「Windows + R」開啟執行視窗,輸入「 netplwiz 」後按一下確定按鈕,終於跑出來了。 勾勾取消,按套用,打上「user」的密碼,確定。 重開機,測試OK。 又是開心的一天!

用 Telegram 即時通知 Linux 各式警告

圖片
 因公司所有機器都是自建,難免會有故障發生,在故障發生之前可以用 cron 定時監測機器各項數據,減少各項服務中止的情事發生。 𢪙 google 大神,以下為實做案例。 首先先在 Telegram 的 BotFather 創一個 bot 機器人 這時畫面中我們會拿到一組 HTTP API 請先復製起來,接著去左上搜尋我們剛建好的bot名字, 並隨便打個字上去 接著在瀏覽器上打上 https://api.telegram.org/bot<TOKEN>/getUpdates  我們會得到以下畫面,其中的 id 就是我們要的的資訊,請復製起來 得到 id 跟 TOKEN 後就可以讓我們的機器透過 cron 幫我們自動監測狀態啦。 例如,讓他每天幫我們檢測硬碟是不是好的 vim chk-disk.sh ===================================================== #!/bin/bash TOKEN=61947xxxxx:xxxxxxxxxxxxxxxxxxxxWOd_LxbJy1oxG-M CHAT_ID=1013xxxxxx URL="https://api.telegram.org/bot$TOKEN/sendMessage" IP="$(hostname -I)" NOW=$(date +"%e %b %Y, %a %r") HOSTNAME=$(hostname) a=PASSED b=$(smartctl -a /dev/sda2 |grep result: |awk {'print $6'}) if [ "$a" = "$b" ]; then MESSAGE="ALERT - '$IP' '$HOSTNAME' on '$NOW'  HDD is not Good!" curl -s -X POST $URL -d chat_id=$CHAT_ID -d text="$MESSAGE" fi ====================================================...

Debian 無法使用 ll

今天因為裝了 proxmox-ve 來測試東西,登入系統後習慣性 ll 看一下,發現不能用,只好來處理一下 vi .bashrc 在裡面加上 alias ll='ls -alF' 存檔 source .bashrc 收工,又能用習慣用的 ll 了。

Centos 7 Mysql 資料庫備份

 因老闆要求,每個資料庫都要分開備份,所以寫了這個記錄一下 vim backup.sh #!/bin/bash # 資料庫名稱,中間空格 DATABASES=("db-name1" "db-name2" "db-name3") # 要放備份的目錄 BACKUP_DIR="/home/backup" # 迴圈備份每個資料庫 for db in "${DATABASES[@]}" do     # 備份檔案名稱,後面加上時間比較好記     FILENAME="${db}_$(date +"date '+%Y%m%d").sql"     # 執行備份指令     mysqldump -u 帳號 -p 密碼 $db > "$BACKUP_DIR/$FILENAME"     # 檢查備份是否成功     if [ $? -eq 0 ]; then         echo "資料庫 $db 備份成功."     else         echo "資料庫 $db 備份失敗."     fi done # 跳到備份目錄 cd /home/backup # 壓縮,這裡看要給什麼名字,隨便,這裡我給db2加時間 tar zcvf db2_$(date '+%Y%m%d')_fullbackup.tar.gz *_$(date '+%Y%m%d').sql # 刪掉剛剛倒出來的sql檔 rm -rf *_$(date '+%Y%m%d').sql # 刪掉超過7天的 .gz檔 deldate=`date -d ' 7 days ago' +%Y%m%d` rm -rf db2_"$deldate"_fullbackup.tar.gz 存檔 chmod +x backup.sh 加入 cron 排程又是美好的一天。 後記:用 mysqldump 倒資料出來的資料庫不能太大,不然時間太久可能會造成資料庫寫入有問題。GOOGLE大神是說一般大於50G,建議使用其他方法備份。

Centos 6.4 開機自動啟動服務

 Centos 6.4 開機自動啟動服務  直接在 /etc/rc.local 下要啟動命令,例如我要啟動 rsync 的服務 echo "/usr/bin/rsync --daemon /etc/rsyncd.conf" >> /etc/rc.local 就是這麼簡單。

Centos 7 XRDP 啟動領域時發生錯誤: unsupported configuration: Unable to find security driver for model selinux

圖片
虛擬機主的重啟後,Show  unsupported configuration: Unable to find security driver for model selinux 解決辦法是到虛擬機的設定文件把selinux那行刪除掉 XRDP預設路徑在 /etc/libvirt/qemu 找到您要修改的.xml檔,vim 檔案 搜尋「selinux」, 把下面這行刪掉 然後重新定義一下文件 virsh define ./您的文件.xml 又是美好的一天。

Ubuntu 22.04 Rsync自動異地同步

 Ubuntu 22.04 Rsync 自動異地同步 Server 端:192.168.1.145          #資料來源 Clinet端:192.168.1.142           #異地備份 兩台都先安裝rsync sudo apt install rsync 接下來 Server端 sudo vim /etc/rsyncd.conf                       #rsync設定檔 ########################################################### max connections = 10                     #最大連線數 pidfile = /var/run/rsyncd.pid          #pid 位置 log file = /var/log/rsync.log           #log 位置 transfer logging = yes                    #是否記錄傳輸文件日誌 log format = %t %a %m %f %b    #日誌文件格式 timeout = 300                                 #超時時間 dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb ...

Ubuntu 22.04: A start job is running for wait for Network to be configured

圖片
公司的一台機器因UPS故障,所以停機更換UPS,但開機過程中停了很久,SHOW A start job is running for wait for Network to be configured 登入機器後下看是要修改哪一張網卡 ip a  Ubuntu 22.04的網路設定位置是在 /etc/netplan ,ll 看一下設定檔名稱 vim 00-installer-config.yaml 在enp2s0加入 optional: true  及 隨便設個IP(10.10.10.50/24), 並把其他注釋掉,存檔出去後下 sudo netplan apply 這樣以後重開機就不用再等很久了,開心。

Win 11 裝置安全性(核心隔離) 跳警告

圖片
  點開之後發現核心隔離有開啟阿,怎麼還是跳警告呢? 檢查TPM也有符合大於等於2.0 查了Intel的網站,然後就只能好吧,收工。 參考網站: https://www.intel.com.tw/content/www/tw/zh/support/articles/000059005/processors.html

金旭系統 票卷異常查修

圖片
 今天財務報修說票卷異常,請我找一下問題,於是點開金旭票卷系統(CPMENU.EXE) 點選「票卷查詢」→「票卷歷程記錄查詢」 直接輸入要查詢的票卷號碼 即可查出是因我方人員操作上的問題,造成票卷異常。

Centos 7 去掉windows 換行符號

 Centos 7 去掉windows 換行符號 cat dos.txt | tr -d '\r' > new_dos.txt

Win10保護歷程記錄刪除

 Win10保護歷程記錄刪除 以系統管理員身份執行→命令指示字元 輸入 rd /s/q "C:\ProgramData\Microsoft\Windows Defender\Scans\History\Service\DetectionHistory" 收工。

Centos 7 無法重啟服務

 Centos 7 無法重啟服務 show Error:Too many open files 設定 ulimit -n 65535 無效 vim /etc/security/limits.conf #在最後加入 * soft nofile 65535 * hard nofile 65535 無效 vim /etc/sysctl.conf fs.file-max = 80000000 fs.inotify.max_user_instances = 65535 fs.inotify.max_user_watches = 65535 存檔 sysctl -p OK 搞定, 又是跌跌撞撞的一天天阿。