2010年3月26日 星期五

解決putty 在vim下無法送出數字鍵區的鍵

"In the configuration, go to Terminal->Features and check "Disableapplication keypad mode". Save the settings and enjoy a numeric padthat works!"

彩色化命令列

只要做一個簡單的微調,命令列就可以成為彩色,輸出結果也更容易閱讀。

首用gedit編輯目錄的.bashrc文件,鍵入命令如下:

$ gedit ~/.bashrc

然後在文件末端加入下行文字:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

在你打完整行字後,手指頭可能會有點抽筋;然後仔細校對沒有打錯字,讓眼睛也抽筋一下!不過,自此之後,終端機視窗和虛擬平臺都會成為彩色。

改變顏色看似複雜,其實不太難。先檢視上述命令,特別是01;32m和01;34m。前者是username@hostname的文字顏色,後者為路徑的文字顏色。可接受的文字型式及顏色參數如下:

型式:

* 00 -- 正常 (沒有彩色、沒有粗體)
* 01 –- 粗體

文字顏色

* 30 -- 黑
* 31 -- 紅
* 32 -- 綠
* 33 -- 黃
* 34 -- 藍
* 35 -- 紫
* 36 -- 天藍
* 37 -- 白

背景顏色

* 40 -- 黑
* 41 -- 紅
* 42 -- 綠
* 43 -- 黃
* 44 -- 藍
* 45 -- 紫
* 46 -- 天藍
* 47 –– 白

參數的順序沒有關係,並且可以自由組合,以分號(;)隔開。例如,若使用者想將username@hostname的背景設置為紫色,字體為白色,路徑的背景顏色為預設,字體為綠色,可以將命令修改為:

PS1='${debian_chroot:+($debian_chroot)}\[\033[45;37m\]\u@\h\[\033[00m\]:\[\033[32m\]\w\[\033[00m\]\$ '

