您的位置:首页 > 运维架构 > Linux

linux常用实战命令

2018-02-09 17:25 916 查看
一下是一些自己总结的实战命令:
1、删除多个同名的文件,或者是杀死多个进程?
(1)find / -type f -name "test.txt" | xargs rm -f 或者 find / -type f -name "test.txt" -exec rm -f {} \; 删除多个同名文件;
(2)ps -ef |grep 3306|xargs kill -9 杀死所有3306端口进程
2、删除过期数据?
find / -type f -name "*.log" -mtime -5 | xargs rm -f 删除最近5天的log日志(+5表示5天前)
3、生成倒序序列?
seq 5|tac
4、获取文本中第20到30行的数据
(1)head -30 test.txt|tail -20
(2)sed -n 20,30p test.txt
(3)awk '{if(NR>19&&NR<31) print $0}' test.txt NR表示行号,$0表示打印所有的内容5、获取/etc/passwd里面的第一列数据
awk -F ':' '{print $1}' /etc/passwd6、替换文件内容
sed -i 's#old#young#g' test.txt -i表示在test.txt文件中生效7、查看linux系统版本
cat /etc/redhat-release8、查看linux的内核版本
uname -r/uname -a -a参数是显示所有参数
9、查看linux是32位还是64位
uname -m/uname -a -a参数是显示所有参数10、由root切换到普通用户下
su - young 加-是为了将环境变量改成young的,这个一定要加11、修改普通用户的密码
(1)passwd young 需要交互
(2)echo 123456|passwd --stdin young 不需要交互,适合大批量的修改密码12、查看系统安装的哪些包组
yum grouplist13、安装新的包组
yum groupinstall "Development Tools" 这里包组一定要加""14、将指定的应用设为开机自启动,其他应用设置成开机不启动
(1)for program in `chkconfig --list|grep "3:on"|awk '{print $1}'`;do chkconfig $program off;done 将所有应用设置成开机不启动
(2)for program in crond network rsyslog sshd;do chkconfig $program on;done 将指定应用设置成开机自启动15、重启ssh服务
/etc/init.d/sshd restart或者/etc/init.d/sshd reload16、关闭防火墙
/etc/init.d/iptables stop17、让/etc/profile文件生效
source /ect/profile 这个文件对所有用户都生效 如果想只对当前用户生效,修改~/.bash_profile或者~/.bashrc18、查看某个端口的服务
(1)netstat -lntup|grep 52110
(2)lsof -i :5211019、linux如何进行时间同步
linux进行时间同步,一般都离不开ntp服务
(1)/usr/sbin/ntpdate time.windows.com 临时同步时间,后面的地址有很多个,可修改
(2)设置定时任务,每过一段时间执行上面的代码:echo '#time sync by root at 2018-02-04' >> /var/spool/cron/root;注释
echo '*/5 * * * * /usr/sbin/ntpdate time.windows.com >/dev/null 2>&1' >> /var/spool/cron/root 定时任务
(3)crontab -l检查下20、查看服务器文件描述符大小
ulimit -n21、加大服务器文件描述符大小
(1)ulimit -HSn 65535 临时生效
(2)echo '*               -    nofile            65535' >> /etc/security/limits.conf永久生效
22、基本的内核参数文件调优
将下面内容放到/etc/sysctl.conf中
net.ipv4.tcp_fin_timeout = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.ip_local_port_range = 4000 65000
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.core.somaxconn = 16384
net.core.netdev_max_backlog = 16384
net.ipv4.tcp_max_orphans = 16384
23、防火墙优化
将下面内容放到/etc/sysctl.conf里面
net.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_tcp_timeout_established = 180
net.netfilter.nf_conntrack_tcp_timeout_time_wait =120
net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 12023、/etc/sysctl.conf怎么生效
sysctl -p24、查看磁盘空间
(1)df -h 查看磁盘实际的物理空间
(2)df -i 查看Inode的空间25、隐藏linux启动后提示的版本号
修改/etc/issue文件,或者直接清空这个文件26、锁定系统的关键文件

chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
27、解锁系统关键文件
chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab28、如何挂载磁盘
linux中的磁盘只有在挂载之后才能使用
mount /dev/sda1 /usr29、网卡启动与关闭
(1)启动:ifup eth0 或者/etc/init.d/network start
(2)停止:ifdown eht0 或者/etc/init.d/network stop30、查看分区的Inode的大小
dumpe2fs /dev/sda1 |grep -i 'Inode size'31、查看分区的Block的大小
dumpe2fs /dev/sda1 |grep -i 'Block size'32、快速查看到目录中最近更新的文件
ls -lrt33、让过滤的内容显示颜色
添加--color=auto
如 grep 3306 --color=auto /etc/services34、实时监控某一个文件内容的变化
tail -f test.txt35、显示文件内容的行号
(1)cat -n test.txt
(2)less -N test.txt
(3)grep -n . test.txt  这里带个点的意思是把所有行过滤出来,点代表一个字符
(4)vi中:set nu
36、将文件打包、解压
对于tar.gz
(1)打包:tar zcvf etc.tar.gz /etc 将etc文件打包
(2)tar zcvf test.tar.gz --exclude=test/array.sh ./test 将test目录打包,排除array.sh文件
(3)tar zcvfX test.tar.gz a.txt ./test将test目录打包,排除a.txt文本中包含的文件名的文件
(4)tar xf test.tar.gz 将压缩包解压到当前目录
(5)tar xf test.tar.gz -C /tmp/ 将压缩包解压到指定目录下

