linux find,目录,PATH,本地yum

古冷 2016-02-19 478人围观 linux find目录PATH本地yum

一、lsb_release命令的修复
   1、通过其他服务器查找产生lsb_release命令的包(前提是这台服务器有这个命令)
# which lsb_release
/usr/bin/lsb_release
# rpm -qf /usr/bin/lsb_release
redhat-lsb-core-4.0-7.el6.x86_64
# rpm -ivh /misc/cd/Packages/redhat-lsb-core-4.0-7.el6.x86_64.rpm
 
   2、通网络百度、谷歌搜索产生lsb_release命令的软件包,进行安装。
Linux鐩綍缁撴瀯.jpg

二、linux目录结构
   1、可以用man hier命令查看/下各个目录的作用。
   2、详细信息请查看Linux目录详解.txt。
三、find命令扩展
   1、-iname选项:根据名称查找,忽略大小写
# find /etc/ -iname PASSWD
/etc/pam.d/passwd
/etc/passwd
# find /etc/ -name PASSWD
#
   2、-uid选项:根据uid查找,属于这个用户的文件
# tail -n 1 /etc/passwd
haha:x:500:500::/home/haha:/bin/bash
# find / -uid 500
/var/spool/mail/haha
/home/haha
......
 
    3、-gid 选项:根据gid查找,属于这个组的文件
    4、-user 选项:根据用户名查找,查找属于这个用户的
# find / -user haha
/var/spool/mail/haha
/home/haha
......

    5、-group 选项:根据组名查找,查找属于这个组的
    6、-nouser 选项:查找这个文件不属于任何用户的
# userdel haha
# find /home/ -nouser
/home/haha
/home/haha/.mozilla
......

    7、-nogroup 选项:查找这个文件不属于任何组的
# userdel haha
# find /home/ -nogroup
/home/haha
/home/haha/.mozilla
 
    8、-maxdepth 选项:限制目录查找的深度(最大层数)
       注意:当有多个条件是-maxdepth这个选项要放到最前面
[root@localhost 桌面]# find /etc/ -name passwd  -maxdepth 1
find: 警告: 您在非选项参数 -name 后定义了 -maxdepth 选项,但选项不是位置选项 (-maxdepth 影响在它之前或之后的指定的比较测试)。请在其它参数之前指定选项。

正确的:
# find /etc/  -maxdepth 1 -name passwd
/etc/passwd

# find /etc/  -maxdepth 2 -name passwd
/etc/pam.d/passwd
/etc/passwd

     9、-inum 选项:根据文件i节点编号查找
        i节点:在Linux系统中标识一个文件的标志,它是一串数字。在linux系统中一切皆为文件,那么一分区能够创建多少个文件数是有限的,它与这个分区的i节点的数量有关。i节点的数量大小也与该分区的大小有关。可以通过如下命令查询
# tune2fs -l /dev/sda1 | grep "Inode count"
Inode count:              51200

查看一个文件的i节点: ls  -i 补充(ls  -F)
# ls -i /root/install.log
261123 /root/install.log

# find /root -inum 261123
/root/install.log
 
三、PATH应用
     1、输出变量的值
#echo  $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
     2、将可执行程序拷贝到PATH变量的任意路径下,即可达到在任意路径下执行,都能够找到。

四、时间的转换
     1、Unix时间戳(timestamp)
从 GMT 1970年01月01日0时0分0秒 起到指定时间点所经历的总秒数
      命令查看:date  +%s  (查看当前时间戳)
     2、查询指定时间经过的秒数
      date  +%s  -d  "2001-09-11"   
     3、[root@guleng ~]# echo  $[$(date  +%s -d "2001-09-11")/86400+1]
                          //查指定时刻经过的天数
     4、
        [root@guleng ~]# date -d "@1000137600"           //查指定秒数
        2001年 09月 11日 星期二 00:00:00 CST

        [root@guleng ~]# grep  ^root  /etc/shadow    //取改密时刻
        root:$6$BUDvyH4ENyUQQZx4$.. ..2VPL/:16294:0:99999:7:::

        [root@guleng ~]# date  -d "@$[16294*86400]"       //查指定天数
        2014年 08月 12日 星期二 08:00:00 CST
     5、【重要】
         [root@guleng ~]# echo $(date)       //$()代表输出的是命令的结果
          2015年 03月 12日 星期四 08:33:36 CST
         [root@guleng ~]# echo $[2*4]        //$[]代表的是运算
          8


