Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6912904
  • 博文数量: 1956
  • 博客积分: 10648
  • 博客等级: 上将
  • 技术积分: 23794
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-22 09:38
个人简介

HI,movno1

文章分类

全部博文(1956)

文章存档

2022年(1)

2021年(8)

2020年(2)

2019年(12)

2018年(2)

2016年(2)

2015年(1)

2014年(2)

2013年(19)

2012年(8)

2011年(41)

2010年(388)

2009年(122)

2008年(385)

2007年(259)

2006年(704)

我的朋友

分类: BSD

2007-06-23 13:58:26

FreeBSD学习日记
基础:
1.安装
2.系统基本操作
  进入系统后一些基本操作,如移动文件,创建/删除文件等;
3.文本编辑器
  ee & vi学习及技巧
-------------------
何时开始学习FB?
接触*unix是大一下学期,那时候,在看一篇”Hacker“的文章时,知道有那么一个Linux的东东,后来花钱买了一个RH(有下的。。),装上玩玩,觉得好神秘,在MM面前一正捣鼓,呵,Linux没学,倒是把MM变成了现在的女朋友。(呵,现在玩FB,希望再变个老婆出来)
大学算是荒废了。毕业在一家华为*地的代理上班,也算没有离开过FB吧。:lol
平时也天天在CU里混,那段时间过得特难过,特浮躁,在清茶潜水,在职场学习经验。在女朋友的帮助下,算是度过了那段痛苦的阶段。(谢谢她)
说了一大堆,都没说到重点,主要是惭愧啊,我正式开始学习FB才不到一年,而且中间由于工作忙行丢了三个月。2005.5月买了本《FreeBSD完全攻略QA版》,当时其实很想有本关于FB的书,在西南书城没有看到有《FreeBSD实用大全》之类的,所以看到这本书,一点犹豫都没就买下了。(我喜欢看书,电子书对眼睛不好。)所以建议,喜欢看书的朋友,去买本书吧。
用FB做了些什么,其实是想说:想用FB做些什么。
最起先,是想用FB做个防火墙,选择了IPF学习。目前为止,我也只会做这个。
仅给几个学校做过FB做的网关
想用FB做什么
目前想用FB来跑WEB,FTP,MAIL,etc.当然,还有漂亮的桌面
之后:学习VPN,Routes,也想知道LOTUS能不能在FB上跑。
总之,能应用到FB上的应用,都想学习。
学习FB的计划
因为WINDOWS大家都比较熟悉,所以,最开始要求自己达到DOS下操作文件的能力
1.看完《实用UNIX教程》 (清华大学出版社),学习UNIX基本操作;
2.《Hand Book》同时看起走,最好看E文的;
3.学习如何配置web,ftp,mail服务,同时学习虚拟空间配置;
4.学习Shell,方便工作生产用:lol
5.系统安全设置学习,也要平时集累;
进阶:
1.了解FB基本系统文件结构;
2.程序下载安装
  port & package & cvsup & fetch
3.内核学习及编译
  为以后编译内核做准备;
4.应用配置:
  IPF+IPNAT;
5.远程控制,安全技巧
  放在这,主要是因为不一定要到现场去安装各种应用软件和维护,方便自己:)
6.WEB,FTP服务安装配置
  同时学习虚拟空间设置;
7.MAIL服务安装配置;
8.SHELL学习
  日常管理的简单化,偷懒化:)

2.系统基本操作

2006.4.8
2.系统基本操作
  进入系统后一些基本操作,如移动文件,创建/删除文件等;
#
首先,看到这个符号,说明你是root权限,这对新手来说,可能的操作会造成很多坏的影响,所以,我们先学习如何建立一个新的,普通的帐号,以方便我们学习。
#adduser
adduser: ebon
Full name: ebon.yan
Uid (Leave empty for default):   
Login group [ebon]: wheel        #wheel组可以su到root权限
Login group is wheel. Invite jk into other groups? []:   #同时也可以是其它组成员
Login class [default]:
Shell (sh csh tcsh nologin) [sh]:
Home directory [/home/jk]:
Use password-based authentication? [yes]: y    #需要密码就n
Use an empty password? (yes/no) [no]: y    #需要密码就n
会提示你输入密码的
Lock out the account after creation? [no]: n
Username   : ebon
Password   :
Full Name  : jk
Uid        : 1005
Class      :
Groups     : wheel
Home       : /home/ebon
Shell      : /bin/sh
Locked     : no
OK? (yes/no): y
小技巧:
使用 pw 来管理你的帐号
在 FreeBSD 下使用 adduser 来新增帐号,有些时会满烦的,可用以下方式:
pw useradd -n -g -m -s /bin/csh
=> -m 代表建立使用者目录
group要存在
●同时设密码
echo | pw useradd -n -g -m -s /bin/csh -h 0
group要存在
● 删除帐号
pw userdel -n -r
=> -r 代表同时删除其 home 目录等相关资料
● 修改帐号
pw usermod -g -s /bin/csh
PS:无法修改帐号名称
● lock 及 unlock 使用者帐号
pw lock
pw unlock
其它小技巧请见:bbsplay.net

