延安城管暴力对待美利达占道一事,客观发表一下自己的意见.

无意中看到视频, 最初看到还是很平和的,

一开始我还没看到后面的时候先看到了评论老是骂,

心里想, 是不是又是那些断章取义的视频又或者只会隔岸观火的无知网友在评论..?

直到3分02秒, 我惊呆了,

城管的行为, 实在太夸张了.. 那完全不是一个正常人能做得出的行为..!

后来根据视频提供的线索搜索, 找到了几篇关联的文章, 自己看…

http://www.pingxiaow.com/gundong/index.php?m=content&c=index&a=show&catid=7&id=43863&page=1000

http://roll.sohu.com/20130610/n378548929.shtml

或者大家直接搜索”延安城管”.

发表一下我的看法:

城管有存在的必要, 他们维护城市的环境是应该的,

谁也不愿意看到自己生活在一个脏乱差的环境当中,

所以合理整治很重要.

之前看过很多视频, 大家只要看到城管的视频就骂, 不动脑袋开口就骂,不站在客观的角度去思考, 完全就是种sb行为,  这也是目前绝大部分网友的脑残表现, 所以我的第一反应是会不会又是那些断章取义的视频..?

直到我看到3分02秒的时候, 我就什么都明白了.

在这个视频中, 那个胖城管被解释为临时工, 估计也是了.

正常来说, 只要有文化的人, 绝对不会做出这样的双腿飞蹬的行为,

因为只要学过数理化, 人很正常会意识到这一行为是会致命的, 不管你的借口是在非常愤怒的情况之下, 很明显那是一个小混混的行为.

可想而知, 没文化, 真可怕.

无论怎样, 那样的城管行为绝对是不可取的, 希望是个别, 而且希望zf能够负责任一点, 不要老把责任推卸到临时工身上, 因为毕竟人事你挑选并且聘用回来的, 这个责任, 你怎样推也是推卸不了的.

最后补充一句: 适当的打人是可以的, 也是可以理解的, 但是视频中的那一脚, 是任何人都不能够原谅的.

在vps上搭建linux+apache+wordpress,解决内存占用无限大的问题.

本来我的服务器上就只有 linux+mysql+lighttpd+tomcat,

后来因为想搭建个自己的博客, 所以在服务器中装上了apache+php.

在此之前, 我768mb内存只占用400+M而已, 后来成功装上了wordpress后,

发现内存占用异常的高, 服务器的内存都没了, 甚至影响到运行在tomcat容器上的客户网站运作

后来经过各种排除, 得出 wordpress 运作的情况之下, 每次刷新wordpress, 内存就增加10-20MB, 直到爆满.

后来搜索各种资料, 在wordpress群里还被人笑我的垃圾openVPS的服务器, 说啥的什么xen之类的啦, 说我的垃圾还把问题赖在wordpress上.

总之, 凭着一贯解决问题的经验告诉我, 不会是这个原因.

中间很多经历省略, 反正最终找到原因是apache的配置问题,

我的apache2.4默认配置文件中没有限制MaxConnectionsPerChild导致的,

于是在conf.cfg中添加 MaxConnectionsPerChild = 10 后发现问题解决了.

当然, MaxConnectionsPerChild 要根据个人的需要而设定,

反正我 MaxConnectionsPerChild = 100 的时候, apache的内存就占200多M…

自己看着办吧…

后来我再在群上说不是那个笑我的vps的人所说的问题, 原来只是 MaxConnectionsPerChild 没有限制而已, 那个当事人立刻哑口无言…

另外说一下题外话:

我一贯都不喜欢一些人, 总以为自己懂得很多, 然后就妄下定论并把自己定位的高高在上.

反正我做人是这样, 想问题, 必须充分考虑各种可能性, 不在自己不清楚具体状况的时候妄下定论, 这种情况下, 其实多加几个字 “在我的认知下” 会看得出一个人平时思考的深度, 当然, 装逼的除外.

mysql无法启动,提示”ERROR! The server quit without updating PID file (/var/lib/mysql/sway.pro.pid).”

某次重启后, 发现再也不能启动mysql服务器了.

使用 service mysql restart 指令, 却提示:

[root@sway ~]# service mysql restart
ERROR! MySQL server PID file could not be found!
Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/sway.pro.pid).

回想了一下刚刚的操作, 我曾经不小心把在系统根目录使用的递归权限设置指令 chown -R virtual / , 致使出现了一连串的问题(本来我是想添加所有文件夹的修改权限给virtual的,没想到是全部改成了权限只属于virtual一人了), 当我重新使用 chown -R root / 指令后, 发现基本恢复正常了. 后来经历了一次重启, 发现我服务器的网站提示数据库连接出错, 于是上网搜索了一堆资料, 一开始还以为是什么僵尸进程导致的, 后来继续找, 发现是权限问题, 估计是mysql丢失了原本是属于他的文件权限了.

