Defraggler可能不熟悉,但对于电脑磁盘的碎片整理,Windows自带的磁盘整理程序一直都不是很完美。现在你也不用选择那些庞大又昂贵的专业磁盘整理程序,Defraggler 就是一款轻量级的磁盘碎片整理软件,由开发了著名的CCleaner 与 Recuva 的 Piriform 公司制作。它支持NTFS和FAT32文件系统,也可以运行在 Windows Vista 操作系统上。虽然容量不到 1MB,但是功能和效率却一点不差。它可以快速高效的整理某个磁盘、文件夹甚至一个文件。而且,这款精巧的软件是免费的!
Defraggler特点:
一、整理速度快;
二、整理效果佳;
三、支持目录和文件整理;(与 Wincontig 有异曲同工之妙)
四、体积小巧,资源占用少;(可以运行在最小配置的 PE 环境下)
Defraggler设置中文的方法
点击菜单Help-->About-->General-->在language处选择Chinese(simplified),还可整理完后自动关机。
Defraggler|Defraggler 2.09 官方版下载_ DownLoad Url:http://dl.pconline.com.cn/html_2/1/67/id=50103&pn=0.html
Defraggler特点:
一、整理速度快;
二、整理效果佳;
三、支持目录和文件整理;(与 Wincontig 有异曲同工之妙)
四、体积小巧,资源占用少;(可以运行在最小配置的 PE 环境下)
Defraggler设置中文的方法
点击菜单Help-->About-->General-->在language处选择Chinese(simplified),还可整理完后自动关机。
Defraggler|Defraggler 2.09 官方版下载_ DownLoad Url:http://dl.pconline.com.cn/html_2/1/67/id=50103&pn=0.html
init 0为关机﹐init 1为重启。有时磁盘有问题卡住后往往比reboot 管用。来自:https://jingyan.baidu.com/article/e4511cf362e0d32b845eaffe.html
启动级别:init 0,1,2,3,4,5,6
这是个很久的知识点了,只是自己一直都迷迷糊糊的,今天在翻出来好好理解下。。
0:停机
1:单用户形式,只root进行维护
2:多用户,不能使用net file system
3:完全多用户
5:图形化
4:安全模式
6:重启 重新启动
其实,可以通过查看/etc/rc.d/中的rc*.d的文件来对比理解。。
阅读全文
启动级别:init 0,1,2,3,4,5,6
这是个很久的知识点了,只是自己一直都迷迷糊糊的,今天在翻出来好好理解下。。
0:停机
1:单用户形式,只root进行维护
2:多用户,不能使用net file system
3:完全多用户
5:图形化
4:安全模式
6:重启 重新启动
其实,可以通过查看/etc/rc.d/中的rc*.d的文件来对比理解。。

