?? linux技巧100例.txt
字號:
0001 修改主機名(bjchenxu)
vi /etc/sysconfig/network,修改HOSTNAME一行為"HOSTNAME=主機名"(沒有這行?那就添加這一行吧),然后運行命令" hostname 主機名"。一般還要修改/etc/hosts文件中的主機名。這樣,無論你是否重啟,主機名都修改成功。
0002 Ret Hat Linux啟動到文字界面(不啟動xwindow)(bjchenxu)
vi /etc/inittab
id:x:initdefault:
x=3:文本方式 x=5:圖形方式
0003 linux的自動升級更新問題(hutuworm,NetDC)
對于redhat,在www.redhat.com/corp/support/errata/找到補丁,6.1以后的版本帶有一個工具up2date,它能夠測定哪些rpm包需要升級,然后自動從redhat的站點下載并完成安裝。
升級除kernel外的rpm: up2date -u
升級包括kernel在內的rpm: up2date -u -f
由于Red Hat Network SSL證書過期,所以應在rhn_register || up2date 之前先執行一行script以更新證書:
wget -q -O - https://rhn.redhat.com/help/new-cert.sh | /bin/bash
Debian跟別的發行版還是有很大的差別的,用Debian做服務器維護更加方便;紅帽的升級其實挺麻煩的,當然,如果你交錢給紅帽的話,服務是會不一樣的。
Debian下升級軟件:
apt-get update
apt-get upgrade
前提:配置好網絡和/etc/apt/sources.list,也可以用apt-setup設置。
0004 windows下看linux分區的軟件(bjchenxu)
Paragon.Ext2FS.Anywhere.2.5.rar和explore2fs-1.00-pre4.zip
0005 mount用法(sakulagi,sxsfxx)
fat32的分區 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom
ntfs的分區 mount -o iocharset=cp936 /dev/hda7 /mnt/cdrom
iso文件 mount -o loop /abc.iso /mnt/cdrom
軟盤 mount /dev/fd0 /mnt/floppy
USB閃存 mount /dev/sda1 /mnt/cdrom
所有/etc/fstab內容 mount -a
可以指定文件格式"-t 格式", 格式可以為vfat, ext2, ext3等.
訪問DVD mount -t iso9660 /dev/dvd /mnt/cdrom或mount -t udf /dev/dvd /mnt/cdrom
注意:dvd的格式一般為iso9660或udf之一
0006 在vmware的LINUX中使用本地硬盤的FAT分區(bjchenxu)
將本地的FAT分區共享,然后在VMWARE中使用SMBFS掛上。可以將如下的行放到/etc/fstab中:
//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharest=gb2312 0 0
其中win_ip是你的windows的IP地址;
D$是你的windows里面共享的D盤的共享名;
/mnt/d是要將該分區mount到linux的目錄;
win_name和win_pass是你的WINDOWS里面可以讀取該分區的用戶,比如你的管理員名和密碼。
如果你運行了/etc/rc.d/init.d/netfs,那么在啟動的時候就會自動掛載這個分區。
0007.a 刪除名為-a的文件(bjchenxu)
rm ./-a
rm -- -a 告訴rm這是最后一個選項,參見getopt
ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' \;
0007.b 刪除名為\a的文件(bjchenxu)
rm \\a
0007.c 刪除名字帶的/和‘\0'文件(bjchenxu)
這些字符是正常文件系統所不允許的字符,但可能在文件名中產生,如unix下的NFS文件系統在Mac系統上使用
1.解決的方法,把NFS文件系統在掛到不過濾'/'字符的系統下刪除含特殊文件名的文件。
2.也可將錯誤文件名的目錄其它文件移走,ls -id 顯示含該文件目錄的inum,umount 文件系統,
clri清除該目錄的inum,fsck,mount,check your lost+found,rename the file in it.
最好是通過WINDOWS FTP過去就可以刪除任何文件名的文件了!
0007.d 刪除名字帶不可見字符的文件(bjchenxu)
列出文件名并轉儲到文件:ls -l >aaa
然后編輯文件的內容加入rm命令使其內容成為刪除上述文件的格式:
vi aaa
[rm -r *******
]
把文件加上執行權限 chmod +x aaa
執行 $aaa
0007.e 刪除文件大小為零的文件(bjchenxu)
rm -i `find ./ -size 0`
find ./ -size 0 -exec rm {} \;
或
find ./ -size 0 | xargs rm -f &
或
for file in * #自己定義需要刪除的文件類型
do
if [ ! -s ${file} ]
then
rm ${file}
echo "rm $file Success!"
fi
done
0008 redhat設置滾輪鼠標(mc1011)
進入X后,選擇鼠標的配置,選擇wheel mouse(ps/2)就可以了,
如果鼠標表現異常,重啟計算機即可。
(或者su, vi /etc/X11/XF86Config, 把PS/2 改成 ImPS/2)
0009 加裝xwindow(bjchenxu)
用linux光盤啟動,選擇升級,然后單獨選擇包,安裝即可
0010 刪除linux分區(bjchenxu)
做一張partition magic的啟動軟盤,啟動后刪除. 或者用win2000的啟動光盤啟動,然后刪除.
0011 如何退出man(bjchenxu)
q
0012 不編譯內核,mount ntfs分區(bjchenxu,hutuworm)
原裝rh8,未升級或編譯內核
1. 上google.com搜索并下載 kernel-ntfs-2.4.18-14.i686.rpm
2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm
3. mkdir /mnt/c
4. mount -t ntfs /dev/hda1 /mnt/c
或
Read only: http://linux-ntfs.sourceforge.net/
Read/Write: http://www.jankratochvil.net/project/captive/
0013 tar 分卷壓縮和合并(WongMokin)
以每卷500M為例
tar分卷壓縮:tar cvzpf - mytarfile.tar.gz | split -d -b 500m
tar多卷合并:cat x* > mytarfile.tar.gz
0014 使用lilo/grub時找回忘記了的root口令(bjchenxu)
三種辦法:
1.在系統進入單用戶狀態,直接用passwd root去更改
2.用安裝光盤引導系統,進行linux rescue狀態,將原來/分區掛接上來,作法如下:
cd /mnt
mkdir hd
mount -t auto /dev/hdaX(原來/分區所在的分區號) hd
cd hd
chroot ./
passwd root
這樣可以搞定
3.將本機的硬盤拿下來,掛到其他的linux系統上,采用的辦法與第二種相同
rh8中
一. lilo
1. 在出現 lilo: 提示時鍵入 linux single
畫面顯示 lilo: linux single
2. 回車可直接進入linux命令行
3. #vi /etc/shadow
將第一行,即以root開頭的一行中root:后和下一個:前的內容刪除,
第一行將類似于
root::......
保存
4. #reboot重啟,root密碼為空
二. grub
1. 在出現grub畫面時,用上下鍵選中你平時啟動linux的那一項(別選dos喲),然后按e鍵
2. 再次用上下鍵選中你平時啟動linux的那一項(類似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e鍵
3. 修改你現在見到的命令行,加入single,結果如下:
kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/
4. 回車返回,然后按b鍵啟動,即可直接進入linux命令行
5. #vi /etc/shadow
將第一行,即以root開頭的一行中root:后和下一個:前的內容刪除,
第一行將類似于
root::......
保存
6. #reboot重啟,root密碼為空
0015 使ctrl + alt + del失效(bjchenxu)
vi /etc/inittab
將ca::ctrlaltdel:/sbin/shutdown -t3 -r now這行注釋掉,就可以了
0016 如何看出redhat的版本是7還是8(hutuworm)
cat /proc/version或者cat /etc/redhat-release或者cat /etc/issue
0017 文件在哪個rpm中(無雙)
上www.rpmfind.net上搜,或者rpm -qf 文件名得到
0018 把man或info的信息存為文本文件(bjchenxu)
以 tcsh 為例:
man tcsh | col -b > tcsh.txt
info tcsh -o tcsh.txt -s
0019 利用現存兩個文件,生成一個新的文件(bjchenxu)
1. 取出兩個文件的并集(重復的行只保留一份)
2. 取出兩個文件的交集(只留下同時存在于兩個文件中的文件)
3. 刪除交集,留下其他的行
1. cat file1 file2 | sort | uniq
2. cat file1 file2 | sort | uniq -d
3. cat file1 file2 | sort | uniq -u
0020 設置com1口,讓超級終端通過com1口進行登錄(bjchenxu)
確認有/sbin/agetty,編輯/etc/inittab,添加
7:2345:respawn:/sbin/agetty /dev/ttyS0 9600
9600bps是因為聯路由器缺省一般都是這種速率,也可以設成
19200、38400、57600、115200
修改/etc/securetty,添加一行:ttyS0,確保root用戶能登錄
重啟機器,就可以拔掉鼠標鍵盤顯示器(啟動時最好還是要看看輸出信息)了
0021 刪除目錄下所有文件包括子目錄(bjchenxu)
rm -rf 目錄名
0022 查看系統信息(bjchenxu)
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts - 中斷
cat /proc/ioports - 設備IO端口
cat /proc/meminfo - 內存信息(i.e. mem used, free, swap size)
cat /proc/partitions - 所有設備的所有分區
cat /proc/pci - PCI設備的信息
cat /proc/swaps - 所有Swap分區的信息
cat /proc/version - Linux的版本號 相當于 uname -r
uname -a - 看系統內核等信息
0023 去掉多余的回車符(bjchenxu)
sed 's/^M//' test.sh > back.sh, 注意^M是敲ctrl_v ctrl-m得到的
或者 dos2unix filename
0024 切換X桌面(lnx3000)
如果你是以圖形登錄方式登錄linux,那么點擊登錄界面上的session(任務)即可以選擇gnome和kde。如果你是以文本方式登錄,那執行switchdesk gnome或switchdesk kde,然后再startx就可以進入gnome或kde。
(或者vi ~/.xinitrc,添加或修改成exec gnome-session 或exec startkde,
然后用startx啟動X)
0025 通用的聲卡驅動程序(lnx3000)
OSS www.opensound.com/ ALSA www.alsa-project.org/
0026 改變redhat的系統語言/字符集(beming/mc1011)
修改 /etc/sysconfig/i18n 文件,如
LANG="en_US",xwindow會顯示英文界面,
LANG="zh_CN.GB18030",xwindow會顯示中文界面。
還有一種方法
cp /etc/sysconfig/i18n $HOME/.i18n
修改 $HOME/.i18n 文件,如
LANG="en_US",xwindow會顯示英文界面,
LANG="zh_CN.GB18030",xwindow會顯示中文界面。
這樣就可以改變個人的界面語言,而不影響別的用戶
(Debian不支持GB18030(RH的zysong字庫是有版權的)
現在好像沒有Free的GBK和GB18030字庫
vi .bashrc
export LANG=zh_CN.GB2312
export LC_ALL=zh_CN.GB2312)
0027 把屏幕設置為90列(bjchenxu)
stty cols 90
0028 使用md5sum文件(bjchenxu)
md5sum isofile > hashfile, 將 md5sum 檔案與 hashfile 檔案內容比對, 驗證雜湊值
是否一致 md5sum –c hashfile
0029 一次解壓多個zip文件(bjchenxu)
unzip "*",注意引號不能少
0030 看pdf文件(bjchenxu)
使用xpdf或者安裝acrobat reader for linux
0031 查找權限位為S的文件(bjchenxu)
find . -type f \( -perm -04000 -o -perm -02000 \) -exec ls -lg {} \;
0032 裝中文輸入法(bjchenxu)
以redhat8為例,xwindow及其終端下的不用說了吧,缺省就安裝了,用ctrl-space呼出。
現在討論純console,請下載zhcon.gnuchina.org/download/src/zhcon-0.2.1.tar.gz,
放在任一目錄中,tar xvfz zhcon-0.2.1.tar.gz, cd zhcon-0.2.1, ./configure,
make, make install。安裝結束,要想使用,請運行zhcon,想退出,運行exit。
0033 把彈出的光盤收回來(beike)
#eject -t
0034 cd光盤做成iso文件(弱智)
cp /dev/cdrom xxxx.iso
0035 快速觀看開機的硬件檢測(弱智)
dmesg | more
0036 查看硬盤的使用情況(bjchenxu)
df -k 以K為單位顯示
df -h 以人性化單位顯示,可以是b,k,m,g,t..
0037 查看目錄的大小(bjchenxu)
du -sh dirname
-s 僅顯示總計
-h 以K、M、G為單位,提高信息的可讀性。KB、MB、GB是以1024為換算單 位, -H以1000為換算單位。
0038 查找或刪除正在使用某文件的進程(wwwzc)
fuser filename
fuser -k filename
0039 安裝軟件(bjchenxu)
rpm -ivh aaa.rpm
tar xvfz aaa.tar.gz; cd aaa; ./configure; make; make install
0040 字符模式下設置/刪除環境變量(bjchenxu)
bash下
設置:export 變量名=變量值
刪除:unset 變量名
csh下
設置:setenv 變量名 變量值
刪除:unsetenv 變量名
0041 ls如何看到隱藏文件(即以.開頭的文件)(雙眼皮的豬)
ls -a
l. (適用于redhat)
0042 rpm中的文件安裝到哪里去了(bjchenxu)
rpm -qpl aaa.rpm
0043 使用src.rpm(bjchenxu)
rpmbuild --rebuild *.src.rpm
0044 vim中顯示顏色或不顯示顏色(bjchenxu)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -