博文

目前显示的是 八月, 2013的博文

给pidgin安装pidgin-lwqq插件

pidgin很好安装,源里面有,直接aptitude install pidgin即可安装完成。 pidgin-lwqq安装则较为麻烦一点。首先git clone https://github.com/xiehuc/pidgin-lwqq.git pidgin-lwqq,如果没有git的先安装aptitude install git ,然后再安装pidgin-lwqq所需要的依赖包apt-get install build-essential cmake pkg-config libglib2.0-dev libcurl4-openssl-dev libpurple-dev。安装完这些依赖包后开始编译: git submodule init git submodule update mkdir build;cd build cmake .. make sudo make install

gpasswd命令

1.功能作用 用户组管理命令 2.位置 /usr/bin/gpasswd 3.格式用法 gpasswd [option] GROUP 4.主要参数 -a, –add USER 添加用户到组 -d, –delete USER 从组删除用户 -h, –help 显示帮助信息 -r, –remove-password 删除密码 -R, –restrict 限制用户登入组,只有组中的成员才可以用newgrp加入该组 -M, –members USER,… 指定组成员和-A的用途差不多 -A, –administrators ADMIN,…指定管理员 5.应用实例 1、添加用户到组 sudo gpasswd -a tom webadmin 2、用户从组中删除 sudo gpasswd -d tom webadmin 3、给用户组设置密码 sudo gpasswd webadmin 4、将tom提升为webadmin组管理员 gpasswd -A tom webadmin 5、删除组密码 gpasswd -r webadmin 6、禁止其他用户切换到该组 gpasswd -R webadmi

add-apt-repository

我们可以使用 “add-apt-repository” 脚本添加 ppa 到当前的库中并且自动导入公钥。 再终端下使用下面的语法: add-apt-repository ppa: 举个例子:安装最新的audacious(ubuntu下) sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install audacious 注: add-apt-repository 是由 python-software-properties 这个工具包提供的 所以要先安装python-software-properties 才能使用 add-apt-repository 否则会显示“command not found” 安装方法:apt-get install python-software-properties 删除:add-apt-repository –remove ppa: 即可

Gedit中文乱码解决方法

本文针对gnome桌面 直接ALT+F2 输入dconf-editor,展开/org/gnome/gedit/preferences/encodings auto-detected的Value中加入 ‘GB18030’ ,加在CURRENT前面;

Debian不能添加VPN?

图片
一直用windows 桌面,添加VPN客户端只需要上控制面板点几下就OK,今天在debian桌面上想VPN一下出去透透气,可是在网络配置里的添加VPN按钮是灰色的。如下图 找了半天终于找到解决方法了:apt-get install network-manager-pptp-gnome

chmod命令setuid setgid sticky bit说明

permission的符号模式表: 模式 名字 说明 r 读 设置为可读权限 w 写 设置为可写权限 x 执行权限 设置为可执行权限 X 特殊执行权限 只有当文件为目录文件,或者其他类型的用户有可执行权限时,才将文件权限设置可执行 s setuid/gid 当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限 t 粘贴位 设置粘贴位,只有超级用户可以设置该位,只有文件所有者u可以使用该位   一个文件都有一个所有者, 表示该文件是谁创建的. 同时, 该文件还有一个组编号, 表示该文件所属的组, 一般为文件所有者所属的组. 如果是一个可执行文件, 那么在执行时, 一般该文件只拥有调用该文件的用户具有的权限. 而setuid, setgid 可以来改变这种设置. setuid: 设置使文件在执行阶段具有文件所有者的权限. 典型的文件是 /usr/bin/passwd. 如果一般用户执行该文件, 则在执行过程中, 该文件可以获得root权限, 从而可以更改用户的密码. setgid: 该权限只对目录有效. 目录被设置该位后, 任何用户在此目录下创建的文件都具有和该目录所属的组相同的组. sticky bit: 该位可以理解为防删除位. 一个文件是否可以被某用户删除, 主要取决于该文件所属的组是否对该用户具有写权限. 如果没有写权限, 则这个目录下的所有文件都不能被删除, 同时也不能添加新的文件. 如果希望用户能够添加文件但同时不能删除文件, 则可以对文件使用sticky bit位. 设置该位后, 就算用户对目录具有写权限, 也不能删除该文件. 下面说一下如何操作这些标志: 操作这些标志与操作文件权限的命令是一样的, 都是 chmod. 有两种方法来操作, 1) chmod u+s temp — 为temp文件加上setuid标志. (setuid 只对文件有效) chmod g+s tempdir — 为tempdir目录加上setgid标志 (setgid 只对目录有效) chmod o+t temp — 为temp文件加上sticky标志 (sticky只对文件有效) 2) 采用八进制方式. 对一般文件通过三组八进制数字来置标志, 如 666, 777, 644等. 如果设置这些特殊标志, ...

samba passwd的几种方式

