Skip to main content

the avatar of Zoltán Balogh

Private cloud based on openSUSE Leap 15.3 beta and Nextcloud

Motivation

I used to have a Synology DS414 server what worked  well for about 8 years. Naturally, occasionally I had to change disks in the RAID5 system in it, but other than that it did its job. But regardless of the really smooth user experience and the low maintenance needs I never really liked that system as the Synology Disk Station Manager OS is not like many “real” Linux distributions and the community behind that OS is basically non existent. And to be honest I do not really feel that Synology is very eager to build and maintain a community around their OS. It looks more like that they just barely comply with the GPL. All in all, I had just enough motivation to migrate my private cloud and NAS to a proper OS.

a silhouette of a person's head and shoulders, used as a default avatar

Cómic La Jungla del Software de Marelisa Blanco

Hoy me salgo un poco del mundo KDE, temática principal del blog, y me adentro en el mundo del conocimiento libre. En concreto me apetece compatir con vosorso el Cómic La Jungla del Software de Marelisa Blanco, integrante de NoLegalTech, donde nos explica las bases de esta parte fundamental del desarrollo del Software.

Cómic La Jungla del Software de Marelisa Blanco

Uno de los descubrimientos de esta temporada en los podcast de KDE España ha sido conocer a los miembros de NoLegalTech, un equipo de abogadas especializadas en derecho tecnológico que no solo saben de derecho sino que son capave de hablar un idioma entendible por la mayoría de los mortales, algo muy necesario en estos tiempos.

No por nada os aconsejo visitar su más que amena, simpática y clara página web (la cual contiene hasta «Easter Eggs» la mar de divertidos) donde encontraréis toda la información sobre ellas (si, en el momento de escribir estas líneas solo hay mujeres en su equipo).

Pero la razón de esta entrada es recomendaros que leáis y compartáis el siguiente cómic «La Jungla del Software» una creación de Marelisa Blanco, que además de abogada es una excelente «dibujanta» y que, en apenas 36 páginas nos explica mediante dibujitos los diferentes tipos de licencias que existen.

De esta forma hace un repaso a las licencias Creative Commons, las GPL, las MIT, las BSD y las privativas, todo ello con un poco de historia, ilustraciones cookies, muchos conejitos y muchos otros tipos de animalitos.

Aprovecho la ocasión para dos cosas: la primera para volver a poner en el blog sus intervenciones en los podcast de KDE España, tanto en el capítulo titulado «07×03 Software libre y KDE en entornos profesionales: abogacía» como en el segundo, en la que no tuvo mucho tiempo de intervención ya que su jefa Bárbara nos deslumbró con su presencia, y que llevaba por título «07×06 Software libre y abogacía».

Y la segunda, compartir el dibujo que dedicó al blog cuando cumplió recientemente 13 años. ¡Muchas gracias Marelisa!

the avatar of Chun-Hung sakana Huang

AWS CodeCommit 使用小記

AWS CodeCommit 使用小記


OS: openSUSE Leap 15.2

git: 2.26.2


最近因為使用 GitLab 的關係, 所以有些資料原本是使用 share folder 的方式, 現在也會考慮使用 git 的方式儲存.


今天來寫 AWS CodeCommit 的使用紀錄

目前使用的方式是參考


連接 AWS CodeCommit 有很多方式, 我是採取 SSH Key 的方式, 網路上有人反應這樣的做法比較穩妥, 比較不會出現奇怪的現象.


實作的方式


接下來就讓我們開始吧


首先登入 AWS IAM console

點選左方的 Groups -- > 點選 Create New Group

群組名稱輸入: CodeCommitPowerUser  -- > 點選 Next Step



在 Attach Policy 頁面

搜尋 CodeCommit -- > 勾選 AWSCodeCommitPowerUser

點選 Next Step


檢閱相關設定

點選 Create Group



接下來加入使用者

點選剛剛建立的 CodeCommitPowerUser 群組

在 Users 頁籤 -- > 點選 Add Users to Group



勾選要加入的使用者 -- > Add Users


接下來要將使用者的 SSH Public Key 上傳到 IAM 使用者的 SSH Keys for AWS CodeCommit


