Linux 中 vi /etc/sysctl.conf 如何编辑

在Linux里怎么修改 vi /etc/sysctl.conf 里的参数,我想把kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576放进去,不会弄,结果还把里面原来的东西删没了,怎么恢复,怎么把上面内容弄进去?大虾帮忙!!!在线等~~!!

1、vi编辑器可以通过i、o、a等命令直接进入编辑模式,然后就可以修改文件了,vi/vim的工作模式如下图所示:

说明:

1)插入模式:i在光标前插入(默认光标为方块),a则是在光标后插入,o为新起一行并进入插入模式。

2):wq是命令模式,直接保存并退出vi。

二、/etc/sysctl.conf是一个允许改变正在运行中的Linux系统的接口,它包含一些TCP/IP堆栈和虚拟内存系统的高级选项,修改内核参数永久生效。也就是说/proc/sys下内核文件与配置文件sysctl.conf中变量存在着对应关系。如果不懂的这个文件的编辑内容,可以参考个人的一个配置实例,如下图所示:

说明:

  ã€€file-max:这个参数表示进程可以同时打开的最大句柄数,这个参数直接限制最大并发连接数。
    tcp_tw_reuse:这个参数设置为1,表示允许将TIME-WAIT状态的socket重新用于新的TCP链接。这个对服务器来说很有意义,因为服务器上总会有大量TIME-WAIT状态的连接。
    tcp_keepalive_time:这个参数表示当keepalive启用时,TCP发送keepalive消息的频度。默认是7200 seconds,意思是如果某个TCP连接在idle 2小时后,内核才发起probe。若将其设置得小一点,可以更快地清理无效的连接。
    tcp_fin_timeout:这个参数表示当服务器主动关闭连接时,socket保持在FIN-WAIT-2状态的最大时间。
    tcp_max_tw_buckets:这个参数表示操作系统允许TIME_WAIT套接字数量的最大值,如果超过这个数字,TIME_WAIT套接字将立刻被清除并打印警告信息。默认是i180000,过多TIME_WAIT套接字会使Web服务器变慢。
    tcp_max_syn_backlog:这个参数表示TCP三次握手建立阶段接受WYN请求队列的最大长度,默认1024,将其设置大一些可以使出现Nginx繁忙来不及accept新连接的情况时,Linux不至于丢失客户端发起的连接请求。
    ip_local_port_range:这个参数定义了在UDP和TCP连接中本地端口的取值范围。
    net.ipv4.tcp_rmem:这个参数定义了TCP接受缓存(用于TCP接收滑动窗口)的最小值,默认值,最大值。
    net.ipv4.tcp_wmem:这个参数定义了TCP发送缓存(用于TCP发送滑动窗口)的最小值,默认值,最大值。
    netdev_max_backlog:当网卡接收数据包的速度大于内核处理的速度时,会有一个队列保存这些数据包。这个参数表示该队列的最大值。
    rmem_default:这个参数表示内核套接字接收缓存区默认的大小。
    wmem_default:这个参数表示内核套接字发送缓存区默认的大小。
    rmem_max:这个参数表示内核套接字接收缓存区默认的最大大小。
    wmem_max:这个参数表示内核套接字发送缓存区默认的最大大小。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-20
vi /etc/sysctl.conf
进入后默认是到一般模式,按下x键删除即可,nx就是删除几个,for example: 5x 就是删除5个。
建议你看看vi基本的命令操作:
vi 编译器基本命令: a ,i ,o 插入命令 单字符光标移动命令: h 光标左移一列 j 光标下移一行 k 光标上移一行 l 光标右移一列 在命令前添加数字表示移动几行。例如:5h 光标左移5列 翻页命令: Ctrl + B 向后翻页 Ctrl + F 向前翻页 Ctrl + U 向上翻半页 Ctrl + D 向下翻半页 在命令前添加数字表示集中翻页,例如:6Ctrl + B 向后翻六页 ^ 或 $ : 将光标移至当前行首或行尾 w b W B :光标移动一个单词 注:小写命令是以字母,数字,下划线之外的所有字符作为”单词”的分界符。 大写命令是以空白符作为”单词”的分界符。 移动到指定行: :23 将光标定位在23行 :1 将光标定位于第一行 :$ 将光标定位于文件尾 括号匹配符号: % 将光标移动到括号上,则光标自动定位与它相匹配的括号 删除当前字符命令: x 删除当前行命令: dd 删除当前行 d$ 从当前行删除到行尾 d^ 从当前行删除到行首 dw 删除一个单词 替换单个符号命令:r 替换多个字符命令:R 例如:Rdajwd 然后按Esc键 复制命令:co 例如:11,12co23 将第11行到第12行复制到23行之下。 移动命令:m 例如:11,12co78 将第11行到第12行移动到78行之下。 撤销上一次的命令操作:u 抽取命令,将正文段复制到剪切板: y yy 将剪切板的内容复制到当前位置 p 重复上一次操作: 。 存盘退出: zz 存盘退出: wq 存盘不退出: :w 不存盘退出: :q! Ctrl + L 键:刷新屏幕显示 Ctrl + G 键: 显示当前状态(文件名,行号等) n N : 查找下一个 注:n向下查找,查到文件尾后自动折还到文件首继续向下查找 N向上查找,查到文件首后自动折还到文件尾继续向下查找 模式替换: 格式:行号,型号 s / 模式 / 替换字符串 /g 例如:1,50s/abc/xyz/ 将第1行到第50 行的abc 替换为xyz
第2个回答  2013-04-20
如果你没有退出vi界面,那么按esc按u就会还原的!
第3个回答  2013-04-20
如果你没有保存退出,按u可以撤销更改
第4个回答  2013-04-20
删了没关系,你可以不保存直接退出,再重新打开