Linux快速學習

 
Linux快速學習
 
[b:935c86ad7b]1[/b:935c86ad7b].更改telnet登錄慢的問題:
cd /etc
vi resolv.conf
將裏面內容清空

[b:935c86ad7b]2[/b:935c86ad7b].
更改root用戶不能直接遠程登錄問題:
cd /etc
cd pam.d
vi login
註釋掉這行
#auth required pam_securetty.so //
該行註釋掉

[b:935c86ad7b]3.[/b:935c86ad7b]
掛接USB移動硬盤
將移動硬盤掛上.
#df
查看Linux下硬盤盤符
mount /dev/sda1 /mnt/usb (
舉例)

[b:935c86ad7b]4.[/b:935c86ad7b]Linux
時區同步問題(安裝ntp軟件過程)
首先在http://www.meinberg.de/english/sw/index.htm
下載了一個windowsNTP服務程序:ntp4171.zip
windows 192.168.1.32
1.
安裝是提示設置服務器地址,我設置的本機widows機器的IP
2.ntpd
的控制在:
控制面板->管理工具->組件服務-NetworkTimeProtocol
3.
可以啓動ntpd守護進程保持時間同步
4.
C:/WINNT目錄下有個ntp的配置文件ntp.conf
設置爲:
server 127.127.1.0 prefer
fudge 127.127.1.0 stratum 10
5.
確定ntp是否工作: ntpq -p
linux
Windows同步,我用的是RedHat 9.0
執行命令:ntpdate 192.168.1.32
你就會發現你的時間變化了,和192.168.1.32的時間一樣
如果執行命令出現一下錯誤
1.
提示:7 Dec 19:24:55 ntpdate[2120]: the NTP socket is in use, exiting
這個是你linux機器上已經存在這個進程,輸入:ps -ef | grep ntpd
Kill
ntp的進程
2.
提示:No Server suitable for synchronization found
這個是最容易出現的問題,比較常見的是配置好服務器並啓動服務器進程後,馬上
啓動客戶進程,那麼客戶進程就會報錯。解決方法是,在大約3-5分鐘以後啓動進程就行
我想每10分鐘就和Windows服務同步時間
1.
創建自己的一個crontab文件,隨便建立一個文件date.cron,首先可以使用任何文本
編輯器建立一個新文件,然後向其中寫入需要運行的命令和要定期執行的時間。
vi date.cron
加入下面要運行的命令和要定期執行的時間
*/10 * * * * /usr/sbin/ntpdate 192.168.1.32
然後存盤退出
2.
使用crontab命令來安裝這個文件,使之成爲該用戶的crontab文件。鍵入:
crontab date.cron
這個文件已經建立好了
3.
使用命令:
crontab -l (
查看安排的作業序列)可以看到剛纔的作業
如:
[root@NXD-TEST root]# crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (date.cron installed on Tue Dec 7 18:22:42 2004)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
*/10 * * * * /usr/sbin/ntpdate 192.168.1.32
現在就OK了,每10分鐘Linux就和服務端同步一次。

[b:935c86ad7b]5.[/b:935c86ad7b]
更改Linux啓動時用圖形界面還是字符界面
cd /etc
vi inittab
id:5:initdefault: 其中5表示默認圖形界面
id:3: initdefault: 3表示字符界面

[b:935c86ad7b]6.[/b:935c86ad7b]
重新啓動xinetd)
/etc/init.d/xinetd restart

[b:935c86ad7b]7.[/b:935c86ad7b]
重啓smb服務
/etc/init.d/smb restart

[b:935c86ad7b]8.[/b:935c86ad7b]
配置smb可以被哪些IP所用.
cd /etc/samba
Vi smb.conf
找到hosts allow = 192.168.1. 192.168.2. 127.
修改其爲哪些機器所用,注意IP之間用逗號分開
舉例:
hosts allow =192.168.1.110,192.168.1.120

[b:935c86ad7b]9.[/b:935c86ad7b]
禁止在後臺使用CTRL-ALT-DELETE重起機器
cd /etc/inittab
vi inittab
在文件找到下面一行
# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
(註釋掉這一行)
如: # Trap CTRL-ALT-DELETE
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

[b:935c86ad7b]10.[/b:935c86ad7b]
修改主機名
vi /etc/sysconfig/network
修改HOSTNAME一行爲HOSTNAME=主機名

