学习记录003-简单系统优化目录结构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习记录003-简单系统优化目录结构相关的知识,希望对你有一定的参考价值。

一、操作系统简单优化
1. cat /etc/redhat-release //查看版本号
2./usr/sbin/ntpdate time.nist.gov //时间同步,仅仅只是一次同步
6.4设置每5分钟自动更新时间
echo ‘#time sync by kaka at 2016-6-22‘ >>/var/spool/cron/root
echo ‘*/5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null2>&1‘ >>/var/spool/cron/root
crontab -l
3.加大服务器文件描述符
法一: vim /etc/security/limits.conf
文件末尾加上 - nofile 65535
法二:
echo ‘* - nofile 65535‘ >> /etc/security/limits.conf
之后tail -l /etc/security/limit.conf //查看是不是编辑成功
之后重启登录就可以查看到 ulimit -n //显示65535
法三:
cat >>/etc/rc.local<<EOF
#openfiles
ulimit -HSn 65535
#stack size
ulimit -s 65535
EOF //ulimit -SHn 命令加入到/etc/rc.local 达到每次重启生效的目的
相关博文:http://www.cnblogs.com/wangkangluo1/archive/2012/06/06/2537677.html
4.字符集
GBK 定长 双字节
UTF-8 非定长 1-4字节,中文是3个字节,用的比较多
5.linux内核参数文件 /etc/sysctl.conf 优化 sysctl -p 生效
net.ipv4.tcp_fin_timeout #fin_timeout 缩短连接的时间
net.ipv4.tcp_tw_reuse #允许闲置的重连接
net.ipv4.tcp_tw_recycle #开启TCP连接中TIME-WAITsockets的快速回收 ,就是连接处理多了怎么处理的方法
net.ipv4.tcp_syncookies #防止SYN攻击,启用syncookies
net.ipv4.tcp_keepalive_time #TCP会话保持的时间
net.ipv4.ip_local_port_range #端口范围 44- 44545 这就是范围
net.ipv4.tcp_max_syn_backlog #SYN 默认的队列长度是1024 增加到8192 可以增加网络进程的等待个数
net.ipv4.tcp_max_tw_buckets #time_wait 套接数 默认18W 我们设置20000差不多,类似于剪刀的意思
net.ipv4.tcp_synack_retries #
net.ipv4.tcp_syn_retires
net.ipv4.tcp_max_orphans
net.core.somaxconn #系统同时发起TCP连接数的的控制,默认值是128
net.core.netdev_max_backlog # 并发可以处理多少网络队列
6.定时清理clientqueue目录垃圾文件防止占满磁盘空间
/var/spool/clientmqueue/ sendmail邮件服务邮件临时的存放地址
手动清理方法: find /var/spool/clientmqueue -type f |xargs rm -rf
ll /var/spool/clientmqueue |wc -l
定时清理方法:echo "find /var/spool/clientmqueue/ -type f |xargs rm -f" >/server/scripts/del_sys_file.sh
df - hi // 查看inode文件
7.黑客攻击你时,你该怎么处理
chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow
chattr +i /etc/inittab
之后将chattr 改名 mv /usr/bin/chattr /usr/bin/kaka 没有人知道kaka 或许用lsattr -i 可以查看权限,但是没有办法不知道怎么处理
8.尽量隐藏我们的版本,在开机那里显示版本 > /etc/issue
9.变成一键脚本

 

二、linux的基础目录结构
1. “/” 根目录是所有linux系统中所有目录的起始点(顶点)理解成倒挂的树
2.不同的目录可以分布不同的硬盘分区以及不同的硬件设备
所有的设备需要挂载才能用,
mnt 临时挂载目录
/dev/sda1
在linux中,磁盘本身是挂载不了的,需要挂载在sda1
mount /dev/sda1 /mnt //临时挂载
为为啥可以自动挂载呢 因为开启时,自动挂载在 /etc/fstab ,第一列 描述要被挂载的分区
第二列文件系统的挂载点 第三列文件系统挂载的类型 第四列文件系统的参数 第五列备份 第六列磁盘检查
          使用设备名称(/dev/sda)来挂载分区时是被固定死的,一旦磁盘的插槽顺序发生了变化,就会出现名称不对应的问题。因为这个名称是会改变的。
