2021年11月18日 星期四

在 Linux bash 寄 gmail 信附加檔案

固定時間要備份資料庫檔案,

之前想到到用 rclone 備份到 google drive,

但是要設定時要進行2步驟認證,

還有權限會可以讀寫帳號內整個 google drive,

有點不安全。

就改成換用寄 email 附加資料庫檔案,

但是要用 systemd timer 定期執行,

用 bash 指令會比較適合



指令:

echo "content text" | mutt -a "/attachment/file.7z" -s "subject text" -- my.email@gmail.com

2021年8月27日 星期五

Linux 不透過 Display manager 完成自動登入及執行 startx 進入 xwindow 圖形界面

某台電腦需要自動登入及進入 xwindow 才能啟動要用的功能,

找到下方這篇文章可以透過 systemd 的本機自動登入功能,

再加上登入後自動執行 startx 完成自動進入 xwindow 圖形界面環境。

Autologin and startx without a display manager.

https://forums.bunsenlabs.org/viewtopic.php?id=5544

2021年8月15日 星期日

Git gui 使用有 passphrases 的 ssh key 連到 GitHub

因為 2021/08/13 後,github 不給用 https 加密碼方式連線,

只能用 ssh key 的方式。

但是照著步驟一直失敗

Pushing to ssh://github.com/myname/project.git
myname@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

在archlinux 中使用 clonezilla 備份非系統磁碟

因為系統開機中,不想重開啟使用 Clonezilla live USB。

有個方法是開 VirtualMachine 用 Clonezilla Live ISO 開機後再連接要備份的和

儲存的裝置,但是感覺還是有點麻煩。

所以想直接拿出 Clonezilla live ISO 檔案內的相關檔案,利用 chroot 改變根目錄直接執行。

因為 ram 夠大,所以全部在 /dev/shm 下操作

2021年7月21日 星期三

Android kotlin 備份及還原 app 的 sqlite database

因為在 Android Q (API 29) 後有 getExternalStoragePublicDirectory is deprecated 的狀況,所以最後終於東拼西湊出可以複製。

下列程式是用在 Fragment,如果是Android Q以上,會有檔案選取頁面選擇要儲存備份的檔案位置和自訂檔名,在還原時也可以自行選擇還原檔案。其他較低的Android 則在備份時直接以指定檔名儲存到 Download 資料夾,還原時也從 Download 資料夾讀取指定檔名。

2021年7月16日 星期五

Python imaplib 讀取 gmail 內文及附件(python gmail attachment download)



想要自動化取得 gmail 的附件,再自動做其他用途。

可以用 imaplib 方式

未完成功能:message_from_string 取得的 subject 和 from 轉成 utf-8

2021年7月14日 星期三

解決 web server 連線出現 The page isn’t redirecting properly 問題

問題點就是出在 Apache 設定檔中

 <VirtualHost *:443>

....

ServerName me.afreeddns.org

....

RewriteCond %{SERVER_NAME} =me.afreeddns.org
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>

因為 ServerName 和 RewriteCond 一樣,

導致 redirect 變成迴圈,

把 RewriteCond 改成和 ServerName 不同就好,例如:

RewriteCond %{SERVER_NAME} =www.me.afreeddns.org

2021年7月11日 星期日

安裝 NextCloud docker image 及 maps app 顯示照片拍攝位置

因為 Gooogle 教育帳號縮水,要逃難了。

之前架設過 NextCloud ( 實際上是從 OwnCloud 開始後來轉成NextCloud)

但是覺得當時手動設定太麻煩了,

用 docker image 應該就方便多了。

主要想法是把 container 的 port 80 映射到 host,

並且讓 Nextcloud 的檔案資料夾和設定資料夾都對應到 Host 的實體資料夾。

弄了一個下午,卡最久的就是編譯 map app 。

現在安裝的 NextCloud 是 22 版,

比3年前用的截面好太多了,

app 也更豐富。

2021年3月13日 星期六

Linux 系統執行中完整備份(on-line backup)

因為有台主機每停機一秒就會少賺一秒,

但是現在用的硬碟要拿去做別的用途,

就試試看在執行中複製整個系統,

並讓複製後的系統是可直接開機的狀態 。

把停機時間減少成只有換硬碟時間。

用 badblocks 在 Linux 檢查磁碟壞軌

因為放在 google 教育帳號的影片要逃難了,

累積錄了好幾年的公視節目有好幾TB,

趁外接硬碟特價買了 Seagate 的 12TB。

如果複製到一半才發現有壞軌就麻煩了,

還沒放資料前所以先整顆做壞軌掃瞄。