概述
一种用于互联网下载包的打包及安装工具,它包含在某些linux分发版中。它生成具有.RPM扩展名的文件。RPM是Redhat Package Manager(Redhat软件包管理工具)的缩写。这一文件格式虽然打上了Redhat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用。可以算是工人的行业标准了
RPM包的名称格式
apache-1.3.23-11.i386.rpm
- “apache”:软件名称
- “1.3.23-11”:软件的版本号,主版本和此版本
- “i386”:是软件所运行的硬件平台
- “rpm”:文件扩展名,代表RPM包
RPM常用命令
- rpm ‐qa:查询所安装的所有rpm软件包
- rpm ‐qa | more
- rpm ‐qa | grep X
- rpm ‐q 软件包名:查询软件包是否安装
- rpm ‐q xinetd
- rpm ‐q foo
- rpm ‐qi 软件包名:查询软件包信息
- rpm ‐qi file
- rpm ‐ql 软件包名:查询软件包中的文件
- rpm ‐ql file
- rpm ‐ql jdk
- rpm ‐qf 文件全路径名:查询文件所属的软件包
- rpm ‐qf /etc/passwd
- rpm ‐qf /root/install.log
- rpm ‐qp 包文件名:查询包的信息对这个软件包的介绍
- rpm ‐qp jdk-1_5_0-linux-i586.rpm
- rpm ‐qpi jdk-1_5_0-linux-i586.rpm
- rpm ‐qpl jdk-1_5_0-linux-i586.rpm
安装RPM包
rpm ‐ivh RPM包全路径名称:安装包到当前系统
- i=install,安装
- v=verbose,提示,即有提示信息
- h=hash,进度条
删除RPM包
rpm ‐e RPM包的名称
【案例】rpm ‐e jdk
如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息,如:
【案例】rpm ‐e foo
removing these packages would break dependencies:foo is needed by bar-1.0-1
若让RPM忽略这个错误继续卸载,请使用‐‐nodeps命令行选项
【案例】rpm ‐e ‐‐nodeps foo
升级RPM包
rpm ‐U RPM包全路径名
【案例】rpm ‐U cvs-1.11.2-10.i386.rpm
samba配置
什么是samba
这些年来,windows与linux操作系统各自拥有自己的用户群和市场。然而在一般公司或学校里,可能同时有windows和linux主机,windows主机彼此之间可以利用“网上邻居”来访问共享资源。NFS也能使linux主机之间实现资源访问。而samba服务软件能够使windows与linux之间实现资源共享
SMB通信协议采用的是C/S结构,所以SAMBA软件可分阶段客户端及服务端两部分。通过执行samba客户端程序,linux主机使可使用网络上的windows主机所共享的资源。而在linux主机上安装samba服务器,则可以使windows主机访问samba服务器共享的资源
samba安装,samba的文件一般来说在Linux的第一张安装盘中
samba的安装步骤
- 看看是否已经安装了samba
- rpm ‐q samba
- 如果有的话,就先卸载
- rpm ‐e ‐‐nodeps samba
- 把安装文件挂载到linux下
- samba-common-2.2.7a-7.9.0.i386.rpm
- samba-client-2.2.7a-7.9.0.i386.rpm
- samba-2.2.7a-7.9.0.i386.rpm
- 拷贝samba的rpm包到/home,准备安装
- 开始安装
- rpm ‐ivh samba-common-2.2.7a-7.9.0.i386.rpm
- 创建一个用户youyou
- useradd youyou
- passwd youyou
- 给youyou设置samba密码
- cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd,注意:/etc/passwd下面的是Linux用户,/etc/samba/smbpasswd下面的是samba用户
- smbpasswd youyou,设置密码
- 启动samba服务器,测试
- service smb start,启动
- service smb stop,停止
- service smb restart,重启
samba配置
共享资源的基本配置 /etc/samba/smb.conf
- comment:针对共享资源所做的说明文字。默认值为空字符串
【案例】comment=dir for todayhero:共享这个目录是为了todayhero这个用户
- path:若共享的资源是目录,是指定该目录的位置
【案例】path=/tmp:共享tmp这个目录
- guest ok:是否允许用户不使用账号和密码访问此资源
【案例】guest ok=yes:允许用户不使用账号和密码访问此资源
【案例】guest ok=no:不允许用户不使用账号和密码访问此资源
- hosts allow:设置连接主机的地址
【案例】hosts allow=192.168.2.1 server.abc.com:允许来自192.168.2.1 或server.abc.com
- hosts deny:设置禁止连接的主机地址
【案例】hosts deny=192.168.2.1:不允许192.168.2.1的主机访问samba服务器的资源
- read only:用于设置共享的资源是否为可读
【案例】read only=yes:允许只读
【案例】read only=no:不仅仅只读,也就是说可以写入
crontab
概述
任务调度:是指系统在某个时间执行的特定的命令或程序,比如说在凌晨两点要备份数据库
任务调度分类:
- 系统工作:有些重要的工作必须周而复始地执行,如病毒扫描等
- 个别用户工作:个别用户可能希望执行某些程序
【案例】5 * * * * ls ‐l /etc/ > /tmp/to.txt,意思说每小时的第五分钟执行ls命令
1、设置任务调度文件
crontab -e
2、每隔一定时间去执行date > (表覆盖)/home/mydata1 (>>表追加)
希望每天凌晨两点半去执行date>>/home/mydata2,如下
crontab-e ,加入如下代码:
0 2 * * * date >>/home/mydata2 表示每小时的第几分钟去执行
0 2* * * 表示第几分钟,小时,几号,月,星期几
如果希望每分钟执行
* ** * * date >>/home/mydata2
全部为*
crontab最高精确到分
调度文件的规则:分,小,几号,月,星期 命令名称
如果月设为13,这时系统不会执行,也不会报错
3、如何去调度多个任务
1)在crontab -e 中直接写
缺点:太多,太乱,不好管理,没有系统化
2)可以把所有的任务,写入到一个可执行文件(SHELL 编程),类似于windows批处理状态
建议用这个方法
vimytask.sh 写入文件,如上,一般shell文件名字是以.sh结尾的.
.sh 表示shell
chmod修改权限 必须要有X权限
crontab -e 进入,* * * * * /root/mytask.sh
可以把多个文件放到里面
4、如何终止任务
crontab -r 终止任务 删除里面的内容
crontab -l 列出当前有哪些任务调度