分类: LINUX
2007-04-30 21:51:29
Debian 小贴士
是我在论坛里摘录整理下来的:)真的是好东西!
1.网络配置
HTML 代码:
在/etc/network/interfaces中设置网卡接口 ,不管是静态IP还是DHCP, 需重起网络设置方可生效
#/etc/init.d/networking restart
相关文件还有/etc/hosts,
/etc/resolv.conf (修改后立即生效)
2.服务加载
HTML 代码:
根据自己的习惯选用下列工具之一:
*rcconf
有时可能需要执行update-rcconf-guide以更新所能管理的服务脚本
*sysv-rc-conf
*sysvconfig
临时启动或停止系统服务:
#/etc/init.d/*servicescript* {start|stop|restart}
好,跟帖,不灌纯净水
还有,非要是Debian的么?跟个bash操作的先。
在.bashrc里面添加如下三行(如果是新装的系统,去掉.bashrc的最后三行的注释就成)
代码:
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
立刻让你的TAB键自动完成功能强大非凡,不过也会有小小的副作用
:-)
在你的.inputrc文件里面加上如下两行
代码:
"\e[A": history-search-backward
"\e[B": history-search-forward
能够让你在命令行输入字符之后,就可以用方向键Up,Down来搜索以该串字符开头的历史命令(偷自Carlos的Blog,想了解更多信息,请man
readline)
在.bashrc中加入如下两行:
代码:
HISTCONTROL=ignoredups
HISTIGNORE='ls:pwd:cd:clear:vim:fg:bg:jobs:top'
你的命令行历史记录里面就不会有HISTIGNORE中列出的那些无聊命令(可以自行添加)
alias
命令可以为一些常用的比较长的命令输入用较短的名字,像如果在.bashrc
里面加入:
alias
ls='ls --color'
这样在输入ls时就可以有彩色的显示了,不过除非你是有意的,别名尽量避免系统中本来存在的命令哦。
很好的帖子。我跟
如果通过路由上网,需要添加DNS。
/etc/resolv.conf
(修改后立即生效)
例如:
nameserver
60.*.*.*
nameserver 60.*.*.*
3. 清除系统中的孤儿包
HTML 代码:
$deborphan --guess-all|tr ["\n"] [" "]|sudo xargs apt-get remove --purge - -y
4.清除系统中仅仅remove的软件包
HTML 代码:
$dpkg -l |grep ^rc|awk '{print $2}' |tr ["\n"] [" "]|sudo xargs dpkg -P -
4.是谁动了我的资源(查看进程调用)
HTML 代码:
lsof
-p
5. 开机自动打开 数字键盘
HTML 代码:
打开 /etc/console-tools/config, 文件尾部找到:
# Turn on numlock by default
LEDS=+num <== 取消此行的注释
6.
查找问题所在
当程序出现问题,
但没有给出足够的错误提示时,
可以用下面的命令跟踪:
HTML 代码:
$strace
-f -F -o outfile
优化您的安装源:
HTML 代码:
#apt-get install apt-spy
#mv sources.list sources.list.bak //backup
#man apt-spy //获取详细的使用方法
#apt-spy update //更新您的镜像列表文件 /var/lib/apt-spy/mirrors.txt
# apt-spy -d testing -a Asia
//在亚洲区寻找速度最快的testing版镜像,并生成 sources.list文件,也可使用 -o 参数指定写入文件
引用:
ADSL 使用 pppoe 与 /etc/network/interfaces无关 |
错误的。
引用:
作者: troll 错误的。 |
那么正确的表达应该是?
代码:
pppoeconf (1.3) unstable; urgency=medium
* transition to the new ppp-on-boot method, adding a profile to the
interfaces file (closes: #298223)
查看软件包的内容:
已安装包
HTML 代码:
dpkg -L packagename
未安装包
HTML 代码:
dpkg-deb -c /path/to/debfile
改时间
代码:
root@0[wide288]# date
日 11月 13 16:57:34 CST 2005
root@0[wide288]# date 11131646
日 11月 13 16:46:00 CST 2005
root@0[wide288]# date
日 11月 13 16:46:04 CST 2005
设置日期
HTML 代码:
#date -s 11/13/05 // mm/dd/yy
设置时间
HTML 代码:
#date -s 20:02
写入CMOS
HTML 代码:
hwclock --systohc
读取CMOS时间
HTML 代码:
hwclock --hctosys
deborphan
| xargs apt-get -y remove --purge
清除孤儿软件包
不同控制台间切换
HTML 代码:
ALT+ ←
或
HTML 代码:
ALT+ →
指定控制台切换
HTML 代码:
ALT+Fn(n:1~7)
控制台下滚屏
HTML 代码:
SHIFT + pageUp/pageDown
给定关键字, 查找相关命令
HTML 代码:
apropos keyword
HTML 代码:
man -k keyword
查找文件,我喜欢这样
HTML 代码:
#updatedb
$locate filename
有时候updatedb时时间特别长,就是因为搜索的目录过多,你可以设置/etc/updatedb.conf里的以下字段,以让updatedb忽略一些目录,节省时间
代码:
PRUNEPATHS="/tmp /usr/tmp /var/tmp /afs /amd /alex /var/spool /sfs /media /mnt"
我就设置忽略了/mnt目录
apt-cache
HTML 代码:
apt-cache
说明: APT软件包处理工具 - 缓存处理器
apt-cache 只能完成对APT软件包缓存的各种操作, 不能处理系统状态, 只是为系统操作提供有用的关联信息.
在命令行给出 -h 或 --help 选项, 以获取帮助
showpkg
列出软件包的相关信息, 以及详细的依赖情况, 包括依赖与被依赖.
show
列出软件包的完整信息描述.
search
搜索满足描述的软件包,
search
只匹配软件名
status
列出当前系统缓存状态, 包括软件包数量, 以及相互依赖情况, 等等
depends
列出软件包的依赖列表, 以及可能的解决方案
系统服务
1.编写启动脚本,
并将其置于
/etc/init.d/目录下
2.
付予
可执行权限
3.
设定为启动服务
#/usr/sbin/update-rc.d
4.
#/usr/sbin/update-rc.d
-f
5.
#/usr/sbin/update-rc.d
用lftp显示服务器提示信息
lftp
缺省不会显示
ftp
服务器的欢迎信息和错误信息,可以在
~/.lftprc
里写入一行
HTML 代码:
debug 3
保持软件包的一个版本
HTML 代码:
#aptitude hold package_name
解除
HTML 代码:
#aptitude unhold package_name
引用:
作者: eTony
用lftp显示服务器提示信息 HTML 代码: debug 3 |
国内的很多站点都是GBK的代码,而现在系统默认的编码是utf8的,所以,最好再加上
set
ftp:charset gbk
set file:charset utf8
需要漂亮的
ASCII
艺术字吗?
试试
FIGlet
详细使用说明:
HTML 代码:
man figlet
HTML 代码:
_ _ _ _ _ _
| (_) | _____ | |_| |__ (_)___
| | | |/ / _ \ | __| '_ \| / __|
| | | < __/ | |_| | | | \__ \
|_|_|_|\_\___| \__|_| |_|_|___/
如何启动进入文本模式
HTML 代码:
# update-rc.d -f ?dm remove //?=k,g,x
查找哪个文件在哪个包里,不管有没有安装
代码:
wajig whichpkg libgtk-1.2
重新启动gdm
代码:
wajig restart gdm
在apt-get.org
上搜索包,列出其源
代码:
wajig findpkg emelfm2
更多内容请安装wajig
控制台快照
可以用setterm程序来获得控制台下的屏幕截图。命令格式为:
HTML 代码:
setterm -dump 1
上面命令中,1指第一个虚拟控制台,如要获得第二个虚拟控制台的内容,应改为2,依此类推。
使用
gdm
实现自动登录
/etc/gdm/gdm.conf
HTML 代码:
[daemon]
AutomaticLoginEnable=true
AutomaticLogin=tony
禁用ipv6
/etc/modprobe.d/aliases
HTML 代码:
#alias net-pf-10 ipv6
alias net-pf-10 off
modconf 移除 ipv6模块
调查看硬件信息
HTML 代码:
apt-get install lshw && lshw
没用装zhcon(装好基本系统后)看中文
jfbterm
-q -c other,GB2312,iconv,UTF-8
由于需要fb支持
所以在/boot/grub/menu.lst里
加入
vga=788(或其它)
useradd 与 adduser
引用:
useradd应该是源于unix的命令,passwd包提供. |
引用:
adduser是一个交互shell脚本,发行版相关.同名包提供. |
修改用户资料
chfn
userid
解决 apt-get 更新的 W: There are no public key available for the following key IDs: 010908312D230C5F 警告
HTML 代码:
$ wget
$ sudo apt-key add ziyi_key_2006.asc
解决wu-ftp连接过慢的方法:
进入/etc/xinetd.d/wu-ftp,将
log_on_success
+= DURATION USERID
log_on_failure
+= USERID
两行删掉,然后重起xinetd,好了,问题解决!
将网卡标识与mac绑定
HTML 代码:
auto lo eth0 eth1
iface lo inet loopback
mapping eth0 eth1
map 00:37:E9:17:64:AF netA
map 00:21:E9:17:64:B5 netB
iface netA inet static
address etc...
iface netB inet static
address etc...
修改系统登录信息:
引用:
/etc/motd |
其实是/var/run/motd
引用:
$
ls /etc/motd -l |
下载网站文档:
引用:
wget -r -p -np -k |
引用:
·
-r:在本机建立服务器端目录结构;
|
查看软件依赖关系
引用:
apt-cache depends packagename |
引用:
apt-cache showsrc packagename|grep Build-Depends |
移除无用的locale files文件
引用:
localepurge |
apt-get update 抛出错误:
HTML 代码:
Dynamic MMap ran out of room
原因:是apt的cache
太小了
解决:在/etc/apt/apt.conf中加入:
HTML 代码:
APT::Cache-Limit "10000000";
其中 10000000=10M
错误:
HTML 代码:
/var/cache/apt/archives/partial is missing
原因:partial
文件被误删
解决:重建即可
HTML 代码:
#mkdir -p /var/cache/apt/archives/partial
下载一个
deb
包
1。
引用:
apt-get
install -d packagename |
如果管理系统数据库中的对应版本不低于源上的版本将不会下载
下载到
//var/cache/apt/archives/
目录
2.
引用:
aptitude download packagename |
直接执行下载操作
下载到当前目录
系统更新
HTML 代码:
apt-get update
apt-get upgrade/dist-upgrade
aptitude update
aptitude upgrade/dist-upgrade
我的ABCD 在哪里?
HTML 代码:
#df
#mount
# cat /proc/partitions
...
调整分辨率和刷新率
#aptitude
install
xdebconfigurator
#xdebconfigurator
获取硬件信息
根据所得信息调整/etc/X11/xorg.conf中的参数
自建debian源
假定匿名ftp服务器的跟目录是/home/ftp
(1)
建立pool目录
$
cd /home/ftp
$ mkdir debian
$ cd debian
$ mkdir pool
(2)
复制debian包
$
cd pool
$ cp /var/cache/apt/archives .
(3) 建立目录结构
$
cd ..
$ install -d dists/testing/main/binary-i386
(4) 生成包信息
$
ls -l pool | sed 's/_.*$/ priority section/' | uniq >override
$
dpkg-scanpackages pool override | gzip >
dists/testing/main/binary-i386/Packages.gz
(5) 建立发行文件
$
cat > dists/testing/main/binary-i386/Release << EOF
Archive:
testing
Component: main
origin: Debian
Label:
Debian
Architecture: i386
EOF
(6) 客户端sources.list设置
deb
ftp://
说明:添加新包时,只需要将新的deb包复制到pool目录,重新进行第(4)步即可。
缺点:未建立包认证信息,安装时会提示认证错误,不过可以使用。
那位大虾如果知道怎么解决这个问题,请帮忙贴出来。
有个地方错了,纠正一下
设定fsck前mount的次数:
colinux:~#
tune2fs -l /dev/cobd0|grep -i "mount count"
Mount count:
20
Maximum mount count: 38
colinux:~# tune2fs -c 10
/dev/cobd
tune2fs 1.39 (29-May-2006)
Setting maximal mount
count to 10
colinux:~# tune2fs -l /dev/cobd0|grep -i "mount
count"
Mount count: 20
Maximum mount count:
10
永远不自检:
colinux:~#
tune2fs -c -1 /dev/cobd0
调整分¨率和刷°率
#aptitude
install
xdebconfigurator
#xdebconfigurator
·Ö硬öá息
根据所á息调整/etc/X11/xorg.conf中的Â数
#dexconf
设置xwindow下鼠标速度
使用xset
m n命令,下面是速度列表:
"Very
Fast" xset m 7 10 &
"Normal(Fast)" xset m 3 10
&
"System Default" xset m default &
"Glacial"
xset m 0 10 &
设置bash提示符颜色,示例是绿色:
PS1="\[\033[0;32m\]\u@\h
\w \$ \[\033[0m\]"
可以用下面程序选择字节喜欢的颜色:
for(i
= 0; i < 70; i++){
for(j = 0; j < 70;
j++){
printf("\33[%d;%d;1m you favourite color?\33[0m value:
%d, %d\n",
i, j, i, j);
}
}
控制键盘指示灯的命令:
setleds
+num|-num
setleds +caps|-caps
setleds
+scroll|-scroll
注意:上述命令只能在Shell下执行,不能在X下执行。
弹出光驱:eject
收回光驱:eject
-t
引用:
作者: eTony 解决 apt-get 更新的 W: There are no public key available for the following key IDs: 010908312D230C5F 警告 HTML 代码:
$ wget $ sudo apt-key add ziyi_key_2006.asc |
也可以這樣做:
gpg
--keyserver subkeys.pgp.net --recv 010908312D230C5F
pgp --export
--armor 010908312D230C5F | sudo apt-key add -
debian tips
debian
tips
by etony C.F.AN
mail:
转载请注明源自:
1.获取帮助
man
2.加载介质
查看介质位置
$
cat /proc/partations
加载磁盘分区
#
mount -tauto -o iocharset=utf8 /dev/sdaX /mnt
加载ISO文件
#
mount -tiso9660 -o loop /path/of/isofile/ /mnt
3. 升级资源列表
#
apt-get update
4. 查看软件包信息
$
apt-cache show packagename
5. 检查软件包安装策略
#
apt-cache policy packename
6. 安装软件
#apt-get
install packagename
#dpkg -i /path/of/packagefilename.deb
7.
查找软件
$apt-cache
search keywords
8. 查找文件所属包
#apt-get
install apt-file
#apt-file update
$apt-file search
filename
$dpkg -S filename
9. 删除软件包
apt-get
remove[--purge] packagename
dpkg -r/P packagename
10.
升级内核
安装内核
apt-get
install linux-images-XXXXX
更新grub列表
update-grub
11.
升级系统
apt-get
upgrade
升级系统并解决依赖问题
apt-get
dist-upgrade
12. 清理系统
apt-get
clean
apt-get autoclean
GUI 包管理工具
Synaptic
Adept
13.
编译安装软件包
apt-get
install build-dep
apt-get build-dep packagename
apt-get source
packagename
debuild -us -uc -b
14. 编译源代码安装
#
apt-get install fakeroot debhelper build-essential lintian dh-make
devscripts
$ tar zxf program
$ dh_make -e
-f tzfile
$ dpkg-buildpackage -b -uc -rfakeroot
$
lintian myprogram_1.0.1_i386.changes
#dpkg-buildpackage -b -uc
-rfakeroot
15. 使用
rpm
包
alien
16.
/etc/sudoers 格式
用户
host=(su用户)
命令表
%用户
表示组
17.
防火墙定制
#
apt-get install fwbuilder rcs fwbuilder-doc
$ fwbuilder
18.
编译内核
make
menuconfig 依赖于libncurses5-dev包
make-kpkg
kernel-image
19. 制作iso文件
#
dd if=/dev/cdrom of=/root/rh1.iso
# cat /dev/cdrom >;/root/1.iso
#
cp -r /home/user name.iso
# mkisofs -l -J -L -r -o filename.iso
/directory
-l 允许长(31)文件名
-J
使用Joliet格式
-L
允许以.开头的文件名
-r
为了与
UNIX/Linux
兼容而使用
Rock
Ridge 命名约定,它使所有文件都公共可读
-o
指定输出文件名