学习记录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 //加载系统的程序,单独存在

时间: 2024-08-25 09:43:03

学习记录003-简单系统优化、目录结构的相关文章

Andorid学习笔记-eclipse-bundle包SDK目录结构

eclipse-bundle包目录结构: #SDK: add-ons:附属添加,额外功能,附属文件(google地图): build-tools; docs:开发文档: extras:额外的配置文件,例如USB驱动,摄像头的驱动: platforms:安卓系统版本: platform-tools:平台工具,用的最多的就是adb工具(android debug bridge调试桥): sources:源码: system-images:系统镜像: tools:开发用到的工具,例如模拟器:

linux云计算集群架构学习笔记: 1-2 文件的目录结构

文件的基本管理和XFS文件系统备份恢复 1.1  Linux系统目录结构,相对/绝对路径. 1.2  创建/复制/删除文件,rm -rf / 意外事故 1.3 查看文件内容 1.4 xfs文件系统的备份和恢复 在windows中文件在磁盘里如上图, 而在Linux当中一切都是文件,没有磁盘的概念了,这是 linux与windows的不同,设备也看成文件 1.1.1  linux系统目录结构 /   /home   /root   /dev   /usr   /etc   /boot   /lib

web文件上传一学习记录 (简单的web浏览器可读文件的上传,servlet 文件上传)

文件上传:这里用得时表单上传的方式,表单上传到的时候 method一定指定为POST,enctype="multipart/form-data". 第一种方式,直接上传.读取.显示内容,并没有存储到服务器端. 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <% 3 String path = request.g

前端小白之每天学习记录----js简单的组件封装

设计模式:是解决问题的模板 关于设计模式,可以阅读汤姆大叔的博文http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html 这里简单介绍两种设计模式: 1.单例模式:单例就是保证一个类只有一个实例 eg:在JavaScript里,实现单例的方式有很多种,其中最简单的一个方式是使用对象字面量的方法,其字面量里可以包含大量的属性和方法: var people = { name: "lxb", age: "22"

[原创] linux课堂-学习笔记-课程3.Linux目录结构介绍及内核与shell分析

一.目录说明 1.1 bin 一般用户,可执行的系统内置命令 1.2 sbin 系统管理员,可执行的系统内置命令 1.3 boot 启动文件目录,启动有关的文件都保存在此 1.4 dev 设备管理文件,如移动硬盘.U盘.光驱等 1.5 home 用户主目录,一般情况下:一个用户都会有相对应的文件夹,以用户名称命名 1.6 lib 动态链接库共享库,类型windows的.dll文件库 其设计目的在于共享.重用部分组件,提高程序开发效率等 若依赖于太多库,也会有弊端,如安装时提示各种组件缺失等(像w

鸟哥的linux私房菜学习记录之档案与目录管理

绝对路径和相对路径 绝对路径就是从根目录到某个目录下的路径,从根目录写起,也就是/ 相对路径就是从用户当前目录的路径写起 目录相关操作 cd 切换路径 例如:cd /var/www 切换到/var/www/路径下 pwd显示当前路径 mkdir 创建一个新的目录 rmdir 删除一个空的目录 具体操作不介绍,可以使用man来查看 复制移动和删除命令 cp,mv,rm 修改默认文件权限 档案特殊权限SUID,SGID,SBIT 分别修改拥有者,所在组,其他人的x执行权限 当某个二进制程序有suid

天天团购系统-简单的目录结构

<!--以后内容并非权威,仅为个人理解--> api 接口文件目录 apk apk文件目录 app 应用文件目录 backup 数据库备份目录 cache 缓存文件目录 data 安装.卸载数据文件目录 dev (未知文件目录) errorlog 错误日志目录 iis_rewrite 重写文件目录 include 类文件目录 logic 逻辑文件存放目录(mvc-模型层) function 公共函数文件 lib 类文件 db 数据库类文件 modules 模块目录(mvc-控制器层) admi

安卓学习记录 帧布局显示目录

it安卓 注意画红线部分 在eclipse 新版本5.1.1下编译 1)写一个类继承Fragement 2)对于menu中的XML   要注意 将android复制一下,然后将末尾改为res-auto,让其自动查询 3)在AndroidManifest.xml中 类要关联库 4)关联库 5)运行图 不同帧布局的菜单都不一样

Linux之目录结构配置

因为 Linux 的开发者实在太多了,如果每个人都发展出属于自己的目录配置方法, 那么将可能会造成很多管理上的困扰.所以,就有一个叫做Filesystem Hierarchy Standard (FHS) 标准的出来了. 这个 FHS ( http://www.pathname.com/fhs/ ) 事实上仅是规范出在根目录 ( / ) 底下各个主要的目录应该是要放置什么样的档案而已. FHS 定义出两层规范出来,第一层是 / 底下的各个目录应该要放置什么样内容的档案数据,例如 /etc 应该要