顯示具有 Linux 標籤的文章。 顯示所有文章
顯示具有 Linux 標籤的文章。 顯示所有文章

2014年7月23日 星期三

在VirtualBox上安裝Ubuntu Linux 14.04

VirtualBox似乎對Ubuntu 14.04支援度不太好。

安裝完成後,在ubuntu登入畫面輸入帳號密碼後,就沒辦法顯示正常的畫面(顯示畫面如下圖所示)
http://askubuntu.com/questions/17381/unity-doesnt-load-no-launcher-no-dash-appears/76951

解法是安裝Virtualbox guest additions

如以下網址的教學:
http://www.binarytides.com/vbox-guest-additions-ubuntu-14-04/

在ubuntu按Ctrl+Alt+F1可以切換到命令列的模式,就可以敲指令來安裝軟體。

最後要記得在virtualbox上勾選啟動3D加速。

這樣ubuntu linux桌面就會正常了。

2012年1月11日 星期三

解決 pcnet32 device eth0 does not seem to be present

今天在vmware上面跑fedora的時候,不知道為什麼之前網卡正常,但是後來網卡都無法啟動

於是我找到這個網站的教學:
http://newyorks.blog.51cto.com/2612618/498819

解決方法就是在/lib/modules/`uname -r`/下執行 depmod,重新生成modules.dep和modules.alias,重新開機。

2011年5月23日 星期一

ubuntu筆記

最近在用ubuntu,發現與fedora似乎有些地方不同。因此做一些筆記。
1. 設定開機選單(grub)
安裝startup-manager
2. 設定開機執行的process
安裝bootup-manager
3. 切換成root
sudo su
4. 換掉很難用的vi
安裝vim即可,無需其他動作
5. http server 根目錄
/var/www/  (與fedora不同)
6. phpmyadmin的位置
/etc/phpmyadmin and /usr/share/phpmyadmin
7. ssh很慢的問題
google到的說法是编辑 /etc/ssh/ssh_config將GSSAPIAuthentication 設定成no。但是我這樣做,還是很慢。
我的作法是/etc/ssh/sshd_config加上UseDNS no。在重新啟動ssh server。就會很快。
8. 設定vim一些參數(/ect/vim/vimrc 或是在home目錄的.vimrc)
1)设置(软)制表符宽度为4:
set tabstop=4
set softtabstop=4
2)设置缩进的空格数为4
set shiftwidth=4
3)设置自动缩进:即每行的缩进值与上一行相等;使用noautoindent取消设置:
set autoindent
4)设置使用C/C 语言的自动缩进方式:
set cindent

Linux架設CVS與SVN server

CVS可以看這篇:
http://blog.yam.com/gavint/article/2590383
SVN可以看這篇:
http://blog.ssh.tw/?p=372

不過我覺得SVN那篇文章,沒有寫的很清楚。
可能還需要與CVS 那一篇相互對照。像我之前想要用其他使用者加入一些目錄,會遇到權限不足的問題。
在SVN想要讓使用者輸入密碼才能使用的話,SVN網址如下:
svn+ssh://[SVN server IP]/[SVN的根目錄]

另外,使用TortoiseSVN連線到SVN server,會需要常常輸入帳號密碼。
有個辦法可以不用輸入密碼:
1. 在 Explorer 右键菜单中:TortoiseSVN -> Settings.
2. 在弹出对话框的左侧面板中选择 Network,在右边界面下方的 SSH Client 中填写:

    [TortoiseSVN Install Path]\bin\TortoisePlink.exe -pw [Your Password]


例如,你的 TortoiseSVN 安装在默认目录 C:\Program Files\TortoiseSVN 下,密码为 abc123,那么以上的内容就应该为:

    C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -pw abc123


3. 点击 OK.


還有要打開防火牆的port。
CVS與SVN server所聽的port不同。

對檔案轉換編碼方式

例如某個檔案原本是存成big5編碼,現在想轉換成UTF8編碼
可以使用以下指令:
iconv -f big5 -t utf8 src.txt > dest.txt

Linux Kernel Compile Note

make menuconfig
make clean
make bzImage
make modules
make modules_install
cp /usr/src/linux-2.6.14.2/System.map /boot/System.map-2.6.14-2
/sbin/mkinitrd </boot/initrd-版本> <版本>   //鳥哥少說這一步
cp 移動新核心到 /boot 裡面去
vi /boot/grub/menu.lst  //加入新的開機選項
reboot

Linux Kernel Module

做一下筆記:

The Linux Kernel Module Programming Guide
http://www.tldp.org/LDP/lkmpg/2.6/html/
Linux Loadable Kernel Module HOWTO
http://www.tldp.org/HOWTO/Module-HOWTO/

Linux下常用壓縮格式的壓縮與解壓方法

文章出處:
http://www.21ds.net/article/31/369
.tar
解包: tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(註:tar是打包,不是壓縮!)
---------------------------------------------
.gz
解壓1:gunzip FileName.gz
解壓2:gzip -d FileName.gz
壓縮:gzip FileName
.tar.gz
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解壓1:bzip2 -d FileName.bz2
解壓2:bunzip2 FileName.bz2
壓縮: bzip2 -z FileName
.tar.bz2
解壓:tar jxvf FileName.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解壓1:bzip2 -d FileName.bz
解壓2:bunzip2 FileName.bz
壓縮:未知
.tar.bz
解壓:tar jxvf FileName.tar.bz
壓縮:未知
---------------------------------------------
.Z
解壓:uncompress FileName.Z
壓縮:compress FileName
.tar.Z
解壓:tar Zxvf FileName.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
---------------------------------------------
.tgz
解壓:tar zxvf FileName.tgz
壓縮:未知
.tar.tgz
解壓:tar zxvf FileName.tar.tgz
壓縮:tar zcvf FileName.tar.tgz FileName
---------------------------------------------
.zip
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
---------------------------------------------
.rar
解壓:rar a FileName.rar
壓縮:r ar e FileName.rar