#exit  /ctrl+d        /login                #重新登陆
$ls                                #相当DOS的dir
$ls -l                                #查看文件的属性,使用者及组,创建日期等。
$pwd                                #查看当前路径
$who                                #who
$w                                #有谁在这个机器上,登陆时间及登陆界面
$mkdir bbsplay                        #新建一个文档
$rmdir bbsplay                        #删除一个文档
$touch bbsplay.txt
$cat >bbsplay.txt                     
        #这个命令是直接打开文件,并输入内容,有点像DOS的copy con
welcome to bbsplay.net!
(ctrl+c)
$ee bbsplay.txt
                                #很简单的文件编辑器,esc+enter选择保存退出/不保存退出。
$ rm -i bbs.txt                       
        #删除文件。好习惯:加-i参数,确认一次,避免错误删除。
remove bbs.txt? y
$cd /home                        #移动你所在的目录
$cp /home/ebon/bbsplay.txt /home/bbsplay1.txt                       
                #复制/home/ebon/下bbsplay.txt到/home下,并改名为bbsplay1.txt
$more bbsplay1.txt                #查看文件内容,以百分比显示展开多少
$cat bbsplay1.txt                #查看文件内容
$df                                #查看磁盘文件详细
$top                                #查看系统运行的进程
#说明:命令的用法可以用man command来查看学习,也可以在网上去查询。
#命令的运用学习,而不是去学习命令。UNIX的Shell命令,使用是很灵活的,
#几个命令的组合,可以完成很多操作。
现在,基本上你可以在UNIX中进行简单操作了。
-------------------------------------------------
4.10 (基本操作命令补充)
1.文件权限修改(chmod)
类似DOC的attrib命令
unix的文件,有三个所有者;
文件所有者(user)   文件所有者所属给(group)  其它人(other)   #all全部
每个所有者都有三个属性,类似DOC下修改其隐藏,只读功能。
r(只读) w(可写) x(可执行)
unix下,r,w,x分别可以用数字代替。
r(4) w(2) x(1)
现在,我们可以用上面的知识,改变文件权限了。
eg:
$chmod a+rwx  filename    #全部加上rwx属性
$ls -l
$-rwxrwxrwx 1 root  wheel  -         0 Apr 10 02:39 filename
$chmod g=r filename         #给filename的文件所属给赋与只读属性
$ls -l
$-rwx-wxrwx 1 root  wheel  -         0 Apr 10 02:39 filename
$chmod o-x filename          #给filename的文件所属去掉可执行属性
$ls -l
$-rwxrwxrw- 1 root  wheel  -         0 Apr 10 02:39 filename
当然,你也可以用数字也表示权限
eg:
$chmod 755 filename
#ls -l
$-rwxr-xr-x 1 root  wheel  -         0 Apr 10 02:39 filename
2.也许有时候,你不注意,删除系统文件,或者重要文件,当然,你可以用软件找回来,不过,对于我们这种新手来说,在UNIX下找回数据,还没有操作过,所以,我们可以利用chflags命令,来做到预防。
$chflags sunlink filename
$ls -lo
$-rwxr-xr-x 1 root  wheel  sunlink         0 Apr 10 02:39 filename
你怎么删除都删不掉的。
$rm -i filename
remove ipf.conf? y
rm: ipf.conf: Operation not permitted
当你不要想这个标志时,可以在sunlink前加no,来取消。
$chflags nosunlink filename
$ls -lo
$-rwxr-xr-x 1 root  wheel  -       0 Apr 10 02:39 filename
2006.4.9
简单的VI,基本的VI操作
1.操作命令
当你输入:a(append),你输入的将添加光标之后
当你输入:i(insert), 你输入的将插入光标之前
当你办入:o(open),你将会在当前行之后插入新行
2.move
基本移动
hjkl    左下上右
^       当前行行首
$       当前行行尾
w;b  右/左移一个单词的第一个字母
e    右移一个单词的最后一个字母
{;}     上/下移段落处
H;L     屏幕最上/下行行首
G       文档最下行行首
命令移动
:476        移至第476行,当然要存在
:.         移至本行,说明.的用法
:$-10        移至倒数第10行
:^         上移一行
3.delete
x:删除一个字母
dd:删除一行
d$:从行首删除到行尾
d^:从行尾删除到行首
ndd:删除从光标开始向下的n行
4.undo
u:取消操作,仅对上一次操作有效
5.copy,cut,粘贴,替换
copy] y?:把所想copy的文本copy到buffer
cut]  d?:把所想copy的文本cut到buffer
eg:yy;y$;y^;nyy
   dd;d$;d^;ndd