passdb backend就是用户后台的意思。目前有三种后台:smbpasswd、tdbsam和ldapsam。sam应该是security account manager(安全账户管理)的简写。   1.smbpasswd   passdb backend = smbpasswd   该方式是使用smb自己的工具smbpasswd来给系统用户(真实用户或者虚拟用户)设置一个Samba密码,客户端就用这个密码来访问Samba的资源。smbpasswd文件默认在/etc/samba目录下,不过有时候要手工建立该文件。   smbpasswd -a 用户名 #添加一个samba用户 smbpasswd -d 用户名 #禁用一个samba用户 smbpasswd -e 用户名 #恢复一个samba用户 smbpasswd -x 用户名 #删除一个samba用户   2.tdbsam   passdb backend = tdbsam   该方式则是使用一个数据库文件来建立用户数据库。数据库文件叫passdb.tdb,默认在/etc/samba目录下。passdb.tdb 用户数据库可以使用smbpasswd –a来建立Samba用户,不过要建立的Samba用户必须先是系统用户。我们也可以使用pdbedit命令来建立Samba账户并由其pdbedit管 理。   用户的建立可以先用mksmbpasswd建立一个smppasswd文件,然后用pdbedit将文件里的用户导入数据库。   cat /etc/passwd | mksmbpasswd > /etc/samba/smbpasswd   pdbedit命令的参数很多,我们列出几个主要的:   pdbedit -i smbpasswd:/etc/samba/smbpasswd pdbedit -a username:新建Samba账户。 pdbedit -x username:删除Samba账户。 pdbedit -L:列出Samba用户列表,读取passdb.tdb数据库文件。 pdbedit -Lv:列出Samba用户列表的详细信息。 pdbedit -c “[D]” –u username:暂停该Sa...

FreeBSD系统优化防止ddos

1)这个话题有点大,我相信我做的只是其中很小的一部分,同时很多人也会问我,是不是要编译内核,这边的回答是不需要编译任何内核,只需要copy文件,然后重启一下服务器就可以了。   2)加载文件修改 # vi /boot/loader.conf #加入如下文本 kern.dfldsiz=”2147483648″ # Set the initial data size limit kern.maxdsiz=”2147483648″ # Set the max data size kern.ipc.nmbclusters=”0″ # Set the number of mbuf clusters kern.ipc.nsfbufs=”66560″ # Set the number of sendfile(2) bufs ##解释: a. 第一,第二行主要是为了突破1G内存设置的 b. 第三行其实是bsd的一个bug,当系统并发达到一个数量级的时候,系统会crash,这个是非常糟糕的事情,所幸更改了这个参数后,在高并发的时候,基本可以没有类似情况,当然非常bt的情况,还得进一步想办法 c. 第四行是读取的文件数,如果你下载的文件比较大,且比较多,加大这个参数,是非常爽的   3)Sysctl修改 #vi /etc/rc.local sysctl kern.ipc.maxsockets=100000 ##增加并发的socket,对于ddos很有用 sysctl kern.ipc.somaxconn=65535 ##打开文件数 sysctl net.inet.tcp.msl=2500 ##timeout时间   4)通过上述的简单优化,会给你带来意外的惊喜,如果有兴趣的兄弟,可以尝试一下看看,绝无副作用。

freebsd卸载及重新安装程序

以php5-pcre为例: cd /usr/ports/devel/php5-pcre make deinstall rmconfig clean make build make install make clean apachectl gracefull     完整删除软件 进入 cd /var/db/pkg 找到你要删除的软件 pkg_delete nginx-0.5.33 也可以使用如[pkg_delete p5-D* ]通配符,一次删除多个软件

FreeBSD与Linux下date取日期的方法

今天日期(CST格式): FreeBSD: test# date 2011年 03月 22日 星期二 09:27:47 CST Debian: [root@shaobo ~]# date 2011年 03月 22日 星期二 09:27:47 CST   今天日期(数字格式): FreeBSD: test# date +%Y%m%d 20110322 Debian: [root@shaobo ~]# date +%Y%m%d 20110322   昨天日期(数字格式): FreeBSD: test# date -v -1d +%Y%m%d 20110321 Debian: [root@shaobo ~]# date +%Y%m%d –date=’1 days ago’ 20110321 [root@shaobo ~]# date –date=’yesterday’ +%Y%m%d 20110321   前天日期(数字格式): FreeBSD: test# date -v -2d +%Y%m%d 20110320 Debian: [root@shaobo ~]# date +%Y%m%d –date=’2 days ago’ 20110320   明天日期: FreeBSD: test# date -v +1d +%Y%m%d 20110323 Debian: [root@shaobo ~]# date +%Y%m%d –date=’tomorrow’ 20110323 [root@shaobo ~]# date -d “1 day” “+%Y%m%d” 20110323   后天日期: FreeBSD: test# date -v +2d +%Y%m%d 20110324 Debian: [root@shaobo ~]# date -d “2 day” “+%Y%m%d” 20110324   date +%s 可以得到UNIX的时间戳; [root@shaobo ~]# d...

FreeBSD crontab的用法

使用权限 : 所有使用者 使用方式 : crontab [ -u user ] file crontab [ -u user ] { -l | -r | -e } 说明 : crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。-u user 是指设定指定 user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设定自己的时程表。 参数 : crontab-e: 执行文字编辑器来设定时程表,FREEBSD内定的文字编辑器是 VI,如果你想用别的文字编辑器,可以编辑/root/.cshrc文件setenv  EDITOR  vi 改为setenv  EDITOR  ee crontab-r: 删除目前的时程表 crontab-l: 列出目前的时程表 crontab file [-u user]-用指定的文件替代目前的crontab。     时程表的格式如下 : f1            f2                   f3                f4                  f5                program 分钟    小时    月份中的第几日   月份    星期中的第几天   要执行的程序。   当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推 当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推 当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推 当 f1 为 a, b, c,… 时表示第 a, b, c,… 分钟要执行,f2 为 a, b, c,… 时表示第 a, b, c…个小时要执行,其馀类推 使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。 Linux中,个人用户的crontab放在/var/spool/cron下 FreeBSD中,个人用户...

Linux系统提示There are stopped jobs怎么办?

运行命令 logout 时,系统提示: There are stopped jobs 。这时可以运行命令 jobs ,看看是什么程序还在运行然后运行命令 fg ,把还在运行的程序调出来,安全退出该程序就可以了。