本文出自 “静静的” 博客,谢绝转载! 写得好,当然得转。
先贴来源:http://lhf0616.blog.51cto.com/2920914/538453
(1)这一条登录多少次后就提示并自动结束会话:非常重要,在CentOS6.2中实践Ok,如下:
[root@station90 ssh]# cat /etc/ssh/sshd_config | grep MaxAuth
MaxAuthTries 1 //远程用户通过ssh连接登录2次失败后自动结束会话
The server has disconnected with an error. Server message reads:
A protocol error occurred. Too many authentication failures for root
(2)root只能从tty1和vc登陆。建议仅允许root从一个tty或vc登陆,如果需要更多设备登陆,使用su命令转换为root。
openssh应该禁止使用协议1,禁止root直接登录
/etc/ssh/sshd_config
Protocol 2
MaxAuthTries 1
PermitRootLogin no //不允许root用户使用ssh登录
StrictModes yes
PermitEmptyPasswords no //不允许使用空密码登录
PrintLastLog yes
root不登录,其他用户登录时,添加密码,和用户时的具体操作方法:
useradd jackxiang
忘记了密码,得有root去修改它即可:
jackxiang@192.168.225.128:/root# su root
密码:
root@192.168.225.128:~# passwd jackxiang
更改用户 jackxiang 的密码 。
新的 密码:
service sshd restart
禁止某些用户使用ssh远程登录:
http://www.myhack58.com/Article/48/66/2011/30887.htm
vim /etc/pam.d/sshd
在第一行加入 auth required pam_listfile.so item=user sense=deny file=/etc/sshdusers onerr=succeed,注意一定要在第一行,因为pam中执行顺序是上面优先
vim /etc/sshdusers
在文件中加入root wp ,root 和wp是两个本地用户
service sshd restart
在另一个终端测试
[root@clone2 ~]# ssh clone1.rhel.com
root@clone1.rhel.com's password:
Permission denied, please try again.
root@clone1.rhel.com's password:
Permission denied, please try again.
root@clone1.rhel.com's password:
Permission denied (publickey,gssapi-with-mic,password).
[wp@clone2 ~]$ ssh clone1.rhel.com
wp@clone1.rhel.com's password:
Permission denied, please try again.
wp@clone1.rhel.com's password:
Permission denied, please try again.
wp@clone1.rhel.com's password:
Permission denied (publickey,gssapi-with-mic,password).
两个用户都无法使用ssh了。呵呵,目的达到了
(3)root@192.168.225.128:~# cat /etc/login.defs | grep PASS | grep -v ^#
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
PASS_MAX_DAYS 90 //口令最大使用日期90天
PASS_MIN_DAYS 0 //若设置为2,则设置密码2天后才可以再次更改密码,即密码至少要保留的天数
PASS_MIN_LEN 8 //口令最小长度8位
PASS_WARN_AGE 7 //口令过期前7天警告
(4)
umask至少为027,最好是077
[root@station60 ~]# grep umask /etc/bashrc
umask 077
umask 077
[root@station60 ~]# . /etc/bashrc
[root@station60 ~]# umask
0077
[root@station60 ~]# touch 3.txt
[root@station60 ~]# ll 3.txt
-rw------- 1 root root 0 Apr 8 00:11 3.txt
(5)
检查系统是否最小化安装,启动的运行级别为3
查看/etc/pam.d/su是否包含以下两行
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
auth required pam_wheel.so use_uid //上面的注释已经说的很清楚了,没有注释下面这一行,那么要su到别的用户就必须在wheel组中
(6)关闭telnet服务,redhat默认是关闭telnet服务的
[root@station90 ssh]# netstat -tnlp | grep :23
[root@station90 ssh]# cd /etc/xinetd.d/
[root@station90 xinetd.d]# ls telnet*
ls: telnet*: 没有那个文件或目录
如果有telnet服务,则把该目录下的telnet文件改为disable=yes
[root@station90 xinetd.d]# tail -n 2 /etc/xinetd.d/krb5-telnet | head -n 1
disable = yes
[root@station90 xinetd.d]# service xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
===================================================================================
上面是我从Url:http://lhf0616.blog.51cto.com/2920914/538453 总结的,我贴上原文:
[root@station90 桌面]# awk -F : '($2=="") {print $1}' /etc/shadow //检查空口令帐号
zhang3
[root@station90 桌面]# tail -n 1 /etc/shadow | head -n 1 //-F :是以冒号作为分隔符,($2==""表示第1个和第2个冒号之间是空的,即空口令帐号,{print $1}打印出用户名
zhang3::15071:0:99999:7:::
检查帐号
[root@station90 桌面]# pwck
用户 adm:目录 /var/adm 不存在
用户 news:目录 /etc/news 不存在
用户 uucp:目录 /var/spool/uucp 不存在
用户 gopher:目录 /var/gopher 不存在
用户 pcap:目录 /var/arpwatch 不存在
用户 avahi-autoipd:目录 /var/lib/avahi-autoipd 不存在
用户 oprofile:目录 /home/oprofile 不存在
pwck:无改变
口令复杂度及登录失败策略
应启用登录失败处理功能,可采取结束会话,限制非法登录次数和自动退出措施,口令应有复杂度要求并定期更换
要求强制记住3个密码历史
口令至少包含1个数字,字母和其他特殊字符(如:#,@,!,$等);
5次远程登录失败自动结束会话
[root@station90 桌面]# cat /etc/login.defs | grep PASS | grep -v ^#
PASS_MAX_DAYS 90 //口令最大使用日期90天
PASS_MIN_DAYS 0 //若设置为2,则设置密码2天后才可以再次更改密码,即密码至少要保留的天数
PASS_MIN_LEN 8 //口令最小长度8位
PASS_WARN_AGE 7 //口令过期前7天警告
[root@station90 pam.d]# cat /etc/pam.d/system-auth | tail -n 2 && grep ^#password /etc/pam.d/system-auth
password required pam_cracklib.so difok=3 minlen=8 dcredit=-1,lcredit=-1 ocredit=-1 maxrepeat=3
password required pam_unix.so use_authtok nullok md5
#password requisite pam_cracklib.so try_first_pass retry=3 //注释这一行后,无法修改密码
[root@station90 pam.d]# passwd
Changing password for user root.
passwd: Authentication information cannot be recovered
修改登录失败策略
[root@station90 ssh]# cat /etc/ssh/sshd_config | grep MaxAuth
MaxAuthTries 1 //远程用户通过ssh连接登录2次失败后自动结束会话
[root@station90 ssh]# ssh 192.168.0.90
root@192.168.0.90's password:
Permission denied, please try again.
root@192.168.0.90's password:
Received disconnect from 192.168.0.90: 2: Too many authentication failures for root
关闭telnet服务,redhat默认是关闭telnet服务的
[root@station90 ssh]# netstat -tnlp | grep :23
[root@station90 ssh]# cd /etc/xinetd.d/
[root@station90 xinetd.d]# ls telnet*
ls: telnet*: 没有那个文件或目录
如果有telnet服务,则把该目录下的telnet文件改为disable=yes
[root@station90 xinetd.d]# tail -n 2 /etc/xinetd.d/krb5-telnet | head -n 1
disable = yes
[root@station90 xinetd.d]# service xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
[root@station90 xinetd.d]# chkconfig xinetd on
openssh应该禁止使用协议1,禁止root直接登录
/etc/ssh/sshd_config
Protocol 2
MaxAuthTries 1
PermitRootLogin no //不允许root用户使用ssh登录
StrictModes yes
PermitEmptyPasswords no //不允许使用空密码登录
PrintLastLog yes
[root@station60 init.d]# pwd
/etc/rc.d/init.d
[root@station60 init.d]# chmod -R 750 ./ 也可以直接chmod -R /etc/init.d/*
[root@station60 init.d]# ll | head -n 2
total 644
-rwxr-x--- 1 root root 1566 Jun 8 2009 acpid
umask至少为027,最好是077
[root@station60 ~]# grep umask /etc/bashrc
umask 077
umask 077
[root@station60 ~]# . /etc/bashrc
[root@station60 ~]# umask
0077
[root@station60 ~]# touch 3.txt
[root@station60 ~]# ll 3.txt
-rw------- 1 root root 0 Apr 8 00:11 3.txt
检查系统是否最小化安装,启动的运行级别为3
查看/etc/pam.d/su是否包含以下两行
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
auth required pam_wheel.so use_uid //上面的注释已经说的很清楚了,没有注释下面这一行,那么要su到别的用户就必须在wheel组中
[root@station60 pam.d]# gpasswd -a oracle wheel
Adding user oracle to group wheel
[root@station60 pam.d]# id oracle
uid=500(oracle) gid=500(oracle) groups=500(oracle),0(root),10(wheel) context=system_u:system_r:unconfined_t
[root@station60 pam.d]# id zhang3
uid=501(zhang3) gid=501(zhang3) groups=501(zhang3) context=system_u:system_r:unconfined_t
[root@station60 pam.d]# su - zhang3
[zhang3@station60 ~]$ su - root //以下密码输入都是正确的
Password:
su: incorrect password
[zhang3@station60 ~]$ su - oracle
Password:
su: incorrect password
[zhang3@station60 ~]$ su - oracle
Password:
su: incorrect password
[zhang3@station60 ~]$ su - oracle
Password:
su: incorrect password
[zhang3@station60 ~]$
[oracle@station60 ~]$ su - oracle
Password:
[oracle@station60 ~]$ su - root
Password:
[root@station60 ~]#
操作指南 1.本地登录用户参考配置操作
#cd /etc/profile.d
执行
#vi autologout.sh
加入如下内容:
TMOUT=600
readonly TMOUT
export TMOUT
保存退出,系统将在用户闲置10分钟后自动注销。
2.远程登录用户参考配置操作
#vi /etc/ssh/sshd_config
将以下内容设置为:
ClientAliveInterval 600
ClientAliveCountMax 0
以上表示10分钟闲置后,自动注销并结束会话。
检测方法 1、判定条件
查看帐号超时是否自动注销;
2、检测操作
cat /etc/ssh/sshd_config
检查其中两个参数设置:
ClientAliveInterval 600
ClientAliveCountMax 0
(2)执行:awk -F: '($3 == 0) { print $1 }' /etc/passwd
返回值包括“root”以外的条目,说明有其他超级用户,低于安全要求。
2、检测操作
执行:awk -F: '($3 == 0) { print $1 }' /etc/passwd
返回值包括“root”以外的条目,说明有其他超级用户;
/etc/securetty 文件设置root登陆的tty和vc(虚拟控制台)设备。/etc/securetty 文件被login程序读 (通常 /bin/login)。它的格式是允许的tty和vc列表,注释掉或不出现的设备,不允许root登陆。
vc/1
#vc/2
#vc/3
#vc/4
#vc/5
#vc/6
#vc/7
#vc/8
#vc/9
#vc/10
#vc/11
tty1
#tty2
#tty3
#tty4
#tty5
#tty6
#tty7
#tty8
#tty9
#tty10
#tty11
root只能从tty1和vc登陆。建议仅允许root从一个tty或vc登陆,如果需要更多设备登陆,使用su命令转换为root。
#!/bin/sh
#
export file=/root/Desktop/
先贴来源:http://lhf0616.blog.51cto.com/2920914/538453
(1)这一条登录多少次后就提示并自动结束会话:非常重要,在CentOS6.2中实践Ok,如下:
[root@station90 ssh]# cat /etc/ssh/sshd_config | grep MaxAuth
MaxAuthTries 1 //远程用户通过ssh连接登录2次失败后自动结束会话
The server has disconnected with an error. Server message reads:
A protocol error occurred. Too many authentication failures for root
(2)root只能从tty1和vc登陆。建议仅允许root从一个tty或vc登陆,如果需要更多设备登陆,使用su命令转换为root。
openssh应该禁止使用协议1,禁止root直接登录
/etc/ssh/sshd_config
Protocol 2
MaxAuthTries 1
PermitRootLogin no //不允许root用户使用ssh登录
StrictModes yes
PermitEmptyPasswords no //不允许使用空密码登录
PrintLastLog yes
root不登录,其他用户登录时,添加密码,和用户时的具体操作方法:
useradd jackxiang
忘记了密码,得有root去修改它即可:
jackxiang@192.168.225.128:/root# su root
密码:
root@192.168.225.128:~# passwd jackxiang
更改用户 jackxiang 的密码 。
新的 密码:
service sshd restart
禁止某些用户使用ssh远程登录:
http://www.myhack58.com/Article/48/66/2011/30887.htm
vim /etc/pam.d/sshd
在第一行加入 auth required pam_listfile.so item=user sense=deny file=/etc/sshdusers onerr=succeed,注意一定要在第一行,因为pam中执行顺序是上面优先
vim /etc/sshdusers
在文件中加入root wp ,root 和wp是两个本地用户
service sshd restart
在另一个终端测试
[root@clone2 ~]# ssh clone1.rhel.com
root@clone1.rhel.com's password:
Permission denied, please try again.
root@clone1.rhel.com's password:
Permission denied, please try again.
root@clone1.rhel.com's password:
Permission denied (publickey,gssapi-with-mic,password).
[wp@clone2 ~]$ ssh clone1.rhel.com
wp@clone1.rhel.com's password:
Permission denied, please try again.
wp@clone1.rhel.com's password:
Permission denied, please try again.
wp@clone1.rhel.com's password:
Permission denied (publickey,gssapi-with-mic,password).
两个用户都无法使用ssh了。呵呵,目的达到了
(3)root@192.168.225.128:~# cat /etc/login.defs | grep PASS | grep -v ^#
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
PASS_MAX_DAYS 90 //口令最大使用日期90天
PASS_MIN_DAYS 0 //若设置为2,则设置密码2天后才可以再次更改密码,即密码至少要保留的天数
PASS_MIN_LEN 8 //口令最小长度8位
PASS_WARN_AGE 7 //口令过期前7天警告
(4)
umask至少为027,最好是077
[root@station60 ~]# grep umask /etc/bashrc
umask 077
umask 077
[root@station60 ~]# . /etc/bashrc
[root@station60 ~]# umask
0077
[root@station60 ~]# touch 3.txt
[root@station60 ~]# ll 3.txt
-rw------- 1 root root 0 Apr 8 00:11 3.txt
(5)
检查系统是否最小化安装,启动的运行级别为3
查看/etc/pam.d/su是否包含以下两行
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
auth required pam_wheel.so use_uid //上面的注释已经说的很清楚了,没有注释下面这一行,那么要su到别的用户就必须在wheel组中
(6)关闭telnet服务,redhat默认是关闭telnet服务的
[root@station90 ssh]# netstat -tnlp | grep :23
[root@station90 ssh]# cd /etc/xinetd.d/
[root@station90 xinetd.d]# ls telnet*
ls: telnet*: 没有那个文件或目录
如果有telnet服务,则把该目录下的telnet文件改为disable=yes
[root@station90 xinetd.d]# tail -n 2 /etc/xinetd.d/krb5-telnet | head -n 1
disable = yes
[root@station90 xinetd.d]# service xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
===================================================================================
上面是我从Url:http://lhf0616.blog.51cto.com/2920914/538453 总结的,我贴上原文:
[root@station90 桌面]# awk -F : '($2=="") {print $1}' /etc/shadow //检查空口令帐号
zhang3
[root@station90 桌面]# tail -n 1 /etc/shadow | head -n 1 //-F :是以冒号作为分隔符,($2==""表示第1个和第2个冒号之间是空的,即空口令帐号,{print $1}打印出用户名
zhang3::15071:0:99999:7:::
检查帐号
[root@station90 桌面]# pwck
用户 adm:目录 /var/adm 不存在
用户 news:目录 /etc/news 不存在
用户 uucp:目录 /var/spool/uucp 不存在
用户 gopher:目录 /var/gopher 不存在
用户 pcap:目录 /var/arpwatch 不存在
用户 avahi-autoipd:目录 /var/lib/avahi-autoipd 不存在
用户 oprofile:目录 /home/oprofile 不存在
pwck:无改变
口令复杂度及登录失败策略
应启用登录失败处理功能,可采取结束会话,限制非法登录次数和自动退出措施,口令应有复杂度要求并定期更换
要求强制记住3个密码历史
口令至少包含1个数字,字母和其他特殊字符(如:#,@,!,$等);
5次远程登录失败自动结束会话
[root@station90 桌面]# cat /etc/login.defs | grep PASS | grep -v ^#
PASS_MAX_DAYS 90 //口令最大使用日期90天
PASS_MIN_DAYS 0 //若设置为2,则设置密码2天后才可以再次更改密码,即密码至少要保留的天数
PASS_MIN_LEN 8 //口令最小长度8位
PASS_WARN_AGE 7 //口令过期前7天警告
[root@station90 pam.d]# cat /etc/pam.d/system-auth | tail -n 2 && grep ^#password /etc/pam.d/system-auth
password required pam_cracklib.so difok=3 minlen=8 dcredit=-1,lcredit=-1 ocredit=-1 maxrepeat=3
password required pam_unix.so use_authtok nullok md5
#password requisite pam_cracklib.so try_first_pass retry=3 //注释这一行后,无法修改密码
[root@station90 pam.d]# passwd
Changing password for user root.
passwd: Authentication information cannot be recovered
修改登录失败策略
[root@station90 ssh]# cat /etc/ssh/sshd_config | grep MaxAuth
MaxAuthTries 1 //远程用户通过ssh连接登录2次失败后自动结束会话
[root@station90 ssh]# ssh 192.168.0.90
root@192.168.0.90's password:
Permission denied, please try again.
root@192.168.0.90's password:
Received disconnect from 192.168.0.90: 2: Too many authentication failures for root
关闭telnet服务,redhat默认是关闭telnet服务的
[root@station90 ssh]# netstat -tnlp | grep :23
[root@station90 ssh]# cd /etc/xinetd.d/
[root@station90 xinetd.d]# ls telnet*
ls: telnet*: 没有那个文件或目录
如果有telnet服务,则把该目录下的telnet文件改为disable=yes
[root@station90 xinetd.d]# tail -n 2 /etc/xinetd.d/krb5-telnet | head -n 1
disable = yes
[root@station90 xinetd.d]# service xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
[root@station90 xinetd.d]# chkconfig xinetd on
openssh应该禁止使用协议1,禁止root直接登录
/etc/ssh/sshd_config
Protocol 2
MaxAuthTries 1
PermitRootLogin no //不允许root用户使用ssh登录
StrictModes yes
PermitEmptyPasswords no //不允许使用空密码登录
PrintLastLog yes
[root@station60 init.d]# pwd
/etc/rc.d/init.d
[root@station60 init.d]# chmod -R 750 ./ 也可以直接chmod -R /etc/init.d/*
[root@station60 init.d]# ll | head -n 2
total 644
-rwxr-x--- 1 root root 1566 Jun 8 2009 acpid
umask至少为027,最好是077
[root@station60 ~]# grep umask /etc/bashrc
umask 077
umask 077
[root@station60 ~]# . /etc/bashrc
[root@station60 ~]# umask
0077
[root@station60 ~]# touch 3.txt
[root@station60 ~]# ll 3.txt
-rw------- 1 root root 0 Apr 8 00:11 3.txt
检查系统是否最小化安装,启动的运行级别为3
查看/etc/pam.d/su是否包含以下两行
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
auth required pam_wheel.so use_uid //上面的注释已经说的很清楚了,没有注释下面这一行,那么要su到别的用户就必须在wheel组中
[root@station60 pam.d]# gpasswd -a oracle wheel
Adding user oracle to group wheel
[root@station60 pam.d]# id oracle
uid=500(oracle) gid=500(oracle) groups=500(oracle),0(root),10(wheel) context=system_u:system_r:unconfined_t
[root@station60 pam.d]# id zhang3
uid=501(zhang3) gid=501(zhang3) groups=501(zhang3) context=system_u:system_r:unconfined_t
[root@station60 pam.d]# su - zhang3
[zhang3@station60 ~]$ su - root //以下密码输入都是正确的
Password:
su: incorrect password
[zhang3@station60 ~]$ su - oracle
Password:
su: incorrect password
[zhang3@station60 ~]$ su - oracle
Password:
su: incorrect password
[zhang3@station60 ~]$ su - oracle
Password:
su: incorrect password
[zhang3@station60 ~]$
[oracle@station60 ~]$ su - oracle
Password:
[oracle@station60 ~]$ su - root
Password:
[root@station60 ~]#
操作指南 1.本地登录用户参考配置操作
#cd /etc/profile.d
执行
#vi autologout.sh
加入如下内容:
TMOUT=600
readonly TMOUT
export TMOUT
保存退出,系统将在用户闲置10分钟后自动注销。
2.远程登录用户参考配置操作
#vi /etc/ssh/sshd_config
将以下内容设置为:
ClientAliveInterval 600
ClientAliveCountMax 0
以上表示10分钟闲置后,自动注销并结束会话。
检测方法 1、判定条件
查看帐号超时是否自动注销;
2、检测操作
cat /etc/ssh/sshd_config
检查其中两个参数设置:
ClientAliveInterval 600
ClientAliveCountMax 0
(2)执行:awk -F: '($3 == 0) { print $1 }' /etc/passwd
返回值包括“root”以外的条目,说明有其他超级用户,低于安全要求。
2、检测操作
执行:awk -F: '($3 == 0) { print $1 }' /etc/passwd
返回值包括“root”以外的条目,说明有其他超级用户;
/etc/securetty 文件设置root登陆的tty和vc(虚拟控制台)设备。/etc/securetty 文件被login程序读 (通常 /bin/login)。它的格式是允许的tty和vc列表,注释掉或不出现的设备,不允许root登陆。
vc/1
#vc/2
#vc/3
#vc/4
#vc/5
#vc/6
#vc/7
#vc/8
#vc/9
#vc/10
#vc/11
tty1
#tty2
#tty3
#tty4
#tty5
#tty6
#tty7
#tty8
#tty9
#tty10
#tty11
root只能从tty1和vc登陆。建议仅允许root从一个tty或vc登陆,如果需要更多设备登陆,使用su命令转换为root。
#!/bin/sh
#
export file=/root/Desktop/
滚滚长江东逝水,浪花淘尽英雄。 是非成败转头空, 青山依旧在,几度夕阳红。 白发渔樵江渚上,惯看秋月春风。 一壶浊酒喜相逢, 古今多少事,都付笑谈中。...
---------------------------------------
来自:http://www.xici.net/d106492604.htm
杨慎简介:http://bingrong78.blog.163.com/blog/static/8691953520115119580514/
杨慎生平:http://laiba.tianya.cn/tribe/showArticle.jsp?groupId=31658&articleId=c3f6b89aeccbedf7bbc8c59e25f230b5
阅读全文
---------------------------------------
来自:http://www.xici.net/d106492604.htm
杨慎简介:http://bingrong78.blog.163.com/blog/static/8691953520115119580514/
杨慎生平:http://laiba.tianya.cn/tribe/showArticle.jsp?groupId=31658&articleId=c3f6b89aeccbedf7bbc8c59e25f230b5

我家笔记本 打开无线网络显示windows无法配置此无线连接 但是网是连接着的(因为之前有设定) 不知道什么时候开无线网络就显示了windows无法配置此无线连接:
1.查看无线网卡的驱动是否安装正确,查看方法:右键“我的电脑” 单击 “属性” -> 硬件 -> 设备管理器 -> 网络适配器 -> 找到无线网卡,如果驱动不正确,一般会有黄色问号提示,这个时候就需要你找到原配光盘来重新驱动。
2.无线网卡没有打开,多数笔记本的无线网卡都会有一个物理开关,设置在笔记本后面或侧面,找到后确认打开,“on”为开,“off”为关。那有些型号的笔记本这个时候还有一个组合键开关操作。如联想E600,还需要功能键(Fn)+F4,来进行网卡的开关。打开后,笔记本会有亮灯显示。
3.如果这个时候,仍然 “windows无法配置此无线连接”,那么就可以确定 wzc服务没有启动,方法:“开始”菜单 -> 控制面板 -> 管理工具 -> 服务,打开后找到 Wireless Zero Configuration 这项服务,双击进入,确认该服务是否启动,并且将服务启动方式改为自动,这样以后重启机器时,该服务就会自动启动了。
问题出现在第三步,把这个 Wireless Zero Configuration 这项服务给关闭掉了,打开后就Ok了。
1.查看无线网卡的驱动是否安装正确,查看方法:右键“我的电脑” 单击 “属性” -> 硬件 -> 设备管理器 -> 网络适配器 -> 找到无线网卡,如果驱动不正确,一般会有黄色问号提示,这个时候就需要你找到原配光盘来重新驱动。
2.无线网卡没有打开,多数笔记本的无线网卡都会有一个物理开关,设置在笔记本后面或侧面,找到后确认打开,“on”为开,“off”为关。那有些型号的笔记本这个时候还有一个组合键开关操作。如联想E600,还需要功能键(Fn)+F4,来进行网卡的开关。打开后,笔记本会有亮灯显示。
3.如果这个时候,仍然 “windows无法配置此无线连接”,那么就可以确定 wzc服务没有启动,方法:“开始”菜单 -> 控制面板 -> 管理工具 -> 服务,打开后找到 Wireless Zero Configuration 这项服务,双击进入,确认该服务是否启动,并且将服务启动方式改为自动,这样以后重启机器时,该服务就会自动启动了。
问题出现在第三步,把这个 Wireless Zero Configuration 这项服务给关闭掉了,打开后就Ok了。
最近两天,每次发表日志后,经过约半分钟,提示这样:
Bo-Blog Database System Tips: MySQL Query Error
Time: 2008-3-6 2:39am
Script:
SQL: DELETE FROM `***blogs` WHERE `blogid`=-1
Error: MySQL server has gone away
Errno.: 2006
大概是前两天就开始的,每次都这样,要返回,继续点确定,反复多次,才有可能发布出去
或者点保存为草稿,再发布,不过保存为草稿也不是每次都成功,有时也显示这个错误
要怎么修复啊,出什么问题了?查来查去,有人说是因为google的插件,于是关闭插件:
pingservce (已激活)
Ping Service for Bo-blog
参考:http://www.9enjoy.com/page/1/53/
Bo-Blog Database System Tips: MySQL Query Error
Time: 2008-3-6 2:39am
Script:
SQL: DELETE FROM `***blogs` WHERE `blogid`=-1
Error: MySQL server has gone away
Errno.: 2006
大概是前两天就开始的,每次都这样,要返回,继续点确定,反复多次,才有可能发布出去
或者点保存为草稿,再发布,不过保存为草稿也不是每次都成功,有时也显示这个错误
要怎么修复啊,出什么问题了?查来查去,有人说是因为google的插件,于是关闭插件:
pingservce (已激活)
Ping Service for Bo-blog
参考:http://www.9enjoy.com/page/1/53/
做一个实现自动登录的脚本 搜索资料后 很多人推荐使用expect命令
其中涉及到spawn
m_jackxiang@MNET-SZ-24*:~/bin> spawn ssh -p 36000 webdev@172.1*.**.***
bash: spawn: command not found
为什么我的linux机器找不到 spawn命令?
spawn是expect的算一个内建命令, 你当然man不到.
man expect|less -p spawn
spawn是进入expect环境后才可以执行的expect内部命令,如果没有装expect或者直接在默认的SHELL下执行是找不到spawn命令的。所以不要用 “which spawn“之类的命令去找spawn命令。好比windows里的dir就是一个内部命令,这个命令由shell自带,你无法找到一个dir.com 或 dir.exe 的可执行文件。
其中涉及到spawn
m_jackxiang@MNET-SZ-24*:~/bin> spawn ssh -p 36000 webdev@172.1*.**.***
bash: spawn: command not found
为什么我的linux机器找不到 spawn命令?
spawn是expect的算一个内建命令, 你当然man不到.
man expect|less -p spawn
spawn是进入expect环境后才可以执行的expect内部命令,如果没有装expect或者直接在默认的SHELL下执行是找不到spawn命令的。所以不要用 “which spawn“之类的命令去找spawn命令。好比windows里的dir就是一个内部命令,这个命令由shell自带,你无法找到一个dir.com 或 dir.exe 的可执行文件。
MacBook里自带Stickies,使用方法:https://jingyan.baidu.com/article/6079ad0ec5375628ff86dba7.html
这个 PNotes 相当好,找了好久,试了 N 个,终于找到个比较满意的了。
我的要求主要就 2 点,有快捷键、带管理(搜索)。我的用途基本上就和纸质便签一样,随时记写电话号码等等的,所以速度要快,要有快捷键才好用,有些信息可能过了一段时间还要用到,所以要有管理功能,最好有搜索。
PortableApps 提供的下载地址是 3.5 版的,没搜索,我装了以后用着感觉不错,但是有点小失望,后来到官方网站上看有 4.0 版的,下来一看,加了搜索功能,简直太棒了。
DownLoad:http://pnotes.sourceforge.net/
但是,我发现适合自己的还是uniqueruan建议和推荐使用的:Stickies(桌面便签) ,在哪儿才能下载呢?
这个是uniqueruan用的Stickies(桌面便签) V7.1b 简体中文绿色免费版 V7.1b:
http://www.dxysoft.com/soft/html/11535.html
这个是我发现的中文的Sticker桌面便签 V2.4 绿色版,还有不错的颜色和中文区分:
http://www.dxysoft.com/soft/html/22097.html
这个 PNotes 相当好,找了好久,试了 N 个,终于找到个比较满意的了。
我的要求主要就 2 点,有快捷键、带管理(搜索)。我的用途基本上就和纸质便签一样,随时记写电话号码等等的,所以速度要快,要有快捷键才好用,有些信息可能过了一段时间还要用到,所以要有管理功能,最好有搜索。
PortableApps 提供的下载地址是 3.5 版的,没搜索,我装了以后用着感觉不错,但是有点小失望,后来到官方网站上看有 4.0 版的,下来一看,加了搜索功能,简直太棒了。
DownLoad:http://pnotes.sourceforge.net/
但是,我发现适合自己的还是uniqueruan建议和推荐使用的:Stickies(桌面便签) ,在哪儿才能下载呢?
这个是uniqueruan用的Stickies(桌面便签) V7.1b 简体中文绿色免费版 V7.1b:
http://www.dxysoft.com/soft/html/11535.html
这个是我发现的中文的Sticker桌面便签 V2.4 绿色版,还有不错的颜色和中文区分:
http://www.dxysoft.com/soft/html/22097.html
Zorin OS为替代Win而设计,Zorin是一个专为Windows用户提供的一个系统。这个版本的特点是基于Unity外壳的Ubuntu的GNOME2.X经典的环境。Zorin OS – 长得最像 Win7 的 Linux,Zorin OS 是 Linux 界的一朵奇葩,发行版基于 Ubuntu 尽可能模仿 Windows 7 界面,开始菜单任务栏什么的基本一模一样。系统自带了常用办公娱乐上网应用,还配备了 WINE,尽可能兼容一些 Windows 程序,如果你有兴趣且会折腾不妨一试。有免费版本下载,还提供各种专业方向(教育、商业、多媒体)的收费版本可供购买 DVD。
安装:http://tech.hexun.com/2011-06-13/130456262.html
安装:http://tech.hexun.com/2011-06-13/130456262.html
Nemo Documents 是款文件组织管理工具(文档管理器),不是街道大妈胜似大妈,除了按类型、时间分类外,还可以为每个文件添加标签,为重要文件加星。
详情:http://www.appinn.com/nemo-documents/
详情:http://www.appinn.com/nemo-documents/
网站服务器是一个在 Android 平台上搭建 Web 环境的小工具。
这坑爹名字……很不好介绍
就两个按钮,启动关闭。
然后访问网址就可以了。
需要 WIFI ,否则不干活。
网页文件放在 /sdcard/www/ 下,就是你 SD 卡下的 www 文件夹。
其实市场上类似应用很多,介绍这个是因为简单,而且是中文。没任何技术门槛,大家都可以用。
然后一个关键问题:究竟有什么用?
很深奥啊?但是我不说肯定有人问。
你可以放一些静态页面的小工具在里面,方便使用。比如我,把爱写字(详情见这里专注写作 – 方便易用的专心写作工具[Chrome])的源码扔进去了,完美运行,欧耶~~
DownLoad:http://g.appinn.com/um
这坑爹名字……很不好介绍
就两个按钮,启动关闭。
然后访问网址就可以了。
需要 WIFI ,否则不干活。
网页文件放在 /sdcard/www/ 下,就是你 SD 卡下的 www 文件夹。
其实市场上类似应用很多,介绍这个是因为简单,而且是中文。没任何技术门槛,大家都可以用。
然后一个关键问题:究竟有什么用?
很深奥啊?但是我不说肯定有人问。
你可以放一些静态页面的小工具在里面,方便使用。比如我,把爱写字(详情见这里专注写作 – 方便易用的专心写作工具[Chrome])的源码扔进去了,完美运行,欧耶~~
DownLoad:http://g.appinn.com/um
之前有过一款文件搜索神器 Everything!因为它的瞬间搜索速度实在让人震惊,相信很多人都对它爱不释手。但很可惜它只能搜索文件名而不能搜索文档的内容。譬如说想要搜索一份内容里带有“工资表”字样而不知道文件名的Word文档,那么就只能找外援了。 DocFetcher 是一个免费开源且跨平台的桌面文档内容搜索引擎,它能遍历你所有的文件文档内容,然后方便地对自己的电脑进行全文搜索。搜索自己电脑本地的文档内容就像使用Google或百度一样简单方便,这意味着你不必再去记忆文件名了,只要输入文件内容关键字即可搜索……
DocFetcher 桌面文档全文搜索引擎简介: DocFetcher 跟 Google Desktop 和 百度硬盘搜索 的原理一样,都是需要事先对硬盘上的文件内容进行索引。然而,它比 Google Desktop 好的地方就是可以由用户指定索引的文件夹和文件格式。由于 Google Desktop 和 百度硬盘搜索 等进行全硬盘的全文索引实在太太太太太慢了,而且很久都没更新了 (估计都被官方抛弃了)。DocFetcher 虽然速度上比它们没有多少优势,但却可以把目录设置到你最常存放文档的文件夹而不是索引整个磁盘,当然这样就相当于变相提高索引速度了。DocFetcher 另外一个优势是索引数据比较小,不像 Google Desktop 那样,扫描完之后索引文件很容易就上几个G了。
使用方法: 启动软件后,在右下角的“Search Scope”区域里右键,选择“Create Index”来选择要索引的文件夹,按“Run”确定并开始索引(文件数较多的话可能要等一段时间),当索引完成之后就可以进行搜索了!
DocFetcher 有几个选项可以让你更准确地搜索想要的结果,例如左上角可以指定最小和最大文件的大小,筛选文件类型等。搜索结果会在同一界面上显示名称、大小、文件名、类型、路径、作者、修改日期等信息。左键点击任意文件将在预览区加载文件的内容。
支持搜索的文档格式: DocFetcher 支持搜索的文档格式非常丰富,如:网页(html),文本文档 (txt),PDF,chm,rtf,Office文档 (doc、xls、ppt、docx、 xlsx、 pptx),OpenOffice (odt、ods、odg、odp),AbiWord (abw、abw.gz、zabw),Visio (vsd),svg 等等,基本上流行的文档都能被索引和搜索,应该能满足绝大部分人的需求了。
免费、跨平台、开源: DocFetcher 拥有 Windows 和 Linux 的版本,而且源代码也是开放的,你可以免费使用,甚至还能通过源代码学习它的技术。由于它使用 Java 开发,所以你的系统需要先安装好 Java 运行库才能正常使用。
写在后面: DocFetcher 的界面和功能做的算是中规中矩,支持格式还算广泛,重要的是它支持 Unicode,也就是说能完美支持中文 (简体与繁体) 搜索了!当然,大多数记得文件名的时候,神器 Everything 已经能满足文件搜索的需求了,只是偶尔需要通过文档文件内容进行搜索时,或者工作需要经常要和大量文档打交道的朋友,我推荐大家用 DocFetcher 作为一个补充吧,它同样不会让你失望的。
官网下载:http://sourceforge.net/projects/docfetcher/
介绍来自:http://www.appinn.com/docfetcher/
DocFetcher 桌面文档全文搜索引擎简介: DocFetcher 跟 Google Desktop 和 百度硬盘搜索 的原理一样,都是需要事先对硬盘上的文件内容进行索引。然而,它比 Google Desktop 好的地方就是可以由用户指定索引的文件夹和文件格式。由于 Google Desktop 和 百度硬盘搜索 等进行全硬盘的全文索引实在太太太太太慢了,而且很久都没更新了 (估计都被官方抛弃了)。DocFetcher 虽然速度上比它们没有多少优势,但却可以把目录设置到你最常存放文档的文件夹而不是索引整个磁盘,当然这样就相当于变相提高索引速度了。DocFetcher 另外一个优势是索引数据比较小,不像 Google Desktop 那样,扫描完之后索引文件很容易就上几个G了。
使用方法: 启动软件后,在右下角的“Search Scope”区域里右键,选择“Create Index”来选择要索引的文件夹,按“Run”确定并开始索引(文件数较多的话可能要等一段时间),当索引完成之后就可以进行搜索了!
DocFetcher 有几个选项可以让你更准确地搜索想要的结果,例如左上角可以指定最小和最大文件的大小,筛选文件类型等。搜索结果会在同一界面上显示名称、大小、文件名、类型、路径、作者、修改日期等信息。左键点击任意文件将在预览区加载文件的内容。
支持搜索的文档格式: DocFetcher 支持搜索的文档格式非常丰富,如:网页(html),文本文档 (txt),PDF,chm,rtf,Office文档 (doc、xls、ppt、docx、 xlsx、 pptx),OpenOffice (odt、ods、odg、odp),AbiWord (abw、abw.gz、zabw),Visio (vsd),svg 等等,基本上流行的文档都能被索引和搜索,应该能满足绝大部分人的需求了。
免费、跨平台、开源: DocFetcher 拥有 Windows 和 Linux 的版本,而且源代码也是开放的,你可以免费使用,甚至还能通过源代码学习它的技术。由于它使用 Java 开发,所以你的系统需要先安装好 Java 运行库才能正常使用。
写在后面: DocFetcher 的界面和功能做的算是中规中矩,支持格式还算广泛,重要的是它支持 Unicode,也就是说能完美支持中文 (简体与繁体) 搜索了!当然,大多数记得文件名的时候,神器 Everything 已经能满足文件搜索的需求了,只是偶尔需要通过文档文件内容进行搜索时,或者工作需要经常要和大量文档打交道的朋友,我推荐大家用 DocFetcher 作为一个补充吧,它同样不会让你失望的。
官网下载:http://sourceforge.net/projects/docfetcher/
介绍来自:http://www.appinn.com/docfetcher/
新注意问题,将sprintf这个写在foreach时拼接URl时,要注意,不能直接写成:
1.sprintf错误赋值的写法(不能修改下面这个$getURlStr),如下:
2.而应该写成,如下,sprintf的值应该重新赋值给一个新的变量:
------------------------------------------------------------
接着讲:PHP的sprintf()函数用法
主要是对:在 0 后面的是 1 这个 1 是规定,小数点前面的数字占位要有1位以上。
例子,使用范例
这个 %01.2f 是什么意思呢?
首先 这个 % 符号是开始的意思,他写在最前面表示指定格式要开始了。 也就是 "起始字符", 直到出现 "转换字符" 为止,就算格式终止。
主要是想了解这一句:
如果把 1 改成 2 如果 $money 的值为 1.23 ,则 $formatted 的值将为 01.23
因为,在小数点前面的数字只占了1位,按照上面所规定的格式,小数点前数字应该占2位,现在只有1位,所以,用0来填满。
到目前,在 %01 后面的 .2 (点2) 就很好理解了,它的意思是,规定,小数点后的数字,必需占2位. 如果这时候,$money 的值为 1.234,则 $formatted 的值将为 1.23。
为什么 4 不见了呢? 因为,在小数点后面 按照上面的规定,必需且仅能占2位。 可是 $money 的值中,小数点占了3位,所以,4 被去掉了,只剩下 23。
最后,以 f "转换字符" 结尾,其他转换字符请自行参考上面的转换字符列表。
关于对齐
如果在 % 起始符号后面 加上 - (负号) 则,将会把数字以向右对齐的方式进行处理。
这时候,$formatted 将不会再是 01.40 而是 1.400
阅读全文
1.sprintf错误赋值的写法(不能修改下面这个$getURlStr),如下:
2.而应该写成,如下,sprintf的值应该重新赋值给一个新的变量:
------------------------------------------------------------
接着讲:PHP的sprintf()函数用法
主要是对:在 0 后面的是 1 这个 1 是规定,小数点前面的数字占位要有1位以上。
例子,使用范例
这个 %01.2f 是什么意思呢?
首先 这个 % 符号是开始的意思,他写在最前面表示指定格式要开始了。 也就是 "起始字符", 直到出现 "转换字符" 为止,就算格式终止。
主要是想了解这一句:
如果把 1 改成 2 如果 $money 的值为 1.23 ,则 $formatted 的值将为 01.23
因为,在小数点前面的数字只占了1位,按照上面所规定的格式,小数点前数字应该占2位,现在只有1位,所以,用0来填满。
到目前,在 %01 后面的 .2 (点2) 就很好理解了,它的意思是,规定,小数点后的数字,必需占2位. 如果这时候,$money 的值为 1.234,则 $formatted 的值将为 1.23。
为什么 4 不见了呢? 因为,在小数点后面 按照上面的规定,必需且仅能占2位。 可是 $money 的值中,小数点占了3位,所以,4 被去掉了,只剩下 23。
最后,以 f "转换字符" 结尾,其他转换字符请自行参考上面的转换字符列表。
关于对齐
如果在 % 起始符号后面 加上 - (负号) 则,将会把数字以向右对齐的方式进行处理。
这时候,$formatted 将不会再是 01.40 而是 1.400

php与smarty结合时:smarty下PHP一样的strpos函数的使用示例
Php/Js/Shell/Go jackxiang 2012-3-22 15:18