用户管理
与用户相关的配置文件
/etc/passwd
/etc/shadow
/etc/skel
/etc/defalut/useradd
/etc/login.defs
useradd usermod userdel id groups newgrp passwd chage
-u -l -r -S
-g -L
-G -U
-M
-d
-c
-s
uid号 0~65535
0
1-499
500+
用户组管理
/etc/group
/etc/gshadow
groupadd groupmod groupdel gpasswd
-g -n 设置组密码
-A
-a
-d
-M
当把用户设置为组管理员,用户有什么权限:添加组成员 删除组成员 设置组密码
组的管理员不一定要是本组用户,一个用可以属于多个用户组。
修改文件 、目录的 所有者和所属组
chgrp
chown
如何查看文件、目录的所有者和所属组
ll 文件名
ll -d 目录名
一 、软件包管理
1.1 rpm包
默认情况下RHEL-XX 软件包都是.rpm包。
rpm (红帽包管理器)
通过数据库的方式记录安装过的软件包。/var/lib/rpm
查看 安装 升级 卸载
rpm包的组成结构成
软件名-主版本号.次版本号-修改次数.操作系统_机器架构.rpm elinks-0.11.-.el5_4..rpm
el6_i386
i586
86_64
noarch
rpm包间有依赖关系
安装的环境要和封包时的环境一致
linux系统软件包的封包类型
.rpm (默认的安装包封包类型) 用rpm 命令 操作
xxx.bin 给安装文件执行权限 就可以安装
.pl 用perl语言编写的软件包 要先编译 perl
make
make install
软件自己提供安装脚本: .sh .install .setup
运行安装脚本就可以安装
免安装软件包: 把安装包解压就可以使用。(调用运行程序的命令就可以)
挂载安装光盘 (/dev/cdrom /dev/hdc)
mount (挂载设备 卸载设备 查看已挂载的设备)
mount
root@localhost rpm]# mount
/dev/sda2 on / type ext3 (rw)
设备名 on 挂载点 type 文件系统类型 (设备的挂载方式)
Cluster 提供集群服务的软件包
ClusterStorage 提供集群存储服务的软件包
VT 提供虚拟化技术的软件包
Server 保存提供系统服务和系统工具命令的软件包
系统引导文件,操作系统的镜像文件
images
isolinux
挂载设备
mount [-t 文件系统类型] 设备名 挂载点(目录)
*尽量不要把多个设备挂载到同一个目录下。
*一个设备可以挂载到不同的目录下。
*通常习惯把外部的移动设备挂载到系统的/mnt目录下
*外部的移动设备默认挂载到/media目录下
*也可以把外部的移动设备到自己手动创建的目录下
光盘的文件系统类型 是 iso9660
.iso (mount -o loop xxx.iso /mnt)
卸载设备
umount 挂载点/设备名
* 挂载的设备不能处于使用状态
* 卸载设备时要退出,设备的加载目录
命令格式
rpm [选项] 软件名/软件包名
-q 软件名
-qa rpm -qa | grep 'ssl'
-ql 软件名 查看软件包里的文件都安装到系统的哪些目录里
-qc 软件名 查看软件包里的提供的配置文件安装位置
-qd 软件名 查看软件包里的提供的帮助文件安装位置
-qf 文件名 查看指定文件由哪个软件包提供
-qi 软件名 查看已安装软件的信息。
安装软件包
-i 安装软件包
-v 显示安装信息
-h 用#号显示安装进度
--nodeps 忽略依赖关系安装
--force 强制安装
rpm -ivh --nodeps xxxx.rpm
--force
rpm包默认安装目录
包里提供的配置文件
/etc
/etc/软件包名/ 包里提供的命令
/bin
/sbin
/usr/bin
/usr/sbin 包里提供的库文件(.o .so ) 或头文件(.h)安装的位置
/lib
/usr/lib 包里提供的模板文件 帮助文档
/usr/share/doc/
/usr/share/man/ 日志文件
/var/log
/var/log/软件名/
升级软件
-U 如果低版本的软件没安装,直接安装当前高版本的软件
-F 如果低版本的软件没安装,当前高版本的软件安装不上
卸载软件
-e 软件名 卸载软件
--nodeps 忽略依赖关系卸载
--force 强制卸载 *卸载包时包之间也是有依赖的。
要把依赖此软件包的包卸载,才能卸载当前软件包。
对软件包做验证。
rpm -V 软件名 查看某个已经安装的软件包里哪些文件被修改过。
rpm -Vf 文件名 查看某个某个文件是否被修改过
rpm -Va 查看系统内所有被修改过的文件
rpm -Va | grep passwd man rpm rpm -V httpd
S.....T c /etc/httpd/conf/httpd.conf S file Size differs
M Mode differs (includes permissions and file type)
MD5 sum differs
D Device major/minor number mismatch
L readLink() path mismatch
U User ownership differs
G Group ownership differs
T mTime differs
文件文件类型
c %config configuration file.
d %doc documentation file.
g %ghost file (i.e. the file contents are not included in the package payload).
l %license license file.
r %readme readme file.
对未安装的软件的操作:
rpm -qpi 软件包名
rpm -qpi elinks-0.11.-.el5_4..x86_64.rpm
rpm -qpl elinks-0.11.-.el5_4..x86_64.rpm
rpm -qpc elinks-0.11.-.el5_4..x86_64.rpm
rpm -qpd elinks-0.11.-.el5_4..x86_64.rpm
1.2 搭建YUM源服务器
(自动解决安装或卸载软件包时包与包之间的依赖关系)
1.2.1 搭建本地yum源
(安装需要的rpm包在本机)
mkdir /iso
mount /dev/cdrom /iso
修改配置文件指定rpm包的存储位置。
/etc/yum.repos.d/
[root@localhost Server]# cat /etc/yum.repos.d/iso.repo
[rhel5-server]
name=Red Hat Enterprise Linux server - rpm package
baseurl=file:///iso/Server
enabled=
gpgcheck=
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[rhel5-Cluster]
name=Red Hat Enterprise Linux Cluster - rpm package
baseurl=file:///iso/Cluster
enabled=
gpgcheck=
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@localhost Server]#
yum clean all 刷新yum源缓存
yum list
用yum源 安装 升级 卸载 查看 软件包的命令是 yum
yum 【选项】 动作 软件名
选项
-y 默认安装
yum -y update elinks
动作
install 安装
remove 卸载
list 查看
update 升级
grouplist 查看软件包组
groupinstall 安装软件包组
groupremove 卸载软件包组
groupupdate 升级软件包组
yum -y install 软件名1 软件名2
yum -y install php*
yum -y groupinstall "软件包组名" "软件包组名"
1.2.2 搭建网络yum源
(安装需要的rpm包集中存储在网络中的一台服务器,本地没有软件包)
在ip是192.168.1.100服务器上搭建yum源,网络内所有主机可用使用yum源安装rpm包。
server 的配置 : 开启共享服务(ftp httpd)
用共享服务共享客户端安装时使用的rpm包
客户端配置: 编辑自己的主配置文件,指定软件仓库的位置
刷新yum源缓存信息
yum list 查看yum服务器上的所有软件包(能看到就OK)
vim /etc/yum.repos.d/iso.repo
[rhel5-Cluster]
name=yum server 192.168.1.100
baseurl=ftp://192.168.1.100/iso/Server/
enabled=
gpgcheck=
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
1.3 安装源码包
(rpm 包功能 安装环境 都无法修改)
.tar.gz
.tar.bz2
因为源码包是用C语言开发的( gcc C++ make 开发工具软件包组 开发库软件包组)
安装源码包的步骤
解包解压缩
进源码目录
配置 (软件包安装到什么目录下 安装后有哪些功能)
./configure 选项
./configure -h
--help
--prefix=路径 //指定安装
习惯性 /usr/local/定义的目录名
--prefix=/usr/local/httpd2
不指定安装目录默认把包里文件安装到/usr/local/目录的不同文件夹里
配置信息保存在 Makefile 文件里,如果配置错误,不会此文件。 编译 (按配置编译成可执行文件)
make
安装
make install 卸载 rm -rf 安装目录
事例
tar -zxvf httpd-2.2..tar.gz
cd httpd-2.2.
./configure --help
./configure --prefix=/usr/local/httpd2
make
make install
ls /usr/local/httpd2/ rm -rf /usr/local/httpd2