http://10.1.1.35/ule_basic/ule02.txt

來源:互聯網
上載者:User
--
ctrl+alt+backspace 登出


使用者


bash 終端相當於是bash的介面和工具
|
|
核心kernel 1,系統介面調用
|2,記憶體管理
|3,檔案系統管理
|4,進程管理
|5,硬體驅動
|
物理硬體






linux 基本命令


命令的分類:
內部命令--bash內建的內部命令50個左右
man type
bash, :, ., [, alias, bg, bind, break, builtin, cd, command, compgen,
complete, continue, declare, dirs, disown, echo, enable, eval, exec,
exit, export, fc, fg, getopts, hash, help, history, jobs, kill, let,
local, logout, popd, printf, pushd, pwd, read, readonly, return, set,
shift, shopt, source, suspend, test, times, trap, type, typeset, ulimit,
umask, unalias, unset, wait - bash built-in commands, see bash(1)
外部命令--外部程式帶的執行檔案

[root@station221 ~]# type cd
cd is a shell builtin
[root@station221 ~]# type mount
mount is /bin/mount



linux的命令協助


man info -h --help help+命令


--man 注重於應用

ls /usr/share/man/man的協助文檔所在的位置



man1普通使用者可執行檔命令和二進位檔案
man2系統核心調用的函數工具
man3常用的一些函數與函數庫
man4裝置檔案的說明
man5設定檔案與一些其它格式的檔案
man6遊戲相關
man7協議有關,網路通訊協定等
man8管理員可操作的命令
man9系統核心相關的檔案


--info注重於介紹


/usr/share/info





命令 -h 簡便的列出命令的參數使用列表
命令 --help 同-h這兩個只針對外部命令


help 命令 對內部命令的簡單介紹


-------------------------------------------------------------------------------

檔案命令:

ls 列出目錄的內容同dos裡的dir
ls -a 列出隱藏檔案(就是以.開頭的檔案,包括.和..)
ls -l 詳細列表
ls -l -a
ls -la
ls -ld /etc

-rw------- 1 root root 1112 Mar 27 03:14 anaconda-ks.cfg
檔案屬性 許可權 硬串連數屬主 屬組 大小 最後修改時間 檔案名稱


檔案的分類:
-普通檔案
d目錄
l連結檔案
p管道檔案
bblock檔案,塊裝置
c字元
s通訊端檔案socket

ls 列出的檔案顏色:
白色普通檔案
藍色目錄
暗紅壓縮檔
紫色通訊端檔案
目錄淺綠色背景目錄有t位
草綠色連結檔案
檔案淺綠色可執行檔

touch 建立一個空的普通檔案

touch {1,2,3}aa{4,5,6}bb{7,8,9}--建立了27個檔案
touch "{1,2,3}aa{4,5,6}bb{7,8,9}"--建立了一個檔案

----------------------------


目錄命令:
pwdcd mkdirrmdir



pwd查看當前所在目錄的路徑



[root@station221 mail]# pwd -P
/var/spool/mail
[root@station221 mail]# pwd
/var/mail



cd切換當前所在目錄

注意相對路徑和絕對路徑的區別
cd /root/test/

cd /root/cd test/
每個目錄下都有一個.和一個..
.代表當前所在目錄
..代表上一級目錄
cd ../../etc/httpd/conf


mkdir建立空目錄
ls -l列出的檔案的第三列的數字,當mkdir一個空目錄時就包括了.和.. 這個數就為2
如果在此空目錄裡再多mkdir一個目錄,此數值就加1;如果是touch多一個檔案,此數值不加


rmdir刪除一個空目錄


--------------------------------

閱讀命令:

catmorelessheadtail



cat 查看檔案內容
-n加行號
nl !$nl 命令直接加行號
-- !$ 代表上一個命令後面接的參數

more一頁一頁的看
用空格鍵向下翻頁q鍵退出

less一頁一頁的看 支援page up和page down 上下翻頁

head預設查看檔案的前十行

head -n 3 /etc/rc.sysinit 查看前N行


tail查看檔案的後十行
tail -n 3 /etc/rc.sysinit 查看後N行

-------------------------------------

操作命令

cpmvrm


cp複製檔案 (格式為 : cp 源 目標)
-r複製目錄
-a複製時保留原檔案的屬主和屬組


mv移動或者重新命名 ,檔案或目錄都適用


rm 刪除檔案或目錄
-r 刪除目錄 (無論是否為空白,但要求使用者確認)
-f不要求使用者確認
-rf 一起使用,但此非常危險

bash的萬用字元功能
rm 1aa* -rf刪除以1aa開頭的,包括1aa
rm *7-rf刪除以7結尾的,包括7

bash的逸出字元功能

rm /{1/,2/,3/}aa/{4/,5/,6/}bb/{7/,8/,9/}
注意檔案裡的空格也要用/ 來轉義 ,多用bash的TAB鍵,自動補全功能




---------------------------------------------------------------------------------------


管道--一條命令完成不了的任務或者要多條複雜的命令來實現的任務,可以用管道來實現
cat /etc/rc.sysinit |more
cat /etc/rc.sysinit |grep fi |wc -l


重新導向
cat /etc/rc.sysinit |grep fi |wc -l|cat >> /root/test/1--追加
echo aa > /root/test/1--覆蓋



0標準輸入----- 終端 --------標準輸出 1


錯誤輸出
2
echo 'hello' > /dev/pts/2重新導向到pts/2
echo 'hello' 1> /dev/pts/2隻把標準輸出重新導向到pts/2
cat /sagasgaws 2> /dev/pts/3把錯誤輸出重新導向到pts/3
cat /sagasgaws 2> /dev/null /dev/null指的是bit桶,或者叫垃圾箱,或者叫黑洞


--------------------------------------------------------------



bash 的功能總結:

1, histroy 儲存曆史的功能
2, tab自動補全功能
3, shell script的強大編程功能
4, 變數功能
5, 萬用字元功能













-------------------------------------------------------------------------------------

vi vim (增強版vi,現在基本各種linux版本都帶有vim)


vi 有三種模式:

1,一般普通模式:
2,編輯模式:i I o O a A r R
3,命令列模式: : / ?

移動相關:
--ctrl+b 向上翻頁 = page up
--ctrl+f 向下翻頁= page down
ctrl+d 向下移動半頁
ctrl+u 向上移動半頁
--G移動到頁末 =shift +g
--gg移動到頁頭
--0移動到行頭
--$移動到行末
n(代表數字)+斷行符號 向下移動N行


刪除,複製,粘貼
x向後刪除一個字元 = delete
X往前刪除一個字元 = backspace
--dd直接刪除游標所在行ndd (n代表數字,刪除n行)
--yy複製游標所在行nyy(n代表數字,複製n行)
--p粘貼
--u回退上一次操作 按一次u只能回退一次
ctrl+r重做上一次操作

進入編輯模式:
--i當前insert
I行頭insert
a向後一個字元insert
A行末insert
o下一行insert
O上一行insert
r替換游標所在的字元
R從游標處向後一直替換
--ESC從編輯模式回退到一般模式


尋找與替換:
-- /word尋找單詞 n 向下尋找 N 向上尋找
-- :1,$s/old/new/g從第一行到最後一行都用new替換old
-- :%s/old/new/g從第一行到最後一行都用new替換old
-- :n1,n2s/old/new/g 從n1行到n2行用new替換old
-- :1,$s/old/new/gc從第一行到最後一行都用new替換old,多加了一個c就可以要求使用者確認哪些換哪些不換





--:set number 或者 : set nu 把每一行都加上行號
--:set nonumber 或者 : set nonu去掉每一行前的行號
:n(代表數字)+斷行符號直接把游標定位到n行

--:w儲存 (write)
--:q退出(quit)
--:wq儲存並退出 =shift+zz
--+!表示強制儲存或者退出

:split橫分布局
:vsplit豎分布局








--------------------------------------------------------------------------------


使用者管理

作業系統的分類:
單使用者單任務作業系統:DOS
單使用者多任務作業系統:windows 95 windows 98 windows 2000
多使用者多任務作業系統:windows 2003 server windows 2008 server
linuxunix

基於多使用者的基礎上,引出的使用者的分類:
管理員 root uid=0
系統帳號 uid 1-499 65534
普通使用者帳號 uid 500-65535(2.6.xxx的核心支援的uid數量為 2^32-1個)



id 命令 查看當前使用使用者的使用者資訊和組資訊

[root@station221 ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)







使用者管理相關的檔案

/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow




--vim /etc/passwd
root:x:0:0:root:/root:/bin/bash
第一列: 使用者名稱
第二列:密碼 老版本這裡放的就是密碼,為了安全性考慮,密碼放到了/etc/shadow的第二列
x代表/etc/shadow的第二列生效,去掉x就表示此使用者登入的時候沒有密碼
第三列:uid 使用者識別ID值,系統是通過這個值來確認是哪個使用者
第四列:gid組識別ID值
第五列:描述項comment
第六列:家目錄
第七個:bash 目前使用者使用的bash

cat /etc/shells
/bin/sh淘汰
/bin/bash現在大多數支援的
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh



--vim /etc/shadow
root:$1$.1RfCu/n$ModWntxLJRC6SpgAXSDO81:14694:0:99999:7:::
與/etc/passwd相對應 (但這裡有九列)
第一列: 使用者名稱
第二列:密碼 (這裡以*號開頭或!開頭預設是不能登陸的)
第三列:上一次修改密碼的時間 linux以1970年1月1日到現在的天數來算的
第四列:修改密碼後幾天內不允許再修改如果這裡為5,那改過密碼後5天內不能再修改 0代表不限制
第五列:多少天內必須要求你改99999代表不限制
第六列:到期前幾天給你一個警示資訊
第七列:密碼到期後還給的一個寬限天數
第8列: 這裡可以寫一個到期天數 這裡也是以1970年1月1日到現在的天數來計算的,多用於收費系統
第九列: 保留,留著以後功能擴充




使用者相關的命令
useradd
usermod
userdel
passwd



useradd 增加一個普通使用者
-c comment
-u uid
-g gid
-e 到期時間
..........找man



usermod 修改一個使用者資訊
參數基本與useradd相同



userdel 刪除一個使用者
-r 參數 連同家目錄與郵件目錄全刪除



passwd 修改密碼



--------------------------------------------
使用者資訊相關的命令:
finger
chfn

[root@station221 ~]# finger user1--查看一個使用者的相關資訊
Login: user1 Name: (null)
Directory: /home/user1 Shell: /bin/bash
Never logged in.
No mail.
No Plan.

[root@station221 ~]# chfn user1--修改一個使用者的相關資訊
Changing finger information for user1.
Name []: li
Office []: uplooking
Office Phone []: 123456
Home Phone []: 88888

Finger information changed.
[root@station221 ~]# finger user1
Login: user1 Name: li
Directory: /home/user1 Shell: /bin/bash
Office: uplooking, 123456 Home Phone: x8-8888
Never logged in.
No mail.
No Plan.



---------------------------------------------------------------
組管理

vim /etc/group
bin:x:1:root,bin,daemon

第一列:組名
第二列:與/etc/passwd第二列一樣
第三列:gid
第四列:哪些使用者屬於這個組

vim /etc/gshadow
bin:::root,bin,daemon



組管理的相關命令:

groupadd
groupdel
groupmod
gpasswd


groupadd 增加一個組

groupdel 刪除一個組

groupmod 修改組資訊

gpasswd 修改組登陸密碼


--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
--關於有效組和初始組的討論

[root@station221 ~]# id user3
uid=502(user3) gid=502(user3) groups=502(user3),501(user2)
[root@station221 ~]# id user2
uid=501(user2) gid=501(user2) groups=501(user2)


gid=那個組就是你的初始組
[user3@station221 ~]$ groups --user3使用者用此命令查看 靠前的是有效組
user3 user2

--那麼此使用者現在建立目錄或者檔案的屬組為 有效組user3

[user3@station221 ~]$ touch 1
[user3@station221 ~]$ ll
total 0
-rw-rw-r-- 1 user3 user3 0 Mar 28 15:19 1



[root@station221 ~]# gpasswd user2--用root使用者給user2加一個組登陸密碼
Changing the password for group user2
New Password:
Re-enter new password:


[user3@station221 ~]$ newgrp user2--user3使用者用此命令切換有效組
Password:

[user3@station221 ~]$ groups --切換有效組之後,再用user3使用者查看發現有效組改變
user2 user3

[user3@station221 ~]$ touch 3
-rw-r--r-- 1 user3 user2 0 Mar 28 15:21 3使用者建立的檔案,屬組為新的有效組user2

--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

切換使用者

su 非完全切換繼承上一個使用者的環境變數

[user3@station221 root]$ echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin



su - 完全切換不繼承上一個使用者的環境變數

[user3@station221 ~]$ echo $PATH
/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/user3/bin




-----------------------------------------------------------------------------

sudo

root一個人忙不過來,把一些許可權給普通使用者幫忙管理,但就是不想給他root密碼的情況


vim /etc/sudoers


76 root ALL=(ALL) ALL
77 user3 ALL=(ALL) ALL--這一行是加的 ,意思是把所有的許可權給了sudo情況下的user3

儲存退出




[root@station221 ~]# su - user3--完全切換到user3使用者
[user3@station221 ~]$ mkdir /root/user3--在root使用者的家目錄下建立目錄是被許可權拒絕的
mkdir: cannot create directory `/root/user3': Permission denied
[user3@station221 ~]$ sudo mkdir /root/user3 --用sudo 可以建立,但密碼是user3自己的密碼
Password:




----------------------------------------------------------------------------

虛擬機器vmware安裝與介紹

[root@station221 ~]# showmount -e 10.1.1.221
Export list for 10.1.1.221:
/share/iso *
/share/soft *
/share/install *


mount 10.1.1.221:/share/soft /mnt 拷到自己的機器上去






rpm -ivh VMware-workstation-6.0.2-59824.i386.rpm


[root@station221 VMware-workstation]# vmware-config.pl
[root@station221 VMware-workstation]# /usr/bin/vmware-config.pl

--用上面兩種方法都可以配置虛擬機器 用預設配置一路斷行符號下來



vmware &用此命令啟動虛擬機器


輸入序號 註冊
WC5FW-V0CFX-4804A-4WTNL



虛擬機器的功能:

suspend 掛起目前狀態
snapshot 快照功能












聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.