顯示具有 電腦資訊::系統::ArchLinux 標籤的文章。 顯示所有文章
顯示具有 電腦資訊::系統::ArchLinux 標籤的文章。 顯示所有文章

2024年7月14日

在Podman中,從Container內連線到Host的Port

在Podman中,大部份的情況是將Container的Port暴露給Host,由Host連線進Container中的服務,可以簡單用 --port 8080:80 的參數來將Container的 80 port 服務開在Host的 8080 port上。

但如果要從Container中連線到Host就沒有這麼容易了,目前找到有兩種方法

1.  

--network host

如果使用這個方法,在Container裡可以直接使用localhost來連線Host的所有Port,Host也會將來自Container的連線看成是localhost發出的。

如果Host上有服務會因為來源IP不同而有不同行為的話就要注意安全性問題,像是PostgreSQL預設如果從localhost連線就不需要密碼


2.

--network slirp4netns:allow_host_loopback=true

使用這個方法,Podman會在Container的/etc/hosts中加入類似以下內容

192.168.0.2     host.containers.internal host.docker.internal

在Container中就可以使用 host.containers.internal 或 host.docker.internal 來連線到Host,而Host則會把這些連線當作是外部來的連線處理
 

在Podman中,記憶體還很多卻OOM

之前使用container去build android時,發生明明記憶體還剩很多的情況下,卻直接報出OOM編譯失敗的情況,查了許久才發現是pids滿了。

在預設的情況下Podman會限制一個容器只能執行2048個process,而build android在-j 32的時候,有可能會突然跑到四千多個process,這時就會直接失敗

可以在run container時加上--pids-limit -1 來解除限制,例如:

$ podman run -it --rm --pids-limit -1 ubuntu:16.04


也可以修改 /etc/containers/containers.conf 中的 pids_limit 讓所有Container都套用相同設定

2024年3月16日

不用手動介入,在Linux下建立新User並設定密碼

export USERNAME="newuser"
export PASSWD="password"
useradd -m $USERNAME -s /bin/bash -g users
echo -e "$PASSWD\n$PASSWD" | passwd $USERNAME


2024年3月9日

最近在用的Archlinux桌面環境

留個套件名字
下次換新電腦還可以裝

顯示管理 greetd + regreet
視窗管理 hyprland
啟動器 rofi
輸入法 fcitx5
終端機 qterminal + bash
檔案管理 dolphin

2022年12月24日

su + systemctl = Failed to connect to bus: No medium found

最近想用 su - user 對修改 user 的 systemd Unit 的時候發現 systemctl --user 的所有操作都會回報 Failed to connect to bus: No medium found

 後來找到了這篇文章 只要將 su - user改為使用machinectl shell user@.host就可以正常使用 systemctl --user 了

 

2015年1月20日

用 openssl產生金鑰

產生私鑰 長度2048 檔名ca.key
openssl genrsa -out ca.key 2048
產生配對的公鑰 檔名 ca.crt
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
 Country Name (2 letter code) [AU]:TW                                                   //國碼臺灣是 TW
 State or Province Name (full name) [Some-State]:Taiwan R.O.C                           //國名臺灣填 Taiwan
 Locality Name (eg, city) []:Taipei                                                     //地名
 Organization Name (eg, company) [Internet Widgits Pty Ltd]:FreeBSD Personal Reserach   //組織單位名稱
 Organizational Unit Name (eg, section) []:FreeBSD Personal Reserach                    //部門名稱
 Common Name (eg, YOUR name) []:www.weithenn.org                                        //憑證的名稱 (通常為伺服器 FQDN)
 Email Address []:weithenn@weithenn.org                                                 //申請單位的聯絡信箱
 Please enter the following 'extra' attributes
 to be sent with your certificate request
 A challenge password []: 按 Enter 直接跳過                                             //申請書的密碼
 An optional company name []: 按 Enter 直接跳過                                         //憑證代辦公司的名稱 


2012年8月16日

用USB Flash碟上的iso開機


把iso燒成光碟,每次有新版時又要重新燒錄一次,很浪費光碟片,而且現在電腦很多都已經沒有光碟機了,用USB Flash碟可以省掉這些麻煩。

完成一次之後,以後只要更換ISO就可以使用最新的系統。

本文需要一個已經可用的Archlinux系統
本文需要已經裝好的Grub2


2011年8月12日

Radeon HDMI audio in Linux 3.0

最近Archlinux 的core庫開始提供3.0的kernel
我也就更新了,但發現再也無法經由我的Radeon HD發出聲音了

2009年12月13日

從硬碟安裝ArchLinux

從硬碟直接裝,不用浪費光碟片,很環保
有時候電腦會沒有光碟機或臨時沒有光碟,想用光碟裝也沒辦法
而且通常安裝速度還比光碟快呢!

注意:
  • 本文需要基礎Grub操作
  • 本文需要基礎Linux知識
  • 本文可用於ArchLinux 2009.08版本

2009年8月16日

將ArchLinux裝進SoftRAID

這篇只是紀錄我在VirtualBox內,將ArchLinux裝進SoftRAID的方法
不保證所有電腦都可以使用!
並且我在這裡都假設讀者是已經能夠獨自安裝ArchLinux的使用者

2009年4月3日

[已過期]重灌Archlinux

最近發現Arch開機速度越來越慢
開機時還會出現一些錯誤訊息
就將他重灌一下

2009年2月18日

修理hal 0.5.11-7

最近ArchLinux更新了hal 0.5.11-7

出現無法在pcmanfm直接掛載分區、無法直接關機的問題