點選 IAM console 左方的 Users

點選 剛剛被加入的使用者

點選 Security credentials 頁籤


點選 Upload SSH public key 按鈕



將 SSH 公鑰貼上

點選 Upload SSH public Key





將 SSH key ID 記錄下來, 等等這個 ID 就是 SSH User ID




再來建立 ~/.ssh/config

使用自己習慣的編輯器 建立 ~/.ssh/config 檔案, 內容如下



  • User 後面那串字元, 請換成之前的 SSH key ID

  • IdentityFile 請換成 自己的 SSH Private Key, 如 id_rsa


將 ~/.ssh/config 檔案設定相關權限


> chmod  600  ~/.ssh/config


最後階段, 建立 CodeCommit Repository, 使用 git clone 測試操作


登入 AWS CodeCommit 主控台 https://console.aws.amazon.com/codesuite/codecommit/home


CodeCommit 也是 Region 服務, 所以可以先選取你要建立的 Region, 我這邊的例子是使用 Ohio (  us-east-2 )


點選 Create repository


輸入 儲存庫名稱

點選 Create




建立完成之後, 其實會有不同的頁籤來說明如何連接

點選 SSH 頁籤

展開你要的 OS 選項, 我是用 openSUSE Leap 15.2 , 所以展開 Linux


點選 Step 4 的 Copy

他會複製 git clone ssh 的指令



接下來進行 git clone 的測試


切換到要進行 git clone 的目錄


貼上與執行剛剛複製的 git clone 指令


> git  clone  ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/test20210405


正複製到 'test20210405'...

warning: 您似乎複製了一個空版本庫。


進入到相關目錄

> cd   test20210405/


接下來嘗試建立檔案進行 commit 測試


> echo  "CodeCommit Test"  >  README.md

> git  add  .

> git  commit  -m  "20210405"


[master (根提交) 6381ea1] 20210405

 1 file changed, 1 insertion(+)

 create mode 100644 README.md


> git  push  -u  origin  master


Warning: Permanently added the RSA host key for IP address '52.95.17.51' to the list of known hosts.

枚舉物件: 3, 完成.

物件計數中: 100% (3/3), 完成.

寫入物件中: 100% (3/3), 227 位元組 | 227.00 KiB/s, 完成.

總共 3 (差異 0),復用 0 (差異 0),重用包 0

To ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/test20210405

 * [new branch]      master -> master

分支 'master' 設定為追蹤來自 'origin' 的遠端分支 'master'。



回到  AWS CodeCommit 觀察



這樣又多了一個 git 存儲的去處, 也多向 AWS 服務邁向一步



~ enjoy it



Reference:





the avatar of Alessandro de Oliveira Faria

Maratona de Inteligência Artificial 2021

Hoje inicia a Maratona de Inteligência Artificial 2021, um evento imprescindível para todos que buscam conhecimento sobre a tecnologia que, não está apenas se infiltrando na vida cotidiana, mas vai transformar indústrias inteiras. Durante duas semanas, os Notáveis I2AI irão nos enriquecer com conhecimentos estratégicos, inovadores, práticos e inspiradores sobre Inteligência Artificial. Abordaremos muito sobre negócios, carreiras e tecnologias. Totalizando 15 horas aulas totalmente gratuitas e com um formato dinâmico, nesta edição a cada dia teremos 2 mestres palestrando, e um espaço para o debate interativo com os 2 convidados do dia! De 05 a 16 de abril, de segunda a sexta-feira, das 8h às 9h30, temos nosso encontro marcado e preparamos um super Certificado de Participação. CLIQUE AQUI PARA INSCRIÇÕES!

a silhouette of a person's head and shoulders, used as a default avatar

Linux Connexion con Lina Castro en Podcast Linux #121

Paraece ser que comparto los podcast impares de Juan Febles, y es que su producción es elevada y el tiempo que tengo para el blog limitada. En esta ocasión tengo el placer de presentar «Linux Connexion con Lina Castro» donde se juntan de nuevo dos personas especializados en la difusión del Software Libre, Lina Castro y Juan Febles. No te lo puedes perder.

Linux Connexion con Lina Castro en Podcast Linux #121