[b:935c86ad7b]11[/b:935c86ad7b].
重新啓動FTP服務
/sbin/service vsftpd restart

[b:935c86ad7b]12.[/b:935c86ad7b]
查看開機檢測的硬件
dmesg | more

[b:935c86ad7b]13.[/b:935c86ad7b]
查看硬盤使用情況
df –m

[b:935c86ad7b]14.[/b:935c86ad7b]
查看目錄的大小
du –sh dirname

[b:935c86ad7b]15.[/b:935c86ad7b]
解壓小全
tar xvfj lichuanhua.tar.bz2
tar xvfz lichuanhua.tar.gz
tar xvfz lichuanhua.tgz
tar xvf lichuanhua.tar
unzip lichuanhua.zip
.gz
解壓1gunzip FileName.gz
解壓2gzip -d FileName.gz
壓縮:gzip FileName
.tar.gz
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解壓1bzip2 -d FileName.bz2
解壓2bunzip2 FileName.bz2
壓縮: bzip2 -z FileName
.tar.bz2
解壓:tar jxvf FileName.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解壓1bzip2 -d FileName.bz
解壓2bunzip2 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
壓縮:rar 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/~ishii/lhaunix/下載!
解壓後請將lha拷貝到/usr/bin目錄(其他由$PATH環境變量指定的目錄也可以):
[root@www2 tmp]# cp lha /usr/bin/
---------------------------------------------
.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
[b:935c86ad7b]16.[/b:935c86ad7b]
顯示內存使用情況
free –m

17.
忘記了root密碼
. lilo
1.
在出現lilo菜單的時候按“ctrl+x”或者“Tab",然後輸入:linux single
或者用光盤
在出現 lilo: 提示時鍵入 linux single
畫面顯示 lilo: linux single
2.
回車可直接進入linux命令行
3. #vi /etc/shadow
將第一行,即以root開頭的一行中root:後和下一個:前的內容刪除,
第一行將類似於
root::......
保存
4. #reboot
重啓,root密碼爲空

.grub
1.
出現grub畫面時,用上下鍵選啓動Linux的哪一項,按e
2.
上下鍵選擇 kernel /boot/……… 然後按e
3.
修改現在見到的命令好,加入single 結果:
kernel /boot/vmlinuz-2.4.20-8 single ro root=LABEL=
4.
回車返回,按b鍵啓動,直接進入linux命令行
直接執行: passwd root
修改密碼,你的密碼就搞定
5.
也可以修改/etc/shadow
將第一行,即以root開頭的一行中root:後和下一個:前的內容刪除,
第一行將類似於
root::......
保存
reboot
重啓,root密碼爲空
18.顯示系統運行了多長時間
uptime

19.重新啓動網絡
/etc/init.d/network restart

20.顯示開機自檢的內容命令
dmesg

21.查看端口
netstat –an
netstat -anp

22..端口的詳細列表
/etc/services

23.查看物理信息
lspci

24.安裝圖形界面不能出現,使用解析進行安裝
Linux lowres (使用的是640X480分辨率)

25.屏蔽主機的ping 命令,是被別人無法ping你的機器
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