五、ls  -lh与du -sh

共同点:都能够显示对象的大小
不同点:大小的含义
ls  -lh,显示数据内容的大小
du -sh,显示数据所占用的磁盘空间(4KB/块)

[root@guleng ~]# ls  -lh  install.log          //数据为47K
-rw-r--r--.  1 root root  47K  8月  12 09:47 install.log

[root@guleng ~]# du  -sh  install.log          //占用52K磁盘空间
52K     install.log

六、软连接/硬连接
        1、查找文件方式
           目标文件-->i节点-->文档数据
        2、软连接        
           链接文件-->目标文件-->i节点-->文档数据
        3、硬连接
           链接文件-->i节点-->数据内容
        4、对比优缺点
           软连接:若目标文件被删除,链接文件将失效,可以跨分区、目标可以是目录
           硬连接:若目标文件被删除,链接文件仍可用,不能跨分区、目标不能是目录

七、自定义yum仓库
        1、将自己下载的rpm包传到linux中
[root@guleng 桌面]# ls
linuxqq-v1.0.2-beta1.i386.rpm  RealPlayer11GOLD.rpm
[root@guleng 桌面]#

        2、将这些rpm包放到一个目录里
[root@guleng 桌面]# mkdir /mydir
[root@guleng 桌面]# cp /root/桌面/linuxqq-v1.0.2-beta1.i386.rpm RealPlayer11GOLD.rpm /mydir
[root@guleng 桌面]# ls /mydir
linuxqq-v1.0.2-beta1.i386.rpm  RealPlayer11GOLD.rpm
[root@guleng 桌面]#
      
        3、利用光盘作为源,搭建yum仓库
[root@guleng /]# umount /dev/cdrom
[root@guleng /]# mount /dev/cdrom /media/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@guleng /]# df -h | tail -n 1
/dev/sr0              3.5G  3.5G     0 100% /media
[root@guleng /]# cd /etc/yum.repos.d/
[root@guleng yum.repos.d]# cp rhel-source.repo dvd.repo
[root@guleng yum.repos.d]# cat dvd.repo
[rhel-6]
name=Red Hat Enterprise Linux 6
baseurl=file:///misc/cd
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@localhost yum.repos.d]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
rhel-6                                                                                             | 3.9 kB     00:00 ...
rhel-6/primary_db                                                                                  | 3.1 MB     00:00 ...
repo id                                         repo name                                                           status
rhel-6                                          Red Hat Enterprise Linux 6                                          3,648
repolist: 3,648

 4、利用本地yum安装createrepo包
[root@guleng /]# yum -y install createrepo


5、通过createrepo命令生成自定义yum库软件包信息
[root@guleng /]# ls /mydir/
linuxqq-v1.0.2-beta1.i386.rpm  RealPlayer11GOLD.rpm
[root@guleng /]# createrepo /mydir/
Spawning worker 0 with 2 pkgs
Workers Finished
Gathering worker results

Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@guleng /]# ls /mydir/
linuxqq-v1.0.2-beta1.i386.rpm  RealPlayer11GOLD.rpm  repodata
[root@guleng/]#
        6、编辑yum配置文件
[root@guleng /]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
repo id                                         repo name                                                           status
rhel-6                                          Red Hat Enterprise Linux 6                                          3,648
repolist: 3,648
[root@guleng /]# vim /etc/yum.repos.d/dvd.repo
[root@guleng /]# cat /etc/yum.repos.d/dvd.repo
[rhel-6]
name=Red Hat Enterprise Linux 6
baseurl=file:///misc/cd
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[rhel-niu]
name=Red Hat Enterprise Linux
baseurl=file:///mydir
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@guleng /]#
        7、测试安装
[root@guleng /]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
rhel-6                                                                                             | 3.9 kB     00:00 ...
rhel-niu                                                                                           | 2.9 kB     00:00 ...
rhel-niu/primary_db                                                                                | 3.4 kB     00:00 ...
repo id                                          repo name                                                          status
rhel-6                                           Red Hat Enterprise Linux 6                                         3,648
rhel-niu                                         Red Hat Enterprise Linux                                               2
repolist: 3,650
[root@guleng /]# yum  -y  install   linuxqq

请发表您的评论
152文章数 1评论数
请关注微信公众号
微信二维码
Powered By Z-BlogPHP