GPG Error for apt-get

apt-get 發生 GPG Error 的處理方式.

轉載自: GPG error: for apt-get

錯誤訊息

W: GPG error: ftp://www.hk.debian.org unstable Release: 
    The following signatures couldn't be verified
    because the public key is not available: 
    NO_PUBKEY F1D53D8C4F368D5D NO_PUBKEY 010908312D230C5F
W: You may want to run apt-get update to correct these problems

解決方法:

$ gpg --keyserver wwwkeys.eu.pgp.net --recv-keys F1D53D8C4F368D5D
$ gpg --armor --export F1D53D8C4F368D5D | apt-key add -
$ gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 010908312D230C5F
$ gpg --armor --export 010908312D230C5F | apt-key add -
$ apt-get update

感謝 Range 大師告知, 下述兩個步驟即可解決此問題 🙂

$wget http://ftp-master.debian.org/ziyi_key_2006.asc
$apt-key add ziyi_key_2006.asc

閱讀全文〈GPG Error for apt-get〉

拿 RAM 當硬碟來用(RAM Disk)

臨時想要做個 RAM Disk, 就去翻以前寫的文章, 發現以前的 Blog 寫的真的是很亂, 還是重新整理一下好了.

    1. 目前的作法如下:
  • 首先在/dev/shm建個tmp文件夾,然後與實際/tmp綁定
  • mkdir /dev/shm/tmp
  • chmod 1777 /dev/shm/tmp
  • mount --bind /dev/shm/tmp /tmp
    1. 方法2:
  • mkdir /mnt/ramfs
  • vi /etc/fstab
  • none /mnt/ramfs tmpfs defaults 0 0
  • mount /mnt/ramfs
  • 這樣就可以用這個 ramfs 來放一些有的沒有的, 可 man mount, man fstab
    1. 方法3:
  • mount -t tmpfs -o size=200m none /mnt/tmpfs
  • 200m 是 200Mb 的意思, 詳情請看 man mount 裡的 tmpfs
    1. 方法4:
  • 設定 /etc/default/tmpfs default shm 大小(系統會自動用此值去當硬碟)
  • 設定 /etc/fstab: tmpfs /tmp tmpfs size=100m,mode=1777 0 0 設讓 RAM 掛 100Mb 在 /tmp
  1. 方法5:(我目前都用此方法)
    • 直接設定 vim /etc/fstab 寫入下面那行
    • tmpfs /tmp tmpfs size=100m,mode=1777 0 0
    • # 設讓 RAM 掛 100Mb 在 /tmp
    • 註:2022年 Ubuntu 預設這種設定會 mount 在 root 下,可以增加 UID來解決視窗都會跳出警告訊息的狀況
    • tmpfs /tmp tmpfs size=100m,mode=1777,uid=1000 0 0
  2. 其它方法: 可參見下面連結, "有趣的 tmpfs" 中, 有提供很多更好用的方法

參考文件:

閱讀全文〈拿 RAM 當硬碟來用(RAM Disk)〉

停止crontab的寄信通知

Crontab 在執行時, 只要營幕有任何標準輸出, 就會轉成信件寄出通知,初期要 Debug用時還不錯, 但是久了後就很煩, 就想把他丟到 /dev/null 或 改寄到其它地方去, 但是 /dev/null 丟了好多次都沒有用, 才發現到原來是少了 2>&1, 完整命令如下:

於設定時將標準輸出導到 /dev/null

0 * * * * script_name > /dev/null 2>&1

將信件改寄到其它地方, MATILTO="", (不過 "" 的話, 我不知道會寄到哪邊去)

於 Script 最前面加上 MAILTO=""

閱讀全文〈停止crontab的寄信通知〉

Red Hat Enterprise Linux編號意義

看 Redhat Enterprise 有一堆怪怪的編號: AS、ES...., 都看不懂是什麼意思, 查了一下,從 Red Hat Enterprise Linux 4 說明文件 中看到以下:

Red Hat Enterprise Linux 是開放原始碼運算環境中的最佳作業系統,產品線極為完整,從桌上型到資料中心都有:

  • Red Hat Enterprise Linux AS — 為高階與繁重任務的系統所設計
  • Red Hat Enterprise Linux ES — 為中小型伺服器所設計
  • Red Hat Enterprise Linux WS — 為技術 / 設計導向的工作站用戶所設計
  • Red Hat Desktop — 為安全、易管理的用戶端所設計

不過, 果然是誇大了不少, "產品線極為完整"... 就用過的感想 - 實在很難用.

閱讀全文〈Red Hat Enterprise Linux編號意義〉

設定優先權(nice, renice)

程式要執行很久的話, 可以調一下優先權, 看能不能快點結束~

nice [-20 ~ 19] program (-20 是最高優先權, 19 是最低)

已經執行的程式, 可以用 renice 調整.

  • renice -19 PID # 優先權調高
  • renice 19 PID # 優先權降低

意外發現不錯的 Linux Commands 介紹的站(可以印出來, 有時後還蠻好用的)
LINUX NEWBIE ADMINISTRATOR GUIDE

閱讀全文〈設定優先權(nice, renice)〉

SHA1 編碼 使用

md5 已經能夠在很短的時間內被破解(MD5 Collision Source Code Released).

Jserv長輩 的測試: MD5 Collision

破解演算法: MD5 Collision Generation (作者宣稱 45 min 就能破解, 我是跑了 80 min 才破解... 🙁 )

破解程式 Source Code: md5coll.c

暫時先改用 sha1 演算法好了, sha1 使用上, 基本上跟 md5 還是都很像的. 只有一些些的差異.

  1. md5 是 128 bits(32 bytes), sha1 是 160 bits(40 bytes)
  2. md5檢測程式 md5sum, sha1 是 sha1sum
  3. php 的 md5 function 是 md5(), sha1 的是 sha1()

基本上差不多是一樣的意思.

閱讀全文〈SHA1 編碼 使用〉

要如何同時監看Linux系統的記憶體和CPU使用情況

可以使用vmstat這支程式. vmstat 可以列出目前虛擬記憶體的使用量, 也會依照 user/ system / idle 這三種類別列出目前CPU分配的百分比.

ex.
$> vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 192 4240 135044 16016 0 0 4 1 73 8 0 0 100 0

閱讀全文〈要如何同時監看Linux系統的記憶體和CPU使用情況〉