粘贴:光标至目标位置,输入:p:粘贴至光标之后
                          P:粘贴至光标之前
               
替换:r
6.查找/替换       
/pattern                  查找你想要的
:s/patternOLD/patternNEW     本行内,patternNEW替换patternOLD
:%s/patternOLD/patternNEW  文档内,patternNEW替换patternOLD
7,载入,退出
ZZ/:wq            保存退出
:w                保存
:w!                保存,有重名的改写
:q                退出,没更改的提示
:q!                强行退出
:e!                丢弃所有更改,重新载入硬盘原来数据
这些足够你刚开始学习UNIX,编辑文本用的了。当然你也可以用ee,不过,用好VI,在任何UNIX都是通用的了,学一全部可以用,呵,我懒^O^2006.4.12
原计划:
1.了解FB基本系统文件结构;
2.程序下载安装
  port & package & cvsup & fetch
现更改:
先学习ports & packages
再对FB的系统文件目录及结构,作个了解。
这一二天因为工作原因,同时,看显示器太久太久了,所以没有怎么进论坛:P,不过眼睛好累哦,奉劝大家,也奉劝我,有机会要出出看看风景了,呵,五一来了哦:):lol〔题外话,不要K我〕
PORTS和PACKAGES
其实,我也是会用。在这班门弄斧也不太好。通俗点,就是安装软件,呵。
我就给讲讲我习惯用的吧。
这一二天也抽空找了几个资料,最后传上来给大家,比较好,尤其是张纪青老师的文章,讲得很清楚:D,很详细;其它二个文件,算是个补充吧。
关于port&package的解释,ports是一个自动从源代码编译成应用程序的文件集合;package是已编译好的程序包。
mini安装了fb,想要装portcollection,我用cvsup
首先要装cvsup-without-gui软件才能使用cvsup命令
#setenv PACKAGEROOT                            [改变最近最好的mirror]
#pkg_add -r cvsup-without-gui.tbz                                       [安装cvsup]
###你也可以这样
#fetch      
#pkg_add cvsup-without-gui.tbz
###
#cd /usr/share/examples/cvsup/ports-supfile
#cp ports-supfile /ebon/ports-supfile                         [备份一个好些]
#vi ports-supfile
###修改CHANGE_THIS.FreeBSD.org 为离你比较近的一个CVSup[cvsup.freebschina.org]###
#cvsup -g -L 2 ports-supfile                       [cvsup]
----
#cd /usr/port/www/apache
#make install
----------------------------------------------------
有些软件要从网上下:
#fetch
#tar -xvzf freebsd_i.tar.gz
再执行,你所要的程序。
-----------------------------------------------------
查看package信息:
pkg_add info
查找程序位置:
where is = program
删除package:
pkg_delete
或到ports目录下,make deinstall.
==========
惭愧,这是我现在所用的到设及到的:L
4.15号补充:
ports的mirror更改:
1./etc/default/make.conf
2./etc/make.conf
3./usr/ports/distfiles/makefile
文件中的站点,更改为较近的mirror,他们的优先顺序从上至下;
pkg_add安装程序时的依赖关系:
比如:
#/usr/ports/www/lynx
#make install
命令会自动安装所需要的套件;而用pkg_add,则需要分别安装每一个有依赖关系的package.
#pkg_add pro_1
....
#pkg_add pro_2
....
#pkg_add pro_3
阅读(2462) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~