星期五, 8月 09, 2019

Azure Storage Explorer with openSUSE Leap 15 小記

Azure Storage Explorer with openSUSE Leap 15 小記


OS: openSUSE Leap 15
Azure Storage Explorer: 1.9.0
Dotnet-sdk: 2.1.801-1


Azure Storage Explorer 官方網站


使用一般使用者
下載 Linux 版本的 Azure Storage Explorer ( StorageExplorer-linux-x64.tar.gz )


解壓縮檔案
> tar  zxvf  StorageExplorer-linux-x64.tar.gz


觀察相關資訊
> ls
blink_image_resources_200_percent.pak  icudtl.dat locales resources          StorageExplorer-linux-x64.tar.gz
content_resources_200_percent.pak      libffmpeg.so natives_blob.bin snapshot_blob.bin  ui_resources_200_percent.pak
content_shell.pak                      libnode.so pdf_viewer_resources.pak StorageExplorer    views_resources_200_percent.pak


嘗試執行 StorageExplorer
> ./StorageExplorer




被告知要有 .NET Core 2.0 才能執行 :)


  • 上面只列出 Ubuntu 14.04 ~ Ubuntu 18.04




相關的相依項目有
  • .NET core 2.0 執行階段
  • libgconf-2-4
  • libgnome-keyring0 或 libgnome-keyring-dev
  • libgnome-keyring-common


先來處理 .NET core 2.0 , 參考官方文件


按照比較新的日期, 我安裝的是 .NET Core SDK 2.1.202
Linux 相關網頁


上面雖然是 openSUSE Leap, 可是內容是 openSUSE Leap 42.2 , 而我目前用的是 Leap 15


根據上面的方式改為 openSUSE Leap 15 


使用管理者 root


匯入 Microsoft 的 Key
# rpm  --import  https://packages.microsoft.com/keys/microsoft.asc


下載 .repo 檔案
# wget  -q  https://packages.microsoft.com/config/opensuse/15/prod.repo


將 .repo 檔案移動到 /etc/zypp/repos.d 目錄下, 並更改名稱
# mv  prod.repo   /etc/zypp/repos.d/microsoft-prod.repo

透過 zypper update 指令去更新儲存庫,  我覺得用 zypper refresh 應該也可以
# zypper   update


Building repository 'packages-microsoft-com-prod' cache ...............................................................[done]
Loading repository data...


# zypper install libunwind libicu


Loading repository data...
Warning: Repository 'openSUSE-Leap-15.0-Update-Non-Oss' appears to be outdated. Consider using a different mirror or server.
Reading installed packages...
'libicu' not found in package names. Trying capabilities.
'libicu60_2' providing 'libicu' is already installed.
'libunwind' is already installed.
No update candidate for 'libunwind-1.2.1-lp150.2.1.x86_64'. The highest available version is already installed.
Resolving package dependencies...


Nothing to do.


  • 這邊看到 libicu 在 openSUSE Leap 15 應該是由 libicu60_2 提供


安裝前先搜尋一下
# zypper search -s dotnet-sdk


Loading repository data...
Warning: Repository 'openSUSE-Leap-15.0-Update-Non-Oss' appears to be outdated. Consider using a different mirror or server.
Reading installed packages...


S | Name           | Type | Version   | Arch | Repository                 
--+----------------+---------+-----------+--------+----------------------------
  | dotnet-sdk-2.1 | package | 2.1.801-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.1 | package | 2.1.701-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.1 | package | 2.1.605-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.1 | package | 2.1.603-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.1 | package | 2.1.508-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.2 | package | 2.2.401-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.2 | package | 2.2.301-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.2 | package | 2.2.205-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.2 | package | 2.2.203-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.2 | package | 2.2.108-1 | x86_64 | packages-microsoft-com-prod
  | dotnet-sdk-2.2 | package | 2.2.107-1 | x86_64 | packages-microsoft-com-prod


這邊其實會看到 有 2.1 與 2.2 版本
我決定先裝 2.1 版本


# zypper  install  dotnet-sdk-2.1
Loading repository data...
Warning: Repository 'openSUSE-Leap-15.0-Update-Non-Oss' appears to be outdated. Consider using a different mirror or server.
Reading installed packages...
Resolving package dependencies...


The following 7 NEW packages are going to be installed:
  aspnetcore-runtime-2.1 dotnet-host dotnet-hostfxr-2.1 dotnet-runtime-2.1 dotnet-runtime-deps-2.1 dotnet-sdk-2.1
  libopenssl1_0_0


7 new packages to install.
Overall download size: 171.8 MiB. Already cached: 0 B. After the operation, additional 173.7 MiB will be used.
Continue? [y/n/...? shows all options] (y): y


安裝完 .NET core 接下來試試看是否可以執行 Storage Explorer


使用一般使用者
嘗試執行 StorageExplorer
> ./StorageExplorer


Cool, 可以執行了
點選 I Accept 接受授權



接下來點選連接 Azure Storage 的方式
我先用 Add an Azure Account  -- > 點選 Next




接下來會要求登入 Microsoft Azure



接下來就可以看到 Microsoft Azure Storage Explorer 的操作畫面




接下來進行相關實驗


登入 Azure portal


Lab 1: 利用  Microsoft Azure Storage Explorer 管理儲存體


所有服務 -- > 儲存體帳戶
點選 新增儲存體帳戶
選取 訂用帳戶 / 資源群組
輸入名稱 / 選取 地區
點選 下一步


看看是否需要設定進階選項
我這邊按照預設值 -- > 下一步

看看是否需要加入標籤
-- > 下一步




確認相關資訊 -- > 點選 建立
完成 儲存體帳戶建立


接下來實驗相關功能
從 Microsoft Azure Storage Explorer 界面中
點選 Refresh All 重新整理物件
在訂閱帳號 -- > 展開 Storage Accounts 找到剛剛建立的 儲存體帳戶
展開帳戶, 在 Blob Containers 上面按滑鼠右鍵
Create Blob Contaier




輸入 Blob 名稱


這個時候可以在界面內或是 Azure Portal 確認是否有建立成功




嘗試使用界面上傳物件



選取檔案 -- > Upload



可以在界面或是 Azure Portal 確認上傳狀況



這樣就可以方便的在 Linux 使用  Microsoft Azure Storage Explorer 管理儲存體


接下來換個情境, 有的時候因為專案的關係, 不會給帳戶金鑰或是開帳戶給相關同仁, 取而代之的, 會使用 SAS 共用存取簽章 的方式存取


Lab 2: 利用  SAS 共用存取簽章 存取儲存體


在剛剛建立的儲存體 點選 共用存取簽章


按照需求調整到期日或是允許的資源類型
-- > 點選 產生 SAS 與 連接字串



產生相關 Token 以及 URL




在 Microsoft Azure Storage Explorer 內使用 SAS 方式連接


還沒連接之前觀察界面相關資訊




點選左方的 Add Account

點選 Use a shared access signature ( SAS ) URL
點選 Next



輸入相關資訊
其實就是把剛剛的 URL 複製貼上 -- >  Next 


從 Summary 確認相關資訊
點選 Connect 


再次觀察界面




之後一樣可以透過 Microsoft Azure Storage Explorer 來進行管理


Notes

  • 相關設定檔, Linux 在 ~/.config/StorageExplorer

這樣又在 Azure 前進一步


~ enjoy it


Reference:


沒有留言: