- 1. Linux常用命令
- 2. 基本命令pwd 显示前工作目录
cd 改变目录
dir 列出文件和目录
ls 列出文件和目录
ls -a 显示隐藏文件
ls –l 显示长列表格式 相当于 ll 命令
ls –R 以树状结构列出文件
mkdir 建立目录
rmdir 删除空目录
- 3. 基本命令touch 建立空文件
cp 复制文件
cp –r 源目录 目标目录 复制目录
mv 移动文件和改文件名
rm 删除文件和目录
rm –rf * 删除所有内容 (包括目录和文件)r递归删除 f 强制删除
- 4. 基本命令ln 建立符号连接
ln –s 源 目录 软链接相当window的快捷方式
ln 源 目录 硬链接相当于复制一份文件
more 显示文件内容带分页
less显示文件内容带分页
cat 显示文件内容顺序 tac逆序显示内容
- 5. 基本命令head –n 从头显示文件n行内容
tail –n 从文件结尾开始倒序显示n行内容
tail –f 跟踪文件内容变化
find 文件查找命令
find 目标目录 查找表达式
find / -name my*
whereis 命令从哪来及帮助文档
- 6. find详解find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部份为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression�
expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。
-mount, -xdev : 只检查和指定目录在同一个档案系统下的档案,避免列出其它档案系统中的档案
-amin n : 在过去 n 分钟内被读取过
-anewer file : 比档案 file 更晚被读取过的档案
-atime n : 在过去 n 天过读取过的档案
-cmin n : 在过去 n 分钟内被修改过
-cnewer file :比档案 file 更新的档案
-ctime n : 在过去 n 天过修改过的档案
-empty : 空的档案-gid n or -group name : gid 是 n 或是 group 名称是 name
- 7. -ipath p, -path p : 路径名称符合 p 的档案,ipath 会忽略大小写
-name name, -iname name : 档案名称符合 name 的档案。iname 会忽略大小写
-size n : 档案大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。-type c : 档案类型是 c 的档案。
例子:
将目前目录及其子目录下所有延伸档名是 c 的档案列出来。
# find . -name "*.c"
将目前目录其其下子目录中所有一般档案列出
# find . -ftype f
将目前目录及其子目录下所有最近 20 分钟内更新过的档案列出
# find . -ctime -20
- 8. users and groupsuseradd adduser 添加用户 可以在/etc/passwd 如果不指定用户组给新建一个和用户名一样的组名
useradd username –g groupname
passwd 用户名 修改用户密码 不加用户名则是修改当前用户密码
usermod 修改用户命令
userdel username 删除用户 –r 把用户的主目录也删除
- 9. users and groupssu 切换用户
groupadd 增加用户组
groupdel 删除用户组
- 10. 文件权限文件权限类型
r 读文件
w 写文件
x 执行
- 没有
- 11. 文件权限文件所有者权限其他用户权限同组用户权限列显示链接数,包括目录所有者和组所有者文件大小显示日期文件名
- 12. 文件权限chmod 改变文件权限
chmod [ugoa][+,-,=][rwx-] 文件名
chmod 三位八进制数 文件名 常用111 110 110111 100 100111 100 000
- 13. 文件权限chown 用户名 文件名 改变文件所有者
grep 在制定的文本中查找相应的文本内容
wc 统计指定文本文件的行数,字数,字符数
- 14. 系统信息显示命令命令date显示和设置日期stat显示指定文件的相关信息who、w显示在线登录用户whoami显示用户自己的身份hostname显示主机名称uname显示操作系统信息dmesg显示系统启动信息du显示指定的文件已使用的磁盘空间的总量
- 15. 系统信息显示命令命令df显示文件系统磁盘空间的使用情况free显示当前内存和交换空间的使用情况fdisk -l显示磁盘信息local显示当前语言环境top常用的性能分析工具ps显示系统进程env显示系统变量等信息
- 16. 管道命令管道:将一个命令的输出传送给令一个命令,作为另一个命令的输入
使用方法:
命令1|命令2|命令3|…|命令n
使用举例
ls –l |grep java
ps aux |grep tomcat
- 17. 重定向输出重定向
>
>> 追加
输入重定向
<
<<
- 18. 压缩、解压缩gzip 解压.gz结尾的文件名
gzip –c 文件名 > 压缩文件名
tar 解压.tar ,.tar.gz
tar -cf archive.tar foo bar # Create archive.tar from files foo and bar.
tar -tvf archive.tar # List all files in archive.tar verbosely.
tar -xf archive.tar # Extract all files from archive.tar.
uzip 解压.zip结尾
uzip 文件名
- 19. 修改linux的启动进入命令行模式运行级别
为停机,机器关闭。
1 为单用户模式,就像Win9x下的安全模式类似。
2 为多用户模式,但是没有NFS支持。
3 为完整的多用户模式,是标准的运行级。
4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置。
5 就是X11,进到X Window系统了。
6 为重启,运行init 6机器就会重启。
常用的级别是:XWindow是init5,字符是init3。将id设置为runlevel设置为3,就可以直接在系统初始化的时候直接进入文本界面。
id:3:initdefault: 修改这一行的数字就能修改运行级别
- 20. 网络修改IP
第一种方法
运行setup命令设置IP
使用/etc/rc.d/init.d/network restart 使用作用生效
第二种
ifconfig eth0
第三种方法
修改/etc/sysconfig/network-scripts/ifcfg-eth0文件
使用/etc/rc.d/init.d/network restart 使用作用生效
- 21. 网络netstat 查看端口使用情况
netstat –antpl
命令行上网 wget 网址
ftp 传输文件
telnet 登录到远程计算机上
netstat 查看网络的状况
nslookup 查询域名和IP地址的对应
finger 查询某个使用者的信息
ping 查询某个机器是否在工作
- 22. rpmrpm是redhat公司推出的软件包安装格式,类型linux的setup程序
安装软件:rpm –ivh 文件名
查看软件:rpm –qa |grep 软件包关键字
删除软件:rpm –e 软件包名
删除注意事项:
1、应按照rpm -qa | grep 软件包名 查询出来的相关包顺序从下往上逐个删除。
如果出现包依赖,使用 --nodeps参数强制删除。
如果出现多个匹配,使用 --allmatches 全部删除
- 23. scp的使用 服务器之间的文件复制linux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录;
scp [可选参数] file_source file_target
从 本地 复制到 远程
scp local_file remote_username@remote_ip:remote_folder
scp local_file remote_username@remote_ip:remote_file
scp local_file remote_ip:remote_folder
scp local_file remote_ip:remote_file
第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
- 24. scp的使用 服务器之间的文件复制
scp -r local_folder remote_username@remote_ip:remote_folder
scp -r local_folder remote_ip:remote_folder
第1个指定了用户名,命令执行后需要再输入密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;
scp -r /home/space/music/ root@192.168.2.168:/home/root/others/
scp -r /home/space/music/ 192.168.2.168:/home/root/others/
上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录
- 25. scp的使用 服务器之间的文件复制从 远程 复制到 本地,只要将 从 本地 复制到 远程 的命令 的 后2个参数 调换顺序 即可;
例如:
scp root@192.168.2.169:/home/root/others/music /home/space/music/1.mp3
scp -r 192.168.2.169:/home/root/others/ /home/space/music/
- 26. 任务调度的使用crontabCrontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序
使用cron服务,用 service crond status 查看 cron服务状态,如果没有启动则 service crond start启动它,
cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务:
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
- 27. 任务调度的使用crontab命令格式
* * * * * *
分钟 小时 日期 月份 星期 命令名称
取值范围:
M: 分钟(0-59)。
H:小时(0-23)。
D:天(1-31)。
m: 月份(1-12;或英文缩写Jan、Feb等)。
d:(0-6,0为周日或单词缩写Sun、Mon等)
- 28. crontab例子12 3 * * * tar czf /usr/local/backups/daily/etc.tar.gz /etc >> /dev/null 2>&1
每天的凌晨3点12分(03:12)运行
30 15 13 6 1 * tar
如果你想以用户joey的身份每小时的第15分钟运行某个程序,可以使用:
15 * * * * joey /usr/bin/somecommand >> /dev/null 2>&1
其中的星号(*)是通配符,表示cron将忽略这个字段。
如果你想每两小时就运行某个程序,可以在小时字段里使用 */2。
它将会在2点,4点,6点……22点,24点运行。
具体语句如下:
0 */2 * * * joey /usr/bin/somecommand >> /dev/null 2>&1cron
- 29. crontab例子语句中还可以使用逗号(,)来指定多个时间。
例如你想在每小时的15分和30分运行某个程序,可以在分钟字段使用
15,30:15,30 * * * * joey /usr/bin/somecommand >> /dev/null 2>&1
如果你想在每月的第一周(即1号到7号)每天的指定时间运行某个程序,可以在日期字段使用 1-7:
15,30 */2 1-7 * * joey /usr/bin/somecommand >> /dev/null 2>&1
这条语句将在每月的第1-7日每两小时的15分和30分(02:15,02:30……22: 15,22:30等)运行 /usr/bin/somecommand 命令。
如果你想在每天的16:18执行一个脚本集合,可以把所有要执行的脚本放到一个目录中(如 /home/username/cron),可以使用:
18 16 * * * root run-parts /home/username/cron >> /dev/null 2>&1
如果你想保存某个程序的输出结果, 可以把 >> /dev/null 2>&1 替换为 >> /home/user/somecommand.log 2>&1 。
- 30. 关机和重启命令1. shutdown
执行shutdown命令时,系统会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录系统。使用shutdown命令可以直接关闭系统,也可以延迟指定的时间再关闭系统,还可以重新启动。延迟指定的时间再关闭系统,可以让用户有时间储存当前正在处理的文件和关闭已经打开的程序。
shutdown命令的部分参数如下:
[-t] 指定在多长时间之后关闭系统
[-r] 重启系统
[-k] 并不真正关机,只是给每个登录用户发送警告信号
[-h] 关闭系统(halt)
shutdown命令的工作实质是给init程序发送信号(signal),要求其切换系统的运行级别(Runlevel)
- 31. 关机和重启命令2. halt
halt是最简单的关机命令,其实际上是调用shutdown -h命令。halt执行时,杀死应用进程,文件系统写操作完成后就会停止内核。
halt命令的部分参数如下:
[-f] 没有调用shutdown而强制关机或重启
[-i] 关机或重新启动之前,关掉所有的网络接口
[-p] 关机时调用poweroff,此选项为缺省选项
3.reboot
reboot的工作过程与halt类似,其作用是重新启动,而halt是关机。其参数也与halt类似。
- 32. 获取帮助Linux 中的两个重要的信息来源是联机参考手册,或 man 页面和 whatis 工具。您可以用 whatis 命令来访问一个不熟悉的命令的 man 页面。
$ whatis echo
要了解关于这个命令的更多信息,可以使用:
$ man echo
如果您不知道某个特殊任务所需的命令,您可以用 man -k (也称为 apropos)和一个主题来生成可能的命令。例如:
$ man -k files
一个很有用但常常被忽视的命令可以提供关于使用 man 本身的信息:
$ man man
您可以用 SPACEBAR 来浏览任意的 man 页面;UP ARROW 将向上翻滚文件。.要退出,则输入 q,!,或 CTRL-Z。
- 33. viLinux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令
vi的基本概念
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
1) 命令行模式command mode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
2) 插入模式(Insert mode)
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
- 34. vi3) 底行模式(last line mode)
将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)
a) 进入vi
在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面
$ vi myfile
不过要特别注意,进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。
- 35. vib) 切换至插入模式(Insert mode)编辑文件
在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
c) Insert 的切换
您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。
- 36. vid) 退出vi及保存文件
在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:
: w filename (输入 「w filename」将文章以指定的文件名filename保存)
: wq (输入「wq」,存盘并退出vi)
: q! (输入q!, 不存盘强制退出vi)
3、命令行模式(command mode)功能键
1). 插入模式
按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
2). 从插入模式切换为命令行模式
按「ESC」键。
- 37. vi移动光标
按「ctrl」+「b」:屏幕往“后”移动一页。
按「ctrl」+「f」:屏幕往“前”移动一页。
按「ctrl」+「u」:屏幕往“后”移动半页。
按「ctrl」+「d」:屏幕往“前”移动半页。
按数字「0」:移到文章的开头。
按「G」:移动到文章的最后。
按「$」:移动到光标所在行的“行尾”。
按「^」:移动到光标所在行的“行首”
按「w」:光标跳到下个字的开头
按「e」:光标跳到下个字的字尾
按「b」:光标回到上个字的开头
按「#l」:光标移到该行的第#个位置,如:5l,56l。
- 38. vi. 删除文字
「x」:每按一次,删除光标所在位置的“后面”一个字符。
「#x」:例如,「6x」表示删除光标所在位置的“后面”6个字符。
「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符。
「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符。
「dd」:删除光标所在行。
「#dd」:从光标所在行开始删除#行
- 39. vi复制
「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
「#yw」:复制#个字到缓冲区
「yy」:复制光标所在行到缓冲区。
「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
替换
「r」:替换光标所在处的字符。
「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
回复上一次操作
「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次回复。
- 40. 更改
「cw」:更改光标所在处的字到字尾处
「c#w」:例如,「c3w」表示更改3个字
9). 跳至指定的行
「ctrl」+「g」列出光标所在行的行号。
「#G」:例如,「15G」,表示移动光标至文章的第15行行首
- 41. vi查找 /xxx(?xxx) 表示在整篇文档中搜索匹配xxx的字符串, / 表示向下查找, ? 表示 向上查找.其中xxx可以是正规表达式,关于正规式就不多说了. 一般来说是区分大小写的, 要想不区分大小写, 那得先输入 *(#) 当光标停留在某个单词上时, 输入这条命令表示查找与该单词匹配的下(上)一个单词. 同样, 再输入 n 查找下一个匹配处, 输入 N 反方向查找. f(F)x 本命令表示在光标所在行进行查找, 查找光标右(左)方第一个x字符. 找到后: 输入 ; 表示继续往下找 输入 , 表示反方向查找
- 42. toptop命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方法。
top - 13:29:35 up 1 day, 4:16, 1 user, load average: 0.08, 0.02, 0.01
Tasks: 85 total, 1 running, 84 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 8170020k total, 1229760k used, 6940260k free, 66120k buffers
Swap: 8185108k total, 0k used, 8185108k free, 609188k cached
PID USER PR NI %CPU TIME+ %MEM VIRT RES SHR S COMMAND
3102 root 16 0 0 0:39.58 0.0 15316 2612 1284 S hald
1 root 16 0 0 0:00.88 0.0 4756 548 456 S init
2 root RT 0 0 0:00.03 0.0 0 0 0 S migration/0
3 root 34 19 0 0:00.00 0.0 0 0 0 S ksoftirqd/0
4 root RT 0 0 0:00.01 0.0 0 0 0 S migration/1
5 root 34 19 0 0:00.00 0.0 0 0 0 S ksoftirqd/1
- 43. 统计信息区
前五行是系统整体的统计信息。第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:
13:29:35 当前时间
up 1 day, 4:16系统运行时间,格式为时:分
1 user 当前登录用户数
load average: 0.08, 0.02, 0.01系统负载,即任务队列的平均长度。
三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。
- 44. cpu信息第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。内容如下:
Tasks: 29 total 进程总数
1 running 正在运行的进程数
28 sleeping 睡眠的进程数
0 stopped 停止的进程数
0 zombie 僵尸进程数
Cpu(s): 0.3% us 用户空间占用CPU百分比
1.0% sy 内核空间占用CPU百分比
0.0% ni 用户进程空间内改变过优先级的进程占用CPU百分比
98.7% id 空闲CPU百分比
0.0% wa 等待输入输出的CPU时间百分比
0.0% hi
0.0% si
最后两行为内存信息。内容如下:
- 45. 内存信息Mem: 191272k total 物理内存总量
173656k used 使用的物理内存总量
17616k free 空闲内存总量
22052k buffers 用作内核缓存的内存量
Swap: 192772k total 交换区总量
0k used 使用的交换区总量
192772k free 空闲交换区总量
123988k cached 缓冲的交换区总量。
内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,
该数值即为这些内容已存在于内存中的交换区的大小。
相应的内存再次被换出时可不必再对交换区写入。
- 46. jdk安装rpm安装
在shell终端下进入jdk-6u18-linux-i586.bin文件所在目录,执行命令 ./jdk-6u18-linux-i586.bin 这时会出现一段协议,连继敲回车,当询问是否同意的时候,输入yes,回车。之后会在当前目录下生成一个jdk-6u18目录,你可以将它复制到 任何一个目录下。
- 47. jdk环境变量配置1. PATH环境变量。作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把 jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好 PATH变量后,就可以在任何目录下执行javac/java等工具了。
2. CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。我们 需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。
3. JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。
- 48. jdk环境变量配置 1. 修改/etc/profile文件
如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题。
·用文本编辑器打开/etc/profile
·在profile文件末尾加入:
JAVA_HOME=/usr/share/jdk1.5.0_05(本机jdk安装路径)
PATH=$JAVA_HOME/bin:$PATH CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
- 49. jdk环境变量配置·重新登录
·说明
a. 你要将 /usr/share/jdk1.5.0_05jdk 改为你的jdk安装目录
b. linux下用冒号“:”来分隔路径
c. $PATH / $CLASSPATH / $JAVA_HOME 是用来引用原来的环境变量的值
在设置环境变量时特别要注意不能把原来的值给覆盖掉了,这是一种
常见的错误。
d. CLASSPATH中当前目录“.”不能丢,把当前目录丢掉也是常见的错误。
e. export是把这三个变量导出为全局变量。
f. 大小写必须严格区分。
- 50. 修改.bashrc文件
这种方法更为安全,它可以把使用这些环境变量的权限控制到用户级别,如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bashrc文件就可以了。
·用文本编辑器打开用户目录下的.bashrc文件
·在.bashrc文件末尾加入:
set JAVA_HOME=/usr/share/jdk1.5.0_05
export JAVA_HOME
set PATH=$JAVA_HOME/bin:$PATH
export PATH
set CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATH
- 51. 卸载jdk六. 卸载jdk
·找到jdk安装目录的_uninst子目录
·在shell终端执行命令./uninstall.sh即可卸载jdk。
- 52. tomcat配置下载tomcat.版本号.tar.gz文件
使用tar zxvf tomcat.版本号.tar.gz 解压到指定的目录
chmod –R 755 tomcat主目录 给执行脚本权限
启动: 进入tomcat主目录/bin目录下
sh startup.sh
停止: sh shutdown.sh
tomcat 开机启动
在/etc/rc.local中添加
JAVA_HOME=/usr/java/jdk1.6.0_14(本机安装目录)
export JAVA_HOME
sh /tomcat6/bin/startup.sh
- 53. 用cronolog分割tomcat的catalina.outtomcat 的catalina.out文件的不断扩大,导致系统磁盘空间边变小,而且管理也难于管理,所以想用一种工具来分割它。网上找了找用cronolog
安装过程如下:
1、下载(最新版本)
# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
2、解压缩
# tar zxvf cronolog-1.6.2.tar.gz
3、进入cronolog安装文件所在目录
# cd cronolog-1.6.2
4、运行安装
# ./configure
# make
# make install
- 54. 用cronolog分割tomcat的catalina.out5、查看cronolog安装后所在目录(验证安装是否成功)
# which cronolog
一般情况下显示为:/usr/local/sbin/cronolog
要想分割tomcat的catalina.out,需作如下工作:
修改tomcat bin目录下的catalina.sh文件中的
org.apache.catalina.startup.Bootstrap “$@” start \ >> “$CATALINA_BASE”/logs/catalina.out 2>&1 &
替换为
org.apache.catalina.startup.Bootstrap "$@" start \
|/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null 2>&1 &
同时,文件中有一行
touch “$CATALINA_BASE”/logs/catalina.out
可以注释掉,完成之后重起Tomcat就可以了,
看logs文件中是否有catalina2011-01-12.out样式的日志。
- 55. mysql源码方式安装1、首先使用 rpm -qa | grep mysql 查看系统是否已安装其他版本的MySQL
2、如果已安装其他版本的MySQL,使用 rpm -e 删除,应按照rpm -qa | grep mysql查询出来的相关包顺序从下往上逐个删除。
注意事项:
(1)、如果出现包依赖,使用 --nodeps参数强制删除。
(2)、如果出现多个匹配,使用 --allmatches 全部删除
- 56. 安装mysql shell> groupadd mysql
shell> useradd -g mysql mysql
shell> cd /usr/local
shell> tar -zxvf mysql-VERSION.tar.gz
mysql-VERSION.tar.gz 应为mysql源码包的全路径
shell> mv mysql-VERSION mysql
- 57. 安装mysqlshell> cd mysql
shell> ./configure --prefix=/usr/local/mysql --with-extra-charsets=all --with-charset=utf8 --with-plugins=all
shell> make
shell> make install
- 58. mysql configure 选项说明./configure --prefix=/opt/mysql --with-extra-charsets=all --enable-assember --enable-profiling --enable-community-features --enable-local-infile -with-charset=utf8 --with-collation=utf8_general_ci -enable-thread-safe-client --without-debug -with-berkeley-db -with-zlib-dir=bundled --with-plugins=all --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --with-unix-socket-path=/tmp/mysql.sock --with-big-tables --sysconfdir=/opt/etc/mysql
- 59. 重点参数说明:
--prefix= 指定安装路径
--with-charset=utf8 指定缺省字符集
--with-collation=utf8_general_ci 指定缺省排序方式
--with-extra-charsets=all 指定安装扩展字符集
--enable-local-infile 指定允许本地导入文件
--enable-thread-safe-client 指定线程安全模式
--enable-assembler 允许使用汇编模式(优化性能)
--with-client-ldflags=-all-static 静态编译
--with-mysqld-ldflags=-all-static 静态编译,提升性能13%
--with-unix-socket-path= 指定Unix Socket路径,本机访问提升7%
--with-plugins=all 指定安装全部存储引擎
--with-big-tables 指定支持超大表
- 60. 安装mysqlshell> cp support-files/my-medium.cnf /etc/my.cnf
修改配置文件
在[client]增加
default-character-set=utf8
[mysqld]下增加
lower_case_table_names=1
default-character-set=utf8 (character-set-server)
shell> bin/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql var
shell> chgrp -R mysql .
- 61. 启动停止mysql启动mysql
shell> cd /usr/local/mysql
shell> bin/mysqld_safe --user=mysql &
停止mysql
shell>bin/mysqladmin –u root –p shutdown
- 62. mysql自启动shell>cd mysql主目录/ support-files
shell> cp mysql.server /etc/init.d/mysql
shell> chmod +x /etc/init.d/mysql
shell> chkconfig –add MySQL
shell> chkconfig --level 345 MySQL on
启动:service MySQL start
重起: service MySQL restart
停止:service MySQL stop