歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網

雜項技巧

日期:2017/2/27 14:27:28   编辑:更多Linux
  這些是我在學習Linux時間裡記在筆記本上的東西,希望對大家有用! 1.更改telnet登錄慢的問題: cd /etc vi resolv.conf 將裡面內容清空 2.更改root用戶不能直接遠程登錄問題: cd /etc cd pam.d vi login 注釋掉這行 #auth required pam_securetty.so //該行注釋掉 3.掛接USB移動硬盤 將移動硬盤掛上. #df 查看Linux下硬盤盤符 mount /dev/sda1 /mnt/usb (舉例) 4.Linux時區同步問題(安裝ntp軟件過程) 首先在http://www.meinberg.de/english/sw/index.htm 下載了一個windows的NTP服務程序: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就和服務端同步一次。 5.更改Linux啟動時用圖形界面還是字符界面 cd /etc vi inittab 將id:5:initdefault: 其中5表示默認圖形界面 改id:3: initdefault: 3表示字符界面 6.重新啟動xinetd) /etc/init.d/xinetd restart 7.重啟smb服務 在rhas3.0上建立一個完整的郵件系統 8.配置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 9.禁止在後台使用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 10.修改主機名 vi /etc/sysconfig/network 修改HOSTNAME一行為HOSTNAME=主機名 11.重新啟動FTP服務 /sbin/service vsftpd restart 12.查看開機檢測的硬件 dmesg more 13.查看硬盤使用情況 df –m 14.查看目錄的大小 du –sh dirname 15.解壓小全 tar xvfj lichuanhua.tar.bz2 tar xvfz lichuanhua.tar.gz tar xvfz lichuanhua.tgz tar xvf lichuanhua.tar unzip lichuanhua.zip 16.顯示內存使用情況 free –m 17.忘記root密碼,如果是grup 1.出現grup畫面時,用上下鍵選啟動Linux的哪一項,按e鍵 2.上下鍵選擇 kernel /boot/……… 然後按e鍵 3.修改現在見到的命令好,加入single 結果: kernel /boot/vmlinuz-2.4.20-8 single ro root=LABEL= 4.回車返回,按b鍵啟動,直接進入linux命令行 直接執行: passwd root 修改密碼,你的密碼就搞定 如果是lilo:按Tab,畫面出現lilo 鍵入:linux single ,回車 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 45. 改變或關閉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(用戶) 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



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



我們的重點到了,現在就可以安裝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(用戶) 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



Copyright © Linux教程網 All Rights Reserved