linux常用简单操作及命令整理

一:修改时区:

1、修改 /etc/sysconfig/clock   ZONE=Asia/Shanghai

 echo "ZONE=Asia/Shanghai"   >/etc/sysconfig/clock
2、rm /etc/localtime
3、链接到上海时区文件       
 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
执行完上述过程后,重启机器,即可看到时区已经更改。
4、重启机器reboot

5、再次登录主机,date查看时区都已经变更为CST

二:常用命令

1、像表格一样输出:
mount  |column  -t  -s :
2、cat /etc/passwd  |column  -t -s :  是以:为分隔符,整齐的打印出这一列;像excel表格一样
3、watch  df  -h 可以定时监控一些命令;
可以用其他使用 tr 命令的代替任何字符,非常方便: cat geeks.txt | tr ‘:[space]:’ ‘\t’ > out.txt
4、自动回答任何命令yes or no:可以用yes命令: yes | apt-get update
5、指定size创建文件:
dd if=/dev/zero of=out.txt bs=1M count=10   指定生成一个大小为bs*count的文件;
6、把文件中小写转换为大写:
cat text | tr a-z A-Z > 0605.txt

或者把大写转换为小写:cat text | tr  A-Z  a-z > 0605.txt


三:关于ntp同步时间

增加了crontab任务后,在/var/spool/cron目录下会有一个当前登录账号命名的文件。比如我的登录账号是root。则会存在一个root文件。该文件的内容就是刚添加的crontab任务。
/var/spool/cron/root中删除对应的信息就好;
/etc/crontab和/var/spool/cron/root文件有什么不同呢?

linux /etc/crontab 和 /var/spool/cron区别


1./var/spool/cron/这个目录是以账号来区分每个用户自己的执行计划
-rw-------. /var/spool/cron/root
-rw-------. /var/spool/cron/user1
-rw-------. /var/spool/cron/user2
格式:
*/1 * * * *  ls />>/opt/crontab-e 2>&1


2./etc/crontab系统执行计划,需要在五个*后面加上用户
格式:
*/1 * * * * root  ls />>/opt/crontab-e 2>&1


3.服务重启
3.1 /etc/init.d/crond restart

3.2 service crond restart

四、关于ssh无密码设置、给用户添加sudo权限、开放22端口

扫描二维码关注公众号,回复: 2757491 查看本文章

 1、主机内可以ssh无密码登录常见登录验证方式如下: 
更改文件:/etc/ssh/sshd_config中下面的参数:
Passwordauthentication yes //启用密码验证 
Pubkeyauthentication yes //启用秘钥验证  

Authorsizedkeysfile .ssh/authorized_keys //指定公钥数据库文件 

2、开放22端口,使得用户可以直接登录环境

/etc/ssh/sshd_config中:
放开Port 22;
把 PermitRootLogin no更改为yes;
yum install openssh-server    :安装openssh客户端;
chkconfig sshd on  或者systemctl enable sshd.service  :sshd服务开机启动;
service sshd restart    :启动sshd服务: 

chkconfig  iptables off  或者systemctl disable iptables.service关闭防火墙:

3、给普通用户增加sudo权限:

/etc/sudoers中新增:
在## Allow root to run any commands anywhere下添加:
ips    ALL=(ALL)       ALL: ALL
在# %wheel        ALL=(ALL)       NOPASSWD: ALL下添加:
ips    ALL=(ALL)       NOPASSWD: ALL  (普通用户执行命令时不需要输入密码)
使用ansible调用命令,会校验ssh密码,不校验ssh互信,改下面的配置:
   /etc/ansible/ansible.cfg文件中:host_key_checking = False该配置项放开;
如果不添加第二个,导致ansible在连接时,会报错:
[root@ips106 logs]# ansible root10.1.235.72    -m shell -a 'hostname'
root10.1.235.72 | FAILED | rc=0 >>
MODULE FAILURE
配置后,连接信息如下:
[root@ips106 logs]# ansible root10.1.235.72    -m shell -a 'hostname'
root10.1.235.72 | SUCCESS | rc=0 >>
host-10-1-235-72


 4、“重装后的server,去安全加固,在其他机器上可以用root登录 ”的方法:

可以严格按照去安全加固的方法操作(参考10.1.235.75、76),也可以用最简单的方法:

1、/usr/lib/systemd/system/sshd.service

禁掉下面的行:ExecStart=/usr/local/openssh-7.4p1/sbin/sshd-D $OPTIONS

放开上面的行:ExecStart=/usr/sbin/sshd-D $OPTIONS

 

2、/etc/ssh/sshd_config文件中:放开22端口,开启root访问权限:

PermitRootLogin yes这行放开就好;

3、停掉防火墙

reboot后,

其他ssh:connect to host 10.1.245.106 port 22: No route to host

/etc/ssh/sshd_config问价那种22和22022的端口都已经放开了,为什么还会报这个错呢?

原因是:被访问主机开启了防火墙,将防火墙停掉后,就可以了:

查看防护墙状态

service iptables status

关闭

service iptables stop

查看防火墙开机启动状态

chkconfig iptables --list

关闭开机启动

chkconfig iptables off 


猜你喜欢

转载自blog.csdn.net/xiaofang2015/article/details/80528782