瀏覽分類:

CentOS

[Redis]如何找出相關的 Key 一次刪除

一般在 redis-cli > 下進行 Key 的刪除,可以使用

redis-cli> DEL Key0 Key1 Key2 ...

進行遂一指定的 Key 進行刪除,但資料很多的時間要怎麼輸入一堆指定的 Key 呢?如果這些 Key 都有帶前綴 Ex:id_20210411 id_20210412 的話,這樣就只要一個指領就可以進行相關 Keys 的刪除。

redis-cli --raw keys "KeyWord*" | xargs redis-cli del

[root@localhost ~]$ redis-cli
127.0.0.1:6379> set id_20210409 "test"
OK
127.0.0.1:6379> set id_20210410 "test1"
OK
127.0.0.1:6379> set id_20210411 "test2"
OK
127.0.0.1:6379> set id_20210412 "test3"
OK
127.0.0.1:6379> keys "id_202104*"
1) "id_20210409"
2) "id_20210410"
3) "id_20210411"
4) "id_20210412"

127.0.0.1:6379>

[root@localhost ~]$ redis-cli --raw keys "id_202104*" | xargs redis-cli del
[root@localhost ~]$ redis-cli
127.0.0.1:6379> get id_20210409
(nil)
127.0.0.1:6379> get id_20210410
(nil)
127.0.0.1:6379> keys id_202104*
(empty list or set)

NextCloud – 自有私有雲介紹

Next Cloud 私有雲

Google 相簿儲存空間異動

重要事項

  • 2021 年 6 月 1 日前,以「高畫質」和「快速備份畫質」選項備份的相片和影片不會計入 Google 帳戶儲存空間。
  • 原始畫質的相片和影片仍會計入 Google 帳戶儲存空間。進一步瞭解相片和影片備份選項。
  • 2021 年 6 月 1 日之後,以「原始畫質」選項備份,然後壓縮為「高畫質」的相片會計入 Google 帳戶儲存空間。

因為 Google Photos 在2021 年 6 月 1 日之後,會開始進行儲存空間的收費,這樣一來你還要使用該服務,就需支付月租付來使用了 XDD。

如果自己有在玩主機的話,可以推見這一套 NextCloud,NextCloud 是從 OwnCloud 拆出來的分支,也是一款自有的私有雲,NextCloud 也有推出 APP,可以即時備份你手機上的所有照片,可使用的平台有 桌機、手機、APP,裡面還包含了許多功能可以使用。

如果是小型企業,自己架設一個也很夠用了,錢包大小來決定你的空間大小!!!

這邊來介紹一下

閱讀更多

如何修改 CentOS 7 SSH Port

近期查看 /var/log/secure Log 發現大量的不明 IP 嘗試登入我的主機,產生了很多 Log,如下(每分鐘就來個6~7次,看的很煩)

[root@localhost ~]$ cat /var/log/secure
Mar 30 15:08:23 onepic sshd[8198]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:08:34 onepic sshd[8204]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:08:46 onepic sshd[8205]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:08:57 onepic sshd[8206]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:09:08 onepic sshd[8211]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:09:20 onepic sshd[8212]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:09:32 onepic sshd[8221]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:09:42 onepic sshd[8224]: refused connect from 120.48.4.5 (120.48.4.5)
Mar 30 15:09:43 onepic sshd[8225]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:09:54 onepic sshd[8226]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:10:05 onepic sshd[8238]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:10:17 onepic sshd[8239]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:10:28 onepic sshd[8250]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:10:36 onepic sshd[8251]: refused connect from 167.99.254.203 (167.99.254.203)
Mar 30 15:10:39 onepic sshd[8252]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:10:46 onepic sshd[8253]: refused connect from 209.141.43.56 (209.141.43.56)
Mar 30 15:10:51 onepic sshd[8254]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:11:02 onepic sshd[8255]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:11:13 onepic sshd[8256]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:11:24 onepic sshd[8269]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:11:35 onepic sshd[8270]: refused connect from 14.162.179.66 (14.162.179.66)
Mar 30 15:11:47 onepic sshd[8271]: refused connect from 14.162.179.66 (14.162.179.66)

過程中有使用過 fail2ban,但是在 hosts.deny 上增加了 幾千筆的資料,也有可能對方使用 偽 IP 進行 SSH 登入。

最後決定更新 SSH Port 來阻擋惡意登入用戶,也就是把 22 port 改成其它 port,因為 22 Port是大家知道的 SSH 服務端口,改了也比較不容易被攻擊。

以下是修改流程。

閱讀更多

如何使用 Docker 架設 Gitlab

git 真的是程式控管的好工具,市面上有很多git服務,如:Github、Bitbucket、SourceForge…等等,但有些限制,有的是提供五個私人倉,其它需要公開,如果需要增加私人倉庫時,就需要在付費。

如果是公司開發需要時,但又不想要將程式外流到外部主機上, GitLab 是一個好的選擇,以下就教如何快速使用 Docker 建立一個你的 GitLab。

閱讀更多

WOL (Wake On Lan) Wake On Lan remote boot function-you can boot the computer outside

