Linux管理日记(三)

简介: 23. 时间同步同步时间可以使用 root 执行如下命令完成:rdate -s time.nist.gov如果需要自动同步,可以采用crontab自动调度,每小时执行一次: 编辑 crontab: crontab -e按 i 进入插入模式,然后添加如下一行: 1 * * * * root rdate -s time.

23. 时间同步

同步时间可以使用 root 执行如下命令完成:

rdate -s time.nist.gov
如果需要自动同步,可以采用crontab自动调度,每小时执行一次: 

编辑 crontab: 

crontab -e
i 进入插入模式,然后添加如下一行: 

1 * * * * root rdate -s time.nist.gov
然后依次按 ESC进入命令模式, 看见冒号以后,输入 wq 回车保存退出即可(其实就是 vi /etc/crontab).

24.  查看某个端口被哪个进程监听

netstat -anp |grep 8015
结果可能如下所示:
# netstat -anp |grep 8015
tcp        0      0 127.0.0.1:8015              0.0.0.0:*                   LISTEN      16335/java  
通过以上结果可以发现,进程号 PID 是 16335,程序是 java.
此时,再搜索查找 16335 进行就容易了: 

# ps aux | grep 16335
root     16335  1.0 11.0 2138564 269532 ?      Sl   16:43   0:30 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat_index/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/tomcat_index/endorsed -classpath /usr/local/tomcat_index/bin/bootstrap.jar -Dcatalina.base=/usr/local/tomcat_index -Dcatalina.home=/usr/local/tomcat_index -Djava.io.tmpdir=/usr/local/tomcat_index/temp org.apache.catalina.startup.Bootstrap start

25. 安装不掉线屏幕工具

详细的教程请参考: Linux远程会话管理工具:screen
普通的使用如下所示:

# 安装不掉线屏幕工具
yum -y install screen

# 打开一个新屏幕
screen

# 在屏幕中执行命令
ping www.baidu.com

# ctrl+a,d 切换屏幕回去
# 打开另一个新屏幕
screen

# 在屏幕中执行命令
ping www.csdn.com

# ctrl+a,d 切换屏幕回去
# 查看打开的不掉线屏幕
screen -ls

# 进入特定的session屏幕
sesid=4567
screen -r $sesid

# 结束当前的screen,退回到原先场景
exit

26.  dstat 查看磁盘,cpu使用状态

命令 dstat  # 使用示例如下:

[root@AY131 ~]# dstat
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw 
  1   1  99   0   0   0|  11k   22k|   0     0 |   0     0 | 138    87 
  0   1 100   0   0   0|   0     0 | 182B  882B|   0     0 |  47    54 
  0   0 100   0   0   0|   0     0 |  94B  402B|   0     0 |  55    58 
 15  13  70   0   1   1|   0     0 |1331k 1166k|   0     0 |2290   767 
 11   9  80   0   1   1|   0    16k| 752k  905k|   0     0 |1682   436 
  0   0 100   0   0   0|   0     0 |  52B  402B|   0     0 |  40    53 
  0   0 100   0   0   0|   0     0 |  52B  402B|   0     0 |  41    54 
  1   0 100   0   0   0|   0     0 |  52B  402B|   0     0 |  43    54 
  0   0  99   0   0   0|   0    48k|  52B  402B|   0     0 |  43    60 
  0   0 100   0   0   0|   0    16k| 140B  402B|   0     0 |  49    65 
RHEL 6.3默认已经安装了, 另外,这里有一篇比较全面的介绍 dstat的文章:  Linux下比较全面的监控工具dstat
27.iostat 查看IO使用

命令: iostat -dmx 5   #表示 5秒刷新一次

[root@AY131 ~]# iostat -dmx 5
Linux 2.6.32-358.6.2.el6.x86_64 (AY131) 	06/03/2014 	_x86_64_	(2 CPU)

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
xvda              0.00     0.04    0.01    0.66     0.00     0.00     8.95     0.01    7.83   2.06   0.14
xvdb              0.00     1.90    0.14    0.56     0.01     0.01    37.72     0.06   78.87   2.21   0.16
scd0              0.00     0.00    0.00    0.00     0.00     0.00     8.00     0.00    2.00   2.00   0.00

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
xvda              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
xvdb              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
scd0              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00

28.  查看内核版本

使用 uname 命令,然后指定 -r 选项: 

[root@AY13121 ~]# uname -r
2.6.32-358.6.2.el6.x86_64
uname命令的详细帮助信息如下所示: 
[root@AY1312 ~]# uname --help
用法: uname [OPTION]...
打印某些系统信息.  如果不指定[OPTION] 选项, 则输出结果和选项 -s 一致.

  -a, --all                按下面所有选项的顺序打印所有信息,以空格分隔,
                             如果 -p 和 -i 选项是 unknown 则对应的项将被省略:
  -s, --kernel-name        打印内核名,如 "Linux"
  -n, --nodename           打印网络节点的主机名hostname,如 "AY1312"
  -r, --kernel-release     打印内核的 kernel release 版本号,如 "2.6.32-358.6.2.el6.x86_64"
  -v, --kernel-version     打印内核kernel的version,如"#1 SMP Thu May 16 20:59:36 UTC 2013" 
  -m, --machine            打印机器的硬件名,如 "x86_64"
  -p, --processor          打印处理器类型,如"x86_64",或者 "unknown"
  -i, --hardware-platform  打印硬件平台信息,如"x86_64",或者 "unknown"
  -o, --operating-system   打印操作系统,例如 "GNU/Linux"
      --help     显示本帮助信息并退出
      --version  输出uname命令的 version 信息并退出


