2018/10/10
解決升級 Ubuntu 18.04 (bionic) 後 256MB RAM 的機器開不了機
Ubuntu 18.04 出來也半個月了
一直想嘗試看看, 雖然說我都用 server 版本 基本上沒什麼差
趁著國慶假期 手癢升級了手邊的一台只有 256MB RAM 的 VM
升級前當然先把套件都升到最新
```
sudo apt update
sudo apt upgrade
sudo autoremove
```
然後就是重頭戲了 -- 開始升級
```
sudo do-release-upgrade
```
過程中會問你四次左右的 y/n 都是選 y 就對了
升級完開機之後 出現了悲劇
```
kernel panic not syncing out of memory and no killable processes
```
嘗試著加大 RAM 到 384MB 是可以開機的
於似乎開始找解決辦法
試過把舊版 linux-kernel 都移除, grub 重裝都不太行
最後找到了這篇
https://askubuntu.com/questions/956737/end-kernel-panic-not-syncing-out-of-memory-and-no-killable-processes/956742
```
cd /lib/modules/4.15.0-36-generic
sudo find . -name *.ko -exec strip --strip-unneeded {} +
sudo update-initramfs -c -k 4.15.0-36-generic
```
重新調整 RAM 為 256MB
登登登 正常開機進去了
不過目前 pppoeconf 設定開機自動撥 pppoe 的功能似乎是失效的 要再想辦法解決了
2018/01/29
如何在 ubuntu/macOS/raspbian 下安裝 docker compose
隨著進入了 docker 的世界,碰到愈來愈多東西
終於用上了 docker compose
不過常常在新系統安裝好 docker 後會發現不能使用 docker-compose
原來這個東西是要另外安裝的
依據[官方](https://docs.docker.com/compose/install/#install-compose)的文件
以下範例適合 ubuntu/macOS
```sh
# 下載
$ sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# 加上執行權限
$ sudo chmod +x /usr/local/bin/docker-compose
```
這樣就可以盡情的使用 docker-compose up 了
如果是在樹莓派 raspbian 下的話就比較麻煩了
這邊提供用pip安裝的方法
```sh
# 安裝 pip
$ sudo apt-get install python-pip
# 或 pip3
$ sudo apt-get install python3-pip
# 利用 pip 安裝 docker-compose
$ sudo pip install docker-compose
# 或 pip3
$ sudo pip3 install docker-compose
# 跑完就可以使用了
$ docker-compose -v
docker-compose version 1.18.0, build 8dd22a9
```
參考:
https://github.com/docker/compose/
https://docs.docker.com/compose/install/
https://www.digitalocean.com/community/tutorials/how-to-install-docker-compose-on-ubuntu-16-04
2017/06/01
在 ubuntu 中建置 kamailio 伺服器
kamailio 是一款 sip server 可以用來做 voip 網路語音通話
他們前身是 OpenSER, 也有分支 Opensips
在這邊介紹如何在 ubuntu 14.04 建置 kamailio
由於個人比較偏好直接用別人打包好的套件做安裝,剛好官網也有提供 http://deb.kamailio.org/
安裝 kamailio
```sh
# 使用 apt-get 安裝
echo "deb http://deb.kamailio.org/kamailio trusty main" >> /etc/apt/sources.list
echo "deb-src http://deb.kamailio.org/kamailio trusty main" >> /etc/apt/sources.list
sudo apt-get update
sudo apt-get install kamailio
```
記得安裝 mysql modules
```sh
sudo apt-get install kamailio-mysql-modules kamailio-tls-modules
```
編輯 /etc/kamailio/kamailio.cfg
```sh
# #!開頭的會是 kamailio 的 script 語法, 在這邊定義啟用 mysql 跟用 db 做認證
#!define WITH_MYSQL
#!define WITH_AUTH
# 把機器自己的 public ip 設成一個 alias
alias="aws public ip"
```
設定 db
```sh
# 編輯 /etc/kamailio/kamctlrc
SIP_DOMAIN=aws public ip
DBENGINE=MYSQL
DBHOST=localhost
DBNAME=kamailio
DBRWUSER="kamailio"
DBRWPW="kamailiorw"
DBROUSER="kamailioro"
DBROPW="kamailioro"
DBROOTUSER="root"
USERCOL="username"
```
初始化 db
```sh
kamdbctl create
```
新增帳號
```sh
kamctl add 1000 1000 #kamctl add 帳號 密碼
```
全部設完記得重啟
```sh
sudo /etc/init.d/kamailio restart
```
sip客戶端:
* android 5: linphone、ECOA Sip
* android 6: linphone、sipdroid
* iOS: linphone
* macOS: YateClient
2017/05/22
在 ubuntu 中建立 swap
1. 建立 swap 檔
```sh
sudo fallocate -l 1G /data/swap
sudo chmod 600 /data/swap
sudo mkswap /data/swap
```
2. 編輯 /etc/fstab 加入系統啟動自動掛載
```sh
/data/swap none swap defaults 0 0
```
3. 自動掛載 fstab 設定的 swap
```sh
sudo swapon -a
```
4. 查詢 swap
```sh
swapon -s
# 或
free
```
2016/01/07
sudo: unable to resolve host
這個問題煩惱我一陣子了
除了每次出現訊息之外
在打 sudo 的時候 還會 lag 好一陣子
嘗試過在 /etc/hosts 加上一筆正解,但還是不行
在這邊提供另一種解決方法
修改 /etc/resolve.conf
加上一筆 domain 就可以了
如果你出現的訊息是
sudo: unable to resolve host moa.sw
那麼就在 /etc/resolve.conf 加上一行
domain moa.sw
我們可以繼續快樂的使用 sudo 了
2015/03/06
在ubuntu安裝最新版的git
以下指令在 ubuntu 14.04 / 12.04 測試過
目前最新版本是 git 2.3.1 (2015/03/06)
安裝步驟:
```
sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git
```
查看現在版本,已經變成2.3.1囉
```
moa@ubuntu:~/$ git --version
git version 2.3.1
```
2012/08/25
[Ubuntu] Ubuntu 12.04右上角時間出現Invalid UTF-8解決辦法
最近終於灌了Ubuntu了(不過還是在Virtual Box上)
感覺不錯用耶
但是右上角時間日期那邊的中文字(UTF8)會顯示Invalid UTF-8
研究了一下
發現是locale在更新的時候沒設定好
```
$ cat /etc/default/locale
LANG="zh_TW.UTF-8"
LANGUAGE="zh_TW:zh"
LC_NUMERIC="zh_TW"
LC_TIME="zh_TW.UTF-8"
LC_MONETARY="zh_TW"
LC_PAPER="zh_TW"
LC_NAME="zh_TW"
LC_ADDRESS="zh_TW"
LC_TELEPHONE="zh_TW"
LC_MEASUREMENT="zh_TW"
LC_IDENTIFICATION="zh_TW"
```
重登之後就恢復正常了
訂閱:
文章 (Atom)