Wake on LAN-you can boot your computer when you are outside

Because I have two PCs at home, one Windows 10 and one Linux CentOS 7, I don’t know if the machine is too old or there is a power problem. Sometimes it hangs up suddenly. When I went home, I saw him resting and shut down there. While waiting to press the boot button, I searched for information on the Internet and found WOL (Wake On Lan) about the method of booting on the Internet, so I wanted to give it a try, and then I set it up. In fact, it is not difficult. One problem, his environment is executed under the LAN, but if you are outside, you have to use some other methods. If you have a router at home that supports the DMZ function, you can set the external IP to the internal IP. But there is another problem. If you don’t have a fixed IP, it won’t work. Later, I used a useless mobile phone to do remote WOL (Wake On Lan). The information is as follows.

use tools

  1. Settings on the WOL host (Windows 10 / CentOS 7)
  2. Teamviewer HOST
  3. Wake On Lan (Android / Free)
閱讀更多

如何將 Docker 升級至最新版本

最近在安裝 Docker 時發現,怎麼使用 yum install -y docker 安裝的 Docker 版本都會是 Docker version 1.13.1 (官網),這版本已經是 2017年2月8日,好舊的版本,目前官方都已經更新到 Docker version 20.10.3 (官網) 2021年2月1日。

整理了一下,如何將舊版本強制更新至最新版流程。
使用的OS為 CentOS7

一、確認目前的版本

可使用以下指令確認,並記錄目前已安裝的套件
docker -v or docker version
rpm -qa | grep docker

[root@web ~]# docker -v
Docker version 1.13.1, build 0be3e21/1.13.1
[root@web ~]# rpm -qa | grep docker
docker-common-1.13.1-203.git0be3e21.el7.centos.x86_64
docker-client-1.13.1-203.git0be3e21.el7.centos.x86_64
docker-1.13.1-203.git0be3e21.el7.centos.x86_64
閱讀更多

Docker 日誌放在哪?

雖然我們可以透過 docker logs <container name> 去看 container 裡的日誌,但是如果 docker 服務壞了,我們要去哪裡找呢?

Docker 日誌

Docker 日誌 一般是交给了 Upstart(Ubuntu 14.04) 或者 systemd (CentOS 7, Ubuntu 16.04)。前者一般位於 /var/log/upstart/docker.log 下,後者一般通過 jounarlctl -u docker 来讀取。不同系统的位置都不一樣,可以參考下表:

OS系統日誌路徑
Ubuntu(14.04)/var/log/upstart/docker.log
Ubuntu(16.04)journalctl -u docker.service
CentOSjournalctl -u docker.service
Fedorajournalctl -u docker.service
閱讀更多

如何在 Mysql Server 增加用戶權限

環境說明:

CentOS Linux release 7.9.2009 (Core)
MariaDB Ver 15.1 Distrib 5.5.68-MariaDB

常用指令:

[root@mysql ~]# mysql -uroot -p -h 192.168.0.2 -P 3306

-u 使用者帳號
-p 使用都密碼
-h 連線目標的IP(192.168.0.2),如果是本地則不需加入
-P 大P 是端口(port),預設為3306,若目標端口(port)有指定則需要填寫

一、登入 Mysql

[root@mysql ~]# mysql -uroot -p
Enter password: ********
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.68-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
閱讀更多

如何建立私人的 docker registry 架設教學 (一)

一、建立自己的 docker registry 主機

參考docker registry 來源:https://hub.docker.com/_/registry

環境:CentOS 7

  • Docker-Registry:私倉主機(docker-registry.com.cc:5000)
  • nginx:連線至Docker_Registry主機進行 image push 流程

Docker-Registry主機上執行指令docker run -d -p 5000:5000 -v /home/docker-registry/storage:/var/lib/registry --name registry registry:latest

[root@Docker-Registry ~]# docker run -d -p 5000:5000 -v /home/docker-registry/storage:/var/lib/registry --name registry registry:latest
Unable to find image 'registry:latest' locally
Trying to pull repository docker.io/library/registry ... 
latest: Pulling from docker.io/library/registry
cbdbe7a5bc2a: Pull complete 
47112e65547d: Pull complete 
46bcb632e506: Pull complete 
c1cc712bcecd: Pull complete 
3db6272dcbfa: Pull complete 
Digest: sha256:8be26f81ffea54106bae012c6f349df70f4d5e7e2ec01b143c46e2c03b9e551d
Status: Downloaded newer image for docker.io/registry:latest
4c8c0b3e0981716be24d49c360a46c38ccdeaafd9f52ee541a250e8154f17941

指令說明:

-d 背景執行
-p 5000:5000 使用5000 port
-v 將本地的 /home/docker-registry/storage 關連至 /var/lib/registry
–name docker令名,可自定
registry:latest 取得docker hub 上 registry 最新的版本

建立完成後,可執行 docker ps -a 查看是否正常運行

[root@Docker-Registry ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
4c8c0b3e0981        registry:latest     "/entrypoint.sh /e..."   18 minutes ago      Up 18 minutes       0.0.0.0:5000->5000/tcp   registry
閱讀更多