对于tar.bz
(1)tar jcvf test.tar.bz ./test
(2)tar jxvf test.tar.bz37、文件的类型有几种
block,character,directory,pipe,file,socket,link,38、将ls -l显示的文件时间标准化
ls -l --time-style=long-iso39、文件的权限位的最后一位可能有一个点,是什么意思?
这个点是跟selinux相关的上下文,关闭selinux,创建文件不会带点40、将本机的ip地址取出来
(1)ifconfig eth0|sed -n 2p|awk -F '[ :]' '{print $13}'
(2)ifconfig eth0|grep 'inet addr'|awk -F '[ :]' '{print $13}'
(3)ifconfig eth0|grep 'inet addr'|cut -d ':' -f2|cut -d ' ' -f1
(4)ifconfig eth0|grep 'inet addr'|awk -F '[: ]+' '{print $4}'
(5)ifconfig eth0|awk -F '[: ]+' 'NR==2{print $4}'
(6)ifconfig eth0|sed -n 's#^.*addr:\(.*\) Bcast.*$#\1#gp'
这边涉及到sed的()分组的功能。sed 's/a/b/g' a部分可以用正则表达式,b部分不能用正则表达式。()是分组,在a部分使用()括起来的内容,在b部分可以用\1调出前面括号内的内容。如果a部分有多个括号,那么依次是\2,\3调用第二个第三个括号,依次类推。41、获取文件的权限值
(1)stat a.txt|awk -F '[(/]' 'NR==4{print $2}'
(2)stat -c %a a.txt -c指定格式,%a获取八进制权限,%A获取人类可读的权限格式42、root切换到普通用户下,输入ifconfig提示command not found
在centos5中,ifconfig默认是管理员root的命令,其完整路径为/sbin/ifconfig,在普通用户的path路径下没有这个路径
43、日期输出问题
(1)输出17-01-01格式:date '+%y-%m-%d'
(2)输出2017-01-01格式:date '+%Y-%m-%d'或者date '+%F'
(3)输出周几 date '+%w'或者date '+%u'
(4)输出年月日 时分秒 date '+%y-%m-%d %H:%M:%S'或者date '+%F %T'
(5)输出3天前的日期  date '+%F' --date='3 day ago' 或者date '+%F' --date='-3 day'
(6)输出明天的日期  date '+%F' --date='next day'
(7)输出3天后的日期   date '+%F' --date='+3 day' 或者date '+%F' --date='3 day'
44、希望普通用户能够删除本来没有权限删除的文件
(1)利用sudo提权
(2)删除命令加上suid,这样任何用户都能拥有rm属主所拥有的权限
45、>/dev/null 2>&1什么意思
>/dev/null 2>&1等价于1>/dev/null 2>/dev/null等价于&>/dev/null意思就是正确跟错误的输出都不输出出来46、文件比较多的时候,rm -f会删除失败,怎么办?
(1)ls|xargs rm -f
(2)find ./ -type f |xargs rm -f
(3)删除上级目录,然后再创建一个相同的47、要求oldboy用户7天内不能改密码,60天以后必须修改密码,过期前10天通知oldboy用户,过期后30天禁止用户登录。
(1)passwd -n 7 -x 60 -w 10 -i 30 oldboy
(2)chage -m 7 -M 60 -W 10 -I 30 odlboy48、LDAP服务是什么
在大规模的运维环境中,使用LDAP服务(微软活动目录)对linux账户进行统一认证,批量管理。49、NAT是什么
上网的时候一般会经过路由器,电脑网关的地址就是路由器的地址。同时由于我们的ip是私有ip,是不能再公网上传输的,
要通过NAT进行转换,变成公网地址。
50、启动网卡
(1)/etc/init.d/network restar
(2)ifup eth0(ifdown关闭网卡)51、域名解析的方式
(1)ding www.baidu.com
(2)nslookup www.baidu.com
52、检查网络情况
(1)ping baidu.com
(2)tracert -d www.baidu.com(windows下的)
(3)traceroute www.baidu.com
(4)telnet 192.168.11.11 80 检查web是否开启以及防火墙是否阻挡
(5)nmap 192.168.11.11 8053、抓包工具
tcpdump 如tcpdump -n icmp -i eth0(icmp是协议)54、举几个网络文件系统
(1)NFS
(2)MFS分布式文件系统
(3)GFS适合云计算
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: