??xml version="1.0" encoding="utf-8" standalone="yes"?> 专注于分享Java后端相关技术、老司机实战干货,不限于JVM、ƈ发、设计模式、性能优化、分布式&微服务、云原生、大数据相关主题?/span> L自带盘过300GBQ目前只划分使用?个主分区Q不?0GBQ如 下: W?步,d新的盘分区 本例?/span>root权限安装mysql数据库,mysql-5.1.37-linux-x86_64-glibc23.tar.gz安装包在/root/Nagios/ 目录?/span>(Ҏ实际情况)?/span> ü ?/span>mysql-5.1.37-linux-x86_64-glibc23.tar.gz安装包所在目录,解压软g?/span> cd /root/Nagios/ tar -zvxf mysql-5.1.37-linux-x86_64-glibc23.tar.gz ü 解压的mysql文g夹,Ud/usr/local/目录?/span> mv mysql-5.1.37-linux-x86_64-glibc23 /usr/local/mysql ü ?/span>mysql配置文g拯?/span>/etc/目录下,q改?/span>my.cnf cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf ü dmysql用户及用LQ用来运?/span>mysql数据?/span> groupadd mysql useradd -g mysql mysql ü 修改mysql目录权限 // 讑֮root能访?/span>/usr/local/mysql chown -R root /usr/local/mysql // 讑֮mysqll能讉K/usr/local/mysql chgrp -R mysql /usr/local/mysql // 讑֮mysql用户能够讉K/var/lib/mysql chown -R mysql /usr/local/mysql/data ü ?/span>mysql解压目录下,生成mysqlpȝ数据库,本例安装?/span>/usr/local/mysql目录?/span> cd /usr/local/mysql ./scripts/mysql_install_db --user=mysql& ü ?/span>mysql用户启动mysql服务 /usr/local/mysql/bin/mysqld_safe -user=mysql& ü 修改mysql?/span>root密码Q密码假定ؓQ?/span>123456 /usr/local/mysql/bin/mysqladmin -u root password 123456 ü q入MYSQL安装路径下的bin目录Q以root用户dmysql: cd /usr/local/mysql/bin ./mysql -u root -p 输入密码Q?/span>123456 ü 开?/span> mysql 本地和远E访?/span> grant all on *.* to root@本机QP grant all privileges on *.* to root @"%" identified by "123456"; flush privileges; 说明Q?/span> grant all privileges on *.* to username @"%" identified by "password"; all指定相关操作 *.*说明数据库和表名 username表示用户?/span> %q里?/span>Host名称Q允许所有的q% Password表示密码 拯mysql安装目录?/span>bin/目录中的文g?/span>/usr/bin目录Qmysq{命令可以在M路径执行: cp /usr/local/mysql/bin /usr/bin 讄mysql启动命oQ打开/usr/local/mysql/support-files/mysql.server文gQ将以下内容Q?/span> $bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file & 改ؓQ?/span> $bindir/safe_mysqld --datadir=$datadir --user=root --pid-file=$pid_file & 拯?/span>/etc/init.d目录Qƈ赋可执行权限 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql chmod +x /etc/init.d/mysql ?/span>root用户调用以下命o启动mysql服务 service mysql start 讄mysql自启?/span> 在文?/span>/etc/rc.d/rc.local中添?/span> service mysql start 登陆MySQLQƈ创徏数据?/span>ccms02及表 ü 登陆MySQL cd /usr/local/mysql/bin ./mysql -u root -p ü 创徏名称?/span>test02的数据库 create database test02 default character set utf8; ü 退?/span>MySQLQ导入徏表脚?/span>test02.sql /usr/local/mysql/bin/mysql -u root -p -D ü 导入完成?/span>,重新登陆MySQLQ依ơ执行以下语句,可以查看l果 ü ./mysql -u root –p use test02; show tables; 一般linux redhat ubuntu centos...防火墙设|是在配|文?/p> /etc/sysconfig/iptables中?/p> 然后重启iptables service iptables restart. 或通过命o? 和其他linuxpȝ不太相同Qopensuse有其自n的防火墙理{略 有以下两U方式可以对pȝ的防火墙q行配置 1. 什么是dI间 dI间一般指的是CPU对于内存d的能力。通俗地说Q就是能最多用到多内存的一个问?/p> 2. 我们l常听说32位操作系l最多能?G内存。大部分情况下,q个上限都达不到。例如我的机器,虽然?G物理内存Q但实际上识别的只有3G。有的朋友说是可以识别到3.2G或?.5G不等Q我惌跟h品是没有什么关pȝ 那么Q这剩下?个G左右的内存不是浪费了吗?可不是嘛Q太心痛了。所有很多朋友都用一个Y件将q部分内存{换ؓ盘?/p> http://blog.miniasp.com/post/2008/04/Useful-tools-Gavotte-Ramdisk.aspx 【备注】我自己q没有这么用Q要惌用该功能的同学,自己需要慎重。如果你用的好,记得反馈一下给我,呵呵 3. Z么说只能d到这个大呢Q我今天是要从程序的角度来解说一?/p> 首先说什么是32位?32位是针对CPU的一个术?/p> 对于E序员来_q表CZ我们在与计算机打交道的时候,能够使用的最大数字是2?2ơ方。这{于多少呢? 那么q个数字是什么ؓ单位呢?bit Q也可以UCؓ比特Q或者位。这是计机可以理解的东ѝ这个bit里面包含的|只有两个Q就?? 好了Q那么这个bit怎么栯转换为GB呢,很简单:它q箋除以3?024. 4294967296/1024/1024/1024 l果{于多少呢? Z么除3ơ?W一ơ{换ؓKBQ第二次转换为MBQ第三次p{换ؓGB?/p> 4. 那么64位的CPU的寻址I间可以到多大呢Q?/p> 我算一,可以到多GB呢? 额的啊Q根据摩定律的计算Q我x的有生之q是不需要担心内存不够用的问题的 感觉防火墙可能不能完的保护LQ比?/span>ping措施Q这Ӟ需要?/span>iptables来进行配|?/span> 使用Iptables的内|?/span>firewall机制Q是通过kernel中的netfilter 模块实现的,Linux kernel使用netfilter对进出数据包q行qoQ?/span>netfilter׃个规则表l成Q每个表又有许多内徏的链l成。?/span>iptables命o可以对这些表链进行操作,如添加、删除、列则等?/span> Netfilter 规则?/span> --- filter nat managle filter用于路由|络数据包。是默认的,也就是说如果没有指定-t参数Q当创徏一条新规则Ӟ他默认存攑ֈ该表内?/span> INPUT |络数据包流向服务器 OUTPUT |络数据包从服务器流?/span> FORWARD |络数据包经服务器\?/span> nat 用于NAT?/span> Net Address Translation 是一U?/span>IP地址转换Ҏ PREROUTING |络数据包到达服务器时可以被修改 POSTROUTING |络数据包在卛_从服务器发出时可以被修改 managle 用于修改|络数据包的?/span> 配置iptables 当数据包q入服务器时Q?/span>Linux kernel会查扑֯应的链,直到扑ֈ一条规则与数据包匹配。如果该规则?/span>target?/span>ACCEPTQ就会蟩q剩下的规则Q数据包会l被传送。如果该规则target?/span>DROPQ该数据包会被拦截掉Q?/span>kernel不会在参考其他规则?/span> NoteQ如果从始至l都没有一条规则与数据包匹配,而且表末有没有drop all规则Q那么该数据包会?/span>accept?/span>Cisco则相反,在表末尾会因?/span>deny all的规则?/span> 1Q?span style="font:7.0pt "Times New Roman""> iptables命o选项 iptables [-t iptables ] command option parameter target -A 在链添加一条规?/span> -C 规则添加到用户定义链之前对其进行检?/span> -D 从链中删除一条规?/span> -E重命名用户定义的链,不改变链本n -F 清空链,删除链上的所有规?/span> -I在链中插入一条规?/span> -L 列出某个链上的规则,如:iptables –L INPUT 列出INPUT链上的规?/span> -N 创徏一个新?/span> -P 定义某个铄默认{略 -R替换链上的某条规?/span> -X 删除某个用户相关的链 -Z 所有表的所有链的字节和数据包统计数器清?/span> 2Q?span style="font:7.0pt "Times New Roman""> Iptables的命令参?/span> -p protocol 应用于数据包的协议类型,可以?/span>TCP UDP ICMP ?/span> ALL ! 也可?/span> 当?/span>-p tcpӞq可使用其他可选项Q一边允许进一步定义规则,选项如下Q?/span> -sport 允许指定匚w数据包源端口 port1:port2表示port1?/span>port2之间的所有端?/span> -dport目的端口Q和sport雷同 当?/span>-p !udp Ӟ也有Ҏ的选项供?/span> -sport?/span>-dport?/span>-p tcp相同Q只不过用于UDP?/span> 使用-p icmp参数Ӟ只有一个选项可用 -icmp-type 允许在过滤规则中指定icmpcd -s source 指定数据包包的源地址Q该参数后跟一?/span>IP地址Q一个带?/span>sub-net mask的网l地址Q或者一个主机名Q不使用L名) -d destination 数据包的目的地址 ?/span>-s -j jump 用于指定一?/span>targetQ告诉规则将该匹配的数据包发送到?/span>target?/span>Target可以?/span>ACCEPTQ?/span>DROPQ?/span>QUEIEQ?/span>PETURN。如果没?/span>-jQ那么不会对数据包进行Q何操作,只是计数器?/span>1 -I in-interface 对于INPUT FOREARD PREROUTING链,指定数据包到达服务器时所使用的端?/span> -o out-interface 对于OUTPUT FORWARD POSTROUTING?/span>,该参数指定数据包d服务器时使用的端?/span> 3Q?/span>Iptables的命?/span>target 创徏规则最后一步是指定iptablesҎ据包的操作。只要某一规则匚w该数据包Q就不会再有别的规则的操作。内建的target有:ACCEPT 允许数据包通过 Q到辄的地 DROP 拒绝数据包通过Q丢弃该?/span> QUEUE 数据包发送回到用户应用程序处?/span> RETURN 不再Ҏ当前铄其他规则来检查数据包Q而是直接q回Ql被发送到其目的地址Q或下一个链?/span> 2、示例: 允许www Iptables –A INPUT –p tcp –dport 80 –j ACCEPT 该规则被调h?/span>filter表的INPUT链,允许目的端口?/span>80的数据包通过 在内部接口上允许DHCP Iptables –A INPUT –I eth0 –p tcp - - sport - - dport 67 ACCEPT Iptables –A INPUT –I eth0 –p udp - - sport - - dport 67 ACCEPT 同时允许tcp?/span>udp协议 3、保存和修改iptables 使用iptables-save 可将现行?/span>iptables规则保存 恢复iptables 使用iptables-restore可从配置文档恢复iptables表到现行iptables表?/span> q么多年来,数据压羃Ҏ们来说是非常有用的。无论是在邮件中发送的囄用的zip文g q是在服务器压羃数据文gQ我们都可以让下载更Ҏ或者有效的节约盘I间。某些压~格式有时允许我们以60Q的比率Q甚x高)压羃文g。下面我会l?大家演示如何用这些命令在Linux下面d~文件或者目录。我们将学习zip, tar, tar.gz和tar.bz2{压~格式的基本用法。这几个是在Linux里面常用的压~格式?/p> 在我们探I这些用法之前,我想先跟大家分n一下用不同压~格式的l验。当Ӟ我这里讲到的只是其中的一些用法,除我讲到的之外,他们q有更多的地 方值得我们探讨。我已经意识到我需要了解两CU压~格式,才能更好的用他们。zip格式是第一个需要了解的格式。因为它实际上已成ؓ压羃文g的标准?择,而且它在windows上也能用。我l常用zip格式压羃那些需要共享给windows用户的文件。如果只是共享给linux用户或者Mac用户Q?那我偏向于选择tar.gz格式?/p> ZIP 下面是如果解压一个zip文档Q?/p> TAR 如何解包Q?/p> 上面q个解包命o会文档解开在当前目录下面。当Ӟ你也可以用这个命令来捏住解包的\径: TAR.GZ 解压~: 上面q个解包命o会文档解开在当前目录下面。当Ӟ你也可以用这个命令来捏住解包的\径: TAR.BZ2 上面q个解包命o会文档解开在当前目录下面。当Ӟ你也可以用这个命令来捏住解包的\径: 数据压羃是非常有用的Q尤其是对于备䆾来说。所以,你现在应该考虑在你的备份脚本中使用你在q里学到的压~方式备份你基本的规则文件以减小你备份文件的大小?/p> q段旉之后Q你׃意识刎ͼ在压~率与CPU占用旉上会有一个^衡,你也要学会如何去权衡什么时候你需要一个快但是压羃率低Q什么时候需要一个压~率高但是CPU点用高的压羃方式Q然后你才能避免无谓的空间与旉?/p>
Java爱好者社?/strong>
公众号内容简介:
希望x的你停下脚步Q定有所收获?/span>
以前的个人博客内容不好迁U,所以我打算Ҏ自己的多q经验,不断整理输出有h值的内容?br />目前公众号内Ҏ关于SpringCloudQ微服务框架Q、SkywalkingQAPM监控调用链)、JVMQGC分析、内存泄漏分析)、ƈ发编E?/span>相关原创实战文章已出炉?br />
最q刚开始已l有不少伙伴关注了Q期待能有幸搜烦到本博客的同学,可以扫码x一下,不胜感激?br />大家有Q何技术、职场、面试上的问题都可以与我交流?br />
方式一Q?/strong>扫码以下公众号二l码Q?/strong>
方式二:在微信上直接搜烦Q?nbsp;javatech_cbo
感谢各位伙伴的支持Q后l会在该公众号上输出大量的有价值的实战q货 Q期待与你一同进步与成长?br />
]]>
]]>
]]>
实战案例Q?/strong>
需求:虚拟机存在多份备份,当进行备份恢复时Q要求检查源备䆾压羃文g的完整性。那么可以通过md5q种方式来验证?/span>
压羃备䆾文gq生成md5码,部分shell脚本如下:
log "Compressing and moving $SRC_PATH"
exec_and_log "$SSH $SRC_HOST mkdir -p ${SRC_PATH}_compress"
for file in `$SSH $SRC_HOST ls $SRC_PATH | grep -v $SN_SIGN`
do
exec_and_log "$SSH $SRC_HOST cd $SRC_PATH;sudo chmod -R +r $SRC_PATH/*;tar -Sczvf ${SRC_PATH}_compress/${file}.tgz ${file}"
done
#----------------------------------
#--------------md5 begin-----------------
log "Create backup.md5"
exec_and_log "$SSH $SRC_HOST $MD5SUM ${SRC_PATH}_compress/*.tgz > ${SRC_PATH}_compress/backup.md5"
#--------------md5 end-----------------
#其中 exec_and_log是另一个公p本中定义的。shell中可以通过?.)的方式将脚本引入。该函数内如下:
# Executes a command, if it fails returns error message and exits
# If a second parameter is present it is used as the error message when
# the command fails
function exec_and_log
{
message=$2
EXEC_LOG_ERR=`$1 2>&1 1>/dev/null`
EXEC_LOG_RC=$?
if [ $EXEC_LOG_RC -ne 0 ]; then
log_error "Command \"$1\" failed: $EXEC_LOG_ERR"
if [ -n "$2" ]; then
error_message "$2"
else
error_message "Error executing $1: $EXEC_LOG_ERR"
fi
exit $EXEC_LOG_RC
fi
}
# Logs a message, alias to log_info
function log
{
log_info "$1"
}
# Log function that knows how to deal with severities and adds the
# script name
function log_function
{
echo "$1: $SCRIPT_NAME: $2" 1>&2
}
# Logs an info message
function log_info
{
log_function "INFO" "$1"
}
生成的backup.md5内容Q?/span>
2c07174d451a687bc0e401b1dc7d84b8 checkpoint.1376892493.tgz
57a18d7f6eed36565b9012e519985130 checkpoint.1376903188.tgz
b652990806e58a81b41dc1b23db9adda checkpoint.1376904023.tgz
f4e7adb46a8fde2643e082875cc60e21 checkpoint.1376904289.tgz
ad2a59902652e2896b35507417b7016f checkpoint.tgz
4bd43eac64f238bb35c7194816da7d23 deployment.0.tgz
ee3d9266cf92f7540cc75a94343bc20a deployment.7.tgz
fcd5aae37354b5cb66f4b90544eaa5c3 disk.0.tgz
c1ef6d911b441660ec2d1e44b5a56f66 disk.1.iso.tgz
25eae70a31a7c7cff3baade4cd65fe82 disk.1.tgz
查备份文件是否完_
结果:
checkpoint.1376892493.tgz: OK
checkpoint.1376903188.tgz: OK
checkpoint.1376904023.tgz: OK
checkpoint.1376904289.tgz: OK
checkpoint.tgz: OK
deployment.0.tgz: OK
deployment.7.tgz: OK
disk.0.tgz: OK
disk.1.iso.tgz: OK
disk.1.tgz: OK
]]>
命o的结果可以通过%>的Ş式来定义输出
分解q个l合Q?#8220;>/dev/null 2>&1” Z部分?/span>
1Q?gt; 代表重定向到哪里Q例如:echo "123" > /home/123.txt
2Q?dev/null 代表I备文?/span>
3Q?> 表示stderr标准错误
4Q?amp; 表示{同于的意思,2>&1Q表C?的输出重定向{同?
5Q? 表示stdout标准输出Q系l默认值是1Q所?>/dev/null"{同?"1>/dev/null"
因此Q?gt;/dev/null 2>&1 也可以写?#8220;1> /dev/null 2> &1”
那么本文标题的语句执行过EؓQ?/span>
1>/dev/null Q首先表C标准输出重定向到空讑֤文gQ也是不输ZQ何信息到l端Q说白了是不显CZQ何信息?/span>
2>&1 Q接着Q标准错误输出重定向 ?标准输出Q因Z前标准输出已l重定向CI备文Ӟ所以标准错误输Z重定向到I备文件?/span>
最常用的方式有Q?/span>
command > file 2>file 与command > file 2>&1
它们有什么不同的地方吗?
首先command > file 2>file 的意思是命令所产生的标准输Z?和错误的输出信息送到file ?command > file 2>file q样的写?stdout和stderr都直接送到file? file会被打开两次,q样stdout和stderr会互相覆?q样写相当用了FD1和FD2两个同时L占file 的管道?/span>
而command >file 2>&1 q条命o将stdout直接送向file, stderr l承了FD1道?再被送往file,此时,file 只被打开了一?也只使用了一个管道FD1,它包括了stdout和stderr的内宏V?/span>
从IO效率?前一条命令的效率要比后面一条的命o效率要低,所以在~写shell脚本的时?较多的时候我们会command > file 2>&1 q样的写法?/span>
以上转蝲?http://sjolzy.cn/shell-in-the-dev-null-2-gt-amp-1-Detailed.html
------------------------------------------------------------------------------------------------------
那么Q有q么个需求,我如何能判断q程L上的某个文g是否存在呢,我能惛_的有两种ҎQ一U方法可以用expect脚本Q但是需要远E主Z安装expect包,但是只需要知道用户名和密码就可以了;W二U方法是要求两台L之间做好ssh互信Q然后如adminQ那么通过shell可以直接判断Q但是文件宿L限也需要是admin用户下的?br />W二U方法脚本如下:
ssh dst_host sh -s 2>&1 1>/dev/null <<EOF
ls $NEW_DST_DIR
EOF
IS_EXIST=$?
if [ "$IS_EXIST"x = "0"x ]; then
echo "-The file exists------------------------------"
else
echo "No file-------------------------------"
fi
--大卫
]]>
#!/bin/bash
#
# chkconfig: 345 80 15
# description: Startup script for the one .
# Source function library.
. /etc/rc.d/init.d/functions
APP_USER=oneadmin
APP_HOME=/opt/nebula/ONE/
RETVAL=0
start(){
checkrun
if [ $RETVAL -eq 1 ]; then
echo "Starting oned"
su - $APP_USER -c "$APP_HOME/bin/one start"
else
echo "oned is already running."
fi
}
stop(){
su - $APP_USER -c "$APP_HOME/bin/oneuser list" > /dev/null 2>&1
result=$?
if [ $result -eq 0 ]; then
echo "Shutting down oned"
su - $APP_USER -c "$APP_HOME/bin/one stop"
elif [ $result -eq 255 ]; then
echo "Shutting down oned"
pkill -9 -u oneadmin
fi
}
checkrun(){
su - $APP_USER -c "$APP_HOME/bin/oneuser list" > /dev/null 2>&1
if [ $? -eq 0 ]; then
RETVAL=0
return $RETVAL
else
RETVAL=1
return $RETVAL
fi
}
status(){
checkrun
if [ $RETVAL -eq 0 ]; then
echo "oned is running."
else
echo "oned is stopped."
exit 1
fi
}
case "$1" in
start)
start
RETVAL=$?
;;
stop)
stop
RETVAL=$?
;;
restart)
stop
start
RETVAL=$?
;;
status)
status
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
esac
echo $RETVAL
exit 0
1. 首先查看服务器默认的q行U别是多? 目的是在对应q行U别下徏立服务的软连接?br /> 1> 执行命o#runlevel
2. 写好的oned脚本拯?etc/init.d/目录?br />
3. ?etc/rc.d/rc3.d中徏立Y链接
cd /etc/init.d/rc.d/rc3.d
ln -s ../init.d/oned S99oned
S99oned是其软链接,S开头代表加载时自启?br />
以上已测试过Q没有问题,同时有兴可以试试第二、三U方式?span style="font-size: 13px; background-color: #eeeeee;">
]]>
GNOMEQ?/span>
[root @ test vnc-4_1_2-x86_linux] # vi /root/.vnc/xstartup
#Q?/span>/bin/sh
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot –solid grey
vncconfig –iconic &
xterm –geometry 80x24+10+10 –ls –title “$VNCDESKTOP Desktop” &
gnome-session &
KDE:
[root @ test vnc-4_1_2-x86_linux] # vi /root/.vnc/xstartup
#Q?/span>/bin/sh
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot –solid grey
vncconfig –iconic &
xterm –geometry 80x24+10+10 –ls –title “$VNCDESKTOP Desktop” &
startkde &
修改完毕后须重新启动 VNCServer
[root @ test vnc-4_1_2-x86_linux] # vncserver –kill :1 && vncserver :1
[root @ test vnc-4_1_2-x86_linux] # vncviewer 192.168.98.32:1
q接后即可?/span> GNOME ?/span> KDE 桌面啦(像 WinXP 的远E桌面一般)Q也可以通过 WEB 讉KQ在览器中输入http://192.168.0.252:5801 卛_Q?/span>VNC 默认的端口号?/span>5801?/span>
]]>
Do you really want to write to it (y/n)?y
"/proc/sys/net/ipv4/ip_forward" E667: Fsync failed
Hit ENTER or type command to continue
~辑/etc/sysctl.conf
?/span>
net.ipv4.ip_forward = 0
Ҏ
net.ipv4.ip_forward = 1
如果此文件中没有q个选项则将其添加上p?/span>
然后执行命oQ?sysctl -p
使其生效?br />
再一ơ的查看 可以发现其原来的0变成了1.
]]>
]]>
]]>
[root@db2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 29G 3.7G 24G 14% /
/dev/sda2 29G 22G 5.2G 81% /oracle
tmpfs 2.0G 0 2.0G 0% /dev/shm
[root@db2 ~]# cat /proc/partitions
major minor #blocks name
8 0 311427072 sda
sda1
8 2 30716280 sda2
8 3 8193150 sda3
8 16 976896 sdb
8 32 976896 sdc
现在需要给pȝd1?00GB的空间存放数据文Ӟ而又不媄响现有系l上业务的运行,
使用fdiskl合partprobe命o不重启系l添?一块新的磁盘分区。操作步骤如下:
[root@db2 ~]# fdisk /dev/sda
The number of cylinders for this disk is set to 38770.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): p
Disk /dev/sda: 318.9 GB, 318901321728 bytes
255 heads, 63 sectors/track, 38770 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 3824 30716248+ 83 Linux
/dev/sda2 3825 7648 30716280 83 Linux
/dev/sda3 7649 8668 8193150 82 Linux swap / Solaris
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Selected partition 4
First cylinder (8669-38770, default 8669):
Using default value 8669
Last cylinder or +size or +sizeM or +sizeK (8669-38770, default 38770): +100G
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16:
Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
[root@db2 ~]#
W?步,使用工具partprobe让kerneld分区信息
[root@db2 ~]# partprobe
使用fdisk工具只是分Z息写到磁盘,如果需要mkfs盘分区则需要重启系l,
而用partprobe则可以kernel重新d分区 信息Q从而避免重启系l?br />
W?步,格式化文件系l?/strong>
[root@db2 ~]# mkfs.ext3 /dev/sda4
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
12222464 inodes, 24416791 blocks
1220839 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
746 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632,
2654208, 4096000, 7962624, 11239424, 20480000, 23887872
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information:
done
This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@db2 ~]#
W?步,mount新的分区/dev/sda4
[root@db2 ~]# e2label /dev/sda4 /data
[root@db2 ~]# mkdir /data
[root@db2 ~]# mount /dev/sda4 /data
[root@db2 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 29753556 3810844 24406900 14% /
/dev/sda2 29753588 11304616 16913160 41% /oracle
tmpfs 2023936 0 2023936 0% /dev/shm
/dev/sda4 96132968 192312 91057300 1% /data
[root@db2 ~]#
]]>
׃Redhat OS上没有apt-getQ如果缺相应Y件包Q可以通过yum或者iso源方式安装缺的软g?br />
转自Q?a >http://www.vpsee.com/2012/11/install-real-time-log-monitoring-tool-log-io/#comments
日志是个好东西,Ҏ术h员来说写日志能纪录成长,分nl验Q对机器来说U录日志能及时发现错误,为日后的排错提供信息。如果还在一台机器上?/span> tail -f 监听单个日志或?/span>?/span> multitail 监听多个日志也太 out 了,我们需要一U工兯U录上百台机器、不同类型的日志Qƈ最好能汇集C个界面里方便查看Q最好还是实时的?/span>log.io 是q样一个实时日志监控工P采用 node.js + socket.io 开发,使用览器访问,每秒可以处理过5000条日志变动消息。有一点要指出来的?/span> log.io 只监视日志变动ƈ不存储日志,不过q个没关p,我们知道日志存储在哪个机器上?/span>
]]>
拟机都是|卡eth1Q虽然能讄上ip但是虚拟|关q不能设|成功?br /> q且随着镜像->虚拟?>镜像->虚拟机类似流EP代,|卡ethx会递增。ȝ一
句话Q就是eth0不v作用?br />
二、解决问题如下:
1、在grub里增加biosdevname=0的启动参敎ͼ形如
kernel /vmlinuz-2.6.32-131.21.1.el6.i686 ro root=/dev/mapper/vg_test-
lv_root rd_LVM_LV=vg_test/lv_root rd_LVM_LV=vg_test/lv_swap rd_NO_LUKS rd_NO_MD
rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latar
cyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet
biosdevname=0
2、删除udev的配|文件rm -f /etc/udev/rules.d/70-persistent-net.rules?br />
Q我的做法比较彪悍,直接把rules.dq掉了。)
W???步是针对单个L或者虚拟机而言的,我们保证镜像中的eth0|卡配置
文g存在Q名字ؓifcfg-eth0文g中DEVICE=eth0?br />
3、把|卡配置文g改名
mv ifcfg-em1 ifcfg-eth0
4、把|卡配置文g内容修正Q把em1的全部改成eth0
perl -p -i -e ‘s/em1/eth0/g’ ifcfg-eth0
5、重启系l即?br />
6、配|ssh
6.1Q?etc/ssh/sshd_config 配置文g中修Ҏ加入UseDNS=noQ将
#UseDNS=yes ҎQUseDNS=no
6.2Q?etc/ssh/sshd_config 配置文g中将#GSSAPIAuthentication
no ?号去掉,更改成GSSAPIAuthentication no
6.3Q?etc/ssh/sshd_config 配置文g中将PermitRootLogin no修改
为yes
6.4Q?nbsp;
6.5Q?etc/ssh/sshd_config 配置文g中将PasswordAuthentication
no修改为yes可以了
6.6Q?etc/nsswitch.conf 配置文g中,hostsQfiles dns ?br />
成:hostsQfiles
6.7Q?etc/init.d/sshd restart 重启sshdq程佉K|生?br />
其中6.1?.2?.6都是处于性能斚w考虑
7、镜像中存在bcec提供的setIp、rc.local{脚本?br />
l过?9.4环境试Q操作过E从原始镜像 -> 新虚拟机 -> 制作镜像镜像 ->
新镜像虚拟机Q网卡都没有问题Q都是eth0?br />
Centos6.0制作镜像|卡问题ȝ-zhgp
]]>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that the RSA host key has just been changed. The fingerprint for the RSA key sent by the remote host is e9:0c:36:89:7f:3c:07:71:09:5a:9f:28:8c:44:e9:05. Please contact your system administrator. Add correct host key in /home/jiangxin/.ssh/known_hosts to get rid of this message. Offending key in /home/jiangxin/.ssh/known_hosts:81 RSA host key for 192.168.0.110 has changed and you have requested strict checking. Host key verification failed.
上面的警告信息说的是Q?ul>Host * StrictHostKeyChecking no
或者在 ssh 命o行中?-o 参数$ ssh -o StrictHostKeyChecking=no 192.168.0.110
如何防止q程L公钥改变D SSH q接p|
当确认中间h劫持d风险比较的情况下,才可以用下面的ҎQ禁?SSH q程L的公钥检查?SSH 客户端提供一?UserKnownHostsFile 配置Q允许指定不同的 known_hosts 文g。那么将 known_hosts 指向不同的文Ӟ不就不会造成公钥冲突D的中断了么?$ ssh -o UserKnownHostsFile=/dev/null 192.168.0.110 The authenticity of host '192.168.0.110 (192.168.0.110)' can't be established. RSA key fingerprint is e9:0c:36:89:7f:3c:07:71:09:5a:9f:28:8c:44:e9:05. Are you sure you want to continue connecting (yes/no)?
看,提示信息由公钥改变中断警告,变成了首ơ连接的提示?和之前提到的 StrictHostKeyChecking 配置配合使用Q则不再有Q何警告出CQ?pre style="border-style: solid; border-color: #e7e5dc; border-width: 1px 0px 4px 6px; padding: 1em; overflow: auto; color: black; line-height: 16px; font-family: Consolas, Monaco, 'Courier New', Courier, monospace; font-size: 14px; letter-spacing: 0px; background-color: #f8f8f8; ">$ ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null 192.168.0.110 Warning: Permanently added '192.168.0.110' (RSA) to the list of known hosts. jiangxin@192.168.0.110's password: 如果讄了无口o SSH dQ即通过客户端公钥认证)Q就可以直接q接到远E主机。这是基?SSH 协议的自动化d常用的手Dc?br />
转自: http://www.worldhello.net/2010/04/08/1026.html
可参考资料:http://www.symantec.com/connect/articles/ssh-host-key-protection
]]>
如果使用apt-get install ruby 和apt-get install rubygems1.8
当用gem install 命o时报以下错误Q?br />
ERROR: While executing gem ... (TypeError) instance of Date needs to have method `marshal_load
可能是Ubuntu环境的原因,那么改用rvm安装Q参考了http://beginrescueend.com/rvm/install/
若以非root模式安装Q?br />
bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
drvm scripts路径变量到bashQ?br />
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
让新的bash生效Q?br />
source ~/.bash_profile
安装ruby1.9.2:
rvm install 1.9.2
让系l默认?.92Q?br />
rvm use 1.9.2 --default
查安装是否OKQ?br />
ruby -v
--------------------------------------------
接下来安装rubygems
先到官网下蝲安装包http://rubygems.org/pages/download
然后安装
ruby setup.rb
默认采用淘宝的Gem镜像站点
gem source http://ruby.taobao.org/
接下来就可以使用gem install xxx命o了,just enjoy it!
PS:如过使用gem install报错Q可能是Ubuntu本n一些依赖,比如我安装gollum时缺依赖libxml2,libxslt,
~少啥就install 啥:
apt-get install libxml2
apt-get install libxslt
]]>
]]>
]]>
1.修改 vftpd 配置文g
vi /etc/vsftpd.conf #listen=YES
vi /etc/xinetd.d/vsftpd ?#8220;disable=yes” 改ؓ “disable=no”?xinetd 服务启动后接收到 ftp q接hӞ能够自动启动 vsftpd 服务q程
2. mkdir -p /srv/ftp/linux-10 创徏文g?-p 如果文g夹不存在自动创徏
3. chown -R ftp:ftp /srv/ftp/linux-10 指定 linux-10 目录及其子目录的拥有者ؓ ftp 用户?ftp l?
4. chmod -R 755 /srv/ftp/linux-10 指定 linux-10 目录及其子目录的讉K权限
5. mount /dev/hdc /srv/ftp/linux-10/disk1 设备中的内Ҏ载到 disk1 ?
umount /srv/ftp/linux-10/disk1 卸蝲?disk1 中挂载的文g
6. /etc/init.d/xinetd start 启动 FTP 服务
7. df 命o 功能Q检查文件系l的盘I间占用情况。可以利用该命o来获取硬盘被占用了多空_目前q剩下多空间等 信息?
语法Qdf [选项]
说明Qdf 命o可显C所有文件系l对 i 节点和磁盘块的用情c?
该命令各个选项的含义如下:
-a 昄所有文件系l的盘使用情况Q包?0 块(blockQ的文gpȝQ如/proc 文gpȝ?
-k ?k 字节为单位显C?
-i 昄 i 节点信息Q而不是磁盘块?
-t 昄各指定类型的文gpȝ的磁盘空间用情c?
-x 列出不是某一指定cd文gpȝ的磁盘空间用情况(?t 选项相反Q?
-T 昄文gpȝcd?
8. free 命o
free命o的功能是查看当前pȝ内存的用情况,它显C系l中剩余及已用的物理内存和交换内存,以及׃n内存 和被核心使用的缓冲区?
该命令的一般格式ؓQ?free [-b | -k | -m] 命o中各选项的含义如下:
-b 以字节ؓ单位昄?
-k ?K 字节为单位显C?
-m 以兆字节为单位显C?
9. sync 命o sync 命o是强制把内存中的数据写回盘Q以免数据的丢失
10. shutdown 命o
shutdown 命o可以安全地关闭或重启 Linux pȝQ?它在pȝ关闭之前l系l上的所有登录用hCZ条警告信息?该命令还允许用户指定一个时间参敎ͼ可以是一个精的旉Q也可以是从现在开始的一个时间段。精时间的格式 ?hh:mmQ表C小时和分钟Q时间段?#8220;+”和分钟数表示。系l执行该命o后,会自动进行数据同步的工作?
该命令的一般格式ؓQ?shutdown [选项] [旉] [警告信息] 命o中各选项的含义ؓQ?
- k q不真正xQ而只是发告信息给所有用戗?
- r x后立即重新启动?
- h x后不重新启动?
- f 快速关机,重启动时跌 fsck?
- n 快速关机,不经q?init E序?
- c 取消一个已l运行的 shutdown?需要特别说明的是,该命令只能由用户使用?
11. date 命o
date 命o的功能是昄和设|系l日期和旉?
12. cal 命o
cal 命o的功能是昄某年某月的日历?
该命令的一般格式ؓQ?cal [选项] [?[q]] 命o中各选项的含义ؓQ?
- j 昄出给定月中的每一天是一q中的第几天Q从 1 ?1 日算P?
- y 昄出整q的日历?
13. echo 命o
echo 命o的功能是在显C器上显CZD|字,一般vC个提C的作用?br /> 该命令的一般格式ؓQ?echo [ -n ] 字符?
其中选项 n 表示输出文字后不换行Q字W串可以加引P也可以不加引受用 echo 命o输出加引L字符串时Q?字W串原样输出Q用 echo 命o输出不加引号的字W串Ӟ字W串中的各个单词作ؓ字符串输出,各字W串之间 用一个空格分剌Ӏ?
14. ?ftp 安装 linux pȝ
install=ftp://ip(服务?ip 地址)/linux-10/disk1 hostip=ip(新系l?ip)/24 gateway=192.168.0.1(|关)
15. chkconfig --level 235 ntp on 使用pȝ启动Ӟ自动启动 NTP 服务
16. /etc/init.d/ntp restart 启动 NTP 服务
17. route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0 配置 Linux 多播路由 d该\由项
18. netstat -nr 查看路由?
19. netstat -an|less 查看服务端口的状?
20. /etc/init.d/novell-tomcat4 restart 重启 Tomcat(?iManage 中安装插件后)
21. chmod 777 文g?修改文g权限
22. ndsconfig rm 删除 ED 实例
23. _同步旉
先将 ntp 服务停掉 rcxntpd stop 然后执行 ntpdate 命o Q多ơ执行羃短时间差Q?最后启?rcxntpd start
24. Linux 更改 MAC 地址:
1.> 临时更改Q?
# ifdown eth0
# ifconfig eth0 hw ether 0029340830249(MAC 地址)
# ifup eth0
2.> 怹生效Q?对于 suse 不v作用)
# vi /etc/rc.d/rc.local
ifdown eth0
ifconfig eth0 hw ether 002934083024(MAC 地址)
ifup eth0
# service network restart(suse 9:rcnetwork restart)
3.> d新网卡:
a. VM --> d|卡
b. 启动时按 '<-' , 定相关默认配置
c. ?etc/sysconfig/network-s/创徏新网卡文?
d. 配置新网卡文?
25. Linux 更改 MAC 地址:
1.1 redhat:
a. $ cd /etc/sysconfig/network-s
b. Edit file "ifcfg-eth0", change to your real MAC address
(Use "ifconfig -a" to display real MAC address.)
c. $ /etc/init.d/network start (to restart network.)
1.2 SuSE:
a. $ cd /etc/sysconfig/network
b. $ mv ifcfg-eth-id-00:0c:29:ba:b2:ad ifcfg-eth0
c. $ vi /ifcfg-eth0
d. $ d LLADDR='real MAC address'
e. $ ?YAST 里面配置静?IP
(Use "ifconfig -a" to display real MAC address.)
f. $ reboot(重启pȝ)
2.修改 redhat localeQ?
cd /etc/sysconfig/
~辑 i18n 文gQ指定自己所需?locale
3.修改 SuSE hostnameQ编?etc/HOSTNAME
26. 增加反向代理名称 192.168.10.in-addr-arpa
27. suse 配置 ftp 服务
a. vi /etc/vsftpd.conf
b. ?listen=yes 注释?
c. vi /etc/xinetd.d/vsftpd
d. ?disable=yes 改ؓ disable=no
e. /etc/init.d/xinetd start 启动 FTP 服务
Qsuse9 只需执行 c,d,e suse10 都需要执行)
28. 查找文g find 路径 -name(-size,-type) file
29. 查找字符 grep 参数(-l 昄匚w行号Q?I 忽略大小写,-r 递归查找) 'str' fielist
30. 比较文g diff 参数(-w 忽略I格 ,-I 忽略大小?) file file
31.kill
1.作用
kill 命o用来中止一个进E?
2.格式
kill [ Qs signal | Qp ] [ Qa ] pid ...
kill Ql [ signal ]
3.参数
QsQ指定发送的信号?
QpQ模拟发送信受?
QlQ指定信L名称列表?
pidQ要中止q程?ID 受?
SignalQ表CZ受?
4.说明
q程?Linux pȝ中一个非帔R要的概念。Linux 是一个多d的操作系l,pȝ上经常同时运行着多个q程。我们不 兛_q些q程I竟是如何分配的Q或者是内核如何理分配旉片的Q所兛_的是如何L制这些进E,让它们能?很好Cؓ用户服务?
Linux 操作pȝ包括三种不同cd的进E,每种q程都有自己的特点和属性。交互进E是׃?Shell 启动的进E。交 互进E既可以在前台运行,也可以在后台q行。批处理q程和终端没有联p,是一个进E序列。监控进E(也称pȝ 守护q程Q时 Linux pȝ启动时启动的q程Qƈ在后台运行。例如,httpd 是著名的 Apache 服务器的监控q程?
kill 命o的工作原理是Q向 Linux pȝ的内核发送一个系l操作信号和某个E序的进E标识号Q然后系l内核就可以?q程标识h定的q程q行操作。比如在 top 命o中,我们看到pȝq行许多q程Q有时就需要?kill 中止某些q?E来提高pȝ资源?在讲解安装和登陆命oӞ 曾提到系l多个虚拟控制台的作用是当一个程序出错造成pȝ死锁Ӟ 可以切换到其它虚拟控制台工作关闭q个E序。此时用的命o是 killQ因?kill 是大多数 Shell 内部命o可以直接 调用的?
5.应用实例
Q?Q强行中止(l常使用杀掉)一个进E标识号?324 的进E:
Qkill Q? 324
Q?Q解?Linux pȝ的死?
?Linux 中有时会发生q样一U情况:一个程序崩溃,q且处于死锁的状态。此时一般不用重新启动计机Q只需?中止(或者说是关?q个有问题的E序卛_?kill 处于 X-Window 界面Ӟ ?主要的程?除了崩溃的程序之?一般都 已经正常启动了。此时打开一个终端,在那里中止有问题的程序。比如,如果 Mozilla 览器程序出C锁死的情况, 可以使用 kill 命o来中止所有包含有 Mozolla 览器的E序。首先用 top 命o查处该程序的 PIDQ然后?kill 命o?止这个程序:
Qkill QSIGKILL XXX
其中QXXX 是包含有 Mozolla 览器的E序的进E标识号?
Q?Q用命令回收内?我们知道内存对于pȝ是非帔R要的Q回收内存可以提高系l资源。kill 命o可以及时C止一?#8220;轨”的程序或很长 旉没有相应的程序。例如,使用 top 命o发现一个无?(Zombie) 的进E,此时可以使用下面命oQ?
Qkill Q? XXX
其中QXXX 是无用的q程标识受?
然后使用下面命oQ?
Qfree
此时会发现可用内存容量增加了?
Q?Qkillall 命o
Linux 下还提供了一?killall 命oQ可以直接用进E的名字而不是进E标识号Q例如:
Q?killall -HUP inetd
32.rm 删除命o
rm -r 删除目录Q不目录中有没有文?
rm -rf 强制删除Q没有提C?
33.ln 命o
ln -s 源文?l对路径) 目标文g QYq接Q?
34.查看本机开攄端口
1、netstat 查看端口和连?
netstat 列出目前已经q接的服务名
netstat -a 列出目前已经q接的和正在监听的服务名
netstat -an 列出目前已经q接的和正在监听的端口号Q与上面的命令功能一P 只是不解释端口号对应的服务名Q?
netstat -ap 在上面命令的基础上列接的 PID(q程?Q用q个 PIDQ可以?KILL 来杀死连?
例如Q某个连接的 PIDQ?11Q想t出d使用 KILL -9 111。okQ?
netstat -rn 输出路由?br />
2、nmap
nmap 127.0.0.1查看本机开攄端口Q会扫描所有端?br /> nmap -p 1024 65535 127.0.0.1 扫描指定端口范围
nmap -PT 192.168.1.1-111 扫描一l范围的电脑
35. 交互方式理 identity manager 对象
dxcmd -host 192.168.37.133 -port 524
36. ps -A 产看q程
37. ssh -X (ip address) q程q接另一pȝ
38. pkill firefox-bin(q程? 以进E名杀q程
39. . /opt/novell/eDirectory/bin/ndspath 讄 ed 的环境变?
======================================================================
1.cd /home 查看根目?br />
2.cd oracle 查看某个文g?br />
3.ls 查看目录下的文g
4.cp jdk(.按tab)昄-6u18-linux-i586.bin ../ 复制C一层文件夹
5.sudo cp jdk(.按tab)昄-6u18-linux-i586.bin ../ 以rootw䆾复制C一层文件夹
6./sbin/ifconfig 查看IP
7.netstat -anp | grep oracle
netstat anp | grep oracle
netstat -anp | grep 1521
netstat anp | grep 1521
8.cat 查看文g
vi ~辑文g
9.startx 启动桌面
10.who 查看当前用户
11.vi /etc/inittab 修改启动方式
12.ls -a 查看隐藏文g
13.reboot 重启pȝ
--------------------------------------------------------------------------------------------------------------------------------
1.tar用来解压文gQ都是自q话来描述Q用法实例:
#tar -zxvf SOFTNAME.tar.gz
中间?zxvf你可以不要管它,基本上我是q样用的都不怎么知道它上面意思呵呵,后面是要解压的文件名Q?br />
2.cdq入文g夹,用法实例Q?br />
#cd /usr
q入usr文g夹中Q?br />
3.top昄现在q行的程序,像windows的Q务管理器吧,不知道可不可以这L解;用法实例Q?br />
#top
昄出所有正在运行的E序Q?br />
4.chown(change owner)变更文g或目录的拥有者或所属群l,用法实例Q?br />
# chown -R root .
-R?-recursive 递归处理Q将指定目录下的所有文件及子目录一q处理;
5.chmod(change mode)变更文g或目录的权限Q用法实例:
#chmod a+x 文g?br />
a+x是参敎ͼa是all的意思就是所有用Px是执行或切换权限Q把q个文g讄为可执行的ƈ且是所有用户都可以Q?br />
6.cp(copy)复制文g或目录,用法实例
#cp 源文?目的文g
不用说了是拯的;
7.ls(list)列出目录内容Q用法实例:
#ls -l
-l是参敎ͼ是说使用详细格式列表Q?br />
8.reboot重新开机,用法实例Q?br />
#reboot
执行reboot指o可让pȝ停止q作Qƈ重新开机;
9.useradd建立用户帐号Q用法实例:
# useradd mysql
建立一个mysql用户账号Q?br />
10.suQsuper userQ变更用戯n份,用法实例Q?br />
#su 用户?br />
不带参数的话默认为切换到root用户下,然后一般会让你输入密码Q?br />
11.exit退出目前的shellQ用法实例:
#exit
退出shellQ?br />
12.chgrp(change group)变更文g或目录的所属群l,用法实例Q?br />
#chgrp -R mysql .
让mysql用户和root拥有一L权限Q?br />
13.ifconfig昄|络状态,用法实例Q?br />
#ifconfig
ifconfig可设|网l设备的状态,或是昄目前的设|?br />
14.export昄或设|环境变量,用法实例Q?br />
#export JAVA_HOME=/usr/java/jdk1.6.0_17
讄jdk环境变量Ӟ的java_homeQ?br />
=================================================================================
1.修改vftpd配置文g
vi /etc/vsftpd .conf #listen=YES
vi /etc/xinetd.d/vsftpd ?#8220;disable=yes” 改ؓ “disable=no”使xinetd?br />
务启动后接收到ftpq接hӞ能够自动启动vsftpd服务q程
2. mkdir -p /srv/ftp/linux-10 创徏文g?nbsp; -p 如果文g夹不存在自动?br />
?nbsp;
3. chown -R ftp:ftp /srv/ftp/linux-10 指定linux-10目录及其子目录的拥有者ؓftp用户和ftp
l?nbsp;
4. chmod -R 755 /srv/ftp/linux-10 指定linux-10目录及其子目录的讉K权限
5. mount /dev/hdc /srv/ftp/linux-10/disk1 设备中的内Ҏ载到disk1?br />
umount /srv/ftp/linux-10/disk1 卸蝲掉disk1中挂载的文g
6. /etc/init.d/xinetd start 启动FTP服务
7. df命o
功能Q检查文件系l的盘I间占用情况。可以利用该命o来获取硬盘被占用了多空_目前q剩
下多空间等信息?br />
语法Qdf [选项]
说明Qdf命o可显C所有文件系l对i节点和磁盘块的用情c?br />
该命令各个选项的含义如下:
-a 昄所有文件系l的盘使用情况Q包?块(blockQ的文gpȝQ如/proc文gpȝ?br />
-k 以k字节为单位显C?br />
-i 昄i节点信息Q而不是磁盘块?br />
-t 昄各指定类型的文gpȝ的磁盘空间用情c?br />
-x 列出不是某一指定cd文gpȝ的磁盘空间用情况(与t选项相反Q?br />
-T 昄文gpȝcd?br />
8. free命o
free命o的功能是查看当前pȝ内存的用情况,它显C系l中剩余及已用的物理内存和交换内存,
以及׃n内存和被核心使用的缓冲区?br />
该命令的一般格式ؓQ?free [-b | -k | -m] 命o中各选项的含义如下:
-b 以字节ؓ单位昄?br />
-k 以K字节为单位显C?br />
-m 以兆字节为单位显C?br />
9. sync命o
sync命o是强制把内存中的数据写回盘Q以免数据的丢失
10. shutdown命o
shutdown 命o可以安全地关闭或重启LinuxpȝQ它在系l关闭之前给pȝ上的所有登录用hCZ
条警告信息。该命oq允许用h定一个时间参敎ͼ可以是一个精的旉Q也可以是从现在开始的一?br />
旉Dc精时间的格式是hh:mmQ表C小时和分钟Q时间段?#8220;+”和分钟数表示。系l执行该命o后,
会自动进行数据同步的工作?br />
该命令的一般格式ؓQ?shutdown [选项] [旉] [警告信息] 命o中各选项的含义ؓQ?br />
- k q不真正xQ而只是发告信息给所有用戗?br />
- r x后立即重新启动?br />
- h x后不重新启动?br />
- f 快速关机,重启动时跌fsck?br />
- n 快速关机,不经qinitE序?br />
- c 取消一个已l运行的shutdown?br />
需要特别说明的是,该命令只能由用户使用?br />
11. date命o
date命o的功能是昄和设|系l日期和旉?br />
12. cal命o
cal命o的功能是昄某年某月的日历?br />
该命令的一般格式ؓQ?cal [选项] [?[q]] 命o中各选项的含义ؓQ?br />
- j 昄出给定月中的每一天是一q中的第几天Q从1?日算P?br />
- y 昄出整q的日历?br />
13. echo命o
echo命o的功能是在显C器上显CZD|字,一般vC个提C的作用?br />
该命令的一般格式ؓQ?echo [ -n ] 字符?br />
其中选项n表示输出文字后不换行Q字W串可以加引P也可以不加引受用echo命o输出加引L?br />
W串Ӟ字W串原样输出Q用echo命o输出不加引号的字W串Ӟ字W串中的各个单词作ؓ字符串输
出,各字W串之间用一个空格分剌Ӏ?br />
14. 从ftp安装linuxpȝ
install=ftp://ip(服务器ip地址)/linux-10/disk1 hostip=ip(新系lip)/24 gateway=192.168.0.1(
|关)
15. chkconfig --level 235 ntp on 使用pȝ启动Ӟ自动启动NTP服务
16. /etc/init.d/ntp restart 启动NTP服务
17. route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0 配置Linux多播路由 d
该\由项
18. netstat -nr 查看路由?br />
19. netstat -an|less 查看服务端口的状?br />
20. /etc/init.d/novell-tomcat4 restart 重启Tomcat(在iManage中安装插件后)
21. chmod 777 文g?nbsp; 修改文g权限
22. ndsconfig rm 删除ED实例
23. _同步旉
先将ntp服务停掉 rcxntpd stop 然后执行 ntpdate 命o Q多ơ执行羃短时间差Q?nbsp; 最后启?
rcxntpd start
24. Linux 更改MAC地址:
1.> 临时更改Q?br /> # ifdown eth0
# ifconfig eth0 hw ether 0029340830249(MAC地址)
# ifup eth0
2.> 怹生效Q?对于suse不v作用)
# vi /etc/rc.d/rc.local
ifdown eth0
ifconfig eth0 hw ether 002934083024(MAC地址)
ifup eth0
# service network restart(suse 9:rcnetwork restart)
3.> d新网卡:
a. VM --> d|卡
b. 启动时按 '<-' , 定相关默认配置
c. ?etc/sysconfig/network-s/创徏新网卡文?br /> d. 配置新网卡文?
25. Linux 更改MAC地址:
1.1 redhat:
a. $ cd /etc/sysconfig/network-s
b. Edit file "ifcfg-eth0", change to your real MAC address
(Use "ifconfig -a" to display real MAC address.)
c. $ /etc/init.d/network start (to restart network.)
1.2 SuSE:
a. $ cd /etc/sysconfig/network
b. $ mv ifcfg-eth-id-00:0c:29:ba:b2:ad ifcfg-eth0
c. $ vi /ifcfg-eth0
d. $ d LLADDR='real MAC address'
e. $ 到YAST里面配置静态IP
(Use "ifconfig -a" to display real MAC address.)
f. $ reboot(重启pȝ)
2.修改redhat localeQ?br />
cd /etc/sysconfig/
~辑i18n文gQ指定自己所需的locale
3.修改SuSE hostnameQ编?etc/HOSTNAME
26. 增加反向代理名称 192.168.10.in-addr-arpa
27. suse 配置ftp服务
a. vi /etc/vsftpd.conf
b. listen=yes 注释?br /> c. vi /etc/xinetd.d/vsftpd
d. ?disable=yes 改ؓ disable=no
e. /etc/init.d/xinetd start 启动FTP服务
Qsuse9只需执行c,d,e suse10都需要执行)
28. 查找文g find 路径 -name(-size,-type) file
29. 查找字符 grep 参数(-l 昄匚w行号Q?I 忽略大小写,-r 递归查找) 'str' fielist
30. 比较文g diff 参数(-w忽略I格 ,-I忽略大小?) file file
31.kill
1.作用
kill命o用来中止一个进E?br />
2.格式
kill [ Qs signal | Qp ] [ Qa ] pid ...
kill Ql [ signal ]
3.参数
QsQ指定发送的信号?br />QpQ模拟发送信受?br />QlQ指定信L名称列表?br />pidQ要中止q程的ID受?br />SignalQ表CZ受?br />
4.说明
q程是Linuxpȝ中一个非帔R要的概念。Linux是一个多d的操作系l,pȝ上经常同时运行着多个q?br />
E。我们不兛_q些q程I竟是如何分配的Q或者是内核如何理分配旉片的Q所兛_的是如何L?br />
q些q程Q让它们能够很好Cؓ用户服务?br />
Linux 操作pȝ包括三种不同cd的进E,每种q程都有自己的特点和属性。交互进E是׃个Shell?br />
动的q程。交互进E既可以在前台运行,也可以在后台q行。批处理q程和终端没有联p,是一个进E序
列。监控进E(也称pȝ守护q程Q时Linuxpȝ启动时启动的q程Qƈ在后台运行。例如,httpd是著?br />
?Apache服务器的监控q程?br />
kill命o的工作原理是Q向Linuxpȝ的内核发送一个系l操作信号和某个E序的进E标识号Q然后系l?br />
内核可以对q程标识h定的q程q行操作。比如在top命o中,我们看到pȝq行许多q程Q有时就
需要用kill中止某些q程来提高系l资源。在讲解安装和登陆命令时Q曾提到pȝ多个虚拟控制台的?br />
用是当一个程序出错造成pȝ死锁Ӟ可以切换到其它虚拟控制台工作关闭q个E序。此时用的命o?br />
是killQ因为kill是大多数Shell内部命o可以直接调用的?br />
5.应用实例
Q?Q强行中止(l常使用杀掉)一个进E标识号?24的进E:
Qkill Q? 324
Q?Q解除Linuxpȝ的死?br />在Linux 中有时会发生q样一U情况:一个程序崩溃,q且处于死锁的状态。此时一般不用重新启动计?br />
机,只需要中?或者说是关?q个有问题的E序卛_。当 kill处于X-Window界面Ӟ主要的程?除了
崩溃的程序之?一般都已经正常启动了。此时打开一个终端,在那里中止有问题的程序。比如,如果
Mozilla览器程序出C锁死的情况,可以使用kill命o来中止所有包含有Mozolla览器的E序。首?br />
用top命o查处该程序的PIDQ然后用kill命o停止q个E序Q?br />Qkill QSIGKILL XXX
其中QXXX是包含有Mozolla览器的E序的进E标识号?br />
Q?Q用命令回收内?br />我们知道内存对于pȝ是非帔R要的Q回收内存可以提高系l资源。kill命o可以及时C止一?#8220;轨
”的程序或很长旉没有相应的程序。例如,使用top命o发现一个无?(Zombie) 的进E,此时可以?br />
用下面命令:
Qkill Q? XXX
其中QXXX是无用的q程标识受?br />
然后使用下面命oQ?br />Qfree
此时会发现可用内存容量增加了?br />
Q?Qkillall命o
Linux下还提供了一个killall命oQ可以直接用进E的名字而不是进E标识号Q例如:
Q?killall -HUP inetd
32.rm 删除命o
rm -r 删除目录Q不目录中有没有文?br /> rm -rf 强制删除Q没有提C?br />
33.ln命o
ln -s 源文?l对路径) 目标文g QYq接Q?br />
34.查看本机开攄端口
1、netstat 查看端口和连?br /> netstat 列出目前已经q接的服务名
netstat -a 列出目前已经q接的和正在监听的服务名
netstat -an 列出目前已经q接的和正在监听的端口号Q与上面的命令功能一P只是不解释端?br />
号对应的服务名)
netstat -ap 在上面命令的基础上列接的PID(q程?Q用q个PIDQ可以用KILL 来杀死连?br /> 例如Q某个连接的PIDQ?11Q想t出d使用 KILL -9 111。okQ?br /> netstat -rn 输出路由?br /> 2、nmap
nmap 127.0.0.1 查看本机开攄端口Q会扫描所有端?br /> nmap -p 1024 65535 127.0.0.1 扫描指定端口范围
nmap -PT 192.168.1.1-111 扫描一l范围的电脑
35. 交互方式理identity manager 对象
dxcmd -host 192.168.37.133 -port 524
36. ps -A 产看q程
37. ssh -X (ip address) q程q接另一pȝ
38. pkill firefox-bin(q程? 以进E名杀q程
39. . /opt/novell/eDirectory/bin/ndspath 讄ed的环境变?br />
=============================================================================
SUSE 10.0 快捷键大?
2007-09-07 10:25:54| 分类Q?Linux |字号 订阅
快捷?br />ctrl+shift+f (H口全屏Q?br />ctrl+shift+n (新徏konsoleH口Q?br />ctrl+shift++ (调整H口字体大)
ctrl+shift+- (调整H口字体)
ctrl+shift+0 (调整H口字体正常Q?br />ctrl+alt+f1 (l端1Q?br />ctrl+alt+f2 (l端2Q?br />ctrl+alt+f3 (l端3Q?br />ctrl+alt+f4 (l端4Q?br />ctrl+alt+f5 (l端5Q?br />ctrl+alt+f6 (l端6Q?br />ctrl+alt+f7 (X-window界面Q?br />ctrl+alt+s (重命名会?在konsoleH口Q?br />ctrl+alt+d (昄桌面Q?br />ctrl+alt+l (锁定屏幕Q?br />ctrl+alt+方向上下Q切换输入法Q?br />ctrl+alt+del (l束会话Q?br />ctrl+alt+Ins Q结束或锁定当前会话 开始新的会?有的可尝试+FN键)
CtrlQAltQBackSpace (退出XQWINDOWQ?br />ctrl+alt+FN+p (调整H口大小Q?br />ctrl+F1 (昄H口Q?br />ctrl+f2 (昄桌面Q?br />ctrl+prtscr (截屏Q?br />ctrl+Home (昄到窗口页首)
ctrl+End (昄到窗口页)
ctrl+space (切换输入法)
ctrl+shift (切换输入法)
ctrl+l (=clear)
ctrl+n (新徏H口Q?br />ctrl+S (保存文gQ?br />ctrl+q Q退出)
ctrl+d Q关闭konsole)
ctrl+ESC (KDE卫士Q?br />shift+方向?Q在konsole下切换)
alt+f1 (昄E序菜单Q?br />alt+f2 (q行命oQ?br />alt+f3 (昄当前H口菜单Q?br />alt+f4 (关闭当前H口Q?br />alt+f5 (H口选项Q?br />alt+方向?Q后退|页Q?br />alt+方向?Q向前网)
.......
非常有用?D 桌面快捷键,希望对大家有用!
Alt + 鼠标滚轮 ?下ɽH口 透明/不透明
E序切换Q?br />Alt + TabQ在当前工作C切换H口
Ctrl + Alt + TabQ在所有工作台中切换窗?br />
立方体旋转:
Ctrl + Alt + ?x向键Q立体地切换桌面
Ctrl + Shift + Alt + ?x向键Q把zdH口Ud?叛_作台
Ctrl + Alt + 鼠标左键q拖曻I手动旋{立方?br />
~放Q?br />Win + 鼠标右键Q羃放一?br />Win + 鼠标滚轮 ?下:手动~放??br />
调整H口大小Q?br />Alt + 鼠标中键
水L效果Q?br />Ctrl + Win + Ud鼠标Q光标在水上UdQ默认无效)
Shift + F9Q雨炚w落在你的屏幕?(无法停止)
屏幕截图Q?br />Win + 鼠标左键q拖曻I所选区域截图(囄保存在桌面)
亮度和饱和度Q?br />Ctrl + 鼠标滚轮 ?下:增加/减少 饱和度(Ҏ面也有效Q?br />Shfit + 鼠标滚轮 ?下:增加/减少 亮度Q对桌面也有效)
Trackback: http://www.linuxdby.com/html/linux/other/20070508/28630.html
]]>Linux下mysql安装配置总计Q?nbsp;
MySQL安装配置 讄MySQL服务及命?/span>
数据库初始化
]]>
?FW_SERVICES_EXT_TCP
?FW_SERVICES_EXT_UDP
后加入端口号Q端?端口 或者服务名U? 单个端口号之间空格隔开
例如:
FW_SERVICES_EXT_TCP="3306 12345 52122 55555"
opensuse中的没有/etc/rc.d/rc.local文gQ有
最新发布的opensuse11.4帮助文档
]]>
]]>Iptables
]]>
Archive: ubuntu-8.04.4.zip
skipping: ubuntu-8.04.4.img need PK compat. v4.5 (can do v2.1)
|上扑ֈ解决Ҏ通过p7zip工具能够实现大文件的解压~。p7zip介看最下面?br />
然后再官方网站:http://p7zip.sourceforge.net/ 中下载了针对linux的p7zip
下蝲之后后缀名是p7zip_9.20.1_src_all.tar.bz2,
通过命otar -jxvf p7zip_9.20.1_src_all.tar.bz2 解压该文Ӟ
然后执行 make ~译
在执?make install 安装p7zip
OKQ!Q!
执行如下命o卛_完成我这10G文g的解压羃。如下:
[root@node30 images]# 7za x ubuntu-8.04.4.zip
7-Zip (A) [64] 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
Processing archive: ubuntu-8.04.4.zip
Extracting ubuntu-8.04.4.img
Everything is Ok
Size: 10737418240
Compressed: 117455645
以下为网上{载回之用?br />转蝲自:
zip可能是目前用得最多的文档压羃格式。它最大的优点是在不同的操作pȝq_Q比如LinuxQ?Windows以及Mac OSQ上使用。缺点就是支持的压羃率不是很高,而tar.gz和tar.gz2在压~率斚w做得非常好。闲话少_我们步入正题吧:
我们可以使用下列的命令压~一个目录:
Tar是在Linux中用得非常q泛的文档打包格式。它的好处就是它只消耗非常少的CPU以及旉L包文Ӟ他仅仅只是一个打包工Pq不负责压羃。下面是如何打包一个目录:
q种格式是我使用得最多的压羃格式。它在压~时不会占用太多CPU的,而且可以得到一个非常理想的压羃率。用下面这U格式去压羃一个目录:
q种压羃格式是我们提到的所有方式中压羃率最好的。当Ӟq也意味着Q它比前面的方式要占用更多的CPU与时间。这个就是你如何使用tar.bz2q行压羃?/p>
P7ZIP 的安?/strong>
?Debian/Ubuntu pȝQ可通过 sudo apt-get install p7zip q行安装?
也可以从q里下蝲Qhttp://p7zip.sourceforge.net/
P7ZIP 的?/strong>
创徏压羃包:7za a -t7z test.7z *Q此命o目录中的所有文件压~到 test.7z 中?br />
解开压羃包:7za X test.7zQ此命o用于?test.7z 中的文g提取出来。可使用 -t 来指明压~格式?br />
更多信息Q执行命令:
7za –help
另外Q解压文件徏议用 X 而不?e
7za X test.7z
?e 会丢q录结构的?br />
相关链接Q?/strong>
官方|站Qhttp://p7zip.sourceforge.net/
论坛支持Qhttp://sourceforge.net/forum/?group_id=111810
]]>
]]>
查看3306端口被谁占用
lsof?br /> lsofQlist open filesQ是一个列出当前系l打开文g的工兗在linux环境下,M事物都以文g的Ş式存在,通过文g不仅仅可以访问常规数据,q可以访问网l连?和硬件。所以如传输控制协议 (tcp) 和用h据报协议 (udp) 套接字等Q系l在后台都ؓ该应用程序分配了一个文件描q符Q无个文件的本质如何Q该文g描述Wؓ应用E序与基操作pȝ之间的交互提供了通用接口。因 为应用程序打开文g的描q符列表提供了大量关于这个应用程序本w的信息Q因此通过lsof工具能够查看q个列表对系l监以及排错将是很有帮助的?br /> lsof使用
lsof输出信息含义
在终端下输入lsof卛_昄pȝ打开的文Ӟ因ؓ lsof 需要访问核心内存和各种文gQ所以必M root 用户的n份运行它才能够充分地发挥其功能?br /> command pid user fd type device size node name
init 1 root cwd dir 3,3 1024 2 /
init 1 root rtd dir 3,3 1024 2 /
init 1 root txt reg 3,3 38432 1763452 /sbin/init
init 1 root mem reg 3,3 106114 1091620 /lib/libdl-2.6.so
init 1 root mem reg 3,3 7560696 1091614 /lib/libc-2.6.so
init 1 root mem reg 3,3 79460 1091669 /lib/libselinux.so.1
init 1 root mem reg 3,3 223280 1091668 /lib/libsepol.so.1
init 1 root mem reg 3,3 564136 1091607 /lib/ld-2.6.so
init 1 root 10u fifo 0,15 1309 /dev/initctl
每行昄一个打开的文Ӟ若不指定条g默认显C所有进E打开的所有文件。lsof输出各列信息的意义如下:
commandQ进E的名称
pidQ进E标识符
userQ进E所有?br /> fdQ文件描q符Q应用程序通过文g描述W识别该文g。如cwd、txt{?br /> typeQ文件类型,如dir、reg{?br /> deviceQ指定磁盘的名称
sizeQ文件的大小
nodeQ烦引节点(文g在磁盘上的标识)
nameQ打开文g的确切名U?br /> 其中fd 列中的文件描q符cwd DC应用程序的当前工作目录Q这是该应用E序启动的目录,除非它本w对q个目录q行更改?br /> txt cd的文件是E序代码Q如应用E序二进制文件本w或׃n库,如上列表中显C的 /sbin/init E序。其ơ数DC应?br /> E序的文件描q符Q这是打开该文件时q回的一个整数。如上的最后一行文?dev/initctlQ其文g描述Wؓ 10。u 表示?br /> 文g被打开q处于读?写入模式Q而不是只?? 或只?(w) 模式。同时还有大?的w 表示该应用程序具有对整个文g的写
锁。该文g描述W用于确保每ơ只能打开一个应用程序实例。初始打开每个应用E序Ӟ都具有三个文件描q符Q从 0 ?2Q?br /> 分别表示标准输入、输出和错误。所以大多数应用E序所打开的文件的 fd 都是?3 开始?br /> ?fd 列相比,type 列则比较直观。文件和目录分别UCؓ reg ?dir。而chr ?blkQ分别表C字W和块设备;
或?unix、fifo ?ipv4Q分别表C?unix 域套接字、先q先?(fifo) 队列和网际协?(ip) 套接字?/div>
]]>
------------------------------------------
who options可显C当前登录的用户.
选项Q?a昄所有结果,-r昄当前q行U别Q?s列出用户名及旉?
whoami 昄自己的用户名.
whereis 输出pȝ命o的二q制文g路径.
wc options files 能够l计文g中的字符数、单词数和行?
wc -c xx昄字符?wc -l xx昄行数 wc -w xx昄单词?
wait 可用来等待进E号为proccess ID的进E或者所有的后台q程l束后,再执行当前脚?
uname 昄当前操作pȝ名及其他相关信息.
选项Q?a 昄所有信息,-s pȝ名,-v只显C操作系l版本或其发布日?
touch 创徏一个文?
选项Q?t MMDDhhmm 创徏一个具有相应月、日、时分时间戳的文?
strings 可以看二q制文g中所包含的文?
shutdown xQshutdown nowQ?br />script 可用该命o记录当前会话.
例:script mylogin 启动script命oq将所有会话内容记录到mylogin文g?
mkdir 创徏目录 rmdir 删除目录
rm 能够删除文g或目?
选项: -i 删除文g之前l出提示(安全模式), -r 删除目录.
pwd昄当前的工作目?
nl 命o可用于在文g中列行号Q在打印源代码或列日志文件时很有?
选项Q?I 行号每次增加nQ默认ؓ1. -p 在新的一不重新计数.
more 该命令和page及pg命o功能cMQ都能够分屏昄文g内容Q分|C).
logname 该命令可以显C当前所使用的登陆用户名.
head 命o可以昄相应文g的前多少?
例如Qhead -20 myfile 表示昄myfile文g的前20行内?
fuser 命o可以昄讉K某个文g或文件系l的所有进E?
选项: -k 杀L有访问该文g或文件系l的q程Q?-u 昄讉K该文件或文gpȝ的所有进E?
file 命o用来定文g的类?
df -h 查看pȝ盘I间.
du 昄的磁盘空间占用是?12字节的块来表C的.昄目录所占用的空?
例如Q在/var目录下执行du -s 后显C?4929 表示/var目录占用的空间ؓ14929?每块?12字节).
basename 能够从\径中分离出文件名.通常用于shell脚本?
例如Q?home/dave/myfile q回myfile
dirname q回路径内部分,该目录正好与basename命o相反.
例如Qdirname /home/dave/myfile q回/home/dave
cat 查看文本文g的显C命?选项-vQ显C控制字W?
diff Ҏ两个文gQ显CZ个文件中不一致的?
dircmp 比较q显CZ个目录中的不?
tar -cvf 文g或目录打?
例如Qtar -cvf temp2.tar /usr/lib Q将/usr/lib目录下的文g与子目录打包成一个文件库为temp2.tar.
tar -xvf 解包 例如Qtar -xvf /u0/temp2.tar
-----------------------------------
20130219:
find . -type f -
exec
chmod
644 {} \;
find . -type d - exec chmod 755 {} \; |
find . -type d 文g?br />find . -type f 文g
------------------------------------
作?冯太q?nbsp;
最qL应用一些LINUX命o,有些参数C?所以整理一?方便查阅,也和大家一起分?
vi命o使用
-----------------------
vi filename :打开或新建文Ӟq将光标|于W一行首
vi +n filename Q打开文gQƈ光标置于第n行首
vi + filename Q打开文gQƈ光标置于最后一行首
vi +/pattern filenameQ打开文gQƈ光标置于第一个与pattern匚w的串?br />vi -r filename Q在上次正用vi~辑时发生系l崩溃,恢复filename
vi filename....filename Q打开多个文gQ依ơ编?br />
Ud光标cd?br />h Q光标左UM个字W?br />l Q光标右UM个字W?br />spaceQ光标右UM个字W?br />BackspaceQ光标左UM个字W?br />k或Ctrl+pQ光标上UM?br />j或Ctrl+n Q光标下UM?br />Enter Q光标下UM?br />w或W Q光标右UM个字臛_?br />b或B Q光标左UM个字臛_?br />e或E Q光标右UM个字j臛_?br />) Q光标移臛_?br />( Q光标移臛_?br />}Q光标移x落开?br />{Q光标移x落结?br />nGQ光标移至第n行首
n+Q光标下Un?br />n-Q光标上Un?br />n$Q光标移至第n行尾
H Q光标移臛_q顶?br />M Q光标移臛_q中间行
L Q光标移臛_q最后行
0Q(注意是数字零Q光标移臛_前行?br />$Q光标移臛_前行?br />
屏幕Lcd?br />Ctrl+uQ向文g首翻半屏
Ctrl+dQ向文g半屏
Ctrl+fQ向文g一?br />CtrlQbQ向文g首翻一?br />nzQ将Wn行滚臛_q顶部,不指定n时将当前行滚臛_q顶部?br />
插入文本cd?br />i Q在光标?br />I Q在当前行首
aQ光标后
AQ在当前行尾
oQ在当前行之下新开一?br />OQ在当前行之上新开一?br />rQ替换当前字W?br />RQ替换当前字W及其后的字W,直至按ESC?br />sQ从当前光标位置处开始,以输入的文本替代指定数目的字W?br />SQ删除指定数目的行,q以所输入文本代替?br />ncw或nCWQ修Ҏ定数目的?br />nCCQ修Ҏ定数目的?br />
删除命o
ndw或ndWQ删除光标处开始及其后的n-1个字
doQ删臌?br />d$Q删臌?br />nddQ删除当前行及其后n-1?br />x或XQ删除一个字W,x删除光标后的Q而X删除光标前的
Ctrl+uQ删除输入方式下所输入的文?br />
搜烦及替换命?:
/patternQ从光标开始处向文件尾搜烦pattern
?patternQ从光标开始处向文仉搜烦pattern
nQ在同一方向重复上一ơ搜索命?br />NQ在反方向上重复上一ơ搜索命?br />Qs/p1/p2/gQ将当前行中所有p1均用p2替代
Qn1,n2s/p1/p2/gQ将Wn1至n2行中所有p1均用p2替代
Qg/p1/s//p2/gQ将文g中所有p1均用p2替换
选项讄
allQ列出所有选项讄情况
termQ设|终端类?br />ignoranceQ在搜烦中忽略大写
listQ显C制表位(Ctrl+I)和行标志($)
numberQ显C?br />reportQ显C由面向行的命o修改q的数目
terseQ显C简短的警告信息
warnQ在转到别的文g时若没保存当前文件则昄NO write信息
nomagicQ允许在搜烦模式中,使用前面不带“\”的特D字W?br />nowrapscanQ禁止vi在搜索到达文件两端时Q又从另一端开?br />mesgQ允许vi昄其他用户用write写到自己l端上的信息
最后行方式命o
Qn1,n2 co n3Q将n1行到n2行之间的内容拯到第n3行下
Qn1,n2 m n3Q将n1行到n2行之间的内容U至到第n3行下
Qn1,n2 d Q将n1行到n2行之间的内容删除
Qw Q保存当前文?br />Qe filenameQ打开文gfilenameq行~辑
QxQ保存当前文件ƈ退?br />QqQ退出vi
Qq!Q不保存文gq出vi
Q?commandQ执行shell命ocommand
Qn1,n2 w!commandQ将文g中n1行至n2行的内容作ؓcommand的输入ƈ执行之,若不?br />定n1Qn2Q则表示整个文件内容作为command的输?br />Qr!commandQ将命ocommand的输出结果放到当前行 ?br />-----------------------
常用监控LINUX的命?/strong>
-----------------------
ps -aux 查看所有进E?
ps -auxwww 参数w表示加宽昄的命令行
vmstatQ显C当前的内存使用情况
netstatQ显C网l状况,使用参数p可以查看对应的进E号及程序名
netstat -anp 通常使用参数aQ显C所有连接情况)和nQ不反查域名和服务名Q?br />netstat -an | grep LISTEN 查看服务器侦听情?br />netstat -an | grep ESTABLISHED 查看服务器已建立的连?br />ifconfig Q查?或设|)|络讑֤信息
ifconfig -aQ查看所有网l设|信?br />lastQ显C登录到服务器的情况以及服务器重启情?br />dfQ显C硬盘空间及使用情况QLinux下可以带参数hQ显C结果更人性化?br />df -h 盘I间按h性化昄
df -k 盘I间按KB昄
df -m 盘I间按MB昄
wQ显C登录到服务器上的用户列?br />
以下几个命o仅针对Linux
lsofQ显C当前打开的文件列表,包括建立的socketq接{。本命o可以用于E序员检查编写的E序打开的文件数
sysctlQ显C(或设|)pȝ内核参数
sysctl -a 昄所有内核参?
sysctl -w 参数?参数?br />ulimit Q显C(或设|)用户可以使用的资源限?
输出信息?br />
Procs r: {待q行的进E数
b: 处在非中断睡眠状态的q程?
w: 被交换出ȝ可运行的q程数。此数由 linux 计算得出Q但 linux q不耗尽交换I间
Memory
swpd: 虚拟内存使用情况Q单位:KB
free: I闲的内存,单位KB
buff: 被用来做为缓存的内存敎ͼ单位QKB
Swap
si: 从磁盘交换到内存的交换页数量Q单位:KB/U?br />so: 从内存交换到盘的交换页数量Q单位:KB/U?
IO
bi: 发送到块设备的块数Q单位:?U?br />bo: 从块讑֤接收到的块数Q单位:?U?
System
in: 每秒的中断数Q包括时钟中?br />cs: 每秒的环境(上下文)切换ơ数
CPU ?CPU 的M用百分比来显C?
us: CPU 使用旉
sy: CPU pȝ使用旉
id: 闲置旉
-----------------------
sftp命o使用
-----------------------
sftp -l username hostname 或?sftp user@hosname
q入?sftp 之后Q那p在一?FTP 模式下的操作Ҏ没有两样
cd
ls dir
mkdir
rmdir
pwd
chgrp
chown
chmod
ln oldname newname
rm path
rename oldname newname
exit bye
-----------------------
修改 evn:
-----------------------
vi .bash_profile 每个用户下都?br />vi /usr/jboss-3.2.0RC2/server/default/log/boot.log
source .bash_profile
-----------------------
常用命o:
-----------------------
rmdir -p surf 删除I目?br />mkdir 新徏目录
rm -rf 删除整个目录,q且不询?br />tail -f /usr/jboss-3.2.2RC2/server/default/log/server.log 时时h查看文g
ssh -l root 219.133.**.** q入其他服务?br />psql -h 219.133.**.** -Ult club_dump q入其他服务器的PostGre数据?br />psql -Upostgres club_dump q入服务器Postgre数据?br />select * from pg_stat_activity ; 查询数据库的q接?br />/etc/init.d/postgresql restart 重启数据库服?br />-----------------------
我们老ȝq的命o,可以自己ȝI一?
-----------------------
df -kh
dmesg | grep CPU
df -kh
free -m
free -kh
free -k
meminfo
mem
dmesg
env
df -kh
tail -f nohup.out
nohup ./run.sh &
ps -ef
chmod u+x *.sh
-----------------------
文g或者目录打?来自|络资料)
-----------------------
在Unixpȝ业务使用(特别是数据管理与备䆾)中,l过一番研I、整理后Q充分利用Unixpȝ本n的命令tar、cpio和compress{来做到打包和压~,使之充当cMDOS下的压羃软gQ同时在Unixpȝ中亦h通用性?
在Unixpȝ中,是先通过cpio或tar众多的文g打包成一个文件库后,再用compress文件库压羃来达到目的的。下面分别以cpio和tar来说明用的Ҏ和步骤?br />
一、cpio
1.文g或目录打包?br />
打包有如下多U情?
A)含子目录打包:
find /usr/lib -print|cpio -o?u0/temp1.cpio
?usr /lib目录下的文g与子目录打包成一个文件库?u0/temp1.cpio?br />
若通过-o选项来打包整个目录下的所有文件与子目录,常先利用find目录?print来找出所有文件与子目录的名称Q通过道“|”传给cpio打包?br />
B)不含子目录的打包:
ls /usr/lib|cpio -o?u0/temp1.cpio
?usr/lib目录下的文g(不含子目录下的文?打包成一个文件库?u0/temp1.cpio?br />
C)特定文g打包:
可利用文本搜索命令grep与管道配合,可以排除或选择特定cd的文件传lcpio打包。如:ls /usr/lib/*.c|cpio -o?u0/temp1.cpio
或ls /usr/lib|grep ′.c$′|cpio -o?u0/temp1.cpio
意思均为找?usr/lib目录下以.cl尾的文件予以打包?br />
又如:ls /usr/lib|grep abcd|cpio -o?u0/temp1.cpio Q其意ؓ扑և/usr/lib目录下文件名中含有abcd字符的文件予以打包?br />
ls /usr/lib|grep -v abcd|cpio -o?u0/temp1.cpioQ其意ؓ扑և/usr/lib目录下文件名中不?abcd 字符的文件予以打包?v选项在grep命o中的意思是排除含有字符串的行列?br />
如此Q可充分利用Unix的管道和一些命令的强大功能来实现文件的打包?br />
2.压羃:
文g打包完成后,卛_用Unix中的compress命o(/usr/bin?压羃打包文g。对一般的文本文gQ压~率较高Q可?1%?br />
compress /u0/temp1.cpio则将文g?u0/temp1.cpio压羃?u0/temp1.cpio.Z(自动d.Zq删?u0/temp1.cpio )?br />
3.解压:
uncompress /u0/temp1.cpio.Z则自动还原ؓ/u0/temp1.cpio?br />
4.解包展开:
按原目录结构解包展开到当前所在目录下。若以相对\径打包的Q当解包展开Ӟ也是以相对\径存攑ֱ开的文件数?若以l对路径打包的,当解包展开Ӟ也是以绝对\径存攑ֱ开的文件数据。因此注意若为相对\径,应先q入相应的目录下再展开?br />
cd /u1
cpio -id?u0/tmp1.cpio则将/u0/temp1.cpio解压?u1?q里假设temp1.cpio以相对\径压~??br />
若加u选项Q如cpio -iud?u0/temp1.cpio则文件若存在被覆盖Q即强制覆盖?br />
cpio -id?u0/temp1.cpio *.c 则展开其中?.c文gQ类gDOSpȝ中的Pkzip软g中Pkunzip -d temp1.zip解包功能?br />
5.昄:
cpio -it?u0/temp1.cpio [*.c] 昄文g库内的文件名UͼcM于DOSpȝ中的Pkzip软g中Pkunzip -vbnm temp1.zip功能?br />
二、tar
1.文g或目录打?
tar -cvf /u0/temp2.tar /usr/lib
?usr/lib目录下的文g与子目录打包成一个文件库?u0/temp2.tar?br />
tar -cvf /u0/temp2.tar /usr/lib *.c *.f
?usr/lib目录下的*.c *.f{文?不含子目?打包?br />
注意:如果指定文g?.c *.f?.*Q则打包时均不含子目录。如果指定ؓ.?Q则含子目录?br />
2.压羃:
同上:compress /u0/temp2.tar压羃?u0/temp2.tar.Z
3.解压:
uncompress /u0/temp2.tar.Z则还原ؓ/u0/temp2.tar?br />
4.解包展开:
tar -xvf /u0/temp2.tar
若以相对路径打包的,解包Ӟ以相对\径存攑ֱ开的文件数?若以l对路径打包的,解包Ӟ以绝对\径存攑ֱ开的文件数据?br />
若指定展开的文件名Q须注意文g的目录\径?br />
5.昄:
tar -tvf /u0/temp2.tar 昄文g库内的文件名U。当指定文g名时Q亦L意文件的路径?br />
相对来说q两个命令各有优~点?br />
1)tar速度比cpio慢,且不能跨两份存储媒体,但文件格式几乎在所有的Unixpȝ中都能通用Q且使用ѝ?br />
2)cpio则由于可通过道功能Q得其打包时的文g选择、排除功能非常强Q且能跨多份媒体,q能备䆾Ҏ的系l文件?br />
另外Q压~命令compress比DOS下的Pkzip的压~率要低些。经试Q在一个目录下527个文本文件共15.7MBQ在Unix打包后用compress压羃Q大ؓ 2.1MB;相同的文件拷到DOSpȝ用Pkzip压羃Q则大小?.4MB?br />-----------------------
应用路径
/app/weblogic/bea/domains/epay/applications/efb
日志路径
/app/weblogic/bea/domains/epay/logs/efb
tail -f /app/weblogic/bea/domains/epay/logs/efb/info.log
cd /app/weblogic/bea/domains/epay
netstat -lnap|grep 7005
kill -9 q程?
nohup ./startWebLogic.sh &
~存目录
cd /app/weblogic/bea/domains/epay/servers/AdminServer/tmp/_WL_user