使用这个指令”chown -R mysql.mysql /var/lib/mysql”后, 再使用  service mysql start 指令, 一切正常..!

以下是我找到的原文记录:

现在又进行了如下操作:
mkdir /var/lib/mysql
chown -R mysql.mysql /var/lib/mysql

然后再运行mysqld_safe --user=mysql &

发现还是错误,立马进入/var/lib/mysql进行查看,发现文件夹里面的文件,不是lib文件,而是mysql数据库
发现问题,立马在mysqld_safe后面加上--basedir和--datadir目录,结果可以运行,而且一切正常

后修改mysql服务启动文件,修改basedir和datadir,结果启动发现sock出错。

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

目前继续排错中。。。。

一到公司运行
/usr/local/mysql/bin/mysqld_safe --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql &
发现又出现错误了,NND

出自于: http://forum.ubuntu.org.cn/viewtopic.php?t=333605

修改文件目录的权限(chown chgrp)

linux下,每一个文件、每一个目录都有一个属主,并针对用户自己、用户所在组、其它所有帐号(组)分别设定读、写、执行三种权限。例如,我(假定是webusers组的floatboat帐户的拥有者)使用如下命令建立一个新的文件 touch mytestfile
然后我们使用ls -l mytestfile这一命令来查看这个文件的权限状态(关于ls命令,可以查阅本站的命令查询),可以得到如下的屏幕输出显示:
-rw-rw-r– 1 floatboat webusers 0 Feb 6 21:37 mytestfile
输出由空格分为9个部分,我们比较关心第一、三、四个字段,分别表示文件权限属性、文件所有者帐户、文件所属组。
◆使用chown命令修改文件的主人
当你新建立一个文件的时候,文件的所有者当然就是你了。这一事实只有超级用户(比如说root)才可以通过chown命令改变(例如 chown otheruser mytestfile,把mytestfile文件的属主改为otheruser)。普通用户不能把自己的文件“送”给别人,不然你把有特殊目的的程序给了root怎么办?:)
chown命令的用法比较简单。这里我先假设你现在拥有超级用户权限,那么你就可以使用如下命令将一个文件“送给”floatboat了:
chown floatboat /home/floatboat/thefileisrootcreate.txt (假定该文件是由root创建的)
修改一个目录的所有者也是类似的:
chown floatboat /home/newboat
当然,如果这个目录还有子目录及文件需要同时送给floatboat,chown也是支持-R参数的:
chown -R floatboat /home/newboat
如果你同时想修改文件/目录所属的组的话,你可以使用以下命令方便的达到目的:
chown -R floatboat.ftpusers /home/newboat
这样,不但文件主人得到了修改,文件所属的组也变成了ftpusers
◆ 修改文件的组属性
文件所属组你倒是可以改变,前提是:
1、你的超级用户。
2、你同时属于两个或两个以上的组。
两个条件你至少具备一个,你才能够把文件所属旧组变为新组。使用如下的命令将当前目录下所有html文件所属的组改为httpd:
chgrp httpd *.html
和chown命令一样,chgrp也可以使用-R参数对一个目录内的所有文件和子目录进行递归的修改组属性。
:你可以使用不带参数的groups命令查看自己属于哪个组。

vsftp 虚拟账户的 site chmod 的启用

vsftp中使用了虚拟账户,但在默认配置下虚拟账户没有site chmod的使用权限,总是报550 Permission denied 。
让vsftp虚拟用户拥有site chmod的权限的方法是:
1、让vsftp的本地用户(我的是vsuer)拥有文件的目录。

2、修改vsftpd.conf配置文件

guest_enable=YES #允许guest以vuser访问

guest_username=vsuer #允许映射到vuser

virtual_use_local_privs=YES #虚拟用户与vuser 有相同权限

另外可能还需要开启chmod,当然,它是默认开启的。
chmod_enable=YES

chkconfig命令详解

chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

使用语法:
chkconfig [–add][–del][–list][系统服务] 或 chkconfig [–level <等级代号>][系统服务][on/off/reset]

chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。

参数用法:
–add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
–del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
–level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。