Linux Connexion con Lina Castro en Podcast Linux #121

A pesar de que se siempre se necesitan programadores para el Software Libre, estamos en un punto donde la difusión es igual de importante si queremos, no solo llegar a todos los usuarios, sino a conseguir el apoyo de instituciones públicas.

Justo eso es uno de los trabajos que está realizando Lina Castro en el podcast Ubuntu Colombia que combina con su liderazgo de dicha Comunidad, su trabajo como desarrolladora en Ubuntu Touch y la iniciativa #viernesdeescritorio que cada semana nos abre la ventana a decenas de entornos de trabajo GNU/Linux.

Es por ello que es más que interesante escucharla en una charla distendida con Juan Febles de más de una hora que seguro que no os defraudará.

En palabras de Juan:

«¡¡¡Muy buenas amante del Software Libre!!!
Bienvenido a otra entrega de Podcast Linux, la número 121. Un saludo muy fuerte de quien te habla, Juan Febles.

Hoy tenemos a Lina Castro, desarrolladora de software, especializada en aplicaciones móviles como, por ejemplo, Ubuntu Touch. Es líder de la Comunidad Ubuntu Colombia, podcaster en Ubuntu Colombia y entusiasta de GNU/Linux.

Recordar a los oyentes que estamos en una sala Jitsi para esta charla, un servicio libre para videoconferencias, y que este podcast aloja su web en Gitlab, un servicio libre de repositorios git y su contenido en Archive.org, la biblioteca digital libre con licencias Creative Commons.«

Una vez realizada la presentación, y como siempre, os dejo el audio de Linux Connexion con Lina Castro en Podcast Linux #121 para que los podáis disfrutar de este programa de una hora de duración:

Más información: Podcast Linux

Sigue a Podcast Linux

Aprovecho para animaros a seguir Podcast Linux en algunos de los canales de comunicación que tiene:

the avatar of Chun-Hung sakana Huang

Rancher 2.5.7 with container in Azure 安裝小記

Rancher 2.5.7  with container in Azure 安裝小記


OS: openSUSE Leap 15.2 in Azure

Rancher: 2.5.7


今年又開始重拾 Kubernetes 的研讀, 之前就有注意 Rancher 的相關消息, 在 SUSE 正式併購 Rancher 之後, 就有打算找時間看看他


目前的想法就是研讀 K8S 的時候, 搭配他來看看, 因為是嘗試, 就從 single node with container 方式開始


安裝需求

https://rancher.com/docs/rancher/v2.x/en/installation/requirements/

  • 以  single-node 方式, 規格是 1 vCPU 4GB RAM / 2 vCPU 8GB RAM, 換成 Azure Virtual Machine 的 Size 比較節費的就是 Standard_B2ms



使用 SSH 連入建立的 openSUSE Leap 15.2 in Azure


切換身份爲 root

>  sudo  su  -


啟動 docker 服務, 並預設啟動


# systemctl  start  docker

# systemctl  enable  docker


叄考官方文件 啟用 rancher container



啟動 Rancher


#docker  run  -d  --restart=unless-stopped   -p  80:80  -p  443:443   --privileged   rancher/rancher:latest


然後在 Azure 的 網路安全性群組 開放 Port 443 與 Port 80


開啟瀏覽器 https://YOUR_IP:443

會看到歡迎畫面


  • 輸入管理者 admin 的密碼

  • 勾選同意協定 -- > Continue



設定 Rancher 的 URL



輸入相關 IP 或是 URL 後 -- > Save URL


接下來會看到歡迎畫面與 Rancher 2.5 的介紹視窗



  • 這樣可以清楚的知道目前使用的是 Rancher 2.5 (笑)



觀察一下目前的歡迎畫面



右下角可以調整介面的語系, 可以調整成自己想要的語系




切換後的樣貌



我們來嘗試透過 Rancher 來建立  AKS Cluster 吧


點選 添加叢集


看的出來有支援很多種型態


這邊我點選 Azure AKS



接下來有看到設定畫面



在新增 Cluster 之前要先處理  Azure 上面 Service principals 的部分


我是使用 Azure 的 Cloud Shell 來進行


