萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux新手精彩問答

Linux新手精彩問答

class="22721">

編者按:鑒於目前中國Linux的發展現狀,90%以上的問題都可以用一句話來回答,這便是本文的初衷。歡迎大家添加自己的“一句話”,收錄後注明原始提供者。更詳細的文檔,請浏覽本版精華區或http://www.unixsky.org/docs/linux/

----------------------------網絡無關篇--------------------------
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 刪除名字帶的/和‘'文件(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 -

copyright © 萬盛學電腦網 all rights reserved