chkconfig –list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
chkconfig –add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
chkconfig –del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
chkconfig [–level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。

运行级文件:
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 – 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

使用范例:
chkconfig –list #列出所有的系统服务
chkconfig –add httpd #增加httpd服务
chkconfig –del httpd #删除httpd服务
chkconfig –level httpd 2345 on #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig –list #列出系统所有的服务启动情况
chkconfig –list mysqld #列出mysqld服务设置情况
chkconfig –level 35 mysqld on #设定mysqld在等级3和5为开机运行服务,–level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

如何增加一个服务:
1.服务脚本必须存放在/etc/ini.d/目录下;
2.chkconfig –add servicename
在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
3.chkconfig –level 35 mysqld on
修改服务的默认启动等级。

在centOS让mysql打开(取消)开机启动

通过yum安装MySQL后,默认开机时不会自动启动,需要手动设置MySQL让它开机自启动。

首先通过chkconfig命令看看MySQL在不在可管理的列表中,命令是:

chkconfig –list

如果列表中没有mysqld这个,需要先用这个命令添加:

chkconfig add mysqld

然后用这个命令设置开机启动:

chkconfig mysqld on

最后确认一下是否设置成功,如图:

crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off
iptables        0:off   1:off   2:on    3:on    4:on    5:on    6:off
jexec           0:on    1:on    2:on    3:on    4:on    5:on    6:on
modules_dep     0:off   1:off   2:on    3:on    4:on    5:on    6:off
mysql           0:off   1:off   2:on    3:on    4:on    5:on    6:off
named           0:off   1:off   2:off   3:off   4:off   5:off   6:off
netconsole      0:off   1:off   2:off   3:off   4:off   5:off   6:off
netfs           0:off   1:off   2:off   3:off   4:on    5:on    6:off
network         0:off   1:off   2:on    3:on    4:on    5:on    6:off
nmb             0:off   1:off   2:off   3:off   4:off   5:off   6:off
nscd            0:off   1:off   2:off   3:off   4:off   5:off   6:off
portreserve     0:off   1:off   2:on    3:off   4:on    5:on    6:off
quota_nld       0:off   1:off   2:off   3:off   4:off   5:off   6:off
rdisc           0:off   1:off   2:off   3:off   4:off   5:off   6:off
restorecond     0:off   1:off   2:off   3:off   4:off   5:off   6:off
rpcbind         0:off   1:off   2:on    3:off   4:on    5:on    6:off
rsyslog         0:off   1:off   2:on    3:on    4:on    5:on    6:off
saslauthd       0:off   1:off   2:off   3:on    4:off   5:off   6:off
sendmail        0:off   1:off   2:on    3:on    4:on    5:on    6:off
smb             0:off   1:off   2:off   3:off   4:off   5:off   6:off
snmpd           0:off   1:off   2:off   3:off   4:off   5:off   6:off
snmptrapd       0:off   1:off   2:off   3:off   4:off   5:off   6:off
sshd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
udev-post       0:off   1:on    2:on    3:off   4:on    5:on    6:off
vsftpd          0:off   1:off   2:off   3:on    4:off   5:on    6:off
xinetd          0:off   1:off   2:off   3:on    4:on    5:on    6:off

如果对应mysqld对应的6项中有3项是on就证明已经设置成功。

在CentOs中安装vsFtpd并创建多个虚拟用户,且不同的用户拥有不同的权限以及指向不同的文件夹

在vsftpd中要实现不同用户不同权限,可以利用虚拟用户来实现。

vsftpd的本地用户本身是系统的用户,除了可以登录FTP服务器外,还可以登录系统使用其他系统资源,而vsftpd的虚拟用户则是FTP服务的专用用户,虚拟用户只能访问FTP服务器资源。对于只需要通过FTP对系统有读写权限,而不需要其他系统资源的用户或情况来说,采用虚拟用户方式是很适合的。

vsftpd的虚拟用户采用单独的用户名/口令保存方式,与系统账号(passwd/shadow)分离,这大大增强了系统的安全性。vsftpd可以采用数据库文件来保存用户/口令,如hash;也可以将用户/口令保存在数据库服务器中,如MySQL等。vsftpd验证虚拟用户,则采用PAM方式。由于虚拟用户的用户名/口令被单独保存,因此在验证时,vsftpd需要用一个系统用户的身份来读取数据库文件或数据库服务器以完成验证,这就是guest用户,这正如同匿名用户也需要有一个系统用户ftp一样。当然,guest用户也可以被认为是用于映射虚拟用户。

环境:
CentOS 6.3
vsFtp 2.2.2

1、安装vsFtpd
$sudo apt-get install vsftpd
$sudo apt-get install db4.6-utils

2、建立本地虚拟用户
#useradd -d /home/ftp virtual
指定目录为/home/ftp

3、建立虚拟用户数据库
#mkdir /etc/vsftpd
#vim /etc/vsftpd/logins.txt
login.txt文件内容:
gavin
123
jimson
123
admin
admin

注:奇数行为用户名,偶数行为密码。
#db_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db
#chmod 600 /etc/vsftpd/vsftpd_login.db
生成数据库文件之后建议删除logins.txt。

这里有个问题,我在创建的时候,在后面的build过程中出现过如下出错提示:
db_load: unexpected end of input data or key/data pair
db_load: odd number of key/data pairs
原因大概是在ftpUserInfo.txt最后需要再加个回车,加回车后,就没问题了,在图形界面的文本编辑器保存默认也会添加一个回车,所以,如果是在图形界面的文本编辑器下直接生成的,不会出现该错误.

4、建立基于vsftpd_login的PAM授权文件
#vim /etc/pam.d/vsftpd.vu

vsftpd.vu文件内容(32位系统):
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

vsftpd.vu文件内容(64位系统):
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

注意:这里必须清楚知道自己的linux系统是32位还是64位的,如果这里不正确,那么在整过配置过程完成后,FTP将无法成功验证用户的登录,出现“530 Login incorrect 错误”。

5、设置用户权限
建立用来存放用户权限设置文件的目录
#mkdir /etc/vsftpd/virtual
并在该文件夹下依次建立与logins.txt对应的帐号名称相同的文件
#vim gavin
内容可以参考下面:
#[gavin]只允许下载
anon_world_readable_only=NO
local_root=/home/ftp

#[jimson]允许建立,修改,但是不允许删除
anon_world_readable_only=NO
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
local_root=/home/ftp

#[admin]全部权限
anon_world_readable_only=NO
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
local_root=/home/ftp

6、设置vsftpd.conf
#vim /etc/vsftpd/vsftpd.conf
修改内容如下:
listen=YES
connect_from_port_20=YES
ftpd_banner=Welcome to virtual FTP service.

anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES

guest_enable=YES
guest_username=virtual

pam_service_name=vsftpd.vu
user_config_dir=/etc/vsftpd/virtual
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log

注意备份原配置文件

7、重新启动vsftpd
#service vsftpd restart

【可能出现的问题】
1、无法登陆
解决方法:
(1)检查ftp根目录目录是否存在;
(2)检查上面设置的各个路径是否正确;
(3)查看ftp根目录的owner属性是否是virtual
#ls -al /home
如果不是
#chown -R virtual /home/ftp

【日常维护】
(1)更新帐号
#db_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db
(2)更新/etc/vsftpd/virtual/下不同用户对应的权限
(3)重启vsftpd
#service vsftpd restart

wordpress“无法创建目录。/wp-content/upgrade”或各种文件的权限问题

通过Wordpress后台管理安装插件需要服务器启动ftp服务。

在CentOS上安装vsftp后,进行插件的安装,结果显示 “无法创建目录。/wp-content/upgrade”,一开始怀疑目录权限有问题,后来使用“chmod -R 777 {相关的目录}”命令后还是不行。

开始怀疑vsftp上的设置有问题,使用ftp软件连接服务器后发现上传文件失败,返回553 Could not create file。
暂时可以确定是vsftp的问题了。但是检查vsftp.conf中的项目write_enable=YES,并没有问题,但是依然无法创建各种文件及文件夹。
于是在网上搜索后,需要使用以下命令来循环赋予相关web目录的权限才能解决问题(务必加上sudo):
sudo chmod -R 777 {相关的目录}

至于为什么要加上sudo,我在网上找了相关的描述供大家阅读:

SUDO

SUDO命令可以允许当前普通用户使用root管理员权限进行操作而无需root登录,这样可以减少因root登录而造成的各种不便

sudo命令的参数
sudo命令包含了许多参数,下面是一些常用参数的说明:
sudo -h Help 列出使用方法,退出。
sudo -V Version 显示版本信息,并退出。
sudo -l List 列出当前用户可以执行的命令。只有在sudoers里的用户才能使用该选项。
sudo -u username|#uid User 以指定用户的身份执行命令。后面的用户是除root以外的,可以是用户名,也可以是#uid。
sudo -k Kill 清除“入场卷”上的时间,下次再使用sudo时要再输入密码。
sudo -K Sure kill 与-k类似,但是它还要撕毁“入场卷”,也就是删除时间戳文件。
sudo -b command Background 在后台执行指定的命令。
sudo -p prompt command Prompt 可以更改询问密码的提示语,其中%u会代换为使用者帐号名称,%h会显示主机名称。非常人性化的设计。
sudo -e file Edit 不是执行命令,而是修改文件,相当于命令sudoedit。v

例句:SUDO RM XX.FILE

close