建議建立之前可以先使用下列指定觀察目前的 Service principals


$ az  ad  sp  list  --all  --output  table


根據官方文件建立 Service Principal

$ az ad sp create-for-rbac --skip-assignment --name testRancherServicePrincipal



  • 這樣的方式顯示出來的欄位爲 appID / displayName / name / password / tenant

    • 可是其實我們只需要的是 Subscription ID / Client ID / Tenant ID / Client Secret

    • 補充: Client ID 就是 AppID, Client Secret 就是 password, 所以只差了 Subscription ID 


所以決定把剛剛那個 Service Principal 先刪除了 ( 順便複習一下之前的 )


使用剛剛的指令加上 grep Rancher 找出剛剛的 Service Principal

$ az  ad  sp  list  --all  --output  table |  grep Rancher

 

參考之前自己的文章


刪除剛剛建立的 Service Principal


$ az  ad  sp  delete --id  8faa88b0-a540-4d8c-a790-1ca6a0522dsd


  • 8faa88b0-a540-4d8c-a790-1ca6a0522dsd 爲剛剛建立的 AppId, 可以看第三欄位


建立 Service Principal


$ az  ad  sp create-for-rbac  --name  testRancherServicePrincipal-20210404 --query   '{"client_id": appId, "secret": password, "Tenant_id": tenant}'



  • 這邊有個雷點, 不可以加上 --skip-assignment  否則會遇到權限不足的問題, 會遇到錯誤訊息 access was recently granted, please refresh your credentials

  • 這次的指令相比於之前自己文章的指令, 有加上 --name 的選項在裡面, 如果沒有使用 --name 指定名稱, 預設會是 azure-cli-20xx-xx-xx-xx-xx-xx, 這樣的好處是可以知道建立時間, 所以我的名稱也有加入時間進去, 以免以後不知道那個 SP 過期

  • 加上 --query 的方式, 輸出自己要的資訊


接下來取得 Subscription ID

使用 az account 指令取得


$ az  account  show  --query  "{ subscription_id: id }"

{

 "subscription_id": "6a2bdf3b-XXXX-XXXX-XXXX-3371d3401feb"

}


好的, 原料備齊, 回到 Rancher 填入資訊

點選 Next: Authenticate & configure nodes


  • 再次提醒自己剛剛在建立 az ad sp 的時候不可以加上 --skip-assignment  否則會遇到權限不足的問題



驗證通過之後, 就是設定 Kubernetes 相關選項




  • 版本我用他預設給的 1.19.7




  • 填入  Resource Group 名稱

  • 設定要使用的 VM 規格, 主機數量

  • 貼上 SSH 公鑰


點選 創建


這個時候可以觀察相關狀態



建立需要一點時間, 可以同步觀察 Azure 上面的資源


建立完成, 可以在 Rancher 與 Azure 上面同步觀察



  • 可以直接在網頁上面執行 kubectl


也可以下載 Kubeconfig


Azure 這邊則可以觀察到

  • 有建立相關的 AKS 服務以及 Resource Group for AKS



最後來測試一個猛的, 刪除 cluster

點選剛剛建立的 Cluster 點選刪除



觀察了一下 Azure 那邊, Rancher 也很盡責的刪除剛剛建立的 AKS 與相關資源



小結一下: 目前看起來 Rancher UI 是很方便的, 所以日後可以多嘗試一下他的相關功能

也算是跨出 Rancher 的一小步了


~ enjoy it




Reference:





a silhouette of a person's head and shoulders, used as a default avatar

packagesの説明文書を訳しつつ、使えるものを探してみました(D編)

前回は O でしたが今回は Dです。

パッケージ名 datefudge
バージョン datefudge-1.24-1.3.x86_64
動作 ◎
詳細
datefudge はシステム時刻をごまかすユーティリティです。例えば以下のようになります。

% date
2021年  4月  3日 土曜日 22:09:35 JST
% datefudge "2007-04-01 10:23" date
2007年  4月  1日 日曜日 10:23:00 JST
% datefudge "2 weeks ago" date
2021年  3月 20日 土曜日 22:11:39 JST

