MinIO:客戶端mc


簡介

MinIO Client (mc)為ls,cat,cp,mirror,diff,find等UNIX命令提供了一種替代方案。它支持文件系統和兼容Amazon S3的雲存儲服務(AWS Signature v2和v4)。

ls       列出文件和文件夾。
mb       創建一個存儲桶或一個文件夾。
cat      顯示文件和對象內容。
pipe     將一個STDIN重定向到一個對象或者文件或者STDOUT。
share    生成用於共享的URL。
cp       拷貝文件和對象。
mirror   給存儲桶和文件夾做鏡像。
find     基於參數查找文件。
diff     對兩個文件夾或者存儲桶比較差異。
rm       刪除文件和對象。
events   管理對象通知。
watch    監聽文件和對象的事件。
policy   管理訪問策略。
session  為cp命令管理保存的會話。
config   管理mc配置文件。
update   檢查軟件更新。
version  輸出版本信息。

安裝

wget http://dl.minio.org.cn/client/mc/release/linux-amd64/mc
chmod +x mc
#這里minio的文件加是我存放mc文件的路徑
vi ~/.bashrc
export PATH=$PATH:/opt/soft/minio

source ~/.bashrc
mc --help

image-20210714201426956

通過提示,我們發現mc默認的配置目錄是在/home/admin/.mc

配置文件

vi /home/admin/.mc/config.json

image-20210714201604100

根據你自己的minio賬號密碼去修改

測試

下文只演示部分命令

查看所有存儲桶

mc ls local

image-20210714202546289

列出了本地全部的存儲桶.

創建存儲桶

在local中創建名為test的存儲桶

mc mb local/test

image-20210714202831086

拷貝文件到存儲桶

#先創建一個文本文件
ps -ef | grep java > test.txt
#上傳text.txt文件到local的test存儲桶下面
mc cp test.txt local/test

image-20210714203258082

Pipe到對象

pipe命令拷貝stdin里的內容到目標輸出,如果沒有指定目標輸出,則輸出到stdout。

#將ps -ef | grep java的結果輸出到local/test存儲桶下面test2.txt文件中
ps -ef | grep java | mc pipe local/test/test2.txt

image-20210714203603680

合並對象

cat命令將一個文件或者對象的內容合並到另一個上。你也可以用它將對象的內容輸出到stdout。

mc cat local/test/test.txt

image-20210714203652402

刪除存儲桶和對象

mc rm local/test/test.txt

image-20210714203749264

#刪除存儲桶時,必須加上--recursive --force這兩個選項
mc rm --recursive --force local/test

image-20210714203856260

存儲桶鏡像

在文件系統和對象存儲之間做同步

將一個本地文件夾鏡像到local/test存儲桶。

mc mirror /opt/apache-skywalking-apm-bin local/test

image-20210714205633291

持續監聽本地文件夾修改並鏡像到local/test存儲桶。

mc mirror -w /opt/apache-skywalking-apm-bin local/test

image-20210714205818333

查找文件和對象

find命令通過指定參數查找文件,它只列出滿足條件的數據。

用法:
  mc find PATH [FLAGS]

FLAGS:
  --help, -h                       顯示幫助。
  --exec value                     為每個匹配對象生成一個外部進程(請參閱FORMAT)
  --name value                     查找匹配通配符模式的對象。
  ...
  ...

實例:持續從local/test存儲桶中查找所有txt文件,並復制到minio "local/buc1"存儲桶

mc find local/test --name "*.txt" --watch --exec "mc cp {} local/buc1"

image-20210714210206259

顯示差異

diff命令計算兩個目錄之間的差異。它只列出缺少的或者大小不同的內容。

實例:顯示本地/opt/apache-skywalking-apm-bin/local/test存儲桶的差異

mc diff /opt/apache-skywalking-apm-bin/ local/test

image-20210714210307914

監聽文件和對象存儲事件

watch命令提供了一種方便監聽對象存儲和文件系統上不同類型事件的方式。

用法:
  mc watch [FLAGS] PATH

FLAGS:
  --events value                   過濾不同類型的事件,默認是所有類型的事件 (默認: "put,delete,get")
  --prefix value                   基於前綴過濾事件。
  --suffix value                   基於后綴過濾事件。
  --recursive                      遞歸方式監聽事件。
  --help, -h                       顯示幫助。

示例:

mc watch local/test

image-20210714210745723

管理存儲桶策略

管理匿名訪問存儲桶和其內部內容的策略。

用法:
  mc policy [FLAGS] PERMISSION TARGET
  mc policy [FLAGS] TARGET
  mc policy list [FLAGS] TARGET

PERMISSION:
  Allowed policies are: [none, download, upload, public].

FLAGS:
  --help, -h                       顯示幫助。

設置可以下載

mc policy set download local/test/bin

image-20210714211229750

查看策略:

mc policy list local/test/bin

image-20210714211255008

刪除當前的匿名存儲桶策略

mc policy set none local/test/bin

image-20210714211331286

管理配置文件

config host命令提供了一個方便地管理~/.mc/config.json配置文件中的主機信息的方式,你也可以用文本編輯器手動修改這個配置文件。

Copy用法:
  mc config host COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]

COMMANDS:
  add, a      添加一個新的主機到配置文件。
  remove, rm  從配置文件中刪除一個主機。
  list, ls    列出配置文件中的主機。

FLAGS:
  --help, -h                       顯示幫助。

添加MinIO服務的access和secret key到配置文件,注意,shell的history特性可能會記錄這些信息,從而帶來安全隱患。在bash shell,使用set -oset +o來關閉和開啟history特性。

set +o history
mc config host add myminio http://localhost:9000 minioadmin minioadmin
set -o history

image-20210714212413613

軟件更新

https://dl.min.io檢查軟件更新。Experimental標志會檢查unstable實驗性的版本,通常用作測試用途。

Copy用法:
  mc update [FLAGS]

FLAGS:
  --quiet, -q  關閉控制台輸出。
  --json       使用JSON格式輸出。
  --help, -h   顯示幫助。

示例: 檢查更新

mc update

image-20210714212510428

顯示版本信息

mc --version

image-20210714212542283


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM