去掉空行和注释:grep -Ev '^#|^$' /etc/profile > xx
随机数 echo "$RANDOM"|md5sum |cut -c 1-8
删除克隆vm后重复网卡信息rm /etc/udev/rules.d/70-persistent-net.rules或清空 > /etc/udev/rules.d/70-persistent-net.rules
Init 0-代表重启 init3-命令行界面 init5-桌面 init6-重启 init1-单用户 init2-多用户不能使用网络 init4-安全模式 调整系统启动 vim /etc/inittab runlevel查看当前级别
Cat >oldboy.txt
Fdf
Fdfsa
Ctrl +c
Cat 》追加
Cat >>oldboy.txt <<oldboy(EOF)
1
2
3
Oldboy(EOF)
Ctrl +c 把上面1 2 3追加到oldboy.txt
Cp –a 附带拷贝目录
Grep –v oldboy test.txt 打印test.txt中除oldboy以外的其中内容。
Head -2 test.txt打印前两行
Tail –n test.txt 打印结尾n行 以上默认10行
Sed –n /oldboy/p test.txt 打印test.txt中含oldboy的行。-n取消默认输出只输出//里的内容,否则不加n则全部输出 p表示print
Sed /oldboy/d test.txt 把oldboy删除然后正常输出到屏幕,实际对文件内容无修改,只是打印而已。Sed -n 20,30p test.txt打印20到30行
Sed s#x#y#g test.txt sed擅长打印行 awk擅长打印列
Awk /oldboy/ test.txt 也是过滤出含oldboy的行
Mkdir –p 递归创建目录
Ctrl +shift+c 复制crt里的内容 区别windows里的ctrl+c
Ctrl + u 输完不enter又清除
!56表示查看历史记录里56行的命令。
\cp 取消复制文件重复时不断的提示是否确认覆盖,用在复制大量同名数据的场景。原因是which cp时其实cp是cp –i的别名,是系统对特殊命令如rm cp mv的安全考虑。用\意为取消别名,或者直接用/bin/cp直接调用。Unalias cp意为取消cp的别名。别名可防止误操作。
Alias wk=’echo ”/etc/sysconfig/network-script/ifcfg-eth0”’将网卡命名为wk 以后查看网卡就cat wk
Source /etc/profile 加载全局环境变量,永久生效的alias也要放到/etc/profile里。
Which cp 也可以用find / -type f –name “cp”
Find /test.txt –name “oldboy” –exec rm –rf {} \; {}表示find找到的内容 exec表示把前面找到的内容交给后面命令执行,;表示bash系统特殊意义,\转义。现在这条命令不用,理解即可。现在用Find /test.txt –name “oldboy” | xargs rm –rf xargs将前面的内容交由后面命令执行。
Vimdiff文件比较
/etc/sysconfig/network 修改hostname永久生效 /etc/resolv.conf 修改nameserver 218.104.111.114为dns。
/etc/rc.local 添加路由 route add -net 0.0.0.0/0 gw 192.168.44.1
Awk ‘{if(NR>20&&NR<30) print $0}’test.txt
Seq 序列 类似echo {a..k}
Cat /etc/issue 查看linux版本 uname -a查看版本细节
一个系统最多一个扩展分区,扩展分区不能直接用(没有编号),要划分成逻辑分区(编号只能从5开始),逻辑分区可以多个。最多4个主分区(编号从1-4) 文件系统为组织数据的一种机制 主分区和逻辑分区的区别?
项目真实生存环境图
常规分区方案:
/boot 1G
Swap 1.5倍boot
/ 剩余硬盘大小
DB及存储:
/boot 1G
Swap 1.5倍boot
/ 50-200G
/data/ 剩余硬盘大小 好处重装系统时数据不丢失,重装时只需调整boot swap和/
门户:
/boot 1G
Swap 1.5倍boot
/ 50-200G
剩余不在进行分区,留作备用,后期根据需求再分。
http://oldboy.blog.51cto.com/2561410/634725 老男孩分区方案博文
Emeditor文本编辑工具 notepad++或editplus 会一个就行
Everything文件查找工具
Keepass密码管理工具
Win32文本比较工具用于两文本中不同的内容
Echo 12345|passwd --stdin oldboy无需交互将密码12345传递给oldboy,但这样在history里可查看到明文密码,可用history -d 密码所在行号,删除掉此记录。History -c清楚所有
Yumgroup list 查看系统已安装的软件包组 安装包组 yum groupinstall “dfa fadff fsa” 须加双引号。
Ntsysv调取系统菜单关闭某些开机自启动服务
Grep –E “X|Y|Z” test.txt -E可以同时过滤多个条件相当于egrep
修改任何配置文件前先备份 cp一份到另一地方 特别是ssh生产环境端口号一般需要修改
:set nu显示行号 reload无需重启 平滑过渡
正常情况下禁用root登陆ssh,就普通用户登上去干活,如有需要再su切换到root
Sudo可以让普通用户拥有root的部分权限 visudo去给普通用户操作命令,然后sudo 命令
visudo进去让某用户NOPASSWD:ALL 就可以用sudu su- 不要密码可以切换到root下
Visudo相当与 vi /etc/sudoers一般用visudo改它会主动检查语法。Sudo -l查看自己的权限。
Echo ‘PATH=/oldboy/:$PATH’ >>/etc/profile 然后source /etc/profile 有些系统内置命令找不到路径如which cd 普通用户建议无需执行环境变量,以后centos会取消普通用户环境变量
Netstat -anptu 或lsof -i :
/etc/sysconfig/i18n 可以用source让其修改后迅速生效。查看系统字符集 echo $LANG
/usr/sbin/ntpdate time.nist.gov
Echo ‘#time sync by weipeng at 2017-8-30’ >>/var/spool/cron/root
Echo ‘*/5 **** /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1’ >>/var/spool/crontal -l 每五分钟同步一次
Echo ‘* - nofile 65535’ >>/etc/security/limits.conf 增加文件描述符,一个程序占用一个默认不够用。
Tail -l /etc/security/limits.conf source /etc/security/limis.conf不能生效 logout退出重进即可永久生效。
本系列博文完整内容共5篇:非常重要 成为大牛前必会
第一篇:详解linux netstat输出的网络连接状态信息
http://oldboy.blog.51cto.com/2561410/1184139
第二篇:庖丁解牛获取连接状态数的awk数组命令
http://oldboy.blog.51cto.com/blog/2561410/1184165
第三篇:awk数组命令经典生产实战应用扩展
http://oldboy.blog.51cto.com/blog/2561410/1184177
第四篇:老男孩培训第八节课前awk考试题案例(门户面试题解答)
http://oldboy.blog.51cto.com/2561410/1184206
第五篇:linux生产服务器有关网络状态的优化措施(告一段落)
http://oldboy.blog.51cto.com/2561410/1184228
Sendmail容易造成磁盘空间inod满了,并不是磁盘满了用df -hi查看iuse一列。看磁盘就直接df -h
>/etc/issue可以隐藏登陆版本号提示,安全优化。
Chattr +i /etc/passwd /etc/shadow /etc/inittab /etc/gshadow /etc/group 可锁住这些关键系统文件,防止黑客进入系统添加用户提权。然后自己操作时用chattr -i解锁
Tree –L 1 / 查看根下第一层树结构
/usr/local 一般编译安装的默认存放点,rpm和yum安装不在此处。
/opt 没什么用的目录了,名存实亡,存第三方软件程序 /etc存放系统配置文件 /bin /sbin 放程序及系统命令。/etc/motd 可写相关信息提示登录信息 比如欢迎登录linux
/lib 库文件目录 mkdfs.ext4 /sdb 格式化sdb /proc 内核和内存信息虚拟文件系统 比如cat /proc/cpu /usr/sbin定位为root专用的管理命令 后期普通用户也有但需权限执行
Half 关机 /usr/local/sbin和/usr/local/bin下是用户可以自己创建命令的地方。/var 存放可变长文件的目录。/var/log/messeges记录系统故障的日志,如人肚子痛会说出来,但linux不会说只会放在messages里 /var/log/secure 安全日志 如谁安全连接了ssh 或谁在破解
/etc/fstab记录系统开机需要挂载的文件设备。/etc/rsyslog 是系统日志配置文件 /usr/src存放软件源代码
Last查看系统曾经登录情况 lastlog查看在线登录信息 /var/spool/cron/root 系统定时任务默认路径 /var/log/clientqueue 如邮件安装要考虑此文件 容易造成磁盘id满了的各种故障。
Vi /etc/sysctl.conf 修改内核普通参数如tcp连接数 内存大小等。/etc/rc.local开机启动命令操作。
1.开机bios自检
2.Mbr引导
3.Grup引导菜单
4.加载内核kernel
5.启动init进程
6.读取inittab文件,执行rc,sysinit,rc等脚本
7.启动mingetty,进入系统登录界面
L链接文件,如ls -ld /etc/init.d--->/rc.d/init.d-普通文件 d目录文件 c表示字符设备 串口啊tty啊都是字符设备 b开头块设备 硬盘光驱都是,s代表套接字sock文件。P管道文件 /var/spool/postfix/public/pickup就是管道文件。file test.txt查看文件类型 如显示ASCII表示纯文本文件,executable表示二进制文件 显示data表示数据文件类型 ls -F可显示是否为目录文件* 意为把文件属性显示出来
Inode存放文件属性信息,但不包含文件名,block存放图片数据等。文件名在目录的block里面。Inode是有空间的,默认大小256字节,还包含指针指向文件block 用ls -li查看inode号,用dupme2fs 查看inode大小,如dumpe2fs /dev/sda |grep -i “Inode siez”
^以什么开头 $以什么结尾 如果^$在一起就是空行 查行号cat -n /etc/services |tail -1
[^oldboy]非oldboy ll -lrt 查看最新创建的文件 r反转排序 t创建时间
可以在/etc/profile里加上alias grep=’grep --color=auto’ 让grep过滤时显示颜色
For n in `seq 14`
Do
Date -s “07/2$n/14”
Touch access_www_`(date +%F)`.log
Done
Date -s “08/05/14”
Awk ‘{print $3 “ ” $6}’ test.txt 将test.txt中第三列和第6列以空格分隔打印出来,或者用cut -d” ” -f3,6 test.txt也可以。Cut -c 10-20 test.txt将10-20打印出来。
硬链接是相同inode号的不同文件,删除源文件硬链接还保存着源文件内容。软链接为不同inode的不同文件,是对源文件指向。每创建一个文件夹会产生两个硬链接数两个文件夹.和..创建软链接数时软链接目录不能存在,目录不能创建硬链接。