29. Tomcat 的简单优化

就如同Oracle的最实用的优化是配置合理的内存和连接数一样,Tomcat也是一样的道理。

先配置 /usr/local/tomcat/bin/catalina.sh 文件,windows下是 bat文件,当然,设置内存需要自己决定了,JDK最好是64位,假如是32位,则内存可能配置不到1GB.

如果是专用服务器,则初始内存和最大内存应该设置为同样大小.

export JAVA_OPTS="$JAVA_OPTS -server -Xmx1536m -Xms1024m"

29.1 修改Tomcat使用的JVM内存大小:

[root@AY13121 bin]# head catalina.sh
#!/bin/sh
export JAVA_OPTS="$JAVA_OPTS -server -Xmx1536m -Xms1024m"
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
29.2 设置Tomcat连接器的线程数和请求等待队列数

根据需要灵活设置, 个人建议 maxThreads 不要设置得太大,将等待队列acceptCount设置大一点,应付压力测试.

有2个连接器,8009是AJP的,8080是普通的,请根据使用哪个来进行配置.

    <Connector port="8009" protocol="AJP/1.3" 
			redirectPort="8443" 
			acceptCount="1000"
			maxThreads="400" 
			minSpareThreads="20"
				compression="on"  useSendfile="false"  
				compressionMinSize="2048"
				noCompressionUserAgents="gozilla,traviata"
				compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json,application/javascript,application/x-javascript"
			/>


30. 



目录
相关文章
|
4月前
|
安全 Linux
Linux通配符及其在文件搜索和管理中的应用
Linux通配符及其在文件搜索和管理中的应用
|
5月前
|
Java Linux
Linux上管理不同版本的 JDK
Linux上管理不同版本的 JDK
223 0
|
4月前
|
Linux
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
系统启动以后一直存在且常驻内存没有界面的进程就是服务。Linux系统中的所有服务都保存在下列目录中:/usr/lib/systemd/system,进入该目录就能看到所有的服务。
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
|
4月前
|
Linux
Linux 中RPM软件包管理
Linux 中RPM软件包管理
|
4月前
|
SQL 自然语言处理 网络协议
【Linux开发实战指南】基于TCP、进程数据结构与SQL数据库:构建在线云词典系统(含注册、登录、查询、历史记录管理功能及源码分享)
TCP(Transmission Control Protocol)连接是互联网上最常用的一种面向连接、可靠的、基于字节流的传输层通信协议。建立TCP连接需要经过著名的“三次握手”过程: 1. SYN(同步序列编号):客户端发送一个SYN包给服务器,并进入SYN_SEND状态,等待服务器确认。 2. SYN-ACK:服务器收到SYN包后,回应一个SYN-ACK(SYN+ACKnowledgment)包,告诉客户端其接收到了请求,并同意建立连接,此时服务器进入SYN_RECV状态。 3. ACK(确认字符):客户端收到服务器的SYN-ACK包后,发送一个ACK包给服务器,确认收到了服务器的确
186 1
|
5月前
|
消息中间件 存储 监控
实战Linux I/O多路复用:借助epoll,单线程高效管理10,000+并发连接
本文介绍了如何使用Linux的I/O多路复用技术`epoll`来高效管理超过10,000个并发连接。`epoll`允许单线程监控大量文件描述符,显著提高了资源利用率。文章详细阐述了`epoll`的几个关键接口,包括`epoll_create`、`epoll_ctl`和`epoll_wait`,以及它们在处理并发连接中的作用。此外,还探讨了`epoll`在高并发TCP服务场景的应用,展示了如何通过`epoll`和线程/协程池来构建服务框架。
565 8
|
5月前
|
Linux
【Linux 基础】文件与目录管理
文件和目录的基本概念以及常用命令
57 11
|
4月前
|
监控 安全 Unix
探索Linux命令repo-rss:管理仓库更新的新视角
`repo-rss`是一个设想中的Linux工具,用于通过RSS订阅跟踪软件仓库更新。它能订阅仓库、检测更新、生成RSS feed并发送通知。主要特点包括实时性、灵活性、自动化和可扩展性。用户可定制订阅、时间间隔及输出格式。示例用法包括订阅Debian仓库、将更新输出为RSS文件或发送至邮箱。使用时需注意安全、资源消耗和隐私,最佳实践包括定期评估、自动化处理、多源订阅和备份。此工具展示了RSS在软件管理中的创新应用。
|
5月前
|
Linux 网络安全 开发工具
Linux 管理远程会话 screen:掌握终端的多任务操作
`Linux screen` 命令让多任务管理变得更简单,尤其在SSH连接远程服务器时。创建新会话如`screen -S backup`,查看会话`screen -ls`,退出`exit`。高级功能包括直接在会话中运行命令,如`screen vim memo.txt`,会话共享以协同工作,以及通过`screen -r`或`-D -r`重新连接或强制恢复断开的会话。提高效率,确保任务不间断运行。
87 1
|
5月前
|
安全 Linux 数据处理
探索Linux的kmod命令:管理内核模块的利器
`kmod`是Linux下管理内核模块的工具,用于加载、卸载和管理模块及其依赖。使用`kmod load`来加载模块,`kmod remove`卸载模块,`kmod list`查看已加载模块,`kmod alias`显示模块别名。注意需有root权限,且要考虑依赖关系和版本兼容性。最佳实践包括备份、查阅文档和使用额外的管理工具。