【Linux】日常运维

文章目录

    • 1.标题配置静态IP
    • 2.添加用户
    • 3.添加组
    • 4.日志管理
    • 5.jstat
    • 6.crontab
    • 7.配置SSH
    • 8.时间同步


很基本的操作,因为平常自己有的时候有些会忘了就写到blog里,欢迎大家提建议或完善,我自己也会慢慢的添加完善 (づ ̄ 3 ̄)づ


1.标题配置静态IP

/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:26:18:0B:38:C0
ONBOOT=yes
IPADDR=192.168.0.20
NETMASK=255.255.255.0
GATEWAY=192.168.0.1

IP生效:

/sbin/ifdown eth0
/sbin/ifup eth0

通知网关更新信息:

/etc/init.d/network restart

配置DNS:

vi /etc/resolv.conf
nameserver 202.96.134.133

解决重启生效:

chattr +i /etc/resolv.conf

2.添加用户

创建用户  adduser test
修改密码  passwd test (如果新建用户,没有设置密码,这个用户是没法直接登录的,使用root用户的su除外)

3.添加组

创建组  groupadd testGrp
修改组  groupmod -n testGroup testGrp(将testGrp组的名子改成testGroup )
删除组  groupdel testGroup 
查看组  groups
加入组  gpasswd -a test testGroup 
移出组  gpasswd -d test testGroup 

4.日志管理

清空日志文件
cat /dev/null > nohup.out
定时清理日志
30 6 * * 0   find /root/hadoop-2.5.0-cdh5.2.0/logs -type f -mtime +30 | grep -v "\\.out$" | grep -v "\\.log$" | grep -v SecurityAuth | xargs rm -f {} \ 

jstat 是 JVM 统计信息监视工具,如下:

5.jstat

我通过 jstat 来监视1192的Java进程统计信息,各项监视参数:
[fzyjf@VM_0_9_centos ~]$ jstat -gcutil 26545
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT   
 99.85   0.00  37.15  46.94  95.30  92.96     12    0.161     3    0.230    0.391

各个指标的意思:

S0、S1 代表两个Survivor区;
E 代表 Eden 区;
O(Old)代表老年代;
P(Permanent)代表永久代;
YGC(Young GC)代表Minor GC;
YGCT代表Minor GC耗时;
FGC(Full GC)代表Full GC耗时;
GCT代表Minor & Full GC共计耗时。

其他一些介绍,具体请移步jvm相关知识点:

Java 堆分为新生代和老年代,新生代一般划分为三块区域,Eden + From Survivor + To Survivor,Eden 和
Survivor 的内存比为8:1,每次只使用一个Eden 和一个 Survivor 区域,另一个 Survivor
用于复制收集算法回收内存。

对象一般尽量分配到新生代中,而对于大对象(长字符串和大数组)直接分配在老年代中,同时“年龄”长的的对象会从新生代自动晋升到老年代中。

Java 方法区称为永久代,只有 HotSpot 虚拟机才存在永久代。

当 Eden 区域分配不足时,自动发生一次 Minor GC。

当发生 Minor GC
时,虚拟机会自动检测(比较)新生代晋升到老年代的对象内存大小和老年代剩余内存大小,如果晋升>剩余,则发生一次Full
GC;如果晋升<剩余,则去检测老年代的内存担保 HandlePromotionFailure
是否允许担保失败,如果不允许担保失败,则发生一次Full GC,如果允许失败,则进行一次Minor GC。

6.crontab

查看是否启动服务 chkconfig --list|grep crond /ps -ax | grep cron 启动服务
service crond start 查看crontab crontab -l 修改crontab crontab -e
删除crontab crontab -r

小时 星期 命令 说明
0-59 0-23 1-31 1-12 0-6 command
5 * * * * ls 指定每5小时的第5分执行一次ls命令
30 5 * * * ls 指定每天的5:30执行ls命令
30 7 8 * * ls 指定每月8号的7:30分执行ls命令
30 5 8 6 * ls 指定每年的6月8日5:30执行ls命令
30 6 * * 0 ls 指定每星期日的6:30执行ls命令(0是星期天,1是星期一)

定时的话 就在结束的时候就 service crond stop 或者设置条数 运行脚本前先source .bash_profile
如果多条的话可以&& (可以 xxx;xxx;) /etc/cronb下面好像可以设置环境变量

7.配置SSH

ssh-keygen -t rsa
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
scp -r id_rsa.pub root@[ip]:/root/.ssh/authorized_keys_m</span>

登陆[ip]执行

cat /root/.ssh/authorized_keys_m >> authorized_keys

尝试ssh登陆

ssh ip

ssh 非root用户还需要密码:

chmod 700 .ssh (需要输入密码, 注:必须将.ssh的权限设为700)
chmod 600 ~/.ssh/authorized_keys (# 注意: 必须将~/.ssh/authorized_keys的权限改为600, 该文件用于保存ssh客户端生成的公钥,可以修改服务器的ssh服务端配置文件/etc/ssh/sshd_config来指定其他文件名)

8.时间同步

service ntpd start
ntpdate 192.168.10.2

修改系统时间
linux系统时钟有两个,一个是硬件时钟,即BIOS时间,就是我们进行CMOS设置时看到的时间,另一个是系统时钟,是linux系统Kernel时间。当Linux启动时,系统Kernel会去读取硬件时钟的设置,然后系统时钟就会独立于硬件运作。有时我们会发现系统时钟和硬件时钟不一致,因此需要执行时间同步,下面就分享一下时间设置及时钟同步的命令使用方法。
date命令将日期设置为2014年6月18日 ---- date -s 06/18/14 将时间设置为14点20分50秒 ----
date -s 14:20:50 将时间设置为2014年6月18日14点16分30秒(MMDDhhmmYYYY.ss)
----date 0618141614.30

你可能感兴趣的:(Linux)