chown命令是用來更改一個文件或目錄的全部者和所屬組的命令。該命令有一個跟chmod用法同樣的參數 —R 級聯更改全部者和所屬組。意思就是使用—R命令會將要更改所屬組的目錄及該目錄下全部文件和目錄都執行chown。git
chown -R username:groupname filename(dir)vim
[root@localhost tmp]# ls -la chown/ total 0 drwxr-xr-x. 2 root root 18 Jan 30 03:09 . drwxrwxrwt. 9 root root 261 Jan 30 03:09 .. -rw-r--r--. 1 root root 0 Jan 30 03:09 test [root@localhost tmp]# chown -R user1:user1 chown/ [root@localhost tmp]# ls -la chown/ total 0 drwxr-xr-x. 2 user1 user1 18 Jan 30 03:09 . drwxrwxrwt. 9 root root 261 Jan 30 03:09 .. -rw-r--r--. 1 user1 user1 0 Jan 30 03:09 test
能夠看到上面的執行結果,不但/tmp/chown/目錄的屬主屬組變爲了user1,並且該目錄下的test文件的屬主屬組也變爲了user1。下面咱們不加—R的參數再驗證一下。windows
[root@localhost tmp]# chown root:root chown/ [root@localhost tmp]# ls -la chown/ total 0 drwxr-xr-x. 2 root root 18 Jan 30 03:09 . drwxrwxrwt. 9 root root 261 Jan 30 03:09 .. -rw-r--r--. 1 user1 user1 0 Jan 30 03:09 test
這個結果能夠明顯看到,不加-R 的參數,chown目錄屬主屬組變爲了root,可是chown/test文件的屬主屬組依然是user1。centos
useradd命令是用來添加用戶的。 useradd username 這個命令建立用戶的時候會一併建立一個相同名字的用戶組。sass
[root@localhost ~]# useradd zhaoyun [root@localhost ~]# tail -2 /etc/passwd user1:x:1000:1000::/home/user1:/bin/bash zhaoyun:x:1001:1001::/home/zhaoyun:/bin/bash
如上面命令所示,useradd zhaoyun 就給系統添加了一個zhaoyun的帳戶,查看是否添加成功,可使用 tail-2 /etc/passwd 命令來查看最後一行是否有了zhaoyun這一記錄,有了就表示建立成功了。bash
groupadd命令是用來添加組的命令的,用法跟useradd同樣。less
tail命令是用來查看一個文件最後幾行的命令,不加參數默認是查看最後十行,能夠經過tail -2 filename 用來查看文件最後兩行的內容。ide
id命令能夠用來查看一個用戶屬於哪一個組,經過該命令的執行結果咱們能夠看到一個用戶不但有一個主組,還有一個附屬組。工具
[root@localhost ~]# id zhaoyun uid=1001(zhaoyun) gid=1001(zhaoyun) groups=1001(zhaoyun)
history命令是用來查看命令歷史的命令,!XX的用法是能夠運行XX開頭的最近的一次命令。ui
[root@localhost ~]# history 79 ls -la chown/ 80 cd 81 useradd zhaoyun 82 tail /etc/passwd 83 tail -2 /etc/passwd 84 id zhaoyun 85 di /tmp/chown/test 86 id /tmp/chown/test 87 history [root@localhost ~]# !ls ls -la chown/ ls: cannot access chown/: No such file or directory
硬連接文件與源文件是同一個iNode號的,因此硬連接文件既不能跨磁盤也不能跨分區。給一個文件作硬連接能夠有防誤刪除的功能,可是由於硬連接文件和源文件裏的內容是同時變動的,沒有錯誤恢復的做用。
[root@localhost chown]# ln test test2 [root@localhost chown]# ls test test2
硬連接相似於一個教室的兩個門,無論學生、課桌、工具經過哪一個門進或出,透過兩個門看教室的內容是一致的。
軟連接至關於windows裏面的快捷方式,它的命令格式:ln -s 源文件 快捷方式 。作連接跟其餘命令不太同樣的是源文件放在前面。軟連接既能夠做用在目錄上,亦能夠做用在文件上,還能夠跨磁盤跨分區作軟連接。
當咱們有一個文件特別比較大,還源源不斷的寫入數據,並且該文件所在的分區要容量不足時咱們能夠作一個軟連接,將文件實際寫入的位置轉移到另外一個分區下。
yum工具是一個能自動解決依賴關係的工具
[root@localhost ~]# yum install -y net-tool
[root@localhost ~]# yum remove net-tools
[root@localhost ~]# yum list |grep yum yum.noarch 3.4.3-161.el7.centos @anaconda yum-metadata-parser.x86_64 1.1.4-10.el7 @anaconda yum-plugin-fastestmirror.noarch 1.1.31-50.el7 @anaconda PackageKit-yum.x86_64 1.1.10-1.el7.centos base PackageKit-yum-plugin.x86_64 1.1.10-1.el7.centos base kabi-yum-plugins.noarch 1.0-3.el7.centos base nextgen-yum4.noarch 2.7.5-19.el7_6 extras yum-NetworkManager-dispatcher.noarch 1.1.31-50.el7 base yum-cron.noarch 3.4.3-161.el7.centos base yum-langpacks.noarch 0.4.2-7.el7 base yum-plugin-aliases.noarch 1.1.31-50.el7 base yum-plugin-auto-update-debug-info.noarch 1.1.31-50.el7 base
[root@localhost ~]# yum grouplist Loaded plugins: fastestmirror There is no installed groups file. Maybe run: yum groups mark convert (see man yum) Loading mirror speeds from cached hostfile * base: mirror.jdcloud.com * extras: mirror.jdcloud.com * updates: mirror.jdcloud.com Available Environment Groups: Minimal Install Compute Node Infrastructure Server File and Print Server Basic Web Server Virtualization Host Server with GUI GNOME Desktop KDE Plasma Workspaces Development and Creative Workstation Available Groups: Compatibility Libraries Console Internet Tools Development Tools Graphical Administration Tools Legacy UNIX Compatibility Scientific Support Security Tools Smart Card Support System Administration Tools System Management Done
5.yum list | grep wget列出包名中含有wget字符的包
[root@localhost ~]# yum list |grep wget wget.x86_64 1.14-18.el7 base
6 yum provides /*/ifcofnig 搜索一個已知的命令是由哪一個包安裝的
[root@localhost ~]# yum provides /*/ifconfig Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.jdcloud.com * extras: mirror.jdcloud.com * updates: mirror.jdcloud.com net-tools-2.0-0.24.20131004git.el7.x86_64 : Basic networking tools Repo : base Matched from: Filename : /sbin/ifconfig net-tools-2.0-0.24.20131004git.el7.x86_64 : Basic networking tools Repo : @base Matched from: Filename : /sbin/ifconfig
經過一個實驗來看rpm工具的用法。
[root@localhost Packages]# ls acl-2.2.51-14.el7.x86_64.rpm libndp-1.2-7.el7.x86_64.rpm aic94xx-firmware-30-6.el7.noarch.rpm libnetfilter_conntrack-1.0.6-1.el7_3.x86_64.rpm aide-0.15.1-13.el7.x86_64.rpm libnfnetlink-1.0.1-4.el7.x86_64.rpm alsa-firmware-1.0.28-2.el7.noarch.rpm libnl-1.1.4-3.el7.x86_64.rpm alsa-lib-1.1.6-2.el7.x86_64.rpm libnl3-3.2.28-4.el7.x86_64.rpm alsa-tools-firmware-1.1.0-1.el7.x86_64.rpm libnl3-cli-3.2.28-4.el7.x86_64.rpm atk-2.28.1-1.el7.x86_64.rpm libnotify-0.7.7-1.el7.x86_64.rpm audit-2.8.4-4.el7.x86_64.rpm libpcap-1.5.3-11.el7.x86_64.rpm audit-libs-2.8.4-4.el7.x86_64.rpm libpciaccess-0.14-1.el7.x86_64.rpm authconfig-6.2.8-30.el7.x86_64.rpm libpipeline-1.2.3-3.el7.x86_64.rpm
軟件包包文件通常是這個格式: teamd(包名)-1.25(主版本.次版本)-4.el7(發佈版本).x86_64(平臺_位數).rpm(後綴名)
[root@localhost Packages]# rpm -ivh spamassassin-3.3.2-18.el7.x86_64.rpm 錯誤:依賴檢測失敗: perl(Archive::Tar) 被 spamassassin-3.3.2-18.el7.x86_64 須要 perl(Archive::Tar) >= 1.23 被 spamassassin-3.3.2-18.el7.x86_64 須要 perl(DB_File) 被 spamassassin-3.3.2-18.el7.x86_64 須要
[root@localhost Packages]# rpm -e ppp 錯誤:依賴檢測失敗: ppp = 2.4.5 被 (已安裝) NetworkManager-1:0.9.9.1-13.git20140326.4dba720.el7.x86_64 須要
[root@localhost Packages]# rpm -q ppp ppp-2.4.5-33.el7.x86_64 [root@localhost Packages]# rpm -q /usr/bin/ls 未安裝軟件包 /usr/bin/ls [root@localhost Packages]# rpm -qf /usr/bin/ls coreutils-8.22-11.el7.x86_64 [root@localhost Packages]# rpm -ql ppp /etc/logrotate.d /etc/logrotate.d/ppp /etc/pam.d/ppp
在實際操做中咱們會發現,rpm的查詢的用法是比較好用的,可是若是用它來安裝或者卸載則會很麻煩,由於它不會自動處理依賴關係,須要咱們手動一個一個解決依賴和被依賴包的安裝卸載等。