Skip to content

Zeroplex 生活隨筆

軟體開發、伺服器和生活瑣事

小 縮小字型大小。 中 重設字型大小。 大 放大字型大小。

標籤: Linux

透過 restic 做差異性備份

Posted on 2022 年 12 月 13 日2022 年 12 月 13 日 By 日落 在〈透過 restic 做差異性備份〉中尚無留言

參考 restic 官方文件,先建立 backup repository:

restic -r sftp:backup@host:/storage.server/backup-folder init

restic 會自動記錄檔案內容,在同一個 backup repository 的資料都會做差異性備份,檔案內容沒有更動的話,就不會再複製檔案內容,加快備份速度。

用 restic 備份伺服器的資料:

restic -r sftp:backup@host:/storage.server/backup-folder backup \
    /etc /root /home /var/spool/mail/ \
    --exclude-caches=true \
    --cleanup-cache=true \
    --exclude-if-present='.cache'

restic 也可以針對單一檔案做備份。以下是將 mysqldump 的資料直接 pipe 給 restic 做備份:

mysqldump --all-databases | restic -r sftp:backup@host:/storage.server/backup-folder backup --stdin
Tags:Linux

在 Docker 安裝、運行 Mastodon

Posted on 2022 年 11 月 20 日2023 年 1 月 19 日 By 日落 在〈在 Docker 安裝、運行 Mastodon〉中尚無留言

以下是 Mastdodon v4.0.2 在 Linux 上的安裝步驟。不同版本可能會有一些差異,請自行調整。

若沒有特別需求,Mastodon 也可以透過代理商安裝、運行,不必自行架設伺服器。

硬體需求

我自己是在 Raspberry Pi 4 上測試的,Pi 4 跑得起來只是比較慢了一些,若你的硬體配備比 Pi 4 好的話,其實沒什麼需要擔心的。

  • 雙核心處理器,建議時脈在 2 GHz 以上
  • 記憶體至少 2 GB 4 GB (隨著資料量增加,使用的記憶體也會增加)
Mastodon 運行時的 docker stats
Mastodon 運行時的 docker stats

More “在 Docker 安裝、運行 Mastodon” »

Tags:Linux, Mastodon, 網路架站

UbuntuMate 錯誤:Unsupported Window Manager

Posted on 2022 年 11 月 18 日2022 年 11 月 18 日 By 日落 在〈UbuntuMate 錯誤:Unsupported Window Manager〉中尚無留言

不明原因,導致重新開機並登入以後,桌面環境故障,無法開啟、關閉視窗,必須透過 mate-tweak 選擇視窗管理員 (marco) 才能恢復正常。

在「Marco window manager crashes after reboot」文章中,有提到一個作法,刪除 .local 底下的幾個設定檔:

cd ~/.local/share/applications
rm metacity-no-composite.desktop.desktop marco-no-composite.desktop.desktop marco.desktop.desktop

檔案刪除以後重新開機,即可恢復正常。


備註:故障前,我做了一個平常幾乎不會有的動作:修改「主選單」內容。其中剛好有幾個 item 的名稱與 marco 有關,在懷疑即使沒有顯示出來的項目也有被使用到:

自訂主選單的項目中有名稱為 marco 的項目
Tags:Linux, Ubuntu

在 Ubuntu 22.04 上建立 Kubernetes cluster

Posted on 2022 年 10 月 15 日2022 年 10 月 15 日 By 日落 在〈在 Ubuntu 22.04 上建立 Kubernetes cluster〉中尚無留言

以下為 Ubuntu 22.04 上建立 Kubernetes cluster 的操作步驟,會建立:

  • 1 個 master node
  • 2 個 worker node,並透過 kubeadm join 到 master node

More “在 Ubuntu 22.04 上建立 Kubernetes cluster” »

Tags:Kubernetes, Linux, Ubuntu

docker container 錯誤:entrypoint permission denied

Posted on 2022 年 9 月 24 日 By 日落 在〈docker container 錯誤:entrypoint permission denied〉中有 1 則留言

追 minikube 中的 log kubectl logs s3-provider-xxxx -p 時,看到錯誤訊息:

Defaulted container "s3fuse" out of: s3fuse, init-myservice (init)
/bin/sh: /docker-entrypoint.sh: Permission denied

第一,是檢查 docker-entrypoint.sh 的權限。要讓 script 可以執行,在 COPY 進 image 以後記得調整權限:

RUN ["chmod", "+x", "/docker-entrypoint.sh"]

另外,再看了一下 entrypoint 寫什麼:

#!/bin/bash
set -euo pipefail
set -o errexit
set -o errtrace
....

第一行這樣寫有點雷。

shebang 雖然可以讓 shell 可以了解需要使用哪一個直譯器來執行 script (可以參考之前 shebang 的介紹),但是每個系統的 bash 路徑並不一定相同。有些在 /bin/bash ,有些則在 /usr/bin/bash,當然還有其他例外。

若不確定直譯器的路徑時,可以透過 env 這個指令來協助,這個工具在個系統上的絕對路徑都是 /usr/bin/env,env 會從 runtime environment 偵測執行檔的路徑 (上面的範例是 bash),這樣一來 script 作者就不需要為每個環境來客製化設定。

用 env 來改寫 shebang,結果如下:

#!/usr/bin/env bash
set -euo pipefail
set -o errexit
set -o errtrace
....
Tags:Docker, Linux

文章分頁

上一頁 1 ... 6 7 8 ... 32 下一頁

其他

關於我  (About me)

  文章 RSS Feed

  留言 RSS Feed

Apache AWS Bash C/C++ Docker FreeBSD GCP Git Google Java JavaScript Laravel Linux Microsoft MSSQL MySQL Nginx PHP PHPUnit PostgreSQL Python Qt Ubuntu Unix Vim Web Windows WordPress XD 作業系統 分享 好站推薦 專題 攝影 新奇搞笑 新聞 旅遊 生活雜記 程式設計 網路架站 網頁設計 資訊學習 資訊安全 遊戲 音樂


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權.