不过使用label挂载就不用担心插槽顺序方面的问题。不过要随时注意你的Label name。至于UUID,每个分区被格式化以后都会一个UUID作为唯一的标识号。使用uuid挂载的话就不用担心会发生错乱的问题了。
第二列:Mount point:设备的挂载点,就是你要挂载到哪个目录下。
 
第列:filesystem:磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等
 
第四列:parameters:文件系统的参数
Async/sync
设置是否为同步方式运行,默认为async
auto/noauto 
 当下载mount -a 的命令时,此文件系统是否被主动挂载。默认为auto
rw/ro        
 是否以以只读或者读写模式挂载
exec/noexec        
 限制此文件系统内是否能够进行"执行"的操作
user/nouser
是否允许用户使用mount命令挂载
suid/nosuid
是否允许SUID的存在
Usrquota
启动文件系统支持磁盘配额模式
Grpquota
启动文件系统对群组磁盘配额模式的支持
Defaults
同事具rw,suid,dev,exec,auto,nouser,async等默认参数的设置

 
第五列:能否被dump备份命令作用:dump是一个用来作为备份的命令。通常这个参数的值为0或者1
         0
代表不要做dump备份
         1
代表要每天进行dump的操作
         2
代表不定日期的进行dump操作

 
第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean。
0
不要检验
1
最早检验(一般根目录会选择)
2
1级别检验完成之后进行检验

 
目录和分区建立关系建立关系叫做挂载,df -h 可以查看系统的挂载
3.比如一个qq游戏程序,执行程序在/usr/bin 数据文件和帮助在 /usr/share
运行和加载服务启动的命令在/etc/下
4./ 放系统相关的程序
/usr: 放用户的程序
/usr/local 用户自己安装的程序,如果用yum 和rpm 就不是这样的
/opt 存放第三方厂方的开发商程序 option
5.目录层次结构 FHS 定义/ 下放什么程序
第二层定义/var 放什么 /usr 放什么

 

三、目录解释
/bin //英文binaries 存放二进制文件 可以用 ls /bin 看里面的内容
/boot //static files of the boot loader 永远不更新
/dev // device files 设备文件的目录
/etc //host-specific system configuration 二进制安装包默认的路径 服务启动命令的存放目录init.d 之类 启动加载的
/home //普通用户的家目录默认数据存放目录
/lib //共享库和内核库存放的目录
/lost+found //系统意外关机时产生的磁盘碎片存放处
/mnt //mount point for mounting afilesystem temporarily 临时文件系统的挂载点,比如差一个光盘到linux里, 就挂载在mnt下
/opt //可以选择将软件包安装在这里
/proc // 内核和文件信息的操作cat /proc/meminfo 或cpuinfo 或loadavg 可以看见系统负载信息
/root //超级用户
/sbin //系统二进制管理,就是root用的,对于5.X系统直接ifconfig 是没有设置环境变量的
/tmp //临时文件目录 是一个t 权限
/usr //secondary hiearchy /usr/local 放我们自己安装的软件、usr/src 系统的源码目录
/var //variable data var /log/messages 系统日志文件 spool/cron 定时任务的配置文件
重要子目录
/etc/sysconfig/network-scripts/ifcfg-eth0 //网卡的配置文件
/etc/resolv.conf //DNS解析nameservice ip地址
/etc/hosts //用户ip和名字的连接,在windows下输入cmd -system32-driver-hosts ,测试环境下都用他,或者服务器之间的调用
/etc/sysconfig/network //可以修改机器名和网卡启动,网关等设置
/etc/fstab //记录开机mount的文件系统 也可以放在/etc/rc.local
/etc/inittab //init时选择什么样的runlevel 等级
/etc/exports //NFS的配置路径
/etc/init.d //很多启动服务都在这里 /etc/init.d/sshd
/etc/xinit.d //该模式不是很好,先不做了解
/etc/profile //系统全局的环境变量路径
/etc/profile.d //加载系统的程序,单独存在

以上是关于学习记录003-简单系统优化目录结构的主要内容,如果未能解决你的问题,请参考以下文章

Java学习--点滴记录003

003 机器学习中的基础知识

HDFS学习记录

Dailight 训练记录

风速预测基于matlab EMD+模拟退火算法优化DBN风速预测含Matlab源码 JQ003期

Java设计模式学习记录-外观模式