さらに、 –static オプションというのがあり、これを使うと、日付を固定してしまうことが出来ます。

% datefudge "2007-04-01 10:23" sh -c "sleep 3; date"
2007年  4月  1日 日曜日 10:23:03 JST
% datefudge --static "2007-04-01 10:23" sh -c "sleep 3; date"
2007年  4月  1日 日曜日 10:23:00 JST

このように、3秒後でも時刻が変わっていません。
datefudge は、時刻に絡んだテストや、テスト結果の取得時に便利に使えそうです。

パッケージ名 datamash
バージョン datamash-1.7-1.9.x86_64
動作 ◎
詳細
datemash は、種々の演算をコマンドライン上で行えるツールです。たとえば、行や列の処理、数値の集計、統計機能などがあります。dirname(1) 、 basename(1)、cut(1)などの機能を持っています。
たとえば中身が

%cat sar.txt
06:25:01        %user   %nice   %system %iowait %steal  %idle
06:35:01        7.26    0.00    1.18    0.06    0.00    91.51
06:45:01        7.23    0.00    1.19    0.04    0.00    91.54
06:55:01        7.89    0.00    1.34    0.13    0.00    90.65
07:05:01        7.23    0.00    1.24    0.04    0.00    91.49
07:15:01        7.61    0.00    1.32    0.10    0.00    90.96
07:25:01        7.69    0.00    1.32    0.06    0.00    90.93
07:35:01        7.62    0.00    1.31    0.05    0.00    91.02

となっているファイルの縦横は、

% datamash  transpose <sar.txt
06:25:01        06:35:01        06:45:01        06:55:01        07:05:01        07:15:01        07:25:01  07:35:01
%user   7.26    7.23    7.89    7.23    7.61    7.69    7.62
%nice   0.00    0.00    0.00    0.00    0.00    0.00    0.00
%system 1.18    1.19    1.34    1.24    1.32    1.32    1.31
%iowait 0.06    0.04    0.13    0.04    0.10    0.06    0.05
%steal  0.00    0.00    0.00    0.00    0.00    0.00    0.00
%idle   91.51   91.54   90.65   91.49   90.96   90.93   91.02

と言うように変換できます。また、2列目の合計と平均を出すには、

%  tail -n +2 sar.txt |datamash sum 2 mean 2
52.53   7.5042857142857

とします(最初の1行が非数値を含む行なのでスキップしています)。
datamash を使うと、awk などを駆使したり、perlや python などで小さなプログラムを書いていた処理を書かなくても済む可能性があります。うまく使えば作業の効率化に繋がりそうです。

パッケージ名 dfc
バージョン dfc-3.1.1-2.6.x86_64
動作 ◎
詳細
コンソール上で見栄え良くディスクの使用状況を表示するツールです。df の見栄えが良い版です。たとえば、

% df
ファイルシス   1K-ブロック    使用  使用可 使用% マウント位置
devtmpfs           4961412       0 4961412    0% /dev
tmpfs              4972560       0 4972560    0% /dev/shm
tmpfs              1989028    1172 1987856    1% /run
tmpfs                 4096       0    4096    0% /sys/fs/cgroup
/dev/sda2         14669824 6630060 8039764   46% /
tmpfs              4972564       0 4972564    0% /tmp
/dev/sda3          8581120 1338444 7242676   16% /home
tmpfs               994512      16  994496    1% /run/user/461
tmpfs               994512      12  994500    1% /run/user/1000

の時に、

のように表示されます。また、dfc にはいくつかオプションがあり、

% dfc -e csv
FILESYSTEM,%USED,AVAILABLE,TOTAL,MOUNTED ON
devtmpfs,0%,4.7G,4.7G,/dev
tmpfs,0%,4.7G,4.7G,/dev/shm
tmpfs,0%,1.9G,1.9G,/run
tmpfs,0%,4.0M,4.0M,/sys/fs/cgroup
/dev/sda2,45%,7.7G,14.0G,/
tmpfs,0%,4.7G,4.7G,/tmp
/dev/sda3,16%,6.9G,8.2G,/home
tmpfs,0%,971.2M,971.2M,/run/user/461
tmpfs,0%,971.2M,971.2M,/run/user/1000

