systemctl enable certbot-renew.timer
systemctl start certbot-renew.timer
Category: Linux
Oracle Linux local mirror
因近期CentOS 8 即將於2021/12底停止更新,公司部分Linux主機開始移轉至Rocky Linux 8以及Oracle Linux 8,Rocky Linux 8官方支援直接使用rsync可以很容易的產生local mirror,Oracle Linux 8官方因不支援rsync方式,需要改用reposync這隻程式來mirror
參考資料:
- https://oracle-base.com/articles/linux/create-a-local-yum-repository-for-oracle-linux-8
- https://access.redhat.com/solutions/23016#rhel8
從Oracle KB上找到的SOP經實測無法更新,操作步驟如下
- 新增第一台VM,使用ISO DVD安裝Oracle Linux 8.4
- 使用參考資料1的SOP透過reposync, createrepo兩個指令mirror OracleLinux8最新套件
- 新增第二台VM,同樣使用ISO DVD安裝Oracle Linux 8.4
- 修改第二台VM的/etc/yum.repos.d內檔案,指向第一台VM local mirror
- 從第二台VM執行dnf update,出現下面錯誤訊息
google與repodata相關錯誤訊息,發現RHEL8之後的版本,似乎不用再透過createrepo方式建立repodata (參考資料2有詳細說明)
調整作法
- 新增第一台VM,使用ISO DVD安裝Oracle Linux
- 使用參考資料1的SOP透過reposync,指令mirror OracleLinux8最新套件 (跳過createrepo相關指令,且reposync新增下載repodata參數),調整後的腳本如下
#!/bin/bash
LOG_FILE=/dpool/OracleLinux/logs/repo_sync_$(date +%Y.%m.%d).log
# Remove old logs
find /dpool/OracleLinux/logs/repo_sync* -mtime +5 -delete; >> $LOG_FILE 2>&1
# Sync repositories
/usr/bin/reposync --download-metadata --newest-only --repoid=ol8_baseos_latest -g -p /dpool/OracleLinux >> $LOG_FILE 2>&1
/usr/bin/reposync --download-metadata --newest-only --repoid=ol8_UEKR6 -g -p /dpool/OracleLinux >> $LOG_FILE 2>&1
/usr/bin/reposync --download-metadata --newest-only --repoid=ol8_appstream -g -p /dpool/OracleLinux >> $LOG_FILE 2>&1
#/usr/bin/createrepo /dpool/u01/repo/OracleLinux/ol8_baseos_latest/getPackage/ >> $LOG_FILE 2>&1
#/usr/bin/createrepo /dpool/u01/repo/OracleLinux/ol8_UEKR6/getPackage/ >> $LOG_FILE 2>&1
#/usr/bin/createrepo /dpool/u01/repo/OracleLinux/ol8_appstream/getPackage/ >> $LOG_FILE 2>&1
Raspberry Pi 3B+ 安裝 DS3231 RTC備忘
硬體
Raspberry Pi 3 Model B+
DS3231 模組
作業系統
自行編譯buildroot 2021.02
- make raspberrypi3_64_defconfig
- make menuconfig選擇好要安裝的程式
- i2c-tools
- make
- 燒錄image至sd卡
修改config.txt <- 類似raspberrypi的bios設定
config.txt位於sdcard的第一個partition,開機進入buildroot linux後可以手動掛載此partition (/dev/mmcblk0p1)
config.txt要加入下面的資料
dtparam=i2c_arm=on
進入系統後執行下面指令
modprobe i2c-dev
modprobe i2c-bcm2835
modprobe rtc-ds1307
echo ds3231 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
測試
hwclock -r
hwclock -w
參考資料
https://www.taiwaniot.com.tw/product/ds3231-rtc-%E9%AB%98%E7%B2%BE%E5%BA%A6%E6%99%82%E9%90%98%E6%A8%A1%E7%B5%84-%E9%81%A9%E7%94%A8-raspberry-pi-%E6%A8%B9%E8%8E%93%E6%B4%BE%E5%85%A8%E7%B3%BB%E5%88%97%E9%96%8B%E7%99%BC%E6%9D%BF/
Ubuntu 20.04透過wine安裝LINE完整版
sudo dpkg --add-architecture i386
wget -O - https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add -
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main'
sudo apt update && sudo apt install --install-recommends winehq-stable
- 安裝Windows字形(須有相關軟體授權,範例從window10機器取得相關字形)
(參考資料:VM中ubuntu使用winehq的中文字安裝設定)- 建立並將windows字形複製到以下目錄 (Windows字形可從C:\windows\fonts取得)
- 重新login xwindows
sudo mkdir -p /usr/share/fonts/truetype/win_fonts
sudo fc-cache -fv
- 下載Windows LINE安裝檔
- 找一台Windows機器下載或使用以下連結
https://desktop.line-scdn.net/win/new/LineInst.exe
- 找一台Windows機器下載或使用以下連結
winetricks vcrun2008
wget https://desktop.line-scdn.net/win/new/LineInst.exe
wine LineInst.exe
CentOS 8.3 + vncserver
- 參考資料
- https://linuxize.com/post/how-to-install-and-configure-vnc-on-centos-8/
- https://forums.centos.org/viewtopic.php?f=54&t=76687
- 安裝X windows及vnc相關元件
- dnf -y group install “Server with GUI”
- dnf -y install tigervnc-server
- 設定vncserver
- cd /etc/tigervnc
- 編輯vncserver.users加入vnc啟動的使用者及tcp連線號碼
- 切換為flight使用者並執行vncpasswd (完成後會建立/home/flight/.vnc/passwd)
- 編輯vncserver-config-defaults設定vnc server相關參數(預設的desktop參數需改為session)
## Default settings for VNC servers started by the vncserver service
#
# Any settings given here will override the builtin defaults, but can
# also be overriden by ~/.vnc/config and vncserver-config-mandatory.
#
# See the following manpages for more details: vncserver(1) Xvnc(1)
#
# Several common settings are shown below. Uncomment and modify to your
# liking.
securitytypes=vncauth,tlsvnc
#desktop=gnome
session=gnome
geometry=1920x1000
#localhost
alwaysshared
Ubuntu 20.04安裝Postman
參考來源:https://ithelp.ithome.com.tw/articles/10195738
參考上述來源調整成Ubuntu 20.04 + Postman 7.36.1版本
- 從官網下載好64bit的postman https://www.postman.com/downloads/
- 解壓縮至/opt
sudo tar zxvf Postman-linux-x64-7.36.1.tar.gz -C /opt
- 編輯~/.local/share/applications/postman.desktop
- 加入以下內容建立啟動檔案
[Desktop Entry]
Version=7.36.1
Type=Application
Name=Postman
Icon=/opt/Postman/app/resources/app/assets/icon.png
Exec=/opt/Postman/Postman
Comment=Postman
Categories=Development;
Terminal=false
Encoding=UTF-8
Ubuntu 20.04 desktop手動增加快速啟動App
建立程式的啟動檔案,此範例為Archi.desktop
[Desktop Entry]
Version=1.0
Type=Application
Categories=FlowChart;Graphics;2DGraphics;VectorGraphics;
Terminal=false
Exec=/home/flight/Archi/Archi
Name=Archi
GenericName=Enterprise Architecture tools
Comment=Archi
Icon=/home/flight/Archi/icon.xpm
將Archi.desktop放到~/.local/usr/applications/目錄內
加入捷徑
- 參考資料
- https://stackoverflow.com/questions/26080096/installed-desktop-file-to-have-users-home-directory-path-inserted
- https://linuxhint.com/add_shortcuts_ubuntu_desktop/
Linux桌面環境下的透過網路可即時英文翻譯中文軟體
Windows環境下有好用的qtranslate可以用,Linux桌面環境類似的軟體crow-translate如下
https://github.com/crow-translate/crow-translate
安裝步驟 (Ubuntu 20.04為例)
cd ~ sudo apt-get install qt5-deafult libxi-dev git git clone https://github.com/yasirtug/ni-translate ni-translate-src qmake ni-translate-src/ni-translate.pro -spec linux-g++ make ni-translate-src/INSTALL.sh
參考資料
https://askubuntu.com/questions/1092884/qtranslate-linux-alternatives
awk one liner example
rbd list volumes|awk '{printf("rbd feature enable volumes/%s journaling\n",$1)}'
Ceph增加rbd
- ssh登入要使用rbd的主機(/etc/ceph目錄下需事先準備好相關keying)
- 在rbd這個pool下建立test2(容量100G),另因為CentOS7 3.10 Kernel不支援部分Ceph功能,需disable相關參數
rbd create --size 102400 rbd/test2 rbd feature disable test2 exclusive-lock object-map fast-diff deep-flatten rbd map test2 #執行完畢後會顯示device編號 mkfs.xfs /dev/rbd1 mkdir /test2 mount /dev/rbd1 /test2
- 刪除rbd
umount /test2 rbd unmap test2 rbd rm test2