|
|
| FREEBSD的一些小技巧 | | 发布日期:2005-3-28 浏览:423次 | | 关键字: | 1、在unix-like中档案结构是满重要的,那么要如何去看相关档案目录结构的说明呢?
难道是cd到每个目录下吗?其实有更好的方法..
那就是用好男人man来看:
#manhier
2、在console下操作时,由于屏幕显示有限,有时需看前面显示的资料,这时你可:
.按一下PauseorScrollLock键后,则可利用PageUpPageDownUpDownHomeEnd等键来看前后显示的资料
.再按一下PauseorScrollLock则可回复等待输入画面.
3、使用pw来管理你的帐号
在FreeBSD下使用adduser来新增帐号,有些时会满烦的,可用以下方式:
pwuseradd-n-g-m-s/bin/csh
=>-m代表建立使用者目录
●同时设密码
echo|pwuseradd-n-g-m-s/bin/csh-h0
●删除帐号
pwuserdel-n-r
=>-r代表同时删除其home目录等相关资料
●修改帐号
pwusermod-g-s/bin/csh
PS:无法修改帐号名称
●lock及unlock使用者帐号
pwlock pwunlock
4、激活你的screensaver
由于FreeBSD大多当为主机使用,都是常期不关机的,因此可将屏幕关掉,或使用ScreenSaver功能..
使用ScreenSaver请在/etc/rc.conf这个档加入以下两行:
blanktime="900"
=>以秒数为单位,如以上为15分钟
saver="logo"
=>logo是FreeBSD的吉祥物(图型接口),另也可使用"daemon",这是文字型式
5、检查你的某一个ports版本及更新
如果要更新所有的port只需在/etc/ports/下执行以下指令:
#makeupdate
有时我们可能要检查某一个ports的版本,在每个ports中的Makefile都有这一行
PORTVERSION=x.x.x
如此就可看到这个ports的版本了,另外也可使用以下方式(用grep),比如我们想看mod_php4的版本
#grepPORTVERSION=/usr/ports/www/mod_php4/Makefile PORTVERSION= 1.4.1->版本讯息
如果版本太旧了,则可利用以下方法来更新单一ports
a.使用portupgrade或portinstall,请用man查看用法
b.到FreeBSD网站查询最新的ports信息,并抓ports回来更新
网址:http://www.freebsd.org/cgi/cvsweb.cgi/ports/
抓回来后在相关目录更新,例如我们抓回的是mod_php4.tar.gz,存在/usr/tmp/目录下,则解压缩的方式如下:
#cd/usr/ports/www/mod_php4 #tarxzvf/usr/tmp/mod_php4.tar.gz
如此就ok了..
6、加速你的按键速度..
相信使用FreeBSD的人很多都是在console下操作吧,有些时,要重复某一按键速度实在很慢..
另一个问题就是cusror的位置有些时不太明显..
可用以下方法来改善:
在/etc/rc.conf中加入以下资料..
keyrate="fast" cursor="blink"或"destructive"
7、设定开机画面
使用windows的人,都知道所谓的开机画面,在FreeBSD下是否也有此功能呢?答案是肯定的,而且设定更为简便,请照以下steps:
一.首先制作一个图型文件,档案格式为logo.pcx或logo.bmp,需注意的是.bmp的档案存盘时不用压缩,分辨率需为640X480以内(含),色阶为256色..
二.将此档案copy到/boot/这个目录下
三.设定/boot/loader.conf,加入以下资料
splash_bmp_load="YES"->如果使用.bmp格式,此项需设为YES splash_pcx_load="YES"->使用.pcx,请将此项设为YES vera_load="YES" bitmap_load="YES" bitmap_name="/boot/logo.pcx"->请依你的档案格式更改 bitmap_type="splash_image_data"
四.重新激活 ps:请检查你的kernel中是否有设定以下资料,一般在4.x中都是内定值..,至于3.x版,没用过..^.^
preudo-devicesplash
如果没有,则需将此行加入并重新编绎核心.
8、一些console下使用的快速键..
相信大多使用unix-like的使用者,还是在console下执行你的日常维护工作吧,那有那些按键组合可帮我们提高效率呢..
以下按键皆适用于tcsh及bash..
1.快速移动光标
ctrl a->到最前面 ctrl e->到最后面
2.编辑方面
ctrl d->删除光标所在字符 ctrl w->删除光标所在字前面的字符 ctrl u->bash:将光标前所有的字及字符删掉,tcsh:删除所有字 ctrl k->将光标后所有字符删掉 ctrl b->下个字符 ctrl f->前一个字符 ctrl m->和按下enter的结果一样 ctrl h->和按下del或backspace键一样 del或backspace->删除前一个字符
如果对按键有研究兴趣者,不彷参考/usr/share/syscons/keymaps/这个目录,其中us.iso.kbd是一般我们使用的按键..
9、快速切换目录
在FreeBSD中常常需要切换目录,有时目录名称较长、或是有大小写、或是只记得前面几个字,怎么办..
其实只要输入部份字再加上*这个符号就可以了..
如我们要切换到/usr/local/这个目录,只需输入cd/usr/lo*就可以了..
如果输入cd/usr/l*会如何呢?则会进到/usr/lib/这个目录,这是因为shell找到第一个符合的条件便停止了..
10、有关时间及时区的?#123;校
使用FreeBSD大多是拿来当做主机使用,那时间及时区的正确与否就非常重要了,以下介绍如何?#123;整时间及时区
●时间?#123;整椒?br/> 1.使用date指令
格式date[yymmdd]HHMM 说明: yy年数,如02代表2002年 mm月份01-12 dd日数01-31 HH时数01-59 MM分钟01-59
yymmdd皆可省略
例:
?#123;整日期为2002-03-25 #date022325
?#123;整时间为14:20 #date1420
2.使用对时主机
#ntpdateclock.stdtime.gov.tw
这项需能连上网络,其中clock.stdtime.gov.tw是一标准时间的主机
●时区的设定
1.使用tzsetup
2.在/etc/下有个档案localtime,这个就是本机的时区设定档案,因此我们可用个取巧方式(不经由tzsetup),如以下:
#cp/usr/share/zoneinfo/Asia/Taipei/etc/localtime
这样是不是比较快呢..
11、如何清空档案内容..
有时我们需将一个档案内容清空,但需保留这个档案..
一般常见的用法是用文字编辑器,如vi将这个档案叫出来,再将其内容全部删掉,再存盘..
这样是不是有些烦呢?
有一个更好的方法,使用true指令..
如我们要将/var/log/httpd-access.log清空,则下以下指令..
#cd/var/log/ #true>httpd-access.log
12、显示目录及档案=>tree
有时需显示某个目录下所有的目录及档案,虽使用ls可达到部份功能,但并不是很方便..
在dos中,有个tree指令,是不是满好用的..
其实在FreeBSD中也有类似的指令=>tree..
以下我们就透过ports来安装tree
#cd/usr/ports/sysutils;makeinstall
如此会将tree这个指令安装在/usr/local/bin/这个目录下..
使用例子:
1.显示/usr/下的目录及档案
#tree/usr
2.只显示/usr下的目录
#tree-d/usr
详细用法请参考mantree
PS:可透过管道|及more来显示
如tree/usr|more..
13、如何检视档案类型
由于FreeBSD并没有像dos或windows般有扩展名的观念,因此要如何检查一个档案的类型呢?
用file吧..
语法:file
详细用法请参考manfile
14、重复使用先前使用过的指令
你可以使用以下的方法来重复使用先前使用过的指令:
例如,我们先用history显示先前输入的指令:
#history . .. ... 10clear 11cd/usr/local 12ls 13lsetc 14cd~ 15clear
1.用updown可用上下一个指令,或是ctrl pctrl n亦然
2.配合!的用法,例如以下(ps:在<...>内代表要输入的东东)
!! #!!=>重复执行上个一个指令
!<编号> #!11=>执行cd/usr/local
!<指令>可输入部份字,但前面部份需符合 #!cl 执行15clear指令
!输入部份字符,部份吻合 #!?etc? 执行13lsetc
以上指令在tcsh及bash下皆可使用,如此是不是可帮你省下许多时间..
15、如何将man的档案印出来..
man是大家学习FreeBSD的最佳资料参考来源,但在显示器上看到底不是很方便,有没有方法转成一般的文件档案呢?
使用col这个指令吧..
例我们要将ssh2转成ssh2.txt,则使用以下语法:
#manssh2|col-b>ssh2.txt
16、为何查不到正确的ports资料..
在/usr/ports/下有着几千个ports的安装资料,有时我们可使用以下方式来查相关的ports..
以下都是在/usr/ports/这个目录下执行..
1.先将ports资料转换成一个文字文件,如index.txt
#makeprint-index>index.txt
2.使用makesearchkey="...."来查
3.将ports内容转换成README.html
#makereadmes
用以上方法,可很容易的查到相关的ports资料,但很奇怪的是,为何我更新一个ports的资料后(或portstree),为何会查不到,查到的仍然是旧的资料..
原来,在/usr/ports/中有一个INDEX檔,以上的查询方式都是在这个INDEX档中查询,当你更新ports资料时,这个INDEX档并不会随之更新..
所以为了查询方便,我们需以手动的方式来做..
#makeindex
做完后,再更新index.txt及README.html..
不过更新INDEX档需要一些时间,大约12-30分钟..(视计算机等级而定).
17、用dig及host来取代nslookup
一般我们用来检查网络是否有问题,大多是用以下三个指令..
nslookup ping traceroute
其中nsllokup是用来检查dns的相关设定,ping用来检查自己和对方网络是否通顺,而traceroute则是用来检查从自己的计算机到对方的计算机所经过的线路状况..
不过以nslookup而言,个人觉得不是很实用,有时我们只是想单纯的查一下某台主机或是MX记录,那使用nslookup就有点噜嗦了..
在此介绍二个好用的指令host及dig,这二个指令很类似,不过效率较nslookup高
#host-a<主机名称>或
=>输入主机名称显示dns正向解析的部份,输入ip则是显示反向(ptr)
#dig<主机名称或ip>
如要显示MX记录
#dig主机名称mx
个人是觉得比nslookup方便多了,你觉得呢..^.^
当然功能不只这些,详情请mandig或host..
18、加快你的开机速度..
严格说起来,FreeBSD的开机速度算满快的,不过中间会有个10秒的延迟时间(以便让你进入boot的commandpromptmode),如果你嫌这10秒还是太慢了,那你可将时间?#123;短一些..
FreeBSD激活时会先去参考/boot/defaults/loader.conf档的设定,然后再参考/boot/loader.conf,一般我们都不去?#123;整/boot/defaults/loader.conf这个档,而直接?#123;整/boot/loader.conf..
只要在/boot/loader.conf中加上以下这一行即可
autoboot_delay="秒数"即可,如
autoboot_delay="7"代表7秒
这样开机是不是更快了..
另外建议,有时间可参考一下/boot/defaults/loader.conf这个档案的设定,其中有许多实用的设定哦..
19、忘了root密码
如果你忘了root的密码怎么办,这在FreeBSD中满好解决的,请照以下steps来处理..
1.进入单人模式
开机后,当出现
Hit[Enter]tobootimmediately,oranyotherkeyforcommandprompt. Booting[kernel]in10seconds...
按space(或除了enter以外的键)键则会进入commandpromptmode,同时出现一个ok..
这时请输入boot-s以进入单人模式
2.选择sh
进入单人模式后,系统会询问你要使用那个sh,内定是/bin/sh,就使用这个吧,直接按enter跳过
3.将所有的硬盘分割架起来
#mount-a
4.更改密码
#passwd
长度要在6个以上,输入二次
5.重新激活
#reboot
20、有关kernel的激活..
kernel对unix-like系统来说,是非常重要的一环,如果kernel损坏或编译出了问题,可能会导致严重的后果..
FreeBSD一向以安全著称,在这方面有什么防护的措施呢?
FreeBSD的kernel是放在/目录下,一般会有二个
kernel kernel.GENERIC
如果你有编译过核心(kernel)的话,则原先的kernel会转换成kernel.old,新的核心会变成kernel,也就是在/下的kernel档案如下:
kernel=>新编译过的核心 kernel.GENERIC kernel.old=>原先的核心
那kernel.GENERIC是什么呢,这个是系统安装时所装好的,一般都不会变动,即使编译过核心亦然,这个档案可说是救命核心,最好不要乱动,理由如下所言..
FreeBSD激活时,会使用kernel这个核心,如果这个档案不存在,则会抓kernel.old这个档案..
如果这二个档案不幸都不在,那怎么办..这时则会进入commandpromptmode,你必需自行输入kernel的名称,如
boot如
bootkernel.GENERIC
了解以上之后,在编译核心无法正常执行时,相信各位知道如何处理了..
21、FreeBSD在那激活程序..
一般FreeBSD激活后会依序执行以下位置的程序..
1./etc/rc.conf这个档案内的程序,如sendmail、sshd..都是在此执行,另外要注意的是,在执行这个档案之前,会先参考/etc/defaults/rc.conf的设定
2./usr/local/etc/rc.d下的一些.sh檔,这些档案的权限都是被设定成x,如apachesamba..都是在此设定
3./etc/rc.local这里也可设定,如我要把postfix设定在此,只需在这个档案内加一行,如下
/use/local/sbin/postfixstart&
加上&,就不会显示出讯息
4.由cron所控制的一些档案,当时间到了,便会自动执行..
那心细的人可能会问,/etc/inetd.conf内设定的呢?这些在第1项就执行了..
了解以上并时时注意是否有不明的程序在执行(可能是被人植入木马程序),也是日常检视系统的重要工作..
22、加快你的主机名称查询速度..
unix-like系统,初期都是使用hosts这个设定文件来做主机的查询,因此有些程序在查主机名称时,都会参照这个设定档,像sendmail就是一个很好的例子..
系统内定第一个是会查/etc/hosts这个档案,因此如果里面设定有问题,则会影响到某些程序的执行..
典型的hosts档设定如下..以我本身的主机来说
127.0.0.1localhost.cmlab.idv.twlocalhost 61.219.230.5cmlab.idv.twcmlab 61.219.230.5cmlab.idv.tw.
其中第一及第二行最后一个项目是aliases名称(主机别名),比如我们在主机
pingcmlab.idv.tw
和
pingcmlab
是同样的结果..
你可把一些常用的主机加到这个项目内,如有一台mail.cmlab.idv.tw,假设IP为61.219.230.8
则在这个hosts中加入以下
61.219.230.8mail.cmlab.idv.twmail 61.219.230.8mail.cmlab.idv.tw.
这样就行了..
另外如果有自行架设dnsserver,请注意在/etc/host.conf这个档案,典型的档案如下:
#$FreeBSD:src/etc/host.conf,v1.61999/08/2723:23:41peterExp$ #Firsttrythe/etc/hostsfile hosts #Nowtrythenameservernext. bind #IfyouhaveYP/NISconfigured,uncommentthenextline #nis
由以上可以看得出来,在查询主机名称时的顺序,是先查hosts再查bind也就是dns,你可视你的需要修改其顺序..
另外要注意的就是/etc/resolv.conf文件,这个是有关dns主机search的顺序,如以我的设定如下:
domaincmlab.idv.tw nameserver61.219.230.5 nameserver168.95.1.1 nameserver168.95.192.1
其中第一行是设定我的网域名称,第2-4行则是dns主机的设定,建议至少设二个以上,以免一个挂了,还有个备用的..
第2行是我的dns主机,3-4行是hinet的dns主机..
了解以上并有正确的设定,是有助于主机的查询的及速度的提升..
23、我要如何分割硬盘..
档案目录对于FreeBSD(或者是所有unix-like系统),都是相当重要的,如开始时,分割的不是很恰当,日后就会遇到一些麻烦,如空间不够..等问题..
那么,我们要如何分割比较恰当呢..
这就有关于你的用途及FreeBSD的目录架构了..
一般个人是建议你如此分割:
1./根目录,一般在250~500MB绝对够用,以我的根目录来说,使用一年多了,也才用了66MB多。因为这个目录只是一些kernelmodulessbinbinetc..等目录
2.swap档,一般人都不知道如何设较恰档,这也没一个标准,最主要是要看你的ram及硬盘而言,一般设成1-2.5倍(相对于你的ram)。如你的ram在256mb以上(含),设成一倍;如在64-128mb,则建议设成2倍
如要检查你的swap使用状况,可用以下指令来看..
#pstat-T 44/4044files 0M/127Mswapspace
由以上可看出目前使用的swap为0,设定的大小为128M
3./var目录及/usr目录
这二个目录一般都会占比较大的空间,/var的变动较小,以我个人来说,一年前设为8GB,在目前只使用了不到2GB。
但要注意的是一般的mail软件,都是将信件存在/var/mail/中,如果你的信件很多或很大,这个部份不妨加大一些..
而/usr这个目录能大就给它大一点的空间,因为所安装的程序,或是hone都是在这个目录下(如果你没将home目录设成一个分割)..
那这两个要如何分配呢,我的建议是usr和var的比例为3:1,或是2:1
4.有些主机使用者较多,如学校单位。如果你没将home设成一个partition,则FreeBSD会将home安装在/usr目录下,如果为了管理及安全问题,则不妨将home分割为单一目录..
至于大小,我想应该3-5GB左右,就绝对够用了
我们来举个实际例子,假设你有一颗40GB的硬盘,使用内存为128MBRAM,那我建议你的硬盘如此分割..
1./=>250MB 2.swap=>取2倍,即256MB 3./home如要独立出来,给它3-5GB 4.剩下来的以3:1或2:1的比例设给/usr及/var
以上只是一般建议,最重要的是必需了解各目录的性质及实际使用情况而予以适当的分配,有关这方面的信息,不妨参考manhier..
25、简单编辑你的文件档..
在unix-like中,标准的文字编辑器是vi,不过vi对于初学者而言,并不是很容易上手..
而在FreeBSD中使用的是ee,这个文字编辑器,虽功能没vi这么强大,但使用简便..新手不妨初期时使用个编辑器..
其使用方式很简单,只要在commandline下ee即可
#ee<要编辑的档案> 进入ee画面后,最上方是一些按键说明,如要取得相关的ee说明,可先按ctrl c键,再输入help,则会显示详细说明
有时可能只想在一个档案内加入一小部份的资料,那使用文字编辑器来处理,就显得没效率,其实我们可以利用cat>[檔名]和cat>>[檔名]来做..
那这二个方式有何差异呢..
cat>[檔名]时,如果档案不存在,则会自动产生一个档案;如档案存在则会将档案清空..
cat>>[檔名],档案不存在则自动建立此档,如存在则将所编辑的资料加在档案的最后..
举个例子,如我们要编辑/etc/mail/access这个是sendmail的relay设定档..
想在这个档案中加入192.168.88.5relay
则可用此方法(假设access档案已存在,故使用cat>>..的方法)..
#cat>>/etc/mail/access 192.168.88.5RELAY 按ctrl d存盘
如此则可将192.168.88.5relay加到access的最后一行..
不过,建议大家,unix-like的共通文字编辑器是vi,有时间不妨好好的学一下vi..
26、FreeBSD帐号及密码的注意事项
在架完FreeBSD后,再来就是新增人员(使用者)的资料了..
在设定帐号时,请注意以下事项:
1.其长度需在1-16个字符 2.使用英文小写字母、数字及-_符号
在设定密码时,请注意以下事项
1.密码可设可不设,但建议你一定要设 2.长度最好在6个字以上,你知道据安全专家的说法,破解一个长度6及长度4密码,至少要多花10倍的时间 3.请勿用你的生日、相关证照号码、电话..等资料,而使用大小写英文字母及混合特殊符号,如ct!Home-12就是一个相当不容易破解的密码 4.长度最长我曾设到16位数(最大长度多少,有兴趣者可自行试试)
27、有关系统的一些激活问题..
有时,会修改FreeBSD的一些设定,如一些网络参数、软件的.conf设定,或是/etc/r.conf檔,那么如何让设定值生效,是否一定要重新开机呢?
这可分为三方面来说..
1.网络相关设定,如网络适配卡、hostname..等,只要执行以下指令就可以重新加载你的网络设定..
#sh/etc/netstart
netstart是一个script档案,执行时会去参考/etc/rc.network。因此只要执行这个指令就能够重新激活网络设定..
有兴趣者可参考一下netstart及rc.network这二个档的内容,研究看看到底做了些什么东东..
2.修改了rc.conf中其它的设定
可参考以下三个step来做..
.进入单人模式 #shutdownnow
.选择sh,造内定值即可,即/bin/sh
.离开单人模式 #exit
这样就会重新激活系统了..
3.软件的设定,如一些*.conf檔,像是修正了apachesendmail..等
通常在/etc/local/rc.d/这个目录中会有相关的.sh檔,直接执行就可以了,注意的是一般要加上参数,一般的参数有以下(视软件而定会有不同)..
start激活 stop停止 reload或restart重新激活
第二种方法就是直接使用killall,如我们要重新激活inetd,可用以下方法:
#killall-1inetd
或是
#killall-HUPinetd
这样就可以重新激活这个daemon了
28、保护你的档案 在系统中,有许多档案或一些设定档是非常重要的,加上FreeBSD(或是一般unix-like)系统都没有类似ms的垃圾回收桶的功能,万一不幸删掉(或修改)某个重要的档案,可能会造成不小的困扰..
虽然,FreeBSD对于档案的权限设定的非常严密,但有些时候,我们以root身份工作,仍会有此风险..
那要如何避免这种情形发生或是保护某些重要的档案呢?
我们可以用chflags来达成这个目的,顾名思义,chflags是由二个字所组成,即change和flags(档案的旗标)..
例如我们要保护/etc/inetd.conf这个档案,以免误删或被修改,则指令如下:
#chflagsschg/etc/inetd.conf
这样就可以保护这些档案,如要显示这些档案的旗标(flag),可用ls来看..
#ls-lo/etc/inetd.conf=>l是小写的L
-rw-------1rootwheelschg47Mar2821:29inetd.conf
要解除旗标设定,可用unschg,也就是在schg前加un,如:
#chflagsunschg/etc/inetd.conf
大部份我们进入主机都是以root身份执行,因此稍不小心,可能就..因此建议将一些重要的档案及设定档设定为schgflags,以保护档案..
如/bin、/sbin、/etc/.conf、/usr/lcaol/etc/*.conf..这些档案最好都是定成schg旗标..
chflags详细用法请参考manchflags..
29、谈谈软件的安装路径..
FreeBSD对于档案目录的观念非常重,什么样的档案要放在那个目录都有规定,这也是有别于其它unix-like系统..
一般我们将软件安装分成二个部份,在这里来探讨一下软件到底都安装到那去了..
在安装软件时,通常会安装诸如执行档、设定档、manfile、doc文件..
1.安装系统时所安装的软件
执行档通常装在/bin、/sbin、/usr/bin、/usr/sbin、/usr/libexec下 设定文件通在在/etc目录下 manfile通常在/usr/man或/usr/share/man doc文件通常在/usr/share/doc下
2.经由package或port安装的软件
执行档通常装在/usr/local/bin、/usr/local/sbin、/usr/local/libexec下 设定文件通在在/use/local/etc目录下 manfile通常在/usr/local/man.. doc文件通常在/usr/share/doc下
以上并不是绝对的(所以我用通常..^.^),因为有些特殊情况需视软件而定..
如此有时可能会造成些许困扰,因为如ssh、bind..大多是在系统安统时就安装的,那如果升级新版时怎么办..
由于FreeBSD找寻执行档时会依照$PATH这个环境变量找寻,因为/bin、/sbin、/usr/bin、/usr/sbin比/usr/local/bin或/usr/local/sbin先,所以会先执行..也就是先抓到旧版的执行档..
因此在更新时要注意这种情况,以免更新了还是执行旧的程序..
那么如何看安时程序时的相关档案的安装路径呢?通常有以下方法
1.看port的pkg-plist檔 2.有时用man[执行档名称]可看到一些重要档案的位置 3.看说明文件,通常在/usr/local/share/doc目录下
30、如何在FreeBSD同一片网硌卡加一个ip地址
有的时候,需要在同一片网络卡上加ip以达到一些特殊的要求..
在FreeBSD这是非常简单的,假设原先网络卡的ip是211.211.211.211,想加一个211.211.211.212,使用的是rl0这片网络卡,则做法如下..
1.在/etc/rc.conf加上这一行
ifconfig_rl0_alias0="inet211.211.211.212netmask255.255.255.255"
其中的alias0就是加装的第一个ip,如要设定多个可在此修正,如alias1、alias2..aliasN
2.重新激活网络卡,执行/etc/netstart
#/etc/netstart
31、简单的加密你的资料 在实务上我们常需要将某些敏感的资料加密,一般我们可使用pgp或在这里所介绍的crypt来达到这个功能..
crypt是透过|这个管道转换功能及密码设定来达成加密的功能,也就是说将你所设的密码当做加密产生的种子随机数..
先说明一下crypt的使用方法:
crypt[-s][-k][password]
一般-s及-k参数可不予理会,password是加密或解密的密码
在这里假设我们先产生一个test.txt档,内容为test,然后用1234这个密码加密
#cat>test.txt test 按ctrl d存盘
先看看test.txt内容
#moretest.txt test
将test.txt这个档案用1234这个密码加密,需配合管道|及转向符号使用,加密后的文件名称为test2.txt
#cattest.txt|crypt1234>test2.txt
如此则会产生一个加密后的档案test2.txt,另外密码可先不输入,按enter键后会显示enterkey:让你输入密码
我们来看看加密后的档案内容,原先是test结果变成了:
#moretest2.txt e&h=>已经不是原来的test
接着来将test2.txt解开,如下,假设解开后的档名为test3.txt:
#cyrpt1234test3.txt
以上的意思是
1234加密时的密码 >test3.txt解密后的资料转向到test3.txt
再显示test3.txt的内容是否和原来一样,即test
#moretest3.txt test
PS:
1.加密或解密时档名如和源文件一样,则会将原来的档案取代 2.另有一个指令enigma和crypt用法完全一样
参考资料mancrypt
32、用telnet简测你的服务器(Server)有无在跑
有时你可以用telnet测试你的Server有无正常的run 例如:我要查看ftpd有无在跑 可下指令:#telnetlocalhost21 若跑出类似以下的讯息,表示有在跑 -------------------------------- Trying127.0.0.1... Connectedtolocalhost.ahkun. Escapecharacteris'^]'. 220-=(<*>)=-.:.((WelcometoPureFTPd1.0.11)).:.-=(<*>)=- 220-Youareusernumber1of50allowed 220-Localtimeisnow18:52andtheloadis0.06.Serverport:21. 220Youwillbedisconnectedafter15minutesofinactivity.
若跑出以下的讯息,表示没在跑 ------------------------------------------------ Trying127.0.0.1... telnet:connecttoaddress127.0.0.1:Connectionrefused telnet:Unabletoconnecttoremotehost
同理你也可以用: telnetlocalhost25测stmpd telnetlocalhost110测pop3d
结论: 正确来讲是用telnet测port啦~
33、如何防止别人登录到你的计算机
有时,我们并不想让别人直接登入到我们的主机或是只想限定某些人可使用,如telnet、ssh..
或者是开放了些服务,如ftp、smtpd..等,由于这些都必需在主机端建有帐号,因此防止不相干的人登入到你的主机是非常重要的,也是一个安全上的考量..
但一般限定的方式都是使用ip或是domain的方式,那么有无方法可解决这个问题呢?
答案是可从/etc/login.access来着手,这个档案就是限定login的..
一个典型的设定如下,例如我们想限定只有root及使用者john可登入到主机(含local及remote):
-:ALLEXCEPTrootjohn:ALL
可分为三个项目,每个项目间以:分隔,说明如下:
1. 或-代表允许或禁止 2.设定的使用者或群组,可用ALLEXCEPT来强化限定的范围
3.限定的来源,如ALL代表全部、61.219.230.、LOCAL、console、.bad.com..等
适当的设定,可让你的系统更加的安全..
详细用法可manlogin.access..
34、一个./的技巧
众所周知,在nix-like中执行目前目录中的可执行文件时,必需加上./这二个符号,很多unix-like的初学者都会感觉较不习惯,因为在dos或windows的dos窗口中并不是如此..
其实在unix-like中如此设定是有其安全考量的,在使用指令或执行文件时,一般是建议使用完整的目录,例如要使用ls,则如下:
#/bin/ls
当然,你直接输入ls亦可正确的执行,这是因为你所使用的shell中环境变量$PATH的因素..
你可键入echo$PATH,来看目前$PATH的设定,当我们执行一个指令时,系统会依照这个环境变量来搜寻这个执行档并加以执行..
内定shell不会将目前目录.加到$PATH中,因此如果你想在目前目录执行这个目录下的执行文件而不想加上./时,可在你的shell中将.加入..
如一般在FreeBSD都是使用tcsh,你可编辑个人home目录下的.cshrc檔setpath=(........,在此加入.即可..
记得重新退出shell再登录,以便让你的新设定生效.
35、在提示列秀出[使用者]目前工作目录(可以少打很多次pwd)
#cd/root 编辑.cshrc
#setprompt="'hostname-s'#"###找到这一行并mark起来 setprompt="[n]/#"###新增此行并存盘离开
#logout
login:root....重新登入
ps.其它userid是否可照办?我还没试过哩..刚装freebsd而已
36、rm是DEL一个档案 rm-r是DEL整个目录
37、介绍一些一些有用的参数(注意大小写)..
B代表高亮度 n代表用者名称 m主机名称 /目前的目录
一般我们可能比较在意以上几点,如我要管理好几台FreeBSD主机,那么以上几个参数就很重要了..
举个实例来说,如我想把我的prompt改成这样,而且要高亮度显示:
使用者名称@主机名称[目录名称]>
则prompt的设定应该是这样的..
setprompt="Bn@m[/]>"
注意=左右都要有一个空白,否则会出错,导致无法登入,另外如果要统一所有使用者的prompt的话,除了更改/home/使用者/.cshrc外,最好也在/etc/csh.cshrc中设定这一行,另外如要新增新用者也用这种提示,则请在/usr/share/skel/dot.cshrc中也加上(或改成)这一行,这是因为:
tcsh在使用时会先参考/etc/csh.cshrc这个档案,再依user去抓其home目录下的.cshrc,而设定/usr/share/skel/dot.cshrc是让你新使用者时,自动将其prompt设定成setprompt="Bn@m[/]>"
这种设法,当你在管理多台主机及切换目录时,就不易搞错而发生一些惨剧 | | 关键字: |
|
|