というように、csv 形式で表示させることも出来ます。そのほか、html,json,tex 形式でも出力させることが出来ます。これは、出力結果を何らかの形で加工したり、そのまま表示させるようなときに便利です。
このコマンドは、df の代わりに常用して使っても良いコマンドでしょう。

パッケージ名 dhex
バージョン dhex-0.69-1.11.x86_64
動作 ◎
詳細
curses ベースで動く16進エディタ+ファイル比較ツールです。最初に起動すると、キーの定義を行います。その後、実作業に移ります。

下記の画面が、キーの定義をした後の画面です。先に定義したカーソルキーで自由にカーソルを動かすことが出来ます。カーソル位置の値は直接書き換えることが可能です。

また、2つのファイルのバイナリ比較をすることも出来ます。

dhex は ちょっとしたデータの修正や結果の比較などに使うのであれば便利に使えそうです。

パッケージ名 dhtest
バージョン dhtest-1.5-2.5.x86_64
動作 ◎
詳細
dhtest は、DHCP 要求を送ってIPアドレスを取得するためのテストプログラムです。結果を NIC に割り当てるとかはせず、単にDHCPリース操作を行わせるためだけのプログラムです。実行した例は以下の通りです。

# dhtest -i ens18 -L 180
DHCP discover sent       - Client MAC : 4a:23:a6:ba:3a:b1
DHCP offer received      - Offered IP : 192.168.3.214
DHCP request sent        - Client MAC : 4a:23:a6:ba:3a:b1
DHCP ack received        - Acquired IP: 192.168.3.214

DHCP サーバのテストをするときに覚えておくと良いかもしれません。

the avatar of Klaas Freitag
a silhouette of a person's head and shoulders, used as a default avatar

Shamsi Calendar – Plasmoides de KDE (176)

Y la fiesta de plasmoides no para. Hoy añadimos un nuevo plasmoide para la lista de esos pequeños programas que sirven para decorar, informar o aumentar las funcionalidades de nuestro escritorio Plasma de la Comunidad KDE con Shamsi Calendar, un calendario que amplía las posibilidades para los usuarios que hablen persa, algo que ya presentamos en el blog hace un tiempo con Persian Calendar.

Shamsi Calendar – Plasmoides de KDE (176)

Una de las mejores cosas del Software Libre es que es internacional y personalizable para todas las culturas y idiomas, preocupándose siempre de que sea posible localizar nuestro entorno de trabajo y aplicaciones al máximo.

De esta forma es interesante y deseable que tengamos una alternativa al calendario gregoriano como plasmoide, una buena idea que fue convertida en realidad de la mano de Remisa con el original nombre de Persian Calendar y ahora ampliada por amirnajafi que ha construido ya el calendario completo que ha bautizado como Shamsi Calendar.

Así que este es un plasmoide que se utiliza para mostrar el Calendario Shamsi (también conocido como Calendario Persa o Calendario Jalali) en KDE Plasma. El calendario es compatible con los días festivos oficiales.

Shamsi Calendar - Plasmoides de KDE (176)

Y como siempre digo, si os gusta el plasmoide podéis “pagarlo” de muchas formas en la nueva página de KDE Store, que estoy seguro que el desarrollador lo agradecerá: puntúale positivamente, hazle un comentario en la página o realiza una donación. Ayudar al desarrollo del Software Libre también se hace simplemente dando las gracias, ayuda mucho más de lo que os podéis imaginar, recordad la campaña I love Free Software Day 2017 de la Free Software Foundation donde se nos recordaba esta forma tan sencilla de colaborar con el gran proyecto del Software Libre y que en el blog dedicamos un artículo.

Más información: KDE Store

¿Qué son los plasmoides?

Para los no iniciados en el blog, quizás la palabra plasmoide le suene un poco rara pero no es mas que el nombre que reciben los widgets para el escritorio Plasma de KDE.

En otras palabras, los plasmoides no son más que pequeñas aplicaciones que puestas sobre el escritorio o sobre una de las barras de tareas del mismo aumentan las funcionalidades del mismo o simplemente lo decoran.

the avatar of Nathan Wolf