Linux 命令大全(十九)——性能优化及常见问题
十九、性能优化
1、 设置文件夹打开方式
2、 设置屏幕保护时间
3、 解除上网限制
4、
二十、常见问题
1. 部分网站无法访问问题的解决
CentOS 5 内核对 TCP 的读缓冲区大小有缺省设置,缺省为:net.ipv4.tcp_rmem = 4096 87380 4194304
解决办法就是将最后一个数字改小一点,具体操作
- 文件/etc/sysctl.conf 中添加一行:net.ipv4.tcp_rmem = 4096 87380 174760
- 然后保存
- 重新启动网络 service network restart,就 OK 了,
如果还是部分网站上不去,可以检查/etc/sysctl.conf 文件是否和下面相同
net.ipv4.ip_local_port_range = 1024 65536 net.core.rmem_max=174760 net.core.wmem_max=16777216 net.ipv4.tcp_rmem=4096 87380 174760 net.ipv4.tcp_wmem=4096 65536 16777216 net.ipv4.tcp_fin_timeout = 15 net.ipv4.tcp_keepalive_time = 600 net.ipv4.tcp_tw_recycle = 1 net.core.netdev_max_backlog = 30000 net.ipv4.tcp_no_metrics_save=1 net.core.somaxconn = 262144 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_max_orphans = 8000 net.ipv4.tcp_max_syn_backlog = 8000 net.ipv4.tcp_synack_retries = 2 net.ipv4.tcp_syn_retries = 2 net.ipv4.tcp_wmem=4096 65536 16777216 # 为自动调优定义每个 socket 使用的内存。 ''' # 第一个值 4096是为 socket 的发送缓冲区分配的最少字节数。 # 第二个值 65536 是默认值(该值会被 wmem_default 覆盖),缓冲区在系统负载不重的情况下可以增长到这个值。 # 第三个值 16777216 是发送缓冲区空间的最大字节数(该值会被 wmem_max 覆盖)net.ipv4.tcp_rmem=4096 87380 174760:与 tcp_wmem 类似,不过它表示的是为自动调优所使用的接收缓冲区的值。 ''' net.core.rmem_max = 25165824 # 定义最大的 TCP/IP 栈的接收窗口大小 net.core.rmem_default = 25165824 # 定义默认的 TCP/IP 栈的接收窗口大小 net.core.wmem_max = 25165824 # 定义最大的 TCP/IP 栈的发送窗口大小 net.core.wmem_default = 65536 # 定义默认的 TCP/IP 栈的发送窗口大小 net.ipv4.tcp_sack =1 # 启用有选择的应答(Selective Acknowledgment),这可以通过有选择地应答乱序接收到的报文来提高性能(这样可以让发送者只发送丢失的报文段);(对于广域网通信来说)这个选项应该启用,但是这会增加对 CPU 的占用。 net.ipv4.tcp_window_scaling = 1 # 启用 RFC1323 定义,支持超过 64K 窗口 net.ipv4.tcp_fack =1 # 启用转发应答(Forward Acknowledgment),这可以进行有选择应答(SACK)从而减少拥塞情况的发生;这个选项也应该启用。 net.ipv4.tcp_mem 24576 32768 49152 # 确定 TCP 栈应该如何反映内存使用;每个值的单位都是内存页(通常是 4KB)。 ''' 第一个值是内存使用的下限。 第二个值是内存压力模式开始对缓冲区使用应用压力的上限。 第三个值是内存上限。在这个层次上可以将报文丢弃,从而减少对内存的使用。对于较大的 BDP 可以增大这些值(但是要记住,其单位是内存页,而不是字节)。 '''
2. Centos5 无法连接无线网络
系统->管理->服务器设置->服务,将 NetworkManager 选项勾选,点击重启服务。然后就可以看到右上角已经有了网络连接。
3. Linux远程管理Windows程序Rdesktop详解
rdesktop 使用简单,windows 也不需要装什么服务端,只要把远程桌面共享打开就行了
Linux 安装
rpm –q rdesktop # 查找是否已经安装 yum install rdesktop # 用 yum 安装
具体使用方法要先打开终端,然后输入以下命令:
rdesktop -u yournape -p password -g 1024*720 192.168.0.2
- rdesktop 为使用远程桌面连接的命令;
- -u 用户名,yourname 处为目标客户端的用户名;
- -p 客户端用户的密码;
- -g 指定使用屏幕大小-g 800*600+0+0 这个‘+0’就是你这个窗口在你 linux 上出现的位置;
- 192.168.0.1 目标客户端的 IP 地址
实例:
rdesktop -u aixi -p d337448 -r clipboard:PRIMARYCLIPBOARD -r disk:centos=/root -r sound:local -z -a 16 10.26.11.72 $rdesktop 192.168.1.1 # 打开了一个 8 位色彩的, $rdesktop -a 16 192.168.1.1 # 这个是 16 位色彩的了,看起来好多了 $rdesktop -u administrator -p ****** -a 16 192.168.1.1 # 都直接登陆了 $rdesktop -u administrator -p ****** -a 16 -r sound:local 192.168.1.1
加上-r sound:local 可以把声音也搞过来,-r 的作用挺多的可以重定向许多东西,看一下帮助就会收获不少了。
- -r comport:COM1=/dev/ttyS0 :将串口 /dev/ttyS0 重定向为 COM1
- -r comport:COM1=/dev/ttyS0,COM2=/dev/ttyS1 : 多个串口重定向
- -r disk:floppy=/mnt/floppy : 将 /mnt/floppy 重定向为远程共享磁盘 'floppy'
- -r disk:floppy=/mnt/floppy,cdrom=/mnt/cdrom,root=/,c=/mnt/c :多个磁盘重定向
- -r clientname= :为重定向的磁盘设置显示的客户端名称
- -r lptport:LPT1=/dev/lp0 :将并口 /dev/lp0 重定向为 LPT1
- -r lptport:LPT1=/dev/lp0,LPT2=/dev/lp1 :多个并口重定向
- -r printer:mydeskjet : 打印机重定向
- -r printer:mydeskjet="HP LaserJet IIIP" :打印机重定向
- -r sound:[local|off|remote]:声音重定向
- -r clipboard:PRIMARYCLIPBOARD:这个一定要加上,要不然不能在主机 Solaris 和服务器 Windows 直接复制粘贴文字了。贴中文也没有问题。
- -r disk:sunway=/home/jianjian :指定主机 Solaris 上的一个目录(/home/jianjian)映射到远程 Windows 上的硬盘(盘符为 sunway),传送文件就不用再靠 Samba 或者 FTP 了。
- -f :全屏,退出全屏:ctrl+alt+enter 再次 Ctrl+Alt+Enter 即可再次进入全屏
- -D:不显示标题栏,配合 -g 能更好地使用屏幕空间了;
- -K: 这个选项说明保持窗口管理器的按键组合绑定;
- -z:启动网络数据的压缩,减少带宽,局域网没什么作用;
提示:如果你的本地中文文件名在远程机器上显示为乱码的话,可能是你没有安装编码转化库,或者你安装的编码转化库不能正确运行。
4. Linux远程访问Windows共享目录
mount –o username=用户名 –password=密码 //192.168.0.1/C$ /tmp/samba/
说明:IP 地址 192.168.0.1 为中文名文件所在的主机,文件位于 C 盘,该主机的用户名及密码为 linux,/tmp/samba/为本地主机挂载目录。在浏览完成后,使用以下命令卸载。
umount /tmp/samba/
5. 升级或安装程序后无法进入图形界面
报错如下:
Failed to start the X server (your graphical interface). lt is likely that it is not set up correctly. Would you like to view the X server output to diagnose the problem ?
解决办法:
# 查看报错日志 cat /var/log/Xorg.0.log | grep EE # 重新安装显卡驱动 sh NVDIA
参考如下网址:
http://www.linuxquestions.org/questions/linux-hardware-18/failed-to-start-the-x-server-your-graphical-user/interface-605516/
6. Linux自动登陆的设置方法
方法一:
- 设置 GDM:GDM 是 GNOME 显示管理器,通过设置其配置文件/etc/gdm/custom.conf 可以设置帐号自动登陆。设置方法如下:
- 在/etc/gdm/custom.conf 文件中添加以下内容(username 是要自动登陆的用户名,不能是 root,也就说无法实现 root 的自动登陆)
[daemon] AutomaticLogin=username AutomaticLoginEnable=True
- 在/etc/gdm/custom.conf 文件中添加以下内容(username 是要自动登陆的用户名,不能是 root,也就说无法实现 root 的自动登陆)
- 设置 prefdm:在/etc/X11/prefdm 中添加启动 X Windows 的命令,并退出。
/usr/bin/startx exit 1
说明:(1)这两行代码一定要在下面这个代码之前[ -n "$preferred" ] && exec $preferred "$@" >/dev/null 2>&1 </dev/null
(2)该方法自动以 root 登陆,是因为运行到/etc/X11/prefdm 时,是 root 身份。 - 在 rc.local 中启动 X Windows:
在/etc/rc.local 中添加启动 X Windows 的命令
/usr/bin/startx
方法二:
- 首先配置自动登录命令行界面,修改/etc/inittab 将 1:2345:respawn:/sbin/mingetty tty1 更改为 1:2345:respawn:/sbin/mingetty tty2 --autologin aixi
- 再将/etc/inittab 修改为启动到字符界面:id:3:initdefault
- 使配置生效 init q
这样就可以开机自动启动到命令行界面,如果想自动启动到图形界面,在此基础上修改如下:
在/etc/rc.local 中添加启动 X Windows 的命令
/usr/bin/startx
这样就可以自动启动到命令行,命令行又自动运行 startx 启动图形界面。这是最简单的一种方式。以上在 Centos5.7 版本中测试通过。
相关知识点链接