??xml version="1.0" encoding="utf-8" standalone="yes"?>
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.
# Controls IP packet forwarding
net.ipv4.ip_forward = 0
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0
# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0
# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1
#Performance tunning
net.ipv4.tcp_fin_timeout = 35
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_keepalive_intvl = 35
net.ipv4.ip_local_port_range = 1025 65535
net.ipv4.tcp_max_syn_backlog = 8192
net.core.netdev_max_backlog = 30000
# increase TCP max buffer size settable using setsockopt()
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
# increase Linux autotuning TCP buffer limit.
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
# Disable netfilter on bridges.
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
# Controls the default maxmimum size of a mesage queue
kernel.msgmnb = 65536
# Controls the maximum size of a message, in bytes
]]>
DISPLAYMANAGER_REMOTE_ACCESS="yes"
DISPLAYMANAGER_ROOT_LOGIN_REMOTE="yes"
4.重启xdm
# /etc/init.d/xdm restart
然后可以在Windows下安装XManager之类的Y件来q程控制SUSE linux了?br />
盘不够了,可以用下面办法添加个盘
1.打开VM。点d边的“edit virtul machine setting”Q然后点M面的"ADD..",然后d一个硬盘(以scsi为列Q,
2.启动虚拟机启动linuxQ打开l端Q用fdisk -l看看最下面是否有Disk /dev/sdb字样q且也有你在d盘时的大小Q如果已l添加上了,
3.执行fdisk /dev/sdb =》输入nq回车(输入m是帮助)(j)=》输入e回R=》输?Q数?Q回?》保持默认直接回?》保持默认直接回?》输入w回R?/p>
4.执行fdisk /dev/sdb =》输入nq回?》输入l(L的小?回R=》保持默认直接回?》保持默认直接回?》输入w回R?/p>
IZI间全部划分l了一个新分区 sda5
5.mkfs.ext3 /dev/sdb5
q没有格式化Q也没有挂蝲到目录上面去。接下来将它格式化成ext3
7.mount /dev/sdb5 /
挂蝲
8.vi /etc/fstab
d
/dev/sdb5
保存?/p>
注:(x)在linux下运行df查看盘信息Ӟ如果某磁盘作?#8220;/”根目录用了100%Ӟ用source insight是不能往d的硬盘里面保存数据的。办法就是在“/”下删点东西,?#8220;/”根目录留下点I间?/p>
q是因ؓ(f)windows下查看samba服务器磁盘信息的时候是查看?#8220;/”根目录磁盘信息。认为此|络盘是满的,所以source
insight和windows下其他应用程序不能写入此|络盘?br />
二、{UM够空间目录步?br />
1./toby目录下已l满?br />
2.新徏一个目录。将/toby目录中的内容拷到/toby2目录?br />
3.解除toby和原盘的持载关p(etc/fstab也要相应修改Q?br />
4.新建的大的盘挂蝲到toby目录下(etc/fstab也要相应修改Q?br />
5.toby2目录中的内容拷到toby下?br />
6.删掉toby2目录
三、查看某目录下文件夹大小排序
du -sk * | sort -n
出现bad interpreter:No such file or directory的原?br /> 是文件格式的问题。这个文件是在Windows下编写的。换行的方式与Unix不一P但是在VI下面如果不Set一下又完全看不出来?/p>
解决Ҏ(gu)Q?br /> 1、上传到l(f)inuxLq行
chmod +x back
./back
错误提示如下Q?br /> bash: ./back : bad interpreter:No such file or directory
2、错误分析:(x)
因ؓ(f)操作pȝ是windowsQ在windows下编辑的脚本Q所以有可能有不可见字符?/p>
从你的脚本及(qing)报告的错误看? 很有可能是你的脚本文件是DOS格式? x一行的行尾以\r\n来标? 其ASCII码分别是0x0D, 0x0A.
可以有很多种办法看这个文件是DOS格式的还是UNIX格式? q是MAC格式?br />
Q?Q? vi filename
然后用命?br />
:set ff?
可以看到dos或unix的字? 如果的确是dos格式? 那么你可以用set ff=unix把它强制为unix格式? 然后存盘退? 再运行一遍看.
**********************************************************************
转换不同q_的文本文件格式可以用
1. unix2dos或dos2unixq两个小E序来做. 很简? 在djgpp中这两个E序的名字叫dtou和utod, u代表unix, d代表dos
2. 也可以用sed q样的工h?
sed 's/^M//' filename > tmp_filename
mv -f tmp_filename filename
来做
特别说明:^Mq不是按键shift + 6产生的^和字母M, 它是一个字W? 其ASCII?x0D, 生成它的办法是先按CTRL+V, 然后再回?或CTRL+M)
另外, 当SHELLE序报告command not found? LL查一下你的PATH里面有没有程序要用到的每一个命?没指定绝对\径的那种). 你这么小的程? 可以一行一行核?/p>
@import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
MAC地址为网卡的物理地址Q在Windowspȝ下非常容易修改,在linux模式下则有些复杂Q?我们看看VMware虚拟Z修改Linux MAC地址的方?/p>
Ҏ(gu)一Q?/p>
q个Ҏ(gu)最直接单有效,修改Linuxpȝ里相关rc.local文gMAC值即可?/p>
Ҏ(gu)二:(x)
修改虚拟机的*.vmx文g,q种Ҏ(gu)最值得推荐Q因样就cM于重?#8220;烧录”了VMware虚拟机的“物理|卡ROM”。方法是Q?/p>
分两U情况:(x)
W一U:(x)
ethernet0.addressType="static"
ethernet0.Address="00:50:56:0A:0B:0C"
"static"说明VM?物理|卡"的MAC是静态设定的Q你可以Ҏ(gu)一个以005056开头的另外一个MAC卛_。改完启动VM时如果问?SSID的话Q选择“KeepAlways”?/p>
W二U:(x)
ethernet0.addressType="generated"
uuid.location="564ddcf1ffaa75ea-f1b9ee0d689c655c"
uuid.bios="564ded23138c9691-7c68b2098baabbcc"
ethernet0.generatedAddress="00:0c:29:aa:bb:cc"
"generated"说明VM?物理|卡"的MAC是系l随机动态设定的Q你可以通过uuid.bios后六位及(qing) ethernet0.generatedAddress后六位改成你惌Ҏ(gu)的以000c29开头的MAC卛_?/p>
Ҏ(gu)三:(x)
修改Linuxpȝ里相?etc/sysconfig/network-scripts/ifcfg-eth0文gMAC?
vi/etc/sysconfig/network-scripts/ifcfg-eth0
MACADDR=xx:xx:xx:xx:xx:xx
:wq保存退?/p>
reboot
以上为VMware虚拟Z修改Linux MAC地址的三U方法,非常单易行?/p>
@import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
不能免俗Q简单说介绍下VNC吧?/p>
VNCQ全UCؓ(f)Virtual Network ComputingQ是一个桌面共享系l。它的功能,cM于windows中的q程桌面功能。VNC使用了RFB(Remote FrameBufferQ远E~冲Q协议来实现q程控制另外一台计机。它把键盘、鼠标动作发送到q程计算机,q把q程计算机的屏幕发回到本地?nbsp;
VNC技术与q_无关QVNC Viewer可以和VNC Server在不同的操作pȝ上。VNC几乎支持所有的操作pȝQ也支持JavaQ甚臛_以通过支持Java的浏览器来访问VNC Server。多个VNC客户端可以同时连接到一个VNC Server上?/p>
在centos5下安装配|VNC
1.(g)查VNC客户端和服务器端是否已经安装
rpm -q vnc vnc-server
如果q回cM如下信息Q?/p>
package vnc is not installed
vnc-server-4.0-8.1
则说明系l已l默认安装了vnc服务器端Q一般来_(d)pȝ都默认安装了vnc serverQ?br /> 假如服务器未被安装,L(fng)q个指o(h)来安装它Qyum install vnc-serve执行如下命o(h)Q?/span>
2. 用户名加入到配|文件中
使用如下命o(h)~辑配置文gQ添加帐户信息:(x)
vi /etc/sysconfig/vncservers
做如下修改(U色部分为添加的部分Q:(x)
#
# Uncomment the line below to start a VNC server on display :1
# as my 'myusername' (adjust this to your own). You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see
# <URL:http://www.uk.research.att.com/vnc/sshvnc.html>.
# VNCSERVERS="1:myusername"
# VNCSERVERS="1:gavin 2:john" # use the method for more user
VNCSERVERS="2:root"
# VNCSERVERARGS[1]="-geometry 800x600"
VNCSERVERARGS[2]="-geometry 1024x768"
3.讄 root用户的密?/p>
使用如下命o(h)讄密码Q?/p>
vncpasswd
当提CVerifyӞ再次输入密码认?/p>
4.启动VNC服务
使用如下命o(h)启动VNC SERVER
sbin/service vncserver start
当显C如下信息时Q表C启动成功:(x)
Starting VNC server: 2:root [ OK ]
5.修改VNC SERVER的窗口管理器
vnc server默认使用的窗口管理器是twnQ这是一个非常简单的H口理器,我们可以Ҏ(gu)常用的GNOME或者KDE?/p>
先用如下命令进入用L(fng)home目录Q?/p>
cd ~/.vnc
~辑启动:(x)
vi xstartup
按照如下方式修改启动:(x)
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
gnome-session & #以GNOME作ؓ(f)VNC的窗口管理器
#startkde & #kde desktop
#twm & #注掉pȝ默认的窗口管理器
6.重启VNC SERVER
/sbin/service vncserver restart
当系l提C如下信息时Q表C重启成功:(x)
Shutting down VNC server: 2:root [ OK ]
Starting VNC server: 2:root [ OK ]
windowsd到VNC SERVER
1.从IEd
直接从IE览器中输入如下地址Q?/p>
输入密码卛_使用?/p>
2.从VNC viewd
@import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);在windows上安装vnc viewQ然后输入xxx.xxx.xxx.xxx:2Q连接登录,输入密码卛_?/p>
备注Q如果从vnc viewdӞ提示connection refused(10061)Q则是因为linux防火墙的问题Q登录centospȝQ选择System-->Preferences-->Remote DesktopQ勾选sharing中的两项QSecurity两项不勾Q点d闭,然后再重新用vnc viewd卛_?/p>
在用CentOS pȝӞ安装的时候可能你?x)遇到英文的CentOSpȝQ在q中情况下安装CentOSpȝ时是默认安装Q即英文Q。安装完毕后Q上|出现的却是中文q?/strong>
解决Ҏ(gu)Q?/strong>
到CentOs资源|站上去找fonts-chinese-3.02-12.el5.noarch.rpmQ中文字体包Q?和fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm Q字体显C包Q?/p>
ftp://ftp.muug.mb.ca/mirror/centos/5.5/os/i386/CentOS/fonts-chinese-3.02-12.el5.noarch.rpm
ftp://ftp.muug.mb.ca/mirror/centos/5.5/os/i386/CentOS/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm
若你的是其它版本的,请 ftp://ftp.muug.mb.ca/mirror/centos/q下面找吧?/p>
下蝲后,在命令行安装Q?/span>
2011 q?3 ?8 ?星期一 20:17:00 CST
wget http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz
wget http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz
wget http://pecl.php.net/get/memcache-2.2.5.tgz
二:(x)
1、先安装libevent
tar zxvf libevent-1.4.13-stable.tar.gz
cd libevent-1.4.13-stable
./configure -prefix=/usr
make
make install
2、测试libevent是否安装成功
ls -al /usr/lib | grep libevent
libevent-1.1a.so.1
libevent-1.1a.so.1.0.2
libevent-1.4.so.2
libevent-1.4.so.2.1.3
libevent.a
libevent_core-1.4.so.2
libevent_core-1.4.so.2.1.3
libevent_core.a
libevent_core.la
libevent_core.so
libevent_extra-1.4.so.2
libevent_extra-1.4.so.2.1.3
libevent_extra.a
libevent_extra.la
libevent_extra.so
libevent.la
libevent.so
版本不同Q可能文件列表不同?/p>
3、安装memcachedQ同旉要安装中指定libevent的安装位|?/p>
tar zxvf memcached-1.4.4.tar.gz
cd memcached-1.4.4
./configure --with-libevent=/usr
make && make install
安装完成后会(x)把memcached 自动攑ֈ /usr/local/bin/memcached
4、测试是否成功安装memcached
ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root root 201869 12-14 21:44 /usr/local/bin/memcached
5、安装Memcache的PHP扩展
①安装PHP的memcache扩展
tar vxzf memcache-2.2.5.tgz
cd memcache-2.2.5
/usr/local/webserver/php/bin/phpize
./configure –enable-memcache –with-php-config=/usr/local/webserver/php/bin/php-config –with-zlib-dir
make
make install
②上述安装完后?x)有cMq样的提C:(x)
Installing shared extensions: /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/
③把php.ini中的extension_dir = “./”修改?/p>
extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/”
④d一行来载入memcache扩展Qextension=memcache.so
三、memcached的基本设|?1.启动Memcache的服务器端:(x)
memcached -d -m 10 -u root -l 202.207.177.177 -p 11211 -c 256 -P /tmp/memcached.pid
参数说明Q?/p>
-d选项是启动一个守护进E,
-m是分配给Memcache使用的内存数量,单位是MBQ我q里?0MBQ?br />
-u是运行Memcache的用P我这里是rootQ?br />
-l是监听的服务器IP地址Q如果有多个地址的话Q我q里指定了服务器的IP地址202.207.177.177Q?br />
-p是设|Memcache监听的端口,我这里设|了11211Q最好是1024以上的端口,
-c选项是最大运行的q发q接敎ͼ默认?024Q我q里讄?56Q按照你服务器的负蝲量来讑֮Q?br />
-P是设|保存Memcache的pid文gQ我q里是保存在 /tmp/memcached.pidQ?/p>
2.如果要结束Memcacheq程Q执行:(x)
kill `cat /tmp/memcached.pid`
也可以启动多个守护进E,不过端口不能重复?/p>
3.(g)查Memcached是否启动
netstat -ant
tcp 0 0 202.207.177.177:11211 0.0.0.0:* LIST
11211端口已经打开Q说明Memcached已正常启动?/p>
java version "1.6.0"
OpenJDK Runtime Environment (build 1.6.0-b09)
OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)
最好还是先卸蝲掉openjdk,在安装sun公司的jdk.
先查?rpm -qa | grep java
昄如下信息Q?/font>
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
卸蝲Q?/font>
rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
q有一些其他的命o(h)
rpm -qa | grep gcj
rpm -qa | grep jdk
如果出现找不到openjdk source的话Q那么还可以q样卸蝲
yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
键入命o(h)q接FTP服务器:(x)
ftp> open home4u.at.china.com Q回车)(j)
E等片刻Q屏q提C接成功:(x)
ftp> connected to home4u.china.com
接下来服务器询问用户名和口o(h)Q分别输入yepanghuang和abc123Q待认证通过卛_?/p>
上传文gQ比如要把a:\index.html传至服务器的根目录中Q可以键入:(x)
ftp> put a:\index.html Q回车)(j)
当屏q提CZ已经传输完毕Q可以键入相兛_令查看:(x)
ftp> dir Q回车)(j)
下蝲Q假设要把服务器\images目录中的所?jpg文g传至本机中,可以输入指o(h)Q?/p>
ftp> cd imagesQ回车)(j) [注:(x)q入\images目录]
ftp> mget *.jpg
上传与下载工作完毕,键入bye中断q接?/p>
ftp> byeQ回车)(j)
ȝ一下常用的FTP命o(h)Q?/p>
1. openQ与服务器相q接Q?/p>
2. send(put)Q上传文Ӟ
3. getQ下载文Ӟ
4. mgetQ下载多个文Ӟ
5. cdQ切换目录;
6. dirQ查看当前目录下的文Ӟ
7. delQ删除文Ӟ
8. byeQ中断与服务器的q接?/p>
如果想了解更多,可以键入
ftp> help Q回车)(j)
查看命o(h)集:(x)
ascii: 讑֮以ASCII方式传送文?~省?
bell: 每完成一ơ文件传?报警提示
binary: 讑֮以二q制方式传送文?/p>
bye: l止LFTPq程,q出FTP理方式
case: 当ؓ(f)ON?用MGET命o(h)拯的文件名到本地机器中,全部转换为小写字?/p>
cd: 同UNIX的CD命o(h)
cdup: q回上一U目?/p>
chmod: 改变q端L的文件权?/p>
close: l止q端的FTPq程,q回到FTP命o(h)状?所有的宏定义都被删?/p>
delete: 删除q端L中的文g
dir [remote-directory] [local-file]: 列出当前q端L目录中的文g.如果有本地文?将l果写至本地文g
get [remote-file] [local-file]: 从远端主Z传送至本地L?/p>
help [command]: 输出命o(h)的解?/p>
lcd: 改变当前本地L的工作目?如果~省,p{到当前用L(fng)HOME目录
ls [remote-directory] [local-file]: 同DIR
macdef: 定义宏命?/p>
mdelete [remote-files]: 删除一Ҏ(gu)?/p>
mget [remote-files]: 从远端主机接收一Ҏ(gu)件至本地L
mkdir directory-name: 在远端主Z建立目录
mput local-files: 本CZ一Ҏ(gu)件传送至q端L
open host [port]: 重新建立一个新的连?/p>
prompt: 交互提示模式
put local-file [remote-file]: 本C个文件传送至q端L?/p>
pwd: 列出当前q端L目录
quit: 同BYE
recv remote-file [local-file]: 同GET
rename [from] [to]: 改变q端L中的文g?/p>
rmdir directory-name: 删除q端L中的目录
send local-file [remote-file]: 同PUT
status: 昄当前FTP的状?/p>
system: 昄q端Lpȝcd
我用的是VMware版本?5.5.3Qhost机器q行的是windows Xp professional ?/p>
1、安装VMware workstation
2、安装guestpȝQ这里我安装的Red Hat Linux9Q安装过E中保|络q接选择的是NAT方式Q当然可以在安装完后q行修改?/p>
3、到windows XP 中,查看所有的|络q接Q你应该发现除了原有的网卡之外,又多了Vmnet1和Vmnet8。vmnet1是hostonly的接口,而Vmnet8是就是我们要使用的NAT的网l接口?/p>
4、在winL上用ipconfig查看VMnet8的IP地址Q?br />一般是192.168.X.1/255.255.255.0,
此时VMnet8的设|应该是自动获取IPQ现在改成静态IPQƈ把此IP直接填入VMnet8里,不设|关?/p>
5、同时在VM|络讄Q点击Edit->Virtual Network SettingsQ里的NAT中查看VMnet8Q一般是192.168.X.2/255.255.255.0
q个地址是VMnet8QNAT的网?/p>
5Q?、别忘了Q点击VMware的右下角的网卡的图标,选择NAT: Used to share the host's IP address选项
6、现在在LINUX下把|卡IP讄成和VMnet8一个网D늚IPQ?92.168.X.Z/255.255.255.0)
7、网兌|成刚才查看的那个IP192.168.X.2卛_
8、DNS和你hostL的一样就可以?/p>
9、设|完成后Q重新启动linux的网l服务?/p>
10、测试一?
ping |关Qping 192.168.X.2
ping DNSQping 你的DNS?/p>
如果能ping通就ok?/p>
二、编写sql脚本
三、编写sh脚本
此脚本需注意必段D导入path变量才行Qmysqlq接-u-p后面跟的值无需I格才行?br />四、启动crontab
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
cron服务提供crontab命o(h)来设定cron服务的,以下是这个命令的一些参C说明Q?br />
crontab -u //讑֮某个用户的cron服务Q一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详l内?/font>
crontab -r //删除没个用户的cron服务
crontab -e //~辑某个用户的cron服务
q个格式的前一部分是对旉的设定,后面一部分是要执行的命令,如果要执行的命o(h)太多Q可以把q些命o(h)写到一个脚本里面,然后在这里直接调用这个脚本就可以了,调用的时候记得写出命令的完整路径。时间的讑֮我们有一定的U定Q前面五?号代表五个数字,数字的取D围和含义如下Q?/font>
分钟 Q?-59Q?/font>
時 Q?-23Q?/font>
日期 Q?-31Q?/font>
月䆾 Q?-12Q?/font>
星期 Q?-6Q?/0代表星期?/font>
除了数字q有几个个特D的W号是"*"?/"?-"?,"Q?代表所有的取D围内的数字,"/"代表每的意?"*/5"表示?个单位,"-"代表从某个数字到某个数字,","分开几个L的数?/font>
2. ls | grep ^集团产品托收?| wc -l 获取某个目录下的文gL
3.试存储q程代码
DECLARE
iocur sys_refcursor;
BEGIN
zs_sdaddprod('200910','1027',iocur);
END;
4.解压命o(h)
tar -cvf /tmp/etc.tar /etc 后面是打包目?br />
tar -xvf qpopper4.0.5.tar.gz
compress
uncompress
unzip
zip
5.locale查看当前pȝ所用编?/font>
6.修改linixpȝ的编?br /> Ҏ(gu)1Q?/font>
vi /etc/sysconfig/i18n
LANG="zh_CN.GBK"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh"
SYSFONT="latarcyrheb-sun16"
Ҏ(gu)2Q?br /> vi /etc/profile
export LC_ALL="zh_CN.GBK"
export LANG="zh_CN.GBK
7.在linux里,如果要想使ping 没反应也是用来忽略icmp包。可以用Q?br />
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
若想恢复qQ?
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
8.备䆾某用户下一些表
exp "cmp file=/datafile/cmp/ly/data/zs.dmp log=/home/frnt/xiongwei/zstable.log tables=( \
ZS_AGENT_NUMBER, \
ZS_JIFEN_DETAIL)"
9.load数据Ҏ(gu)步骤
http://linux.chinaunix.net/techdoc/database/2009/05/12/1111844.shtml
上面url用来制作ctl文g
sqlldr cmp control=controlfile.ctl data=data_201004.txt errors = 5000000
10.sz命o(h)
secureCRT在linux上面的sz,rz命o(h)与ssh的配?讄一下上传和下蝲的默认目录就?br />
options–>session options–>file transfer 下可以设|上传和下蝲的目?br />
剩下的你只要在用SecureCRT登陆linuxl端的时候:(x)
发送文件到客户端:(x)sz filename
zmodem接收可以自行启动.
从客L(fng)上传文g到l(f)inux服务端:(x)
只要服务端执?: rz
然后?SecureCRT 里选文件发?协议 zmodem
单吧Q如果你以前一直用sshQ而又没有对外开放ftp服务Q你q接用这U方式来传输你的文g
11.以下是从javaeye上面拿到l(f)inix命o(h)。有几个很有?br />
sudo !!
?root 帐户执行上一条命令?/p>
python -m SimpleHTTPServer
利用 Python 搭徏一个简单的 Web 服务器,可通过 http://$HOSTNAME:8000 讉K?
:w !sudo tee %
?Vim 中无需权限保存~辑的文件?/p>
cd -
更改C一ơ访问的目录?/p>
^foo^bar
上一条命令中?foo 替换?barQƈ执行?/p>
cp filename{,.bak}
快速备份或复制文g?/p>
mtr google.com
traceroute + ping?/p>
!whatever:p
搜烦(ch)命o(h)历史Q但不执行?/p>
$ssh-copy-id user@host
?ssh keys 复制?user@host 以启用无密码 SSH d?/p>
ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq /tmp/out.mpg
?Linux 桌面录制频?br />
12.修改linix下时?br />
在命令行输入:
date
昄当前旉 Wed Jul 29 11:05:11 CST 2009
date -s
按字W串方式修改旉
可以只修Ҏ(gu)?不修Ҏ(gu)?输入: date -s 2009-07-28
只修Ҏ(gu)?输入:date -s 15:32:00
同时修改日期旉,注意要加双引?日期与时间之间有一I格,
输入:date -s "2009-07-28 15:32:00"
修改完后,记得输入:clock -w
把系l时间写入CMOS
当然可以了,你用vi~辑一个文件的时候,输入如下命o(h)Q?: set nu CQ这个冒号不能丢Q? 取消行号执行下面的命令:(x) : set nonu q是q个冒号是不能丢?/pre>
15.vi中查找某个字W串
/place Enter
如果 vi 扑ֈ?nbsp; placeQ它?yu)把光标定位?nbsp; p 处。要搜烦(ch) place 的其他匹配,h n ?nbsp; NQ?nbsp;
nQl朝同一方向搜烦(ch) place?nbsp;
NQ反方向q行搜烦(ch)?nbsp;
如果 vi 未找到指定的 patternQ光标位|将不变Q屏q底部显CZ下消息:(x)
Pattern: 未找?nbsp;
如果 vi 扑ֈ?nbsp; placeQ它?yu)把光标定位?nbsp; p 处。要搜烦(ch) place 的其他匹配,h n ?nbsp; NQ?nbsp;
nQl朝同一方向搜烦(ch) place?nbsp;
NQ反方向q行搜烦(ch)?nbsp;
#!/bin/bash
CLASSPATH=/root/java/javalib/sms.jar:/root/java/javalib/oracle9.2i.jar:/root/java/javalib/activation.jar:/root/java/javalib/mail.jar:/root/java/javalib/log4j-1.2.8.jar:/root/java/javalib/joda-time-1.0.jar:/root/java/javalib/commons-logging-1.0.4.jar:/root/java/javalib/axis-ant.jar:/root/java/javalib/axis.jar:/root/java/javalib/commons-discovery-0.2.jar:/root/java/javalib/jaxrpc.jar:/root/java/javalib/saaj.jar:/root/java/javalib/ant.jar:/root/java/javalib/xmlsec-1.2.1.jar:/root/java/javalib/wsdl4j-1.5.1.jar:/root/java/javalib/commons-collections-3.1.jar:/root/java/javalib/commons-dbcp-1.2.1.jar:/root/java/javalib/commons-pool-1.2.jar:/root/java/javalib/unittest.jar:/root/java/javalib/asrt.jar:/root/java/javalib/junit.jar
java -cp "$CLASSPATH" cn.com.sendSms > console.log & echo $! > sendSms.pid &
stop.sh文g:
#!/bin/bash
cat sendSms.pid | xargs kill -9
q行sh stop.sh卛_
cd /home/esms/gateway/DBRouter2
sh start.sh
sleep 2
cd /home/esms/gateway/DBServer2
sh start.sh
sleep 2
一、团队构建环境,文gd׃n
目代码位于/svn/prj下,通过svn up更新代码Q调用ant来编译、部|Ӏ那么,prjq个目录Q对于每个h都是需要可d的?br />我们知道Q用什么用L(fng)录,新创建的文g宿主Q就是当前用戗而默认的文g权限?44Q?rw-r--r--Q,张三从代码仓库中update的文Ӟ或者编译后生成的class文gQ李四是没法删除的。执行ant clear必然不成功,每次都用chmodM改相应文ӞM是个事,那怎么办呢Q?br /> 目标很明:(x)我们希望Q开发团队中Q每一个开发h员之间的权限是^{的Q谁新徏的文仉可以被其他hd?br /> 分解出来是两个事情:(x)
1.目录/svn/prj应该属于开发团队,即一个用L(fng)。这很简单,建立一个组Q比如叫dev,使用chown卛_
#gruopadd dev
#useradd zhangshan
#useradd lisi
#useradd zhangsan -G dev -g dev
#useradd lisi -G dev -g dev
#chown -R :dev /svn/prj
q里要特别说明一下,-g?G是有区别的?G是大家自然理解的Q把一个用户加C个组或者多个组Q逗号分隔Q里面去?g呢,则是
讄用户的gid。也是用户登陆后初始group(initial group)?br /> 使用id zhangsan命o(h)Q可以看刎ͼuid=zhangsantest,gid=dev,groups=zhangsan,dev。或者用groups zhangsanQ结果是zhangsan dev
要注意,创徏一个用P默认?x)创Z个同名的l,如果不加-g参数Qgid是那个l的idQ新建文Ӟl属也是用户同名l。所以在q里Q?g?G都是~Z不可的。 ?
2.更改文g创徏的默认权限ؓ(f)664Q?rw-rw-r--Q?/p>
q里涉及(qing)C个知识,是umaskQumask主要用来控制默认创徏文g或目录的权限。可以用umask命o(h)直接修改。在我们的linux环境中,默认的umask?22?br />umaskQ设|哪位ؓ(f)1Q则哪位没有权限。放开哪位Q哪位有权限。但文g例外Q最高到666Q默认没有执行权限)(j)。目录则可以?77
比如讄umask?22Q则目录最高可以到755Qumask?02Q则最高目录可以到775
解决思\Q每个用L(fng)录都?x)执行一些初始化脚本Q可以在脚本中修改用L(fng)umask?br />脚本片段如下Q ?
USERGROUP=`/usr/bin/id -Gn $USER`
echo $USERGROUP | grep -q dev
if [ $? -eq 0 ]; then
umask 0002
fi
意思很单,q里不赘q。要注意的是QLinux中,应该攑֜/etc/bashrc里面Q而不?etc/profile中?br />dshell配置文g执行序
/etc/profile-->/etc/profile.d/*.sh-->~/.bash_profile-->~/.bashrc-->/etc/bashrc
我们应该把这个设|放在最后执行的文g/etc/bashrc的末位|,以防止设|被覆盖Q实际上Qlinux?etc/bashrc文g开头就有一D늱似的umask讄Q?br /> 要说明一点:(x)控制用户Ҏ(gu)个目录的默认d权限Q是没有直接支持的。在实际中,暂时也没必要Q如果真有特D需要,可以通过crontab讄监控q程定时q行修改Q也很简单,在此不做说明?/p>
二、普通用L(fng)Ҏ(gu)w䆾
OKQ在W一部分中,我们解决了多人文件共享读写,该运行服务器了。不是tomcat吗,startup一下。事情没惌那么单,Tomcatq行q程中,?x)写日志文gQ一开始,单的把logs目录l属划分ldevQ但后来陆箋又遇Cpd不同的权限问题。于是反思一下:(x)与其一点点修改q行Tomcat涉及(qing)的那么多文g权限Q不如把自己w䆾临时换一下?q就是我们要说的sudo?br /> sudo命o(h)是sudoer用来执行root操作的。sudoer配置Q通过visudo来编辑?br />visudo实际上就是vi /etc/sudoers的包装版。但用这个命令的最大好处是Q它有语法检查?/p>
%dev ALL =NOPASSWORD: /usr/local/tomcat/bin/startup.sh
%dev ALL =NOPASSWORD: /usr/local/tomcat/bin/shutdown.sh
癑ֈ可C组Q如果是多个l,?dev,%dev2
ALL为所有主机。如果要指定LQ可换成某个ip地址?br />NOPASSWORD表示不需要sudoer输入密码?br />最后ؓ(f)授权执行的命令全路径?br />sudoer的配|还有很多,比如可以讄别名{,误者自行学?fn)?br />执行Q组员只需要在原有命o(h)前面加上sudo 卛_?/p>
如此一来,Tomcat停启问题也解决了?br />补充Qsudo命o(h)通配W的讄Q如果某个目录下的所有命令都可以lsudoers开放,可以使用xxxx/*.shQ但q样一来,使用者必M用绝对\径执行。而在当前路径也不能?/xxx.sh。是何原因,待研I?br />三、sftp用户的umask讄
g万事大吉了。但有一天,发现q是有一些文件没有权限覆盖,Z么呢Q后来发现这部分文gQ都是用winscp上传的?br />解决办法Q?br />vi /etc/ssh/sshd_config文gQ找到SubSystem sftp /usr/libexec/openssh/sftp-serverq一行,修改?br />SubSystem sftp /usr/libexec/openssh/sftp-server.sh
然后vi /usr/libexec/openssh/sftp-server.sh
d
umask 0002
/usr/libexec/openssh/sftp-server
chmod 755 /usr/libexec/openssh/sftp-server.sh 卛_?br />当然Qumask 0002q行可以跟上面的{略一?br />变成
USERGROUP=`/usr/bin/id -Gn $USER`
echo $USERGROUP | grep -q developers
if [ $? -eq 0 ]; then
umask 0002
fi
四、NFS文g讄问题
A、B 两台服务器,A为NFS服务器,B为挂载服务器。开发中Q发现这个目录老是出现权限问题。但查看l属又没什么问题。甚是奇怪?br />具体事例Q?br />一个NFS的源路径Q比如是hostA:/shareQ该目录在hostA上的属于用户ldev,hostB mount了这个目录,看到该目录用L(fng)是一个组P比如105Q其实就是hostA上的dev用户l号。但q个l号Q在hostB上ƈ不存?hostB上也有一个devl?Q如何让hostB上的用户也能d该目录?最后,l于发现症结所在:(x)两边的组号不一_(d)而文件的拥有者和l属Q本质是认id不认name的。修改了哪边Q都?x)让另一Ҏ(gu)法写Q生了冲突?br />解决办法Q把两边的组号修改ؓ(f)一致?br />1.首先Q保证hostB上没?05L(fng)l,如果有,则需要协调一个两辚w不生冲H的l号Q可能需要修改两边的l号?br />2.l号定之后Q假?05pQ在hostB上执行:(x)groupmod –g 105 dev。变化可以通过/etc/group查看
3.重新讄改组涉及(qing)到的文g的组属?br />4.属于该组的用户需要重新登录,q样才会(x)生效?/p>
五、root用户的行为限?/p>
权限问题中,q有root的滥用。如果用root来编译部|Ԍroot产生的文Ӟdev用户又无权访问了。也是_(d)既然已经划分好了组构徏目录Q每个用户都应该是devl成员才寏Vroot用户应该只在授权或普通用h法解决的时候,再切换用?/p>
一、保证系l的grub没有被加密,如果被加密的话,臛_要知道grub的密?/font>
二、重启系l,q入下面的界面:(x)Q开机后Q如果没有设|grub密码Q那pȝ?x)自动到达这个界面,如果有则需要输入grub才能到达此界面)(j)
三、按一下“e”键Q进入下一界面Q如图:(x)
四、选择上图中的W二,再次按一下“e”键Q进入下一界面
五、如上图所C,在最后面d一个“空格”和?”,然后按一下“回车”键Q进入下一界面
六、在上图的界面中按一下“b”键Q系l将重新启动Q进入下一界面
七、在上图的界面中输入Q“passwd root”,接着输入两次root用户的新密码
八、输入:(x)rebootQ重启系l,d完成