rar請到:http://www.rarsoft.com/download.htm 下載!
解壓後請將rar_static拷貝到/usr/bin目錄(其他由$PATH環境變量指定的目錄也可以):
[root@www2 tmp]# cp rar_static /usr/bin/rar
---------------------------------------------
.lha
解壓:lha -e FileName.lha
壓縮:lha -a FileName.lha FileName

lha請到:http://www.infor.kanazawa-it.ac.jp/.../lhaunix/下載!
>解壓後請將lha拷貝到/usr/bin目錄(其他由$PATH環境變量指定的目錄也可以):
[root@www2 tmp]# cp lha /usr/bin/
---------------------------------------------
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
---------------------------------------------
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh
.lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解壓:sEx x FileName.*
壓縮:sEx a FileName.* FileName

sEx只是調用相關程序,本身並無壓縮、解壓功能,請注意!
sEx請到: http://sourceforge.net/projects/sex下載!
解壓後請將sEx拷貝到/usr/bin目錄(其他由$PATH環境變量指定的目錄也可以):
[root@www2 tmp]# cp sEx /usr/bin/


參考文獻:Linux 文件壓縮工具指南
(其實看幫助是最好的方法,一般各個命令都可以用「--help」參數得到常用使用方法!)
發佈人:會游泳的魚 來自:LinuxByte

設定IPv6 router advertisement

這是我在Fedora core 7上的設定流程。

設定過程如下:

要用root權限!!

1. 打開「/etc/sysconfig/network」檔案,加入新的一行「IPV6FORWARDING=yes」

2. 重開機

3. 在命令列打入「yum install radvd 」來安裝radvd

4. 在命令列打入「ifconfig eth0 inet6 add 2002:610:1e28:1::1」來設定網卡
的IPv6 位址

5. 打開「/etc/radvd.conf」檔案,加入如下的設定檔:
interface eth0
{
AdvLinkMTU 1480;
AdvSendAdvert on;
prefix 2002:610:1e28:1::1/64
{
};
};

6. 使用「/usr/sbin/radvd」指令來啟動radvd
使用「killall radvd」指令來關閉radvd

error while loading shared libraries的解決方法

執行程式時,如此遇到像下列這種錯誤: 

./tests: error while loading shared libraries: xxx.so.0:cannot open shared object file: No such file or directory

那就表示系統不知道xxx.so 放在哪個目錄下。

這個時候就要在/etc/ld.so.conf中加入xxx.so所在的目錄。
 一般而言,有很多so檔會在/usr/local/lib這個目錄下,所以在/etc/ld.so.conf中加入/usr/local/lib這一行,可以解決此問題。

將 /etc/ld.so.conf存檔後,還要執行「/sbin/ldconfig –v」來更新一下才會生效。

2011年5月21日 星期六

Fedora 系統微調

這是我找到解決一些小問題的方法(針對fedora core 7)
1. 用ssh登入會遇到中文亂碼的問題:
Sol: 在/etc/sysconfig/i18n 中,將zh_TW.UTF8改成zh_TW.Big5

2. 用vsftpd架站。在ftp client登入時,會遇到「500 OOPS: cannot change directory ...」。
Sol:只要打入「 /usr/sbin/setsebool -P ftp_home_dir 1」就可以解決,這似乎是SELINUX的問題。
 值得注意的是vsftpd會預設讓匿名使用者登入,記得關閉此選項。

3.  sshd預設允許root登入。
Sol: 在/etc/ssh/sshd_config中,將PermitRootLogin改成no,並將註解移除。

4. 簡單防駭設定:
Sol:在/etc/hosts.allow加入「sshd: 140.113.0.0/255.255.0.0: Allow」
在/etc/hosts.deny加入「sshd: ALL: Deny」
就可以限制非交大的IP來try密碼。

5. root權限下,使用vi會沒有顏色
Sol:打開/etc/profile.d/vim.sh
把「[ `//usr/bin/id -u` -le 100 ] && return」 註解掉,並且登出後登入。

6. 網路開機Wake on Lan,還要改BIOS
$ ethtool eth0
Settings for eth0:
Supports Wake-on: g
Wake-on: d
Link detected: yes

主要要看 Wake-on 這一項,要設成 g:

$ ethtool -s eth0 wol g

C++測量時間

有windows及linux兩種作法:
windows:
#include <windows.h>
#include <iostream>
using namespace std;

void main(){
    LARGE_INTEGER m_liPerfFreq={0};
    QueryPerformanceFrequency(&m_liPerfFreq);
    
    LARGE_INTEGER m_liPerfStart={0};
    QueryPerformanceCounter(&m_liPerfStart);

    for(int i=0; i< 100; i++)
              cout << i << endl;

    LARGE_INTEGER liPerfNow={0};
    QueryPerformanceCounter(&liPerfNow);

    int time=( ((liPerfNow.QuadPart - m_liPerfStart.QuadPart) * 1000)/m_liPerfFreq.QuadPart);

    cout<<"執行時間:"<<time<<" ms"<<endl;
}
linux:
timeval tim;
           gettimeofday(&tim, NULL);
             double t1=tim.tv_sec+(tim.tv_usec/1000000.0);
             do_something_long();
             gettimeofday(&tim, NULL);
             double t2=tim.tv_sec+(tim.tv_usec/1000000.0);
             printf("%.6lf seconds elapsed\n", t2-t1);