工作,学习,生活,这里将会有一些记录. 备用域名:http://meisw.wdlinux.cn 注册 | 登陆
浏览模式: 标准 | 列表全部文章

LINUX网卡(设置千兆网卡速度及模式)

Ethtool是用于查询及设置网卡参数的命令。
概要:
ethtool ethX      //查询ethX网口基本设置
ethtool –h        //显示ethtool的命令帮助(help)
ethtool –i ethX    //查询ethX网口的相关信息
ethtool –d ethX    //查询ethX网口注册性信息
ethtool –r ethX    //重置ethX网口到自适应模式
ethtool –S ethX    //查询ethX网口收发包统计
ethtool –s ethX [speed 10|100|1000]\         //设置网口速率10/100/1000M
[duplex half|full]\           //设置网口半/全双工
[autoneg on|off]\            //设置网口是否自协商
[port tp|aui|bnc|mii]\         //设置网口类型
[phyad N]\               
[xcvr internal|exteral]\
[wol p|u|m|b|a|g|s|d...]\
[sopass xx:yy:zz:aa:bb:cc]\
[msglvl N]

举例:
1)[root@linux /]# ethtool eth1
   Settings for eth1:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: umbg
        Wake-on: d
        Link detected: yes
2)[root@linux /]# ethtool -i eth1
   driver: e1000
   version: 5.0.43-k1
   firmware-version: N/A
   bus-info: 06:08.1
3)[root@linux /]# ethtool -S eth1
   NIC statistics:
     rx_packets: 58068300
     tx_packets: 87124083
     rx_bytes: 1589713008
     tx_bytes: 2165825901
     rx_errors: 0
     tx_errors: 0
     rx_dropped: 0
     tx_dropped: 0
     multicast: 0
     collisions: 0
     rx_length_errors: 0
     rx_over_errors: 0
     rx_crc_errors: 0
     rx_frame_errors: 0
     rx_fifo_errors: 0
     rx_missed_errors: 0
     tx_aborted_errors: 0
     tx_carrier_errors: 0
     tx_fifo_errors: 0
     tx_heartbeat_errors: 0
     tx_window_errors: 0
4)[root@linux /]# ethtool -s eth1 autoneg off speed 100 duplex full

相关:
1)[root@linux /]# which ethtool
    /sbin/ethtool
2)[root@linux /]# rpm -qf /sbin/ethtool
   ethtool-1.6-5
3)怎样使ethtool设置永久保存在网络设备中?
   解决方法一:
    ethtool设置可通过/etc/sysconfig/network-scripts/ifcfg-ethX文件保存,从而在设备下次启动时激活选项。
例如:ethtool -s eth0 speed 100 duplex full autoneg off
此指令将eth0设备设置为全双工自适应,速度为100Mbs。若要eth0启动时设置这些参数, 修改文件/etc/sysconfig/network-scripts/ifcfg-eth0 ,添加如下一行:
 ETHTOOL_OPTS="speed 100 duplex full autoneg off"
解决方法二:
将ethtool设置写入/etc/rc.d/rc.local之中。

在线制作ico图标的网站

网址:http://tools.dynamicdrive.com/favicon/

更多离线的ico图标制作工具请看这里

你只需要有一个 GIF 或者 PNG 的方形图片,该网站就可以帮你生成效果还不错的 ico 图标,效果比我在国内找的一些网站好多了,支持透明背景。

shell产生随机数,字符串

#!/bin/bash
MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz~!@#$%^&*()_+="
LENGTH="9"
while [ "${n:=1}" -le "$LENGTH" ]
do
        PASS="$PASS${MATRIX:$(($RANDOM%${#MATRIX})):1}"
        let n+=1
done
        echo "$PASS"
exit 0

 

或用mkpasswd

echo $RANDOM,产生数字串

 

apache 22

./configure \
--prefix=/servers/httpd22 \
--with-mpm=worker \
--enable-rewrite \
--enable-speling \
--enable-so \
--disable-authz-host \
--disable-authz-groupfile \
--disable-authz-user \
--disable-authz-default \
--disable-status \
--disable-auth-basic

--disable-authn-file \

 


  mod_authn_file.c
  mod_authn_default.c
  mod_auth_basic.c

sed 小技巧

用sed合并行
tr -d '\n' <file
cat file | xargs echo
echo $(<file)
cat file | paste -s -d ""

删除空格

tr -d ' '

mysql 64位 segmentation fault

源码编译,5.1, 5.0的都试过,系统是CentOS5.4

不管怎么编译,结果都是

[root@localhost mysql-5.1.44]# /usr/local/mysql/bin/mysql
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.1.44-log Source distribution

Segmentation fault

 

tail /var/log/messages
Feb 22 11:26:28 localhost kernel: mysql[2883]: segfault at fffffffff347c6c0 rip 000000000041c001 rsp 00007ffff347be80 error 4
Feb 22 11:36:24 localhost kernel: mysql[18627]: segfault at ffffffffcef603e0 rip 000000000041c001 rsp 00007fffcef5fba0 error 4
Feb 22 11:36:37 localhost kernel: mysql[18632]: segfault at ffffffffe0e70df0 rip 000000000041c001 rsp 00007fffe0e705b0 error 4

好奇怪,用系统自带的又行,而且,只是mysql客户端有问题,其它的一切正常,能启动,能用

早二三个月也遇到一次,但当时没具体深究原因,好像是ncurses原理,后也不知怎么弄好了

后安装ncurses库,再编译就可以了,估计上次也是,只是当时没有留意

vsftpd

http://vsftpd.beasts.org/#download
ftp://vsftpd.beasts.org/users/cevans/
ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.2.2.tar.gz

tar zxvf
cd
sed -i 's/define VSF_BUILD_PAM/undef VSF_BUILD_PAM/' builddefs.h

make
mkdir /usr/share/empty
mkdir /www/servers/vsftpd
install -m 755 vsftpd /www/servers/vsftpd/vsftpd
install -m 644 vsftpd.8 /usr/share/man/man8
install -m 644 vsftpd.conf.5 /usr/share/man/man5
install -m 644 vsftpd.conf /etc/vsftpd.conf

[root@local cf]# cat vsftpd.denyuser
echo 'root
bin
daemon
shutdown
halt
ftp
nobody
vcsa
nscd
rpm
haldaemon
sshd
rpc
rpcuser
mailnull
smmsp
pcap
apache
named
mysql' > /etc/vsftpd.denyuser

 

cat vsftpd.conf
echo 'anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
idle_session_timeout=600
listen=YES
listen_port=21
chroot_local_user=YES
pasv_enable=YES
pasv_min_port=10240
pasv_max_port=10250
userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd.denyuser' > /etc/vsftpd.conf


iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10240:10250 -j ACCEPT


X86_64
修改vi vsf_findlibs.sh内容为 locate_library /lib64/libpam.so.0 && echo "/lib/libpam.so.0";
if locate_library /lib64/libcap.so.1; then
  echo "/lib64/libcap.so.1";
else
  locate_library /usr/lib64/libcap.so && echo "-lcap";
  locate_library /lib64/libcap.so && echo "-lcap";
fi
再次执行make

LVS状态迁移,主从结构

原理,http://zh.linuxvirtualserver.org/node/70

http://www.linuxvirtualserver.org/docs/sync.html

 

打开和关闭主从调度器的状态同步比较简单,只需要

ipvsadm --start-daemon=master
ipvsadm --stop-daemon=master
ipvsadm --start-daemon=backup
ipvsadm --stop-daemon=backup