[Linux][hostname] – (Redhat / Fedora / CentOS) 更改 hostname 的方式
Step 1:假設原本 hostname 為 NS, 現在想要更改為 NSx64
使用 root 才可以更改 hostname
# su – root
Step 2:將 /etc/hosts 內出現的 NS 都改成 NSx64
# vi /etc/hosts:
127.0.0.1 NSx64 localhost.localdomain localhost
Step 3:
將 /etc/sysconfig/network 內的 HOSTNAME 改成 NSx64
# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=NSx64
Step 4:再使用 hostname 命令指定一次
# hostname NSx64
這時就已經設定完成. 可以使用 hostname 命令去確認一次
# hostname
NSx64
只要重新登入, 命令提示字串就會改成 [root@NSx64 /]#
[Linux][umount] – 光碟無法umonut
顯示正使用掛載點的使用者:
指令:fuser -vm 掛載點[root@localhost cdrom]# fuser -vm /media/cdrom #顯示正使用掛載點的user
[root@localhost cdrom]# fuser -kvm /media/cdrom #把user踢掉
[Linux][kill] – 檢查 pid 是否有在運作
Linux 下检查 PID 是否存在
- kill -0 pid
对于信号“0”的解释:exit code indicates if a signal may be sent
C 语言里就是
- kill (pid, 0)
[Linux][pidof] – 找出某個程序的 pid 有那些
比方說我要找 httpd
# pidof httpd
# 31332 31329 31297 30666 26499 22284
它就會列出一堆 PID 給你看
[Linux][Redhat 9.0] – route table多出169.254.0.0這一筆route table 的解決方法
問 :
為何安裝Redhat 9.0後,系統的route table多出169.254.0.0這一筆route table?
解 :
這是因為/etc/sysconfigu/network-scripts/ifup ,新增了以下敘述
代碼:
# Add Zeroconf route.
if [ -z "${NOZEROCONF}" -a "${ISALIAS}" = "no" ]; then
ip route replace 169.254.0.0/16 dev ${REALDEVICE}「解決方法」請至/etc/sysconfig/network-scripts 目錄下針對所有的ifcfg-ethx(eth0、eth1)檔案裡,新增以下敘述
代碼:
NOZEROCONF=yes
然後重新restart 該ethernet interface
[Apache] – (98)Address already in use: make_sock: could not bind to address [::]:80?
問:
在進行 apache 重啟時發現以下問題出現 ?
# ./apachectl start
(98)Address already in use: make_sock: could not bind to address [::]:80
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
解:
使用 lsof 時才發現,
原來是網頁上執行程式中,
有人把它 lock 住了
# ps aux | grep snort
500 17211 0.0 0.2 53796 1124 ? S 16:01 0:00 sh -c cd ‘/usr/local/apache/www/html’ ; /usr/bin/sudo /usr/local/apache/bin/snortc -l /usr/local/apache/log 1,2\> /dev/null \& <- 就是這行
root 17212 0.0 0.2 10092 1000 ? S 16:01 0:00 /usr/local/apache/bin/snortc -l /usr/local/apache/log 1,2> /dev/null &
root 17669 0.0 0.1 51056 596 pts/1 R+ 16:04 0:00 grep snort因此把它 pid 直接 kill 掉就行啦 !!!
# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sh 713 apache 3u IPv6 189115 TCP *:http (LISTEN)
sh 1795 apache 3u IPv6 189115 TCP *:http (LISTEN)
# kill -9 713 1795
# ./apachectl start
# pgrep httpd
3774
3776
3777
3779
3780
3781
3782
3790
3792
3794
3795
3796
問題:
/usr/openv/netbackup/bin/bpcd: error while loading shared libraries:
libstdc++-libc6.2-2.so.3: cannot open shared object file: No such file or directory
解決:
1、# locate libstdc++-libc6.2-2.so.3 果然沒有
2、# yum -y install libstdc++-libc6.2-2.so.3
它會安排以下二個檔案compat-libstdc++-296-2.96-132.7.2.i386.rpm
libgcc-3.4.6-10.i386.rpmDependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
compat-libstdc++-296 i386 2.96-132.7.2 base 176 k
Installing for dependencies:
libgcc i386 3.4.6-10 base 64 kTransaction Summary
=============================================================================3、# ldconfig -p | grep libstdc++-libc6.2-2.so.3 有啦
libstdc++-libc6.2-2.so.3 (libc6) => /usr/lib/libstdc++-libc6.2-2.so.3