26.徹底刪除Oracle安裝的程序,刪除一下幾個目錄
/etc/oraInst.loc /tmp/<otherowerdFile
/etc/oratab $ORACLE_BASE/*

27.Linux啓動到文字界面(不啓動Xwindows界面)
vi /etc/inittab在下面一行
id:5:initdefault: 一行中的5改爲3
啓動Xwindows 是5
文字截面是 3


28.RPM包
1.卸載 RPM –e
2.查詢 rpm –q
-a 查詢所有已安裝的軟件包
-f 查詢包含文件<file>的軟件的包
-i 顯示軟件包信息
-l 顯示軟件包的文件列表
3.驗證 rpm –v
rpm –Va 驗證整個文件丟失了哪些文件
碰到不認識的文件使用
rpm –qf
4.一個rpm包安裝到哪裏去了(已經安裝的包)
rpm –qi 包名(這裏不包括.rpm後綴的軟件名稱,也就是說只能用mysql或者mysql-3.23.54a而不是mysql-3.23.54a.rpm)
5.一個rpm包中包含哪些文件
一個沒有安裝過的軟件包:使用rpm –qip ***.rpm
一個已經安裝過的軟件包: 使用rpm –qi ***.rpm

29.看已經安裝的字符集
locale –a

30.抓包命令tcpdump
例:抓獲192.168.1.32 的主機收到和發出的所有的數據包
tcpdump host 192.168.1.32
截獲特定的端口
tcpdump tcp port 21 host 192.168.1.32

31.文本截面的中文支持
RH 9.0自帶安裝包 zhcon_0.2.3_1.rh9.i386.rpm
安裝完成後,執行: zhcon 就可以支持中文了

32.查看端口現在運行什麼程序
lsof –i:8001

33.察看實時的日誌
tail –f /var/log/messages

34.當mount出現死的現象
1.fuser –m /mnt/share 查出該程序的進程,然後Kill掉
2.再umount /mnt/share

35.linux 控制 windows
1.用RH9.0自己帶rdesktop,版本是1.2.0
命令:rdesktop –u user –f 192.168.1.70 色默認的是8位
2要達到16色,就要下載新版本1.3.0
rdesktop –a 16 –u lichuanhua –g 800*600 192.168.1.70

36. Linux掛載Windows分區
mount ntfs分區
一.單機掛windows的NTFS分區
1. 上www.google.com搜索並下載 kernel-ntfs-2.4.18-14.i686.rpm
2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm
3. mkdir /mnt/share
4. mount -t ntfs /dev/hda1 /mnt/share
要掛載Windows分區,首先新建一個目錄/mnt/share,修改/etc/fstab,在最末尾添上(假設Windows安裝在硬盤的第1個分區)
/dev/hda1 /mnt/share ntfs defaults 0 0
二.網絡上一臺windows和linux機器,linux機器掛載windows上的共享文件
windows IP:192.168.1.1
1.linux掛載192.168.1.1(windows)上共享文件dbf,掛在linux的/mnt/share目錄下,在/mnt下建立share目錄
mount -t smbfs -o username=massky,password=massky //192.168.
1.1/dbf /mnt/share
2.機器重啓自動掛載,vi /etc/fstab最後加入:
//192.168.1.1/dbf /mnt/share smbfs defaults,auto,username=m
assky,password=massky 0 0

37.Oracle9i在Linux9.0上的安裝
1.確保RPM開發包,使用下面命令查看是否已安裝這些包
rpm -q gcc cpp compat-libstdc++ glibc-devel glibc-kernheaders binutils
2.進行解壓
zcat Linux9i_Disk1.cpio.gz | cpio -idmv
zcat Linux9i_Disk2.cpio.gz | cpio -idmv
zcat Linux9i_Disk3.cpio.gz | cpio -idmv
3.設置內核參數
vi /etc/sysctl.conf,加入下面參數
kernel.shmmax=4294967295 內存512M
計算方法爲:kernel:shmmax=1024*1024*RAM(M)/2
執行sysctl -p生效
4.建立數據目錄和用戶
groupadd dba
groupadd oinstall
useradd –g oinstall –G dba oracle
passwd oracle

mkdir /opt/oracle
mkdir /opt/oracle/product
mkdir /opt/oracle/product/9.2.0
chown –R oracle.oinstall /opt/oracle
mkdir /var/opt/oracle
chown oracle.dba /var/opt/oracle
chmod 755 /var/opt/oracle
5.vi .bash_profile 設置變量
export LD_ASSUME_KERNEL=2.4.1
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/9.2.0
export ORACLE_SID=ora9i
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH

export PATH=$PATH:$ORACLE_HOME/bin
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
38.網卡的激活與停止
超級用戶;
ifconfig eth0 down 停止
ifconfig eth0 up 啓動

40.Linux下cvs的安裝配置
1.安裝CVS軟件包.
2.groupadd cvs
3.useradd -g cvs cvsroot
4.chmod 777 -R /home/cvsroot
5.cd /etc
6.vi profile
新增以下二行:
CVSROOT=/home/cvsroot export CVSROOT
CVSEDIT=vi export CVSEDIT
7.查看/etc/services文件中cvspserver 所在行的註釋狀態(有則把註釋去掉)
8.進入 /etc /xinetd.d, vi cvspserver該文件不存在,內容如下:
service cvspserver
{
disable = no
socket_type =stream
wait =no
user =root
env =HOME=
server =/usr/bin/cvs
server_args =--allow-root=/home/cvsroot pserver
log_on_failure +=USERID
}
9.vi /etc/xinetd.conf 內容如下,每次開機自動啓動服務:
service cvspserver
{
port = 2401
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/home/cvsroot pserver
bind = 168.168.1.110
}
重新登錄 換cvsroot用戶
10./etc/init.d/xinetd restart
11.cvs init(初始化:CVS版本庫的初始化)
12.cvs -d :pserver:[email protected]:/home/cvsroot login(用戶登錄)沒有任何提示信息就成功。
13.首先要導入庫,假設項目名稱爲LinuxISQuote.
步驟:
  1、進入LinuxISQuote.
2、一個項目的首次導入
cvs import LinuxISQuote lch V_0_0_1
此時到$CVSROOT目錄下,可以看到多了一個LinuxISQuote的目錄。

41.命令絕對路徑
.如果不是絕對路徑的話,你可以這樣輸入
(1)[root@RedHat linux]# whereis adduser
adduser: /usr/sbin/adduser /usr/share/man/man8/adduser.8.gz
你這樣輸入就可以了 /usr/sbin/adduser xxx
(2) 或者改vi /etc/profile,加入一句:PATH=$PATH:/usr/sbin:. export PATH,
就可以直接輸入adduser

42.修改用戶的權限
.改用戶權限的話,你可以改vi /etc/passwd
如:我想lll變成和root用戶一樣,就改: lll:x:508:508::/home/lll:/bin/bash
改後面的 508 爲和root後面的數據一樣的就可以了!
改爲:lll:x:508:0::/home/lll:/bin/bash
lll就擁有root的權限了。

43.修改grub啓動時的背景圖片
1
 將一圖片轉化成640*480,14色的XPM文件:
   #convert abc.jpg -colors 14 -geometry 640x480! abc.xpm
2 壓縮生成的xpm文件,使用gzip
#gzip -9 abc.xpm
3 將abc.xpm.gz拷到/boot/grub下
4 修改/boot/grub/menu.lst
splashimage=(hd0,0)/boot/grub/abc.xpm.gz

44.VNC for Linux的安裝
1.第一步在linux上安裝VNCserver
tar zxvf vnc-X.tgz
cd X
cp *vnc* /usr/local/bin/
沒有vnc 目錄,就建vnc目錄
mkdir /usr/local/vnc
cp -r classes/ /usr/local/vnc/
2.設置vnc server的訪問密碼
vncpasswd
3.linux版vnc server的改進.首先執行vncserver
修改/root/.vnc/xstartup裏的 twm $ 爲gnome-session &
4.啓動vnc server
vncserver
注意New 'X' desktop is KILl:3 記住3是客戶端要用到的端口
5.客戶端啓動vncviewer,輸入:如192.168.1.110:3
OK,你就看到了。。哈。。
如果在Windows客戶機中安裝了IE或NETSCAPE,還可以啓動IE或netscape
然後在地址欄輸入(如果是1的話)
http://192.168.1.64:5801改變或關閉Oracle XDB的ftp和http端口
Oracle 9i開始,創建數據庫時默認包含了XDB特性。一旦啓動了數據庫和Listener,Oracle XDB的http服務就佔用8080端口,剛好和JBoss、Tomcat等默認端口衝突。因此,必須有一個做出更改。改Tomcat等容易,只是一時不知道怎麼改XDB的配置。
在Google上搜索一下,找到了答案。原來Oracle XDB的端口設置不在配置文件中,而是在數據庫裏。修改XDB的http和ftp服務端口的方法有3種:
1。使用sys登錄Oracle,利用dbms_xdb修改端口設置
SQL> -- Change the HTTP/WEBDAV port from 8080 to 8081
SQL> call dbms_xdb.cfg_update(updateXML(
2 dbms_xdb.cfg_get()
3 , '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()'
4 , 8081))
5 /
Call completed.
SQL> -- Change the FTP port from 2100 to 2111
SQL> call dbms_xdb.cfg_update(updateXML(
2 dbms_xdb.cfg_get()
3 , '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()'
4 , 2111))
5 /
Call completed.
SQL> COMMIT;
Commit complete.
SQL> EXEC dbms_xdb.cfg_refresh;
PL/SQL procedure successfully completed.
2。使用OEM console,選擇數據庫,XML Database,Configuration。更改XDB的有關設置。
3。去掉數據庫的初始化參數: dispatchers='(PROTOCOL=TCP) (SERVICE=XDB)',將會禁止XDB的http和ftp服務。

46.XML for linux的安裝
我下載了兩個文件:libxml2-2.6.13.tar.gz和xml4c5_4_0-redhat_80-gcc_32.tar.gz
加入環境:
export XERCESCROOT=/home/lch/xml
export PATH=$PATH:/home/lch/xml/bin
export XERCESC_NLS_HOME=$XERCESCROOT/msg
export LD_LIBRARY_PATH=$XERCESCROOT/lib:$LD_LIBRARY_PATH (on Solaris, Linux)
進入xml4c5_4_0-redhat_80-gcc_32.tar.gz解壓後的目錄
runConfigure -plinux -cgcc -xg++ -rpthread
./configure
gmake

47.ace for linux的安裝
由於安裝說明文件“ACE-INSTALL.html”中提及的linux安裝過程極少,其主要針對Unix、Windows,手動配置較多,加上本人安裝後感覺“ACE-INSTALL.html”文件有些影響視聽,因爲主要的動作都可以由ACE包中的安裝腳本ACE-install.sh自動完成,我們主要的工作就可以直接對這個安裝腳本來處理即可。
1、安裝環境:
lRedHat 9.0
ACE安裝包ACE+TAO+CIAO.tar.gz,
http://deuce.doc.wustl.edu/Download.html, "Latest Beta Kit",beta版既是ACE的最新版。
2、安裝過程:
第一步
先設置ACE_ROOT環境,命令:
“vi /etc/profile”
在其中加入4行
ACE_ROOT=/opt/ACE
export ACE_ROOT
LD_LIBRARY_PATH=$ACE_ROOT/ace:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
我是加在“export PATH USER….”後的。完成後將/etc/profile執行一次,命令:
“chmod 555 /etc/profile”
“/etc/profile”
這樣我們的ACE_ROOT就設置好了,可以用如下命令查看ACE_ROOT是否設置好了:
“echo $ACE_ROOT”
這個時候最好reboot啓動一次linux。
第二步
不要自己手工將ACE+TAO+CIAO.tar.gz包完全解開,特別強調不要完全解開,後面可以看到安裝腳本會給我們解開它的;如果你手工解開全部,安裝腳本將會將你的解壓縮目錄刪除的!我們要做的事就只是將ACE+TAO+CIAO.tar.gz包中的ACE-install.sh安裝腳本單獨解出來,並對其修改。我們只要這一個文件就可以。
用mkdir建目錄,如/home/my/ACE,然後將你的ACE+TAO+CIAO.tar.gz放在此目錄下(用cp命令拷貝或mv命令移動到此目錄)。注意這個目錄將是你的一個存放ACE+TAO+CIAO.tar.gz的目錄,安裝腳本會來這個目錄找這個文件的,這個目錄和ACE_ROOT是不一樣的,且ACE-install.sh也提示不要將這兩個目錄設置成同一個目錄。ACE_ROOT將是我們的安裝目標目錄。
從ACE+TAO+CIAO.tar.gz解壓出單個文件ACE-install.sh:
“tar –zxvf ACE+TAO+CIAO.tar.gz ACE_wrappers/ACE-install.sh”
解好後,會出來一個新的子目錄“ACE_wrappers”。此時可以先將ACE-install.sh移到外面的目錄來:
“mv /ACE_wrappers/ACE-install.sh .”
“.”代表當前目錄。當然ACE-install.sh在什麼路徑下是沒什麼影響的,因爲我們要對ACE-install.sh的內容進行修改的,裏面有很多路徑要修改。 好,現在在/home/my/ACE就有了ACE-install.sh,我們現在用vi對其進行修改,修改前自己可以先備份一個。命令:
“cp ACE-install.sh ACE-install.sh.bak”
“vi ACE-install.sh”
我們可以看到缺省的,這個文件是用來在UNIX下做安裝的。所以我們要將其中的有關UNIX的部分換成linux即可。
先找到“MY_ACEDIR=${HOME}/aceconfig”,將其改成“MY_ACEDIR=/home/my/ACE”,就是改成我們自己建的、放有ACE+TAO+CIAO.tar.gz文件的目錄,之後去掉前面的註釋“#”號。
接着在下面一點,找到“MY_ACE_CONFIG=config-sunos5.4-sunc++-4.x.h”,將其修改成“MY_ACE_CONFIG=config-linux.h”,即改成linux下的配置文件。 繼續改,找到“MY_ACE_GNU_MACROS=platform_sunos5_sunc++.GNU”,將其改成“MY_ACE_GNU_MACROS=platform_linux.GNU”。這個是各種操作系統平臺下的GNU宏文件設置。
好了,文件修改完畢,保存退出“:wq”。
第三步
我們的重點到了,現在就可以安裝ACE了。
此時應該是在/home/my/ACE目錄下,我們執行:
./ACE-install.sh


48.刪除了 /etc/inittab
修復辦法如下!
1.首先進去linux的rescue的模式!
2.然後使用如下的命令:
rpm -qf --root /mnt/sysimage /etc/inittab
查出該文件屬於哪個RPM包!
3.然後重新安裝這個rpm包!
rpm -ivh --force --root /mnt/sysimage /mnt/source/Redhat/RPMS/packagename
4.sync (將cache中的內容寫入磁盤)
5.exit

49開啓後臺talk會話功能
開啓talk功能: chkconfig talk on
交談 : talk massky(用戶)



45.
 
50.不讓顯示器休眠
setterm –blank 0

51.定製用戶登錄時顯示的信息
編輯 /etc/motd 加入登錄時要顯示的信息

52.查看路由信息
netstat –rn
route –n

54.顯示硬件信息
lsdev
55. 顯示當前加載的核心模塊
lsmod

56.列出系統內核所有可用的模塊
modprobe –l

57.根據進程名顯示進程號
pidof vsftpd

58. 將內容倒序讀出
rev file.name

59.定製用戶登錄時顯示的信息
編輯/etc/motd 加入登錄時要顯示的信息

60.查看密碼過期信息
change –l longinname

61.顯示最後一個登錄到系統的用戶
last

62.顯示最後一個登錄不成功的登錄嘗試(lastb命令)
如果在系統上不能工作,就需要你建立一個文件:touch /var/log/btmp,然後在執行 lastb命令就可以查看到最後一個不成功的登錄嘗試,

63.以3秒鐘執行一個ls命令
watch –n 3 ls

64.命令顯示當前系統中每個用戶和他運行的進程信息
w

65.Oracle安裝界面出現亂碼情況
使用oracle用戶登錄,執行命令:
export LANG=en

66.非正常關機的自動磁盤修復
/etc/sysconfig裏增加一個文件autofsck.加入內容:
AUTOFSCK_DEF_CHECK=yes
PROMPT=yes

67.Oracle9i在RedHat7.1/7.2上的安裝配置
1創建Oracle用戶帳號和安裝目錄
在shell下,作爲root
groupadd dba
groupadd oinstall
useradd –g oinstall –G dba oracle
passwd oracle
mkdir /opt/oracle
mkdir /opt/oracle/product
mkdir /opt/oracle/product/9.2.0
chown –R oracle.oinstall /opt/oracle
mkdir /var/opt/oracle
chown oracle.dba /var/opt/oracle
chmod 755 /var/opt/oracle
2設置環境變量
編輯/home/oracle/.bash_profile文件,添加下列行
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/9.2.0
export ORACLE_SID=lichuanhua
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export NLS_DATE_FORMAT=YYYY-MM-DD
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LD_LIBRARY_PATH

export PATH=$PATH:$ORACLE_HOME/bin

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
export DISPLAY=192.168.1.88:0.0

68.編譯內核的步驟
1.源碼 /usr/src/linux-2.4
2. make mrproper (清除從前編譯內核時殘留的.o 文件和不必要的關聯)
3. make menuconfig (字符界面內核配置菜單中正確設置個內核選項)
make xconfig (圖形界面內核配置菜單中正確設置個內核選項)
4. make dep (設置關聯文件 )
5.make bzImage (對於大內核,如需要SCSI支持的編譯)
make zImage (對於小內核的編譯)
6.make modules (編譯模塊)
7. make modules_install (安裝模塊 )
8.make install ((針對grub啓動,自動裝載到grub.conf上,直接重新啓動就OK)

69.VMWare上linux圖形界面的安裝
如果你是使用VMware,那麼你可以這樣
首先在vmWare的VM->Install VMware tools選擇install
在執行
1.mount /dev/cdrom /mnt/cdrom
2.cd /mnt/cdrom 有一個文件vmware-linux*.tar.gz
3.cp vmware-linux*.tar.gz /tmp
4.cd /tmp
5.tar zxvf vmware-linux*.tar.gz
6.進入解壓目錄 cd vmware-tools-distrib
7.進入解壓後的目錄運行安裝命令./vmware-install.pl 就ok了
8.等待Vmware-insall運行完成後,重啓Linux,我們就可以看到漂亮的Linux圖形界面了

70.Oracle 字符集的問題(ora9i)
sqlplus直接進去,輸入命令:
select value$ from props$ where name=' NLS_CHARACTERSET';
顯示不是ZHS16GBK,就更改,默認的是:WE8ISO8859p1
更改命令:
update props$ set value$='ZHS16GBK' where name='NLS_CHARACTERSET';
重啓生效

71. 查詢一個系統最近何時被引導過
who -b

72. 查系統硬件類型
uname -m

73. 查系統的CPU類型
uname -p

74. 查系統OS版本號
uname -r

75. Qt/e的安裝
我是在rh9.0下面安裝的
一.安裝qt-x11-free-3.3.2.tar.gz
1. 我把qt-x11-free-3.3.2.tar.gz拷貝到/usr/local/qt目錄下
cd /usr/local/qt
tar zxvf qt-x11-free-3.3.2.tar.gz
mv qt-x11-free-3.3.2 qt

2. vi /etc/profile ,添加環境
export QTDIR=/usr/local/qt
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/doc/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
3.檢查一下環境是否存在
#echo $QTDIR
應該返回 /usr/local/qt
4.#./configure
5.# make
6.qt的啓動,/usr/local/qt/bin目錄下面執行
#./designer
你就可以看到qt的界面了!

如果在make時候報錯:
In file included from kernel/qtaddons_x11.cpp:25:
kernel/qt_x11_p.h:66:22: X11/Xlib.h: 沒有那個文件或目錄
kernel/qt_x11_p.h:71:23: X11 til.h: 沒有那個文件或目錄
kernel/qt_x11_p.h:72:21: X11/Xos.h: 沒有那個文件或目錄
kernel/qt_x11_p.h:73:23: X11/Xatom.h: 沒有那個文件或目錄
make[2]: *** [.obj/release-shared/qtaddons_x11.o] Error 1
make[2]: Leaving directory `/usr/local/qt/src'
make[1]: *** [sub-src] Error 2
make[1]: Leaving directory `/usr/local/qt'
make: *** [init] Error 2
這個問題我搞了半天,最後才知道
這個錯是因爲沒有安裝X11的開發包,在添加和刪除裏面添加上X11開發包

二.安裝qt-embedded-free-3.3.2.tar.gz
1.解壓qt-embedded-free-3.3.2.tar.gz
我放在/root/qt下面
#tar zxvf qt-embedded-free-3.3.2.tar.gz
#cd qt-embedded-free-3.3.2
#export QTDIR=/root/qt/qt-embedded-free-3.3.2
#export LD_LIBRARY_PATH=/root/qt/qt-embedded-free-3.3.2/lib:$LD_LIBRARY_PATH
#./configure
# make
然後就是一個漫長的過程

76. 修改ping 的TTL值(rh9)
修改文件 /proc/sys/net/ipv4/ip_default_ttl的值(默認爲64)
如:我把ttl修改爲128
# echo 128 > /proc/sys/net/ipv4/ip_default_ttl

77..使用多達23個的虛擬控制檯
假設現在有6個,仿照/etc/inittab種的文件,加入
8:2345:respawn:/sbin/mingetty tty8
10:2345:respawn:/sbin/mingetty tty10
24:2345:respawn:/sbin/mingetty tty24
要跳過VT7,因爲X使用這個終端。然後telinit q以重新加載配置文件。使用左Alt+Fn在1-6和8-12件切換,使用右Alt+Fn鍵在13-24之間切換

78.Xmanager2的配置
不使用圖形界面也可以使用Xmanager2登陸進行圖形控制
#vi /etc/X11/xdm/xdm-config
在最後一行: DisplayManager.requestPort: 0 前面加!號註釋掉此行。
#vi /etc/X11/xdm/Xservers
在最後一行::0 local /usr/X11R6/bin/X 前面加#號註釋掉這一行。
#vi /etc/X11/xdm/Xaccess
找到#* #any host can get a login window
把這一行前面的#號去掉,變成:
* #any host can get a login window
最後運行#xdm。這樣使用xmanager等工具就可以連接Linux了!

如果使用ssh從windows遠程登錄到linux
的 ssh 必須開了 X forwarding 的選項。
1.vi /etc/ssh/sshd_config 裏 X11Forwarding 要爲 yes
2.vi /etc/ssh/ssh_config 也是的 ForwardX11 yes

79 更改控制檯的分辨率(grub)
vi /boot/grub/grub.conf
在kernel /vmlinuz-2.4.20-8smp ro root=LABEL=/ 一行後面添加參數vga=792成爲
kernel /vmlinuz-2.4.20-8smp ro root=LABEL=/ vga=792
最後的vga=792表示1024x768,16色
具體參數爲:
depth 640x480 800x600 1024x768 1280x1024
8bit 769 771 773 775
15bit 784 787 790 793
16bit 785 788 791 794
24bit 786 789 792 795
 
名稱:cat
  使用權限:所有使用者
  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName
  說明:把檔案串連接後傳到基本輸出(螢幕或加 > fileName 到另一個檔案)
  參數:
  -n 或 --number 由 1 開始對所有輸出的行數編號
  -b 或 --number-nonblank 和 -n 相似,只不過對於空白行不編號
  -s 或 --squeeze-blank 當遇到有連續兩行以上的空白行,就代換爲一行的空白行
  -v 或 --show-nonprinting
  範例:
  cat -n textfile1 > textfile2 把 textfile1 的檔案內容加上行號後輸入 textfile2 這個檔案裏
  cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的檔案內容加上行號(空白行不加)之後將內容附加到 textfile3

  名稱:cd
  使用權限:所有使用者
  使用方式:cd [dirName]
  說明:變換工作目錄至 dirName。 其中 dirName 表示法可爲絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的 home directory (也就是剛 login 時所在的目錄).另外,"~" 也表示爲 home directory 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄。
  範例:跳到 /usr/bin/:
  cd /usr/bin

  跳到自己的 home directory:
  cd ~

  跳到目前目錄的上上兩層:
  cd ../..

  指令名稱:chmod
  使用權限:所有使用者
  使用方式:chmod [-cfvR] [--help] [--version] mode file...
  說明:Linux/Unix 的檔案存取權限分爲三級:檔案擁有者,羣組,其他。利用 chmod 可以藉以控制檔案如何被他人所存取。
  把計:
  mode:權限設定字串,格式如下:[ugoa...][[+-=][rwxX]...][,...],其中u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬於同一個羣體(group)者,o 表示其他以外的人,a 表示這三者皆是。
  + 表示增加權限,- 表示取消權限,= 表示唯一設定權限。
  r 表示可讀取,w 表示可寫入,x 表示可執行,X 表示只有當該檔案是個子目錄或者該檔案已經被設定過爲可執行。
  -c:若該檔案權限確實已經更改,才顯示其更改動作
  -f:若該檔案權限無法被更改也不要顯示錯誤訊息
  -v:顯示權限變更的詳細資料
  -R:對目前目錄下的所有檔案與子目錄進行相同的權限變更(即以遞迴的方式逐個變更)
  --help:顯示輔助說明
  --version:顯示版本
  範例 :將檔案 file1.txt 設爲所有人皆可讀取:
  chmod ugo+r file1.txt

  將檔案 file1.txt 設爲所有人皆可讀取:
  chmod a+r file1.txt

  將檔案 file1.txt 與 file2.txt 設爲該檔案擁有者,與其所屬同一個羣體者可寫入,但其他以外的人則不可寫入:
  chmod ug+w,o-w file1.txt file2.txt

  將 ex1.py 設定爲只有該檔案擁有者可以執行:
  chmod u+x ex1.py

  將目前目錄下的所有檔案與子目錄皆設爲任何人可讀取:
  chmod -R a+r *

  此外chmod也可以用數字來表示權限如 chmod 777 file
  語法爲:chmod abc file
  其中a,b,c各爲一個數字,分別表示User,Group,及Other的權限。

  r=4,w=2,x=1
  若要rwx屬性則4+2+1=7;
  若要rw-屬性則4+2=6;
  若要r-x屬性則4+1=7。

  範例:
  chmod a=rwx file
  和
  chmod 777 file
  效果相同
  chmod ug=rwx,o=x file
  和
  chmod 771 file
  效果相同
  若用chmod 4755 filename可使此程式具有root的權限
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章