发新话题
打印

linux一个学习笔记, 另有一份整理的有头序的,会不久就完成

linux一个学习笔记, 另有一份整理的有头序的,会不久就完成

关闭不必要的服务,留下acrond,gmd,network,syslog就行
兼容性列表: http://www.redhat.com/mirrors/ldp/howto/hardware
XFree86显示器设备的兼容性列表:  http://www.xfree86.org
linux下面使用cdrecord工具刻录光盘:
    首先使用cdrecord -scanbus 寻找到光驱的通道编号
    然后使用cdrecord -v dev=0,0,0 speed=32 file.iso 这样的命令刻录
硬盘: /dev/sda
安装目录:
     / 根分区     mount挂载分区操作   
     swap  --交换分区(类似windows虚拟内存的技术
修改bios
安装界面
        f2  linux text
安装fedora linux
       搜集硬件信息 http://hardware.redhat.com/hcl
       linux Documentation Project
制作引导软盘:
  所需要的文件 bootdisik.img  可选 drvblock.img、
安装方式
: 从硬盘安装,光盘,软盘,http,ftp,nfs 还是用光盘实际一些,这样运行安装会快一些,省去不必要的麻烦(这个仅是我个人的想法)
ls  fdisk  
hdparm /dev/sda   hdparm -d1 /dev/hda
more /etc/resolv.conf
检查网络:
         ping  www.sohu.com
         ifconfig默认打印网络接口信息  lo回循信息
         netconfig (TCP/IP文件的配置) service network restart
         route -n
         ping  -b 10.0.0.255 网络地址
         ifconfig  eth0 10.0.0.254 netmask 255.255.255.0
         ifconfig
         man ifconfig
         ifconfig  eth0 x.x.x.x netmask x.x.x.x  up(down)
           -b  网络广播地址
         route add  default gw 10.0.0.138  (要到达默认网络要经过10.0.0.138网关)
         ifconfig (不可以保存) 用netconfig可以  
         ls /etc/sysconfig /network-scripts  (里面是网络接口写入的文件)
         cat  /etc/sysconfig/network-script/ifcfg-eth0
              onboot=yes  启运时激活
         service  network restart   加载配置ifcfg-eth0
         cat  /etc/sysconfig/network-script/ifcfg-eth0
         vi /etc/sysconfig/netwlork-script/ifcfg-eth0
         service network restart
         ifconfig  eth0 检查一下网络  ping 检查网络状态
ls /etc/sysconfig/network*
           netconfig |  neat(可以配置eth0,modem,isdn) 和  redhat-config-network-tui相似
          /etc/sysconfing/network*   下面有一个 profiles 在图形配置下有时不可以,可以清空这个.
用户语言环境
            locale  (定义了各种信息)   主要的变量  LANG=en_US.UTF-8  (语言.字符集)  中国的为zh_CN, 中国的字条集 .gb2312    要想在变量看到 可以设置                        LANG=zn_CN.GB3212    重新改回   LANG=en_US.UTF-8   这两个可以看一下时间显示的不同.
            解决显示乱码: vi /etc/sysconfig/i18n  设备其中的二项:
                   LANG=en_US.UTF-8
                    LC_TIME=EN
                 重新启动reboot                           
            cat  /etc/sysconfig/i18n这个可以看到LANG 的一些信息
ls   /etc/sysconfig/*
            more /etc/sysconfig /hwconf 硬件信息
            安装时有一个kudz 它看硬件信息
            service kudzu start (开机时的自动硬件的信息的一些脚本程序, 在开机时会慢一些.如果没有问题的,可以把这个禁止掉,这样可以加快开机的速度,提高性能
            可以在开机关闭 kudzu  用chkconfig kudzu --list 查看一下状态
setup  (第一个认证信息,)   第二个防火墙,第三个鼠标的信息,第四个网络服务,第五个系统服务(*自动运行,  选择OK
chkconfig --list |more  系统服务显示出来
              xinetd 超级服务
             chkconfig rsync on 开起服务
             service xinetd restart
             ls /etc/init.d    0----6  七个状态
             ls /etc/xinetd.d 可以看到 rsync   在  ls -ld /etc/rc?.d  做一个链接就可以开机自动运行    ls  /etc/rc3.d/  |grep kudzu  runlevel 可以检查   S开头的起动  K开关的杀倒
sshd经常使用的   chkconfig sshd --list
                   telnet 是明文的不安全感
如何看运行级别是多少
     ls  -ld /etc/rc?.d  
     more /etc/inittab
     0-1-2-3-4-5-6
     si::sysinit:/etc/rc.d/rc.sysinit 系统初始化 可以看一下脚本
     10:0:wait:/etc/rc.d/rc 0  等一直到6
ntsysv 配置服务         
确认配置生效 reboot         
putty 软件使用 ssh 登录
            ssh (端口22)
            登录系统最好用 普通 用户
            LANG=zh_CN.utf8  日期并不是我们识别的,需要改putty 在当前的change settins  找到 translation  在里面找到 utf-8 这样在putty就可以看到汉字的输出
windows A: 软盘 硬盘分区和光盘驱动器都有相应的编号
linux    mount /dev/fd0  /mnt/floppy
挂载外部存储设备  
                 /                      /dev/hda1
                 /boot
                 /usr
                 /mnt
                      floppy/           /dev/fd0
                      cdrom/            /dev/cdrom
  floppy 和cdrom 只是一个习惯挂的位置
挂载外部存储设备
     mount  设备名    挂载点  
软盘             /dev/fd
光驱(ide)        /dev/cdrom
光驱(scsi)       /dev/scdN
硬盘 (IDE)       /dev/hdX
硬盘(SCSI)       /dev/sdX
U 盘             /dev/sdX
U盘        /dev/sdX
有一些需要事先驱动(内核要支持scsi和usb接口)
modprobe usb_storage
                  home/
                  var/
    过程
         挂载外设
         读写挂载点
         卸载设备
         移走外部存储介质
mount  umount  用ls 看挂载目录
    umount /mnt/cdrom 或 umont /mnt/设备名  都可以
    eject 打开光驱   eject -t 收回
文件系统类型
文件系统类型选项
            mount -t  文件系统类型  设备 挂载点
      #  mount -t vfat  /dev/hda2  /mnt/c
windows ntfs 格式的介质默认的内核不能辨认,需要重新编译内核
      #  mount -t ntfs  /dev/hda2 /mnt/d
数据光盘格式:iso9660, udf (可擦写光盘的格式)
      # mount -t iso9660  /dev/cdroom  /mnt/cdrom
挂载选项
      # mount -o  
         iocharset=gb3212(设置文件系统的字符编码常用值为gb2312和utf8)
    mount -t vfat -iocharset=gb2312 /dev/sdb2 /mnt/d2
    mount -o  utf8  /dev/   /mnt 这样也是可以的
常用介质挂载选项
      rw/ro
    #mount -t vfat -oro,iocharset=gb2312,uid=redhat,gid=redhat /dev/sdb4  /mnt/sdb5 <注意这里的redhat用户必须在系统里面有>
    #mount -t vfat -o iocharset=gb2312 /dev/sdb5 /mnt/sdb5
    #mount -t vfat -o iocharset=gb2312,uid=redhat,gid=redhat /dev/sdb5 /mnt/sdb5
  实践中的: mount -o ro /dev/sdb1 /mnt/sdb1 (ext3格式, 在这个格式中不可以使用uid,gid我自己还没有做到)
            mount -o ro,uid=redhat,gid=redhat /dev/sdb2 /mnt/sdb2(vfat 格式的)
    #  mount  /dev/fd0  /mnt/floppy  -o ro
     uid= user nanme , gid = group name /gid
     说明:为挂载点目录指定属主和组身份
  #  mount /dev/sdb2 /d -o  utf8 ,ro,uid=redhat,gid=redhat
umask
    说明:设置挂载点目录的文件权限掩码
   mount -o uid =redhat,umask=0077 /dev/sdb2 /d (vfat)  最后是700
   mount -o uid - redhat ,umask=0077  /dev/sdb2 /mnt/d2
文件系统维护
ext2/ext3
块的大小   一块1K    或者4K   块的多少可以提高, 不一定是块的多少决定,还得看数据的单元大小
把分区的信息改成linux类型的 fdisk /dev/sdb1   t   4( 分区号)    83( linux  类型分区)
  
mkfs.ext3 -b 4096 /dev/sdb1     mkfs.ext3 - 819  /dev/sdb4  这样两个寻址就有不同了
mkfs.ext3 -b 4097 -i 8192 -m 2  /dev/sda2    (-m 2   保留空间给管理员)
tune2fs -l /dev/sdb1 |more (查看文件系统的信息)
tune2fs -c 100  /dev/hdb1   (如调整每2次完整地检查根文件系统的装载次数为100次)
tune2fs  -l /dev/sdb4 | more   Inode count   (装载次数)
# tune2fs -r 60 /dev/sdb1 (保留60个块给系统空间使用)
tune2fs -i 5w /dev/sdb1( 调整每2次完整地检查根文件系统的时间间隔为5周)
tune2fs -l /dev/sdb1    看一下   reserced block count (   p这是保留空间)
  tune2fs -l  <device> /dev.sdb4  |grep  Reserved
tune2fs   -o (  查看文件系统信息)   -c  <count>(设置强制自检的挂载次数) -i  <n day>(设置强制自检的间隔时间) -m  <percentage>保留块的百分比   -j 将ext2文件系统转换为ext3格式
tune2fs -l /dev/sdb1   Maximum mount count 挂载次数   tune2fs -c  2 /dev/sdb1       tune2fs -l /dev/sdb1 | grep -i " mount count "
tune2fs -c -1 /dev/sdb1  (为负数时就不能自检)
tune2fs  -i 0  /dev/sdb1
tune2fs -l /dev/sdb4 | grep -i "Reserced"
tune2fs -m 10   /dev/sdb4 (改为110%)
mkfs.ext2  /dev/sdb4  mount /dev/sdbv4 /mnt
cp /etc/service  /mnt
tune2fs -j /dev/sdb4  umount /dev/sdb4  mount /dev/mnt /mnt
df -h   看一下, ext2可以转ext3 但不可以转回,转回数据丢失
tune2fs  -l /dev/sdb4 | more  在文件系统  Filesystem features: has_journal(说明有日志) filetype  sparse_super  可以对比一下.ext2
文件检查工具
fsck(常用)           e2fsck(危险)
fsck -t ext2  /dev/sdb1
fsck.ext2 /dev/sdb1
fsck( ga开机会自检的  )   more /etc/fstab  (如果错误)
fsck.ext3 -y/dev/sdb1 ( 自动修复 sdb1h上的错误)
磁盘配额
ext2,ext3支持
userquota,grpquota
  mount -o usrquota,grpquota /dev/sdb1 或  mount -o remount ,usrquota,grpquota  /   最好进入 init 1 实际多的是3
quotacheck -cvuga 检查并且创建磁盘配额的数据库文件
edquota -u  <username> 为指定用户分配磁盘空间和节点数量
quota命令可以查看用户的配额使用情况
实际过程
mkfs.ext3  /dev/sdb1
mount /dev/sdb1 /mnt/sdb1 -o usrquota,grpquota (挂载信息会在mount里, 查以用一下mount看一下)
more /etc/mtab   
quotacheck -cvuga (也可以指定,不用a 选项, 可以用   quotacheck -cvug /dev/sdb1)
不需要重新启动机器,  quotaon -a  (在root 里会有aquota.group ,aquota.user)
edquota -u  username ( 这样编辑: blocks块的限制,soft<10244 这个是字节 >软限制有天数 hard不可以超越的, inodes 节点,文件个数.  
dd if=/dev/zero of=file1 bs=1K count=1024   
之后看一下quota  touch aa 看一下  quota中的file
echo "11"> aa   可以写数据
quota -u usernmae 查检用户
repquota -a 打印用户信息
edquota -t   更改 时间,块数.
quotaoff /mnt/sd1  关闭
edquota 就不起作用了.
vi  /etc/fstab
       /dev           /mnt/     ext3   defaults,usrquota,grpquota  0  0
man edquota     -g  给组加   aquota.group和aquota.user  这个数据库是用户的的配额信息,自己可以看看,编辑

分区原理
mbr  /dev/hda(/dev/hda1,/dev/hda2,/dev/hda3)或者 /dev/hda1,/dev/hda2,/dev/hda3  /dev/hda4( /dev/hda5,/dev/hda6,/dev/hda7)
格式化原理
/dev/hda (fat32,ext2)
常用linux  
#fdisk   /dev/hdX
添加/删除  重新启动
fdisk /dev/sdb2
  m  (help)
   会显示分区的帮助
          p  打印   n 增加新的分区(e extended  p  primary(1-4)  first  cylinde  last cylinder   t( 转换类型)  82(linux  swap)  v(较验)
格式化 mkfs     
     mkfs  -t ext3  /dev/hdb2
     mkfs.vfat /dev/sdb3
     mkfs2fs -j /dev/sdb2
     mkfs.ext3 /dev/sdb3
     mkfs2fs(默认是ext2  加j  ext2格式)
mkfs.ext 要和系统的格式相同
  linux swap不能格式化 mkswap /dev/sdb4
mount  /dev/sdb2 /mnt/sd2
umount  /dev/sdb2
永久的挂载须写入  /etc/fstab
  /dev/sdb2    /mnt/sd2  ext3 defaults 0(是否备份) 0(自检)
vi /etc/fstab
   /dev/sdb1    /mnt/sd1   default  0 0 (2只有/root)  这样就会自动挂载
以后挂载就可以  mount  /dev/sdb1
df  检查一下
df -T (显示类型)
使用卷标挂载(不要重名)
     # e2label /dev/sdb2 test
     # mount  LABEL=test  /mnt/sd2(不要有空格)
    写入/etc/fstab
       LABEL=test  /mnt/sd2   ext2    defaults 0  0
  more /etc/fstab  看一下卷标
ext2/ext3挂载选项
ro/rw   只读/读写
exec/noexec   允许/不允许可执行
dev/nodev     允许/不允许设备文件
suid,sgid /nosuid,nosgid  允许/不允许suid,sgid文件
atime/notime 更新/不更新新节点的访问时间
async/sync  异步/同步磁盘I/O
user/nouser 允许/不允许普通用户挂载磁盘,用于 /etc/fstab文件中的选项
   df   
  mount  /mnt/sd1  -o  remount,ro(只读系统)
  mount dev/sdb2  /mnt/sdb2 -o ro
  umount /mnt/sdb2
mount /mnt/sdb3 /mnt/sd1  -o noexec    cp /bin/ls /mnt sdb1 /mnt/sd1/ls    不要随便用noexec  
有害的程序如:光盘和软盘就这个
mount /mnt/sd1  -o remount ,exec  这样就可以运行了
dev/nodev
vi /etc/fstab
    /dev/sdb2  /mnt/sdb2  exe3   noexec,nodev,nosuid,nosgid 0 0(安全的运行
man mount   (default  rw,suid,dev,exec,auto,nouser async)
  Automounter     autofs软件包
  作用:自动挂载访问的分区
  主配置文件/etc/auto.master,格式:
  例:   /misc  /ect/auto.misc  --timeout=60
  映射文件 /etc/auto.misc格式
  例:  cd  -fstype=iso9660,ro            :/dev/cdrom
       fd  -fstype=auto                  :/dev/fd0
   重新启动autofs服务:   #  service autofs restart
   访问设备的方法:挂载目录+关键字
   例:   ls  /misc/cd
不仅管理本地,还可以用于远程的. 当你使用的时候,会自动挂载.
  主配置文件  /etc/auto.master
  那不得配置 auto.master  (关键字   挂载选项 设备 ) 如:
    cd  -fstype=is9660,ro     :/dev/cdrom   (  本地 ":")    fd  -fstypt=auto          :/dev/fd0   
重新启动 autofs  #  service autofs  restart
   访问设备的方法
       ls /misc/cd
实际 autofs  (rpm -qa tutofs)
   rpm -ql autofs|more
man 5 autofs   man 8 autofs
vi  /etc/auto.master
    /misc /etc/auto.misc --timeout=60
vi /etc/auto.misc
   cd    -fstype=iso9660,ro,nosuid,node :/dev/cdrom
service autofs restart
more  /etc/auto.master
   ls /misc   
ls /misc/cd
ls /misc
  umount /misc/cd 或者等待一分钟自动卸载
ls /misc
vi /etc/auto.misc
   floppy   -fstype=auto  :/dev/fd0
service autofs restart
ls /misc/floppy
    做一个链接    让普通用户可以使用
      ln -s  /misc/cd /cd     ln -s /misc/floppy /fd
vi  /etc/auto.master(注不要使用已经用过的目录)
   /new     /etc/auto.new   --timeout=0
vi   /etc/auto.new
  cd   -fstype=iso9660     :/dev/cdrom
service autofs restart
vi /etc/auto.master
    /home  /etc/auto.new  --time=6-
ls /home
service autofs restart
ls /home(被autofs接管)
ls /home/cd
  记得不要使用已用的目录
如何挂载网络的:
        mount 10.0.0.1:/var/ftp/pub /mnt
        ls /mnt
        umount /mnt
   vi /etc/auto.misc
    #linux  ro ,soft,intr   ftp.example.org:/pub/linux
    pub  -fstype=nfs,ro     10.0.0.1:/var/ftp/pub
   serice autofs restart
ls /misc/pub
tail /var/log/messages   (看automount  )
排错  :
    mount  /dev/fd0 /mnt/floppy
SMBFS
  vi /ec/auto.misc
    win     -fstype=smbfs,username=redhat%123    ://win2000/c
如果有U盘的可以参考
       jaz  -fstype=ext2    :/dev/sdc1
rpmdb  是一个很好的工具,它里面有软件包的一些关联性列表,可以轻松解决一些,软件依赖性问题.
首先要安装  rpmdbredhat* .rpm
rpmdb -ivh --aid samb??.rpm (可以找到与他相关的软件包)
还有一个就是 进入光盘的 RPM目录下之后,rpm -ivh -aid samba*.rpm 可以辅助找到相关的软件
rpm -qa |grep samb (查询samba软件包)
rpm -ql  samba| more  (查询相关的列表)   nmbd   提供相关的查询信息,  smbd 传输数据     /usr/shar/doc/sam* 相关的文档  
ls /usr/shar/doc/samba-2.02/samba-HOWTO-Collection.pdf相关原帮助学习文档  Samba-Develloper-Guid.pdf 相关的开发帮助文档资料 书籍就是来自这两个文档
/sbin/mount.smbfs  客户端挂载工具  /usr/bin/nmblookup客户端的查询工具 /usr/bin/smbclient 哪个主机可以访问和访问列表  /usr/shar/man/smbmnt.7.gz 相关的帮助文档
smbtree(显示局域网中的所有树)
smbtree  不输入
smbtree -b 局域网发广播
smbtree -b -D  显示工作组名
sbtree -b -D -U redhat%redhat   (用户名%密码)
nmblookup 显示一台主机的位置
nmblookup win200  
nmblookup \*  (显示所有的主机信息)
smbclient  显示/登录局域网的共享
smbclient -L  win2000
最好用一下nmblookup 的信息里的IP这样快一些
smbclient -L  10.1.5.2
smbclient -L  10.1.5.2  -U  redhat   在windows 里的 e$  是看不到的,在linux可以看到的.
smbclient //10.1.2.1/lab  -U  redhat%redhat   这样就可以登录了
会出现 smb:\>   和DOS有点相似   用 get 可以下载  用put 上传
   smb:\> put /root/install.log  install.log(远程的)
   smb:\> put /root/install.log 会出现
         NT_STATUS_OBJECT_NAME_INVALID opening  remote  file\/root/install.log   (当前没有这个目录,会显示错误信息)
smbmount //10.1.3.1/lab /mnt -o username=redhat%redhat
ls /mnt
umount /mnt
smbtar
作用:( 远程备份邻居的文件<需要稍作修改>)
用法: smbtar -s  server -u  user  -p  password -x sharename -t output
例如:  smbtar -s wind2000 -u redhat -p redhat -x chinaitlab -t inlab.tar
smbtar -s 10.2.1.1 -u redhat -p redhat -x lab  -t lab.tar
ls -l lab.tar 默认是有问题的
which smbtar$
file /usr/bin/smbtar (检查一下类型)
vi /usr/bin/smbtar
eval $ SMBCLIENT "'\\\\$server\\$service'" "'$password'" -U "'$username"\
-E -N $log -D  "'cdcmd'" ${clientargs} \
-T ${tarcmd}${tarargs}  $blocksize $newer $tapfile '$tapfile '${1+"[email=$@"}]$@"}'[/email]  $verbose   ( 里面有一个 -N 这个指的是匿名用户,加上密码,加用户,之后它都会用匿名用户登录的)<去掉 -N 选项 这样就可以了>
smbtar -s 10.2.1.1 -u redhat -p redhat -x lab  -t lab.tar
ls -l lab.tar
tar tvf lab.tar(  显示列表)
Sabmba服务器配置 (大致需要三步)
  修改配置文件  /etc/samba/smb.conf
    workgroup=workgroup (工作组)
    security=share(安全级别)
    [docs](共享文件夹)
          path=/usr/share/doc
          comment= share documents
          public= yes
重新启动smb  服务器
# service smb restart
# chkconfig smb on(把状态改一下)
测试
# smbclient -L localhost (最好用远程的)
# smbcline -L localhost -N
在windows 中找,可以在网上邻居,也可以用
复习 SMB
  windows的网上邻居
工作原理
        通过SMB协议共享传输文件,具有自己的主机名称解析系统(WINS)SMB(server Message Block)/CIFS(command....
     客户端:
     浏览服务器
  基本概念
       主机名:
       共享名:
       工作组名:
网上邻居的认证模式
     工作组模式
     域服务器模式
windows 中访问网上邻居
  win95/98/2000 需要TCP/IP netbeui,ipx/spx其中任意一种协议
    但跟linux共享网上邻居必须安装TCP/IP
在运行中访问微 F5 刷新 \\ server\share
使用挂载的方法   
  # mount -t  smbfs  //server/sharename/localidr  或        
  #  smbmount  //server/sharename/localdir
使用smbclient
  #smbclient   //server/sharename  -U  name%passwd
权限    (windows)
1    访问控制
  [doc]
   path=/var/redhat
   comment=redhat's files
   valid users=<username> <@groupname>
2新建samba用户
   #useradd  username
   #smbpasswd -a username    <-d  "disable user"  >  <-x  "delete  user">   <-e enable user>  <-m  machine trust accout  域增加信任数>        
   #smbpasswd --help
  3用户赂映射
    [global]
    username map = /etc/samba/smbusers
    #smbuseradd  unixname:mapname (有的fedora core 1 里面没有这个,可以用下面的方法做一下,企业版本中可以实现)
vi /etc/samba/smbuser  
        redhat  =  tom  jack
#  service smb restart
再加一个文件夹可以看到效果
4  客户端访问演示  
       smbmount //10.1.12.1/tmp /mnt -o username=tom%123
HOME  
  [global]
  [homes]
      connment = Home Directories
      valid users = %S
      browseable = no  
      writable = yes
smbclient -L 10.1.2.2 -U redhat
    使用用户要改配置文件的security = user
smbclient //10.2.1.2/redhat - U  redhat%123
Samba用户的权限
   [redhat]
     path=/var/redhat
     comment=redhat's filename
    public =  no
    valid users =   @redhat
    write list
    create mask
    directory mask
  #ls -ld  /var/redhat ( 文件夹本身的权限)
smbmount //10.1.13.2/test /mnt -o username=itlba%123
touch  /mnt/aa   ( 写入服务器的时候会用到 itlba)
注意:客户端的所有的请求访问身份在服务器端都会映射成登录账号的身份
测试工具
      testparm
      testparm  /etc/sabmba/smb.conf  win200  10.2.2.2
   /etc/samba/smb.conf
          [global] /*    全局
               workgroup = workgroup           "#" ,";"  这个是说明的用途,没有特别的意义
               
               server  string =  movies      "会在网上邻居看到 备注里写着 movies
启动服务可以在编辑的时候  以命令里输入    :! servcie smb restart
nmblookup   serve    (
      
在 workgroup   下面加上  netbois name  =  redhat
nmblookup  redhat
Samba配置文件
[global]
      workgroup = workgroup
      netbios name = redhat
      server string = Samba server
      security = share/user/server      
      ;password server <server>
      log file = /var/log/samba/log.%m   (%m 客户机的主机名)  /var/log/samba/%m.log     man smb.conf
      encrypt passwords = yes
      smb passwd file = /etc/samba/smbpasswd
      include = /etc/samba/smb.conf%m
      interfaces = 192.168.0.0/24
      ;name resolve order = wins lmhosts bcast
      ;wins support = yes
      ;wins server = w.x.y.z
访问控制    man 5 hosts_access  (可以看一下)
一: 全局访问控制
    [global]
        hosts deny = ALL
        hosts alow = 10.0.0.
二.局部访问控制
    [docs]
        hosts deny = 10.0.0.
        hosts allow = 10.0.0.241
    [redhat]
        hosts allow = 10.0.0.        EXCEPT   10.0.0.241      /***   排除241 主机
        hosts deny = 10.0.0.241  (失效)
允许优先   
应用案例
要求:
    1、所有的员工都能在公司内流动办公,但不管在哪台电脑上工作,都要把自己的文件数据保存在Samba文件服务器上。
    2、市场部,技术部都有各自的目录,同一个部门的人共同拥有一个共享目录,其他部门的人都只能访问在服务器上自己个的home目录。
    3、所有的用户都不允许使用服务器上的shell
分析   
    1   需要Samba作为文件服务器,为所有的用户创建号和目录。用户默认都在服务器上有一个home目录,只有认证通过才能看到。
  2   需要为市场部和技术部创建不同的组sales和tech,并且分配目录,把所有市场部的员工加入sales组,技术部的员工加入tech. 通过samba共享sales和tech组
    3   建立用户账号的时候,不分配shell
案例实施
1、为所有的用户创建账号和目录,不分配shell。
 假设市场部有tom、jack,技术部有red、blue,总经理是ceo,财务是finance
2、建组sales和tech,把所有市场部的员工加入sales组,技术部的员工加入tech组
3、创建两个目录/home/sales和/home/tech,并且修改两个目录的权限,并且修改两个目录的权限,分别属于sales组和tech组
4、通过samb共享/home/sales和/home/tech组
5、测试
具体过程
        se*=user
       [tmp]
             comment=
            
# groupadd sales
# groupadd tech
#useradd -g sales -s /dev/null(或  /bin/fales) tom
#useradd -g sales -s /bin/fales  jack
#smbpasswd -a  tom
#smbpasswd -a jack
# for user in red blue   (加入多个用户,如 red blue
> do
> useradd -g tech -s /bin/false   $user
>smbpasswd -a $user
>done
# useradd ceo
#useradd finance
#smbpasswd -a ceo
到现在用户建立完成
#mkdir /home/sales  /home/tech
# ls -ld /home/sales /home/tech
#chgrp sales /home/sales
#chgrp tech /home/tech
#chmod 770 /home/sales
#chmod 770 /home/tech
#ls -ld /home/sales   /home/tech
#chmod  g+s  /home/seles
# chmod g+s  /home/tech
# ls -ld /home/sales /home/tech
#vi /etc/samba/smb.conf
  [sales]
   path=/home/sales
   comment = sales
   public = no
   valid users = @sales
   write  list = @sales
   creae mask = 0770
   directory mask = 0770
[tech]
   path =  /home/tech
   comment = tech
   public = no
   valid users = @tech
   write list = @tech
   create mask =  0770
   diretory mask = 0070
# service smb restart
# smbclient -L 10.1.1.1  -U tom%tom
# more /etc/samba/smbpasswd
# more /etc/samb/smbusers
#smbmount //1.22.2.2/sales /mnt -o username=ceo%ceo  < 因为有限制这个会不让挂载的
#smbmout  //2.2.21.3/ceo  /mnt -o  username=ceo%ceo
用其它的试验一下看看    安全期间不会有"x"
Smb  可以用autofs  做  先在auto.mast 里加上
            sales  -fstype=smbfs,username=tom%tom   :/10.2.1.1/sales  
    安全的动态磁盘策略
  软件RAID技术
     RAID0/RAID1/RAID5
  LVM逻辑卷管理技术
     PV/VG/LV
  整合RAID和LVM的磁盘存储策略
    RAID技术产生的背景
  普通的IDE硬盘速度不够快,性能不够稳定,不能应用于企业级的关键任务
  高效并且稳定可靠的SCSI硬盘价格昂贵,中小企业承受不起
  RAID(Redundant Array of Inexpensive/Independent Disks),即廉价/独立磁盘冗余阵列(或简称磁盘阵列),它的出现,可以让我们把普通的IDE硬盘组成快速安全可靠的存储设备。
    RAID原理
  RAID是一种把多块独立的硬盘安不同方式组合起来形成一个磁盘组,从而提供比单个硬盘更高的存储性能和提供数据冗余的技术。不同的组织方式成为RAID级别(RAID Levels)。
  数据冗余的功能是在用户数据一旦发生损坏后,利用冗余信息可以使损坏数据得以恢复,从而保障了用户数据的安全性。
  在用户看起来,组成的磁盘组就像是一个硬盘,对磁盘阵列的操作与单个硬盘一模一样。
      RAID级别
  目前共有0-6共7种基本的RAID级别
  常用RAID级别是level 0,level 1  和level 5
  需要RAID控制器(一种PC适配器具)来管理硬盘
  Linux内核可以模拟RAID控制器,用来管理硬盘,但只支持0,1,4,5
     RAID 0
  RAID 0  又称Striping。
  RAID 0 通过把连续的数据访问分散到多个磁盘上来提高存储性能,这样,数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性
     RAID 1
  RAID 1 又称为Mirror或Mirroring,它的宗旨是最大限度的保证用户数据的可用性和可修复性。
  RAID 1 的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外的一个硬盘上
     RAID 5
  RAID 5 不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID 5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID 5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
     RAID  0+1
  是RAID 0和RAID 1的组合形式,也称为RAID 10

本文由open-end 发布于Linuxsky 论坛,网址:http://bbs.linuxsky.org/thread-5814-1-1.html

TOP

辛苦了

TOP

发新话题