Below you will find pages that utilize the taxonomy term “debian”
Posts
ubuntu下录屏
今天为了写个教程,需要录制屏幕来辅助讲解
之前一直用recordmydesktop生成ogv文件,突然发现上传到github之后ogv是不能播放的
没关系,反正也不需要声音,转成gif吧,后来查了一下,ubuntu有ffmpeg工具可以直接完成这项工作。
网上的教程比较老,还得自己添加ppa源,马上ubuntu20都要出了,官方源就带,直接装ffmpeg就行不需要外部源。
但还是麻烦,需要先录制屏幕,再手动转图,中间步骤还没法自动化
再找吧,找到了peek,真是好东东,直接录屏到gif呢。需要添加安装源。
sudo add-apt-repository ppa:peek-developers/stable
等等,peek的选项里好像有其他几个图片支持,apng和webm都是个什么,赶紧查一下。
apng是png的一种扩展,既有png的优势,又能动。
webp用过,chrome支持,有技术优势,也能动,如果可以直接生成的话,是最佳选择,但peek的生成选项里没有这个。
webm是视频格式,对标的是mp4,属于视频和音频流。
试了一下推送github,webm不能显示,apng没问题。
最终选定apng。
Posts
使用letsencrypt免费证书
权威参考如下
https://certbot.eff.org
按照教程操作,选择自己对应的操作系统即可了.
网上的中文教程有些老了,其实是不用去github先clone下来的,还慢.
在这里想说两句的是
一开始参照http://www.laozuo.org/7676.html来操作,是在自己的本机执行的,自己还先用openssl生成了密钥,没有在服务器上操作,总说不能到达服务器ip的443端口.
就很奇怪,自己本地生成的密钥是怎么被人家服务器签名认证的.文章里没说太清楚.
中午睡了一觉,半睡办醒之间想通了.
其实是必须在需要被签发的域名所在的服务器上运行签名程序,运行的时候关闭自己的apache或nginx什么的,要把443端口空出来,
这样签名程序会自己启一个服务,将生成的密钥传输给签名服务器然后在返回给服务器.
签名完毕的证书放在/etc/letsencrypt中,按照教程放入nginx配置文件即可.
Posts
define tmux prefix c-s
vim默认的c-b和bash的热键冲突,好多人都用的c-x
但是这个在vim里也是有用的,于是自己搞了个c-q,觉得挺好
一次在tmux的vim中误按了c-s,导致c-q不能解锁…
发现将tmux的prefix直接定义成c-s挺好!直接屏蔽了锁屏功能。
真的需要shell的c-s锁屏的时候,先挂起tmux再锁。
Posts
samba启动
今弄一个共享文件夹,装个samba,弄完之后忘了两个步骤,记录一下.
先是service samba restart
Failed to restart samba.service: Unit samba.service is masked.
samba分成smbd和nmbd
更改smb.conf之后只service smbd reload
然后是用户密码,更改了系统用户密码后始终不能登录,忘了smbpasswd这条了
smbpasswd -a user设置密码
Posts
jessie的升级与ati显卡
升级多了各种软件总能保持新鲜,升级太多了太折腾。
这次升级是完了,jessie里删除了fglrx-driver的包。只能用amd网站的包来装,虽然打了补丁之后可以安装但是一进桌面就黑屏,而且鼠标键盘统统没反应。
重启后删除/etc/X11/xorg.conf倒是能进桌面,但分辨率低,一看就是没显卡驱动。
之前这种问题都能通过发行包里的fglrx驱动和amd官网驱动配合调试解决,这次是玩不转了。
实在不行,最后硬件解决,从另一个机器上弄了个nvidia的显卡插上用了,不玩ati了。
Posts
linux kernel 3.14下的ati driver
一个多月前升级系统之后,就不能进入桌面了,当时捣鼓了半天发现新的3.14内核不能正确安装ati的显卡驱动,导致一直使用3.13内核。我用的是amd的apu
又加上当前google被全时间段墙,该问题一直没解决。
后来找到了以下解决方法,看来确实是我判断的新的3.14内核和ati显卡驱动不兼容的问题,打上这个补丁后,也能正常用3.14内核使用桌面了。
http://bluehatrecord.wordpress.com/2014/05/10/installing-the-proprietary-amd-catalyst-14-4-fglrx-driver-on-fedora-20-with-kernel-3-14/
Posts
jessie的一次系统升级
今天运行了一下 dist-upgrade
升级之后现实显卡驱动,年纪大了记性不好,忘了最近换的amd的apu的机器了,又装了nvidia的驱动。结果黑屏司机。
后来想起来了之后又装回去,去amd网站下驱动,装上之后死的更彻底,连键盘都不灵了。
后来用另一个电脑google一下,卸载了官方驱动,用apt装 fglrx-xxxx的一系列都装上。
然后还是黑屏,但是硬件没死,还能切换到其他控制台,查看Xorg.0.log发现说没有发现Screen,改/etc/X11/xorg.conf把里面的nvidia换成radeon。
然后进桌面,开干活。
vim开始报错vimim语法错误,这玩意好久没更新,估计也不会更新了,自己改了改还凑合能用。
然后php页面不出东西了,看日志是php5-fpm.sock权限错误,之前是 0666,升级之后的默认权限变成 0660了,而且还是root文件,所以www-data的nginx不能读写。
一开始还以为是/etc/init.d/php5-fpm里的设置,后来发现可以在/etc/php5/fpm/pool.d/www.conf里改,把listen.mode改成0666或者吧listen.owner和group都改成www-data。
不知道这个算不算个bug,不过既然是能通过配置文件修改,大概也就算个整合问题。
Posts
今天把android模拟器运行了
升级jessie之后,apt可直接安装几个android的64位基本命令
先准备好饭强
apt 安装 openjdk-7-jdk
http://android-studio.org/
把android-studio下载了,解压后运行bin/studio.sh
按向导自动配置好环境,会默认放到~/Android/Sdk中
然后在.bashrc中添加
ANDROID_HOME=”~/Android/Sdk”
PATH=”$PATH:$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools”
然后直接运行android命令,安装需要的包,react-native需要android sdk build-tools 23.0.1和 android 6.0里的sdk-platform, arm eabi v7a system image, sources for android sdk
再通过tools菜单创建一个虚拟手机.
再在react-native创建的项目中的android文件夹中添加文件local.property,内容为sdk.dir=~/Android/Sdk
然后缺的一些32位包可以用下面这几个包来补充。
lib32stdc++6
lib32z1-dev
进入react-native创建的项目运行react-native run-android
Posts
各个分区格式的比较
各个分区格式的比较
每个分区都是1G,用的命令是
lvcreate -L 1G -n c[1-4] vg
然后用mkfs格式化
c1->ext4, c2->reiserfs, c3->btrfs, c4->ntfs
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/vg-c1 1008M 34M 924M 4% /mnt/c1
/dev/mapper/vg-c2 1.0G 33M 992M 4% /mnt/c2
/dev/mapper/vg-c3 1.0G 56K 894M 1% /mnt/c3
/dev/mapper/vg-c4 1.0G 5.6M 1019M 1% /mnt/c4
看来还是ntfs装东西最多
Posts
显卡驱动造成的死机
死机问题闹了两天,而且是最麻烦的不定时死机,一开机总能用一阵子
找了个旁边的一样配置的电脑把我的硬盘换上,还是一样,刚才发现是显卡驱动问题
一开始总觉得linux不会死机死的这么彻底,总觉得是内存或者是集成显卡出了问题
最后降级了显卡驱动
把NVIDIA-Linux-x86_64-331.20
降级成NVIDIA-Linux-x86_64-319.76
就好了
http://grantkot.com/sine.html
这个页面测试一下,也稳定了
之前是,一看这个特效,就肯定死机
Posts
邮箱上传附件nginx问题
今天有人反映公司邮箱大于1m的附件无法发送。一看是万网的邮箱。万网邮箱上传用的是个flash插件,一添加附件总会停留在上传的地方,给万网客服发了邮件人家回复说没问题。但是我这怎么也发不了邮件。
后来想到可能是nginx透明proxy的问题,但是上传附件用的是post,不会被缓存。后来在chrome里的调试工具发现上传大文件时返回的是
413 Request Entity Too Large 赶紧在nginx里加上 client_max_body_size = 100m;
问题的难点在调试上。
Posts
wheezy升级iceweasel
今天调试websocket的东西,原本的iceweasel不支持websocket。
win下的火狐都支持了。
http://tech71.com/install-firefox-21-in-debian-wheezy/
参照这个加源升级版本。
Posts
dpkg –remove-architecture失败
为了装skype,dpkg –add-architecture i386还装了一堆的依赖包,用不了想取消mutiarch就报错了,
得先用一下这个命令把已经安装的i386的包都卸载先
aptitude remove `dpkg –get-selections | grep i386 | awk ‘{print $1}’`
Posts
64位系统下无法使用libpam-mysql的md5
Aug 23 09:05:57 wfoffice saslauthd[7235]: pam_mysql – non-crypt()ish MD5 hash is not supported in this build.
首先声明在32位系统上没这问题,只有64位系统出这个。
花了大半天的时间
也没弄好。
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1321601
也按这个重新编译过了
显示编译结果都OK,但还是出第一行的那个错误,不能通过验证。
看pam-mysql这个模块最后更新是2006年,这么多年就没再更新过,估计是没戏了,那时候64位系统还没普及。
https://bugs.launchpad.net/ubuntu/+source/pam-mysql/+bug/1006005
显示bug一直没修复。
Posts
dia无法输入中文问题
http://www.ubuntu-tw.org/modules/newbb/viewtopic.php?topic_id=48402&post_id=222438
参考了这个,又折腾了半天gcin,scim,全都不灵
后来在第二页看到了一个提示,把菜单里的dia命令换成dia-gnome
用dia-gnome启动后一切OK
Posts
网络启动安装linux
之前配置过网络启动安装系统。当时还有于工一起鼓捣,他弄了个网络pxe安装win2003,这个我一直都不会,不过因为是win的东西…
最近又要装个老服务器,光驱接口不通用,有usb但不支持usb启动,还好支持pxe。
今天又配置了一下,参考这个
http://www.ixpub.net/thread-1127829-1-1.html
最后我的dhcpd.conf内容如下
class “pxeclients” {
match if substring (option vendor-class-identifier, 0, 9) = “PXEClient”;
option vendor-class-identifier “PXEClient”;
vendor-option-space PXE;
option PXE.mtftp-ip 0.0.0.0;
filename “pxelinux.0”;
next-server 10.0.0.70;
}
allow booting;
allow bootp;
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.101 10.0.0.200;
option routers 10.0.0.1;
option domain-name-servers 10.0.0.70;
}
group {
next-server 10.0.0.70;
#host tftpclient {
# filename “pxelinux.0”;
#}
filename “pxelinux.0”;
}
一开始在163上下了个debian的网络启动文件。有些教程上说要下载pxelinux.0 mini.iso
其实都不用,就下载netboot.tar.gz一个文件,然后解压就都有了。
解压后会有pxelinux.0这个文件。
中间发生了点问题,目标服务器是dell poweredge 1750。
Posts
libreadline.so.5 undefined symbol problem导致reiserfs分区加载不了
昨天由于rails c命令报错,说缺少readline这个库,调试了一些什么,具体的也想不起来了。
今天一开机,报readline错误,而且几个lvm里的reiserfs分区也找不到了!
一开始还以为是分区损坏,数据完蛋了。
vgdisplay就报错
symbol lookup error: /usr/local/lib/libreadline.so.5: undefined symbol
后来google一下说是readline的问题
按这个帖子说的
http://ubuntuforums.org/showthread.php?t=269022
把几个readline的文件都删了,然后ldconfig更新一下。
竟然就好了。
加密分区也回来了,可喜可贺!
Posts
debian gpg
升级wheezy之后需要装smplayer
在sources.list里加入了
deb http://www.debian-multimedia.org wheezy main non-free
aptitude update之后
由于没有公钥,下列签名无法进行验证: NO_PUBKEY 07DC563D1F41B907
按http://www.debian-multimedia.org/上写的
先装上debian-multimedia-keyring
装上这个的意义应该就在于导入公钥
顺便了解了一下gpg命令
gpg –keyserver keyserver.ubuntu.com –search-keys 07DC563D1F41B907
如果在公钥服务器上找到,导入之
gpg –keyserver keyserver.ubuntu.com –recv 07DC563D1F41B907
gpg –export –a 07DC563D1F41B907 | sudo apt-key add –
后来知道apt-key这个命令的adv参数直接将后面的参数传递给gpg
apt-key adv –keyserver keyserver.ubuntu.com –recv-keys D1F41B907
D1F41B907就是刚才key的后8位。
前面的那几个命令就用这一个就可以替代了。
有些key在keyserver.ubuntu.com找不到,可以换wwwkeys.pgp.net试试。
先gpg –list-keys看了一下,我这个系统里还存着去年的过是的key,是squeeze安装iceweasel用的
用gpg –delete-keys xxxxxxx删除之
Posts
bash.bashrc与profile
之前装bash-completion时就发现不能自动加载,后来在~/bashrc里加了启动。
后来用rvm也没有自动加载,每次都是启动之后再
source /etc/profile.d/rvm.sh
才装载上
观察/etc/profile里有自动加载/etc/profile.d/这个目录里的sh文件
还发现,就是在gnome登录后,打开窗口下的终端时,不能加载/etc/profile和~/bash_profile的内容。
ctrl + alt + F1的控制台中是自动加载的。
应该是profile等文件的内容只在交互式登录环境中其作用。
为了在gnome中的终端中也其作用,于是把/etc/profile里加载/etc/profile.d的内容复制一份到/etc/bash.bashrc中。
再在gnome中的终端中,这些配置就加载了。
Posts
bind9默认不能查询,反解
全aptitude安装
之前的域控服务器挂了导致dns也完了。
终于有有机会不得不弄个dns服务。
发现bind9默认会不允许其他主机进行dns查询
原来需要在其named.conf.options中添加
acl allowed {10.0.0.0/24;};
options {
allow-query {allowed};
}
允许某个ip段访问才可。
很久以后,之前用git都没事,后来用capistrano自动部署的时候被fail2ban ban
发现auth.log里有
POSSIBLE BREAK-IN ATTEMPT
说是ip没有做反解。
在named.conf.default-zones里加上
zone “0.168.192.in-addr.arpa” {
type master;
file “/etc/bind/db.domain”;
};
这里ip要反写.
然后在db.domain里加上
3 IN PTR www.domain.com.
域名最后要有一个.
bind reload之后 nsloopup 一下应该就能反解了。了
Posts
nagios fcgiwrap
网上N多到处copy的文章,统统都用一个perl的nginx-fcgi脚本来启动。
找了很多还都失效了,或者报错说语法错误。
后来也找了个有效的
不过最终找了个有用的文
http://vladgh.com/blog/nagios-nginx-ubuntu
用fcgiwrap管理cgi,方便。
apt 安装 nagios3之后,没有 /var/lib/nagios3/rw/nagios.cmd文件
需要修改/etc/nagios3/nagios.cfg
check_external_commands=1
之后service nagios3 restart 就会生成这个文件了,在npc中用到。
nagios的网站根目录在/usr/share/nagios3/htdocs
设置好之后会访问会有一些css和js文件丢失的情况,需要自己建立软链接,其中images应该在 /etc/nagios3/images
以下是我的nginx的配置,因为debian版本的升级,nagios的路径改了一些所以这个网站也要相应的改一些。
cgi那里根据配置已经不用redirect了。
本次更改,debian wheezy已经升级为稳定版了。
server {
listen 80;
server_name monitor.com;
access_log /var/log/nginx/monitor.log;
location / {
location ~ .cgi$ {
root /usr/lib;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
}
location ~ ^nagios3 {
root /usr/share/nagios3/htdocs;
}
root /usr/share/nagios3/htdocs;
index index.php;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
client_max_body_size 100m;
location ~ .php$ {
Posts
debian cacti snmpdiskio
下载了snmpdiskio这个插件,按里面README走
最新版可能是0.9.6,但是到处都找不到了,其实用不到0.9.6也一样用。当前的服务器已经是3.2.0.4版本的内核,debian wheezy已经成stable了的时候了。
在被监控机器上的 /etc/snmp/snmpd.conf里加上了
extend .1.3.6.1.4.1.2021.54 hdNum /usr/local/bin/snmpdiskio hdNum
extend .1.3.6.1.4.1.2021.55 hdIndex /usr/local/bin/snmpdiskio hdIndex
extend .1.3.6.1.4.1.2021.56 hdDescr /usr/local/bin/snmpdiskio hdDescr
extend .1.3.6.1.4.1.2021.57 hdInBlocks /usr/local/bin/snmpdiskio hdInBlocks
extend .1.3.6.1.4.1.2021.58 hdOutBlocks /usr/local/bin/snmpdiskio hdOutBlocks
在
http://public.itmatrix.eu/Cacti_templates/Disk_IO
wget http://public.itmatrix.eu/Cacti_templates/Disk_IO/partition.xml
然后更改文件
将<index_order>hdDescr:hdName:hdIndex</index_order>
这行 hdName: 去掉
wget http://public.itmatrix.eu/Cacti_templates/Disk_IO/snmpdiskio
install -m 0755 -o root -g root -p -v snmpdiskio /usr/local/bin/
在监控端用
snmpwalk -v2c -c public 192.168.0.10 .1.3.6.1.4.1.2021.54
如果配置的是v3的验证
snmpwalk -v3 -u uuu -l auth -a MD5 -A pppppppp 1.
Posts
lvm加密分区
装好cryptsetup
以装好lvm为前提进行以下操作。
若分区不存在则
cryptsetup create home /dev/vg/home
若已经建立lvm分区则
cryptsetup luksFormat /dev/vg/home
让输入密码就输
完成之后的这个新盘的数据会被清空,加密分区就做好了。
打消了我之前以为可以把普通分区无损转成加密分区的幻想…
需要挂载时
cryptsetup luksOpen /dev/vg/home home
就会建立/dev/mapper/home的映射,或者自己起的其他名字的什么映射,必须通过映射名称来格式化和挂载。
完成之后
mkfs.ext4 /dev/mapper/home
或者用其他需要的分区命令格式化
然后mount这个映射就可以了,例如
mount /dev/mapper/home /home
若需要开机自动挂载
则还需要一个key文件
比如在 vim /root/home
内容是11111111或者其他什么字符串就成
然后
cryptsetup luksAddKey /dev/vg/home /root/home
添加了密钥
需要修改/etc/crypttab文件
home /dev/vg/home /root/home luks
这样应该就可以自动启动挂载了
不过我这启动时有个报错,启动之后用着也没影响
FATAL: Error inserting padlock_sha (/lib/modules/2.6.32-5-amd64/kernel/drivers/crypto/padlock-sha.ko): No such device
google说是内核bug,之后的升级应该能修正
后来我把 padlock-sha加到 /etc/modprob.d/blacklis.conf里
还有warning 报错,说那个key文件是明文,不过总算舒服点,也妨碍使用。
如果不使用密钥加载则修改 /etc/crypttab文件的第三列为 none ,如下
home /dev/vg/home none luks
就会在开机加载该分区时提示让输入密码,还是这样好些,我最后就是这么设置的。
Posts
startssl https
想从startssl申请个公网的证书,注册了也提出了申请,在选择域名的时候发现没有dyndns.info这个域名。
写信过去要求申请添加这个域名,果然过了小半天如网上所说的那样,人家服务态度很好,把不能添加的原因给我发过来了,这个域名不支持whois服务,所以无法添加…
免费的东西就泵抱怨了,残念…
Posts
debian 系统迁移
将一个老系统上的aptitude安装的软件导出列表,然后在新系统上完整的复制过去这个配置。
参考如下
http://serverfault.com/questions/737/ubuntu-how-to-setup-a-new-machine-like-an-existing-one
debconf-get-selections
debconf-set-selections
~
aptitude-create-state-bundle
aptitude-run-state-bundle –unpack
~
dpkg –get-selections “*” >myselections
“*” makes myselections include package entries for “purge” too.
试了一下,加*与不加好像没区别
on a new machine
# apt-get update
# dpkg –set-selections <myselections # apt-get -u dselect-upgrade 有以上三套方案可选 我倾向与用 aptitude-create-state-bundle aptitude-run-state-bundle –unpack 这个 先aptitude-create-state-bundle my_bundle 然后把my_bundle 考到新机器上 aptitude-run-state-bundle my_bundle
Posts
debian apt-mirror
很早之前配的apt-mirror
最近有些修改,做一下记录
比如 一台机器为 mirror.dna.com
先装 apt-mirror
编辑 /etc/apt/mirror.list
set base_path /srv/apt-mirror # 我这里给单分了一个区,否则默认用/var里,得用个百十来G
deb http://mirrors.163.com/debian stable main contrib non-free
deb-src http://mirrors.163.com/debian stable main contrib non-free
deb http://mirrors.163.com/debian squeeze-updates main contrib non-free # 这个是安装更新列表里的,否则如果用这个源安装新系统会说找不到安装源
deb http://mirrors.163.com/debian squeeze main/debian-installer # 这个很重要,否则这个源只能更新,不能安装新系统
然后配置nginx 添加一个新站点 mirrors.dna.com
location / {
root /srv/apt-mirror/mirror/mirrors.163.com;
index index.html index.htm;
autoindex on;
}
配置完毕
然后装新系统时,选择安装源时,手动输入 mirrors.dna.com(先配置好dns将这个域名指向正确的ip)
然后路径选择 debian 即可
Posts
google拼音输入法scim
scim-googlepinyin
下载这个包,解包
或者git clone git://github.com/tchaikov/scim-googlepinyin.git
进去之后运行autogen.sh
要是提示找不到scim, 装 scim-dev
还需要 autoconf 包的支持,这个包里带几个需要的依赖
装完之后 ./configure; make; make install
之后 pkill scim
scim -d
我这不管用,scim 不能启动。
重启之后好了,总之能用。
Posts
debian 升级后启动不能 进入initramfs
一个作git server 用处的服务器,没什么其他的东西,尝试了一下unstable 的源,升级后重启悲剧了,进入initramfs的系统。
系统还是lvm的分区,老scsi硬盘,挂不到其他机器上。
后来在initramfs里mount 了一大圈总算找回了以前的数据。
进入了/boot/grub/grub.cfg 里面有个root=UUID=xxxxxxx的玩意
启动是报错就是因为说找不到这个UUID的硬件。尝试把UUID去掉,直接改成root=/dev/mapper/xxxx 我的lvm 的分区文件名,竟然起来了。
这玩意肯定算grub升级的bug,大概。
Posts
vsftp支持ssl与mysql支持
在/etc/vsftpd
ssl_enable=YES
参考http://hi.baidu.com/sega_konami/blog/item/a99366c6246904039c163d7f.html
让vsftp支持mysql的虚拟用户
首先aptitidu install vsftpd 之后,系统中应该就自动创建了ftp这个用户。
mkdir /srv/ftp; chown ftp:ftp /srv/ftp -R
在/etc/vsftpd.conf中添加
更改/etc/pam.d/vsftpd
将原先没有注释的带auth字样的都注释掉,因为要用mysql验证方式
再添加
在mysql中建立库vsftp,建立用户vsftp并授权能访问vsftp库,在vsftp库中建立表users,字段login 和 password
插入数据 admin / admin
重启vsftpd 再用admin / admin的帐户密码登录
Posts
debian lvm
扩展磁盘分区
先卸载 umount /home
—e2fsck好像可以不用
最后再mount /dev/debian/home /home
硬盘分区应该有变化了
创建逻辑卷
然后mount之
若是reiserfs分区,lvextend之后
resize_reiserfs 该分区,可不卸载直接在线操作
若是ext3、ext4,都支持不umount直接扩展
之前是我的记忆可能有点混乱,记得不支持?最近试了确实是支持的
lvextend之后,resize2fs /dev/mapper/xxxxx
就行了,会提示online resize 成功之类的,不知道在io繁忙的系统上如何。
试了一下,xfs和jfs都不支持在线扩充,必须先umount。
减少分区有丢失数据的危险
见http://wiki.portaboom.com/pmwiki.php?n=HowTos.LVMMini
Posts
IBM X3650 M3 debian安装
装了不下5回,装的时候没有任何问题,重启后不能引导系统。一开始还以为是raid没设置好,搜了一篇说是用lilo能引导,结果试了也不行。给客服电话,回复说这玩意不支持debian,只支持redhat和suse
结果换了suse也不能引导。但是很奇怪的是,重启之后用光盘启动了,之后没管,光盘自动进入了从硬盘启动的选项,系统竟然能启动。之后又装了一下debian,然后用suse的那个安装光盘启动,再选从硬盘启动也能行!
后来在一个台湾老哥的站上找到了。
http://www.weithenn.org/cgi-bin/wiki.pl?IBM_xServer_%E7%AD%86%E8%A8%98#Heading20
改成legacy only 添加到启动项里。OK
Posts
内外网双网卡设置
公司分了内外网两段,一台服务器eth0接公网ip,内网为10.0.0.50
都设置完后能访问外网,公网不能访问,tracerout 一个外网ip发现走内网网段的路由
查了一下,route命令
Posts
php-fcgi无法启动
之前都用start-stop-daemon 来启动php-fcgi
今天上了个老机器,莫名其妙不能启动,也没有任何报错
后来搜了个新东西
spawn-fcgi
用这个启动了。
Posts
lenny装ati驱动
好多帖子都说在linux上的ati驱动非常整人。不弄不信,一弄果然是。
我的配置是4290显卡。装的lennyd的amd64系统。
先去amd主页下载了官方驱动,看后缀名是run,加上执行权限后直接运行,重启后干活像幻灯,,fglrxinfo错误,不认显卡。
./usr/share/fglrx-uninstall.sh卸载了。
然后用网上说的 ./ati-driver-installer-10-12-x86.x86_64.run –extract fglrx
然后进fglrx文件夹用./ati-install.sh 10.12 –buildpkg Debian/lenny 声称deb,又报错,然后按照
http://wiki.debian.org/Ati%20Installer%20in%20Lenny
这个的改文件,把710改成640,明明没有710文件夹了,连个脚本都没修正,看来amd的测试也不怎么敬业。
弄了半天,好不容易生成了一堆deb,还装不上,报好多错误,很让人崩溃!
不得已投向ubuntu10.10 ,果然这个装驱动顺!直接运行run文件就OK,然后fgl_glxgears 测速度也没问题。
不过更崩溃的时候是之后看了个片,可能是1080p的吧,画面停顿现象严重!没辙了!这个肯定还是驱动的问题,因为在同一个硬件系统下win7就一点问题都没有。
吃回头草吧,好歹弄了一天多驱动,还算比较熟了。
又 装回deiban,用m-a来装。修改了non free源,用aptitude安装几了fglrx-driver fglrx-source等几个fglrx开头的东西,先把fglrx-driver装好,然后m-a a-i fglrx,很fuck的又报错。搜后按
http://blog.chinaunix.net/u/7493/showart.php?id=2336964
终于不报错生成了fglrx的module
然后modprob fglrx,然后悲剧
Unable to load module fglrx: cannot allocate memory
我都怀疑是集成显卡的问题,是不是内存被什么锁定了,所以集成显卡不能动态分到现存!
经过了n次周折,重装了n次系统。折腾了3天,后来用了unstable源的驱动
非常曲折,特此标记,怕之后如果重新装机的时候又忘了!
Posts
putty用ssh密钥自动登录
网上有一些关于用putty利用公钥私钥自动登录的教程,我记得至少试了三回,原来少写了一些关键的地方。
这次总算成了。
看了半天openssl的东西,了解了一下加密原理,对称加密和非对称加密。
没用puttygen.exe生成密钥
用linux里的ssh-keygen -b 1024 -t rsa生成密钥
根据提示,起个名字,叫rsa-key好了,提示passphase,不输入,本来就为了方便,还要再输入密码就没意义了。
成功后生成rsa-key和rsa-key.pub的私钥与公钥两只。
把rsa-key下载到本地,改名叫rsa-key.ppk给puttygen.exe用。
用puttygen.exe打开rsa-key.ppk文件,另存一下,这点很重要,其他教程上都没写!
在服务器上,mv rsa-key.pub ~/.ssh/authorized_keys
然后vim /etc/ssh/sshd_config
将
#PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys
这两行的注释去掉(这个教程上也基本都没提)
然后/etc/init.d/ssh restart重启之
服务端配置完毕
客户端打开putty填入ip,选择左边的Connection -> SSH -> Auth
把第一个勾掉,那个是ssh2用的,第二三个选项都要,其他都不要,然后在最下面选择刚才另存的那个rsa-key.ppk 文件
再去 Connection -> Data 第一项填入默认的用户名
再回到最上面的session,Save一下
完毕
之后就能靠鼠标双击一下ssh上服务器了
再加点安全考虑,最后别忘了chmod 700 ~/.ssh -R
Posts
lftp默认不能断点续传
下了个大文件,中途可能因为连接超时什么的断了
之前看过man lftp
知道 -c可以续传,执行一下总说文件已存在,很shit
查了一下发现得set xfer:clobber on
把这个加到/etc/lftp.conf里,让它默认支持续传吧
Posts
nuhup 命令
之前总有类似操作
mlnet &
mysqld &
之后程序就在后台运行了,原来不是所有程序都这样,有的程序是必须当前登录的时候运行,当前启动这个程序的用户一logout就自动关了。此时nohup 命令就有用了
比如
此时用户退出,进程也会继续运行,但是一定要正常退出,不能非正常一下子把ssh登录窗口关了了事
Posts
linux删除海量文件
/var/spool/mqueue下海量文件,几百万
rm * -f肯定不行
list | xargs rm -f
按说行,网上大家都说行,但是此命令执行一会就自动退出了,而且ls | wc -l
发现啥都没删掉
想了想用sed
先ls > list 生成list文件
写了个脚本
每次删100个