如果希望全部提示號都是斜體,沒有顏色,將命令修改為:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01m\]\u@\h\[\033[01m\]:\[\033[01m\]\w\[\033[00m\]\$ '

此外,虛擬平臺是無法顯示粗體字的。還有,要避免自設的文字顏色和背景顏色相同,那就什麼都看不出來了。

Vim session 與 狀態列 修改

Vim 的狀態列 只要將下述新增至~/.vimrc 即可見到效果~


set laststatus=2
set statusline=%4*%<\ %1*[%F]
set statusline+=%4*\ %5*[%{&encoding}, " encoding
set statusline+=%{&fileformat}%{\"\".((exists(\"+bomb\")\ &&\ &bomb)?\",BOM\":\"\").\"\"}]%m
set statusline+=%4*%=\ %6*%y%4*\ %3*%l%4*,\ %3*%c%4*\ \<\ %2*%P%4*\ \>
highlight User1 ctermfg=red
highlight User2 term=underline cterm=underline ctermfg=green
highlight User3 term=underline cterm=underline ctermfg=yellow
highlight User4 term=underline cterm=underline ctermfg=white
highlight User5 ctermfg=cyan
highlight User6 ctermfg=white

Samba for Ubuntu

sudo apt-get install samba

安裝完畢後,先暫停服務修改設定檔...
/etc/init.d/samba stop

編輯設定檔...
基本上如果你用視窗來使用是比較方便與直覺....
vim /etc/samba/smb.conf

以下是設定檔的部份介紹

workgroup = WORKGROUP <= 預設WORKGROUP,你可以改成自己喜歡的工作群組
server string = %h server (Samba, Ubuntu) <=自己電腦的名稱,自己改自己喜歡的,%h就是hostname
security = user <= 預設要輸入帳號密碼,如果不想這麼麻煩可以改成share...

在尾巴加上你要的分享資料夾
[SHARE]
path = /var/lib/share ;分享路徑
browseable = yes ;是否可瀏覽
read only = no ;是否唯讀
create mask = 0644 ;檔案遮罩
directory mask = 0755 ;資料夾遮罩

記得要打開分享路徑的權限喔chmod 777 /var/lib/share
或者設定user以及group...在改成chmod 770 /var/lib/share

編輯完後,存檔並重新啟動samba
/etc/init.d/samba start

如果你需要設定帳號密碼才能使用,除了在smn.conf把security設定成user外
請作以下命令來新增使用者...
sudo smbpasswd -a 帳號

另外請記得養成好習慣,每次編輯完smb.conf的時候請用testparm來檢查是否有問題
執行..testparm
結果..
Load smb config files from /etc/samba/smb.conf
Processing section "[printers]"
Processing section "[print$]"
Processing section "[SHARE]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions

好用可以分割視窗的終端機 Terminator


HOW TO INSTALL FOR UBUNTU:
sudo add-apt-repository ppa:gnome-terminator
sudo apt-get update
sudo apt-get install terminator
Link

Ubuntu - Flash 解決字型亂碼

方法一:

  1. 執行 sudo gedit /etc/fonts/conf.d/49-sansserif.conf

    將兩個「sans-serif」改成「san serif」即可!


方法二:

  1. vim /etc/fonts/conf.d/69-language-selector-zh-tw.conf
  2. 將 sans-serif 下的 binding="strong" 拿掉

2010年3月23日 星期二

忘了root密碼的解決方法

以單用戶方式進入系統,修改root的密碼然後再重新啟動即可。過程如下所示。
對於LILO:
當系統啟動到出現LILO引導畫面時,對於圖形引導方式按TAB鍵進入文本方式,然後在LILO處輸入linux single即可進入免密碼的控制台,進入以後使用passwd命令修改root的密碼即可。
對於GRUB:
當系統啟動到出現GRUB引導畫面時,按字母e鍵,進入GRUB編輯狀態。按鍵盤上或下鍵選擇相應的引導項,在選擇了一個引導項目後接字母e鍵進入 命令行編輯。在出現的命令行後添加“空格single”並按Enter返回編輯狀態,再按字母b即可以單用戶方式啟動系統,進入系統後使用passwd命令修改 root的密碼即可。

不用 sudo 以 non-root 身份用 Wireshark 抓封包

在 Ubuntu 上安裝好 Wireshark,想抓封包時卻找不到網路卡。原來必須執行 "sudo wireshark" 才有足夠的權限。這樣子除了麻煩之外,還有一個不方便:封包 存檔之後是屬於 root 所有,處理起來相當不便。

經過一番努力,找出幾個解決方案。

方案一:

最簡單的作法是安裝完 Wireshark 之後執行 "sudo chmod u+s /usr/bin/dumpcap"。這樣子就可以一般使用者的身份抓封包了。關鍵在於 "dumpcap" 就是那個需要 root 權限的部份,上述指令讓一般使用者也可以 root 的身份執行 "dumpcap"。

這種方法雖然簡單,但對講求安全的人來說卻不太妙。因為所有 人都可以執行這隻需要 root 權限的程式。方案二是一個改進的方法。

方案二:

改進的方式就是只開放給特定 group 的人以 root 身份執行 "dumpcap":

1. 執行 "sudo vi /etc/group" 並新增一個 group (建議叫做 "wireshark"),然後將自己加入此 group
2. 執行 "sudo chgrp wireshark /usr/bin/dumpcap",將 dumpcap 改為 wireshark group
3. 執行 "sudo chmod 4754 /usr/bin/dumpcap",只讓屬於 wireshark group 的人可以 root 身份執行 dumpcap

完成上述動作之後,重新登入讓 group 所屬生效。這樣你就可以用原本的身份抓封包了,封包存檔的所有也都屬於原本的身份。

參考資料:

* http://wiki.wireshark.org/CaptureSetup/CapturePrivileges

How to use simple speedtest in RaspberryPi CLI

  pi@ChunchaiRPI2:/tmp $  wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py --2023-06-26 10:4...