1、Linux命令隨筆

復制代碼
   1 Linux命令總結
   2   3 man   ==命令幫助;
   4 help  ==命令的幫助(bash的內置命令);
   5 ls    ==list,查看目錄列表;
   6       -ld:查看目錄權限;
   7       -l:(long)長格式顯示屬性;
   8       -F:給不同的文件類型結尾加標識
   9       -p:給目錄加斜線
  10       -r:(reverse)反轉排序
  11       -t:按時間排序
  12       --color=auto 給輸出的不同類型文件加不同顏色
  13       -a:顯示隱藏文件
  14       ls -l --time-style=long-iso,顯示友好的長格式時間
  15 例子:
  16 [root@server oldboy]# ls -l --time-style=long-iso  
17
總用量 4 18 drwxr-xr-x 2 root root 4096 2015-12-18 20:25 oldboydir 19 lrwxrwxrwx 1 root root 9 2015-12-18 21:03 oldboydir_soft_link -> oldboydir 20 21 mkdir ==創建目錄 22 -p:遞歸創建目錄 23 vim ==相當于復雜的文檔編輯器 24 =====================================================================================================================================================================================================
2016-12-22添加
date修改時間命令:
date -s "2016/12/22 14:33"  //修改時間后接著敲hwclock告訴bios立即生效
hwclock
 
  25 echo "i am studying linux" >/>> oldboy.txt   //后面跟一個大于號表示覆蓋,兩個大于號表示追加;
  26 echo  ==打印輸出內容,配合“>”或“<<”可以為文件覆蓋及追加內容;
  27       -n:不換行輸出
  28       -e:解析轉義字符,\t tab   \n回車  \b退格
  29  30        echo“
  31             boy
  32             girl
  33            ” >oldboy.txt
  34 實例如下:(2015/12/22)
  35 [test@server ~]$ echo "oldboy";echo "oldboy"  36 oldboy
  37 oldboy
  38 [test@server ~]$ 
  39  40 [test@server ~]$ echo -n "oldboy";echo "oldboy"  //不換行輸出
  41 oldboyoldboy
  42 [test@server ~]$ 
  43  44 [test@server ~]$ echo -e "oldboy\toldgirl"  45 oldboy  oldgirl
  46 [test@server ~]$ 
  47  48 [test@server ~]$ echo -e "oldboy\noldgirl"  49 oldboy
  50 oldgirl
  51 [test@server ~]$ 
  52 ====================================================================
  53 cat   ==查看文件內容;
  54       -n:顯示行號
  55         特殊用法:增加多行內容
  56         [root@server data]# cat >/data/oldboy.txt<<EOF  57                                 I am studying linux.
  58                                 EOF
  59 cp    ==copy  相當于拷貝命令;例如:cp old.txt /tmp/
  60       cp -a/-r /etc/ /tmp  拷貝目錄/etc/到/tmp
  61          -a:相當于-pdr
  62          -r:遞歸,用于復制目錄;
  63          -p:保持屬性;
  64          cp='cp -i'  -i:表示提示確認信息參數
  65 例:從當前目錄文件到另外目錄時,如果拷貝文件名相同,可使用/bin/、"\"取消是否覆蓋信息;  66 [root@server /]# cp /mnt/test.txt /tmp  67 cp: overwrite `/tmp/test.txt'?   68 [root@server /]# /bin/cp /mnt/test.txt /tmp   //前面加/bin/可以取消是否覆蓋的提示信息;  69 [root@server /]# \cp /mnt/test.txt /tmp/      //前面加"/"可以取消是否覆蓋的提示信息;  70 mv    ==移動目錄或文件,例如:mv /data /root
  71 pwd   ==查看當前用戶所在目錄;
  72  73 rm    ==remove 刪除文件或者目錄 -f強制,-r刪除目錄;
  74       生產場景盡量不要使用rm,如果非要用,一定要先cp等備份。
  75  76       替代方法:
  77       mv移動到一個臨時目錄,相當于回收站;
  78       find刪除
  79 find *****刪除
  80     find /root/data -type f -exec rm -f {} \;  // -exec表示查找
  81     find /root/data -type f|xargs rm -f 
  82 find  查找-type !表示取反的意思;
  83        !:取反
  84        -a:表示and
  85        -o:(or)表示或者
  86        -maxdepth +數字:表示查找的深度
  87        -mtime:表示修改時間
  88 例:
  89    find /oldboy -maxdepth 1 -type d ! -name "oldboy"  (其中-maxdepth跟tree -L 1可以這樣理解)
  90  91 例:在-type f前面加"!",表示執行命令時不查找以文件為結尾的文件;
  92 [root@server ~]# find /root/data/ ! -type f -name "*.txt"|xargs ls -ld  93  94 使用find刪除例子1:
  95 [root@server data]# find /root/data/ -type f  96 /root/data/zhurui.txt
  97 /root/data/zhurui2.txt
  98 /root/data/zhurui1.txt
  99 [root@server data]# find /root/data/ -type f -exec rm -f {} \; 
100
[root@server data]# ls
101
[root@server data]#
102

103
使用find刪除例子2: 104 [root@server data]# touch zhurui.txt zhurui1.txt zhurui2.txt
105
[root@server data]# ls
106
zhurui1.txt zhurui2.txt zhurui.txt 107 [root@server data]# find /root/data/ -type f
108
/root/data/zhurui.txt 109 /root/data/zhurui2.txt 110 /root/data/zhurui1.txt 111 [root@server data]# find /root/data/ -type f|xargs rm -f
112
[root@server data]# ls
113
[root@server data]#
114

115

116
find刪除保留一個特定文件,其余都刪掉; 117 [root@server data]# touch zhurui.txt zhurui1.txt zhurui2.txt zhurui3.txt zhurui4.txt
118
[root@server data]# ls
119
zhurui1.txt zhurui2.txt zhurui3.txt zhurui4.txt zhurui.txt 120 [root@server data]# find /root/data/ -name "zhurui4.txt"
121
/root/data/zhurui4.txt 122 [root@server data]# find /root/data/ -type f -name "zhurui4.txt"
123
/root/data/zhurui4.txt 124 [root@server data]# find /root/data/ -type f ! -name "zhurui4.txt"|xargs rm -f
125
[root@server data]# ls
126
zhurui4.txt 127 [root@server data]# 128
129
head ==頭部,取文件的前N行,默認前10行,取前三行 -n 3 130 簡寫就是-3 131 例: 132 [root@server data]# head -n 2 test.txt
133
test 134 liyao 135 tail ==尾巴,取文件的最后N行,默認最后10行,取最后三行 -n 3 136 簡寫就是-3 137
138
-f:跟蹤結尾 139 例: 140 tail -f /var/log/messages //跟蹤一個文件結尾的變化 141
142
舉例:打印20-30的數字 143 [root@server ~]# seq 100 >test1.txt //將1-100數字在test1.txt文件中列舉出來
144
[root@server ~]# head -30 test1.txt //取文件的前30行
145
[root@server ~]# head -30 test1.txt | tail -11 //首先取列舉出的數字前30行,接著取最后11行;
146
20 147 21 148 22 149 23 150 24 151 25 152 26 153 27 154 28 155 29 156 30 157
158
第二種方法: 159 [root@server ~]# sed -n '20,30p' test.txt
160
20 161 21 162 22 163 23 164 24 165 25 166 26 167 27 168 28 169 29 170 30 171
172
(1)awk 一門語言,過濾內容(取列) 173 awk '{print $1}' 文件 //$1表示第一列,$2表示第二列....$NF(表示最后一列) 174 awk -F "分隔符號" '{print $1}' 文件 //$1表示第一列,$2表示第二列 175 $1表示第一列,$2表示第二列....$NF(表示最后一列)..$(NF-1)表示倒數第二列 176 $0表示整行 177 -F:awk多分隔符 178 深入淺出三劍客之awk必殺技一例:http://oldboy.blog.51cto.com/2561410/950730 179 深入淺出linux三劍客之sed必殺技一例:http://oldboy.blog.51cto.com/2561410/949365 180
181
linux三劍客 老大 182 例: 183 [root@server test]# awk -F ":" '{print $1}' /etc/passwd
184
[root@server test]# awk -F ":" '{print $2}' /etc/passwd
185
[root@server test]# awk -F ":" '{print $1"="$2"="$3}' /etc/passwd
186
[root@server test]# awk -F ":" '{print $(NF-1)}' /etc/passwd //表示篩選倒數第二列
187

188
[root@server test]# awk '{if(NR<31 && NR>19) printf $1"\n"}' /root/test1.txt //"\n"表示回車 NR:代表行號 &&:代表and
189
20 190 21 191 22 192 23 193 24 194 25 195 26 196 27 197 28 198 29 199 30 200 201 [root@server test]# awk '{if(NR>19 && NR<31) printf $1"\n"}' /root/test1.txt 202 20 203 21 204 22 205 23 206 24 207 25 208 26 209 27 210 28 211 29 212 30 213?
 214 例:
 215 [root@server ~]# echo "I am oldboy,myqq is 24731701">> oldboy.txt?
 216 [root@server ~]# cat oldboy.txt?
 217 I am oldboy,myqq is 24731701
 218 [root@server ~]# awk -F "[, ]" '{print $3" "$6}' oldboy.txt  //光取第3跟第6列?
 219 oldboy 24731701
 220?
 221 實例取IP地址:(2015/12/22號添加)
 222 [root@server test]# ifconfig eth0|awk -F '[: ]+' 'NR==2 {print $4 }'    //[方框中的內容為目標前后分隔符]?
 223 192.168.1.11
 224 [root@server test]#
 225 ==============================================================================================================
 226?
 227?
 228?
 229 (2)grep ***** ==擅長過濾,過濾器,把想要的或者不想要的分離開。盡量使用雙引號("");
 230       -v:表示排除
 231       -o:只匹配你想要的結果,必備參數
 232       -i:表示不區分大小寫;
 233       -E:<====> grep -E=egrep
 234       -n:打印行號
 235       --color=auto 給匹配到的字符串加顏色(不是正行)
 236       -a: 在二進制文件中,以文本文件的方式搜索數據;
 237       -c: 計算找到‘搜索字符串’的次數
 238       提示:-i  -v為常用參數
 239       -A: After的意思,顯示匹配字符串及其后n行的數據
 240       -B: before的意思,顯示匹配字符串及其前n行的數據
 241       -C: 顯示匹配字符串及其前后各num行
 242 例1:
 243 [root@server zhu]# grep 3306 /etc/services ?
 244 mysql           3306/tcp                        # MySQL?
 245 mysql           3306/udp                        # MySQL?
 246 [root@server zhu]# grep --color=auto 3306 /etc/services ?
 247 mysql           3306/tcp                        # MySQL?
 248 mysql           3306/udp                        # MySQL?
 249       linux三劍客  老三
 250?
 251?
 252 參數介紹:
 253 -B:除了顯示匹配的一行之外,并顯示改行之前的num行
 254 例:
 255 [root@server ~]# grep 30 -B 10 test.txt ?
 256 20
 257 21
 258 22
 259 23
 260 24
 261 25
 262 26
 263 27
 264 28
 265 29
 266 30
 267 -A:除了顯示匹配的一行之外,并顯示該行之后的num行
 268 例2:
 269 [root@server ~]# grep 20 -A 10 test.txt ?
 270 20
 271 21
 272 22
 273 23
 274 24
 275 25
 276 26
 277 27
 278 28
 279 29
 280 30
 281?
 282 -C:除了顯示匹配的一行之外,并顯示改行之前后各num行
 283 例:
 284 [root@server ~]# grep 25 -C 5 test.txt ?
 285 20
 286 21
 287 22
 288 23
 289 24
 290 25
 291 26
 292 27
 293 28
 294 29
 295 30
 296 grep "string" -B 10 
 297?
 298 例:文件如下,過濾文件中的空行
 299 [root@server ~]# cat oldboy.txt  
300
oldboy 301 302 oldooboy 303 304 oldboooytxt 305 方法1: 306 [root@server ~]# grep -v "^$" oldboy.txt //這種方法最佳?
 307 oldboy
 308 oldooboy
 309 oldboooytxt
 310 [root@server ~]#?
 311?
 312 方法2:
 313 [root@server ~]# grep "." oldboy.txt      ?
 314 oldboy
 315 oldooboy
 316 oldboooytxt
 317 [root@server ~]#
 318 方法3:
 319 [root@server ~]# sed '/^$/d' oldboy.txt ?
 320 oldboy
 321 oldooboy
 322 oldboooytxt
 323 [root@server ~]#
 324 方法4:
 325 [root@server ~]# awk '/^[^$]/' oldboy.txt  ?
 326 oldboy
 327 oldooboy
 328 oldboooytxt
 329 [root@server ~]#?
 330 ==================================================================================================================
 331?
 332?
 333 (3)sed  *****(strem editor)  ==擅長取行、查找替換
 334       sed -n 
 335       過濾:sed -n '/過濾的內容/處理的命令'  文件
 336           -n:取消sed的默認輸出
 337           -i:改變文件內容
 338           “=”:等號表示行號
 339           處理的命令:p print打印,d delete刪除
 340?
 341            sed -n '20,30p' test.txt
 342       linux三劍客  老二        
 343 例1:
 344 [root@server data]# cat test.txt  345 test
 346 liyao
 347 oldboy
 348 [root@server data]# sed -n '/oldboy/p' test.txt ==>等價于grep "oldboy" test.txt?
 349 oldboy
 350 [root@server data]# sed '/oldboy/d' test.txt ==>等價于 head -2 test.txt ==>等價于grep -v "oldboy" test.txt?
 351 test
 352 liyao
 353 [root@server data]#?
 354 sed替換:*****
 355 例子2:
 356 [root@server ~]# sed -i 's#zhurui#oldboy#g' test.txt ?
 357     s常說的查找并替換,用一個字符串換成另外一個
 358     g(global)與s聯合使用時,表示對當前行全局匹配替換(與下一個g意義不同)
 359    -i:修改文件內容
 360    "#"是分隔符,可以用/@=等替換;
 361?
 362    sed -r 's#(.*)#\1#g' +文件(oldboy.txt)  //(.*)表示括號里的內容可以通過\1可以取出來;
 363 實例如下:
 364 [root@server ~]# echo "oldboy oldgirl"|sed -r 's#(.*) (.*)#\1 \2#g'   ?
 365 oldboy oldgirl
 366 [root@server ~]#?
 367?
 368 企業實例:
 369 第一種方法:
 370 [root@server ~]# ifconfig eth0|sed -n '2p'|sed -r 's#^.*dr:(.*)  Bc.*$#\1#g'  ?
 371 192.168.1.11
 372 [root@server ~]#?
 373 第二種方法:
 374 [root@server ~]# ifconfig eth0|sed -rn '2s#^.*dr:(.*)  Bc.*$#\1#gp'  ?
 375 192.168.1.11
 376 [root@server ~]#?
 377?
 378?
 379 [root@server data]# sed -r 's#(zhu)#\1#g' oldboy.txt <====>sed -i 's#zhu#zhu#g' oldboy.txt?
 380 zhu zhu
 381 zhu1 zhu
 382 zhu2 zhu
 383?
 384 (1)[root@server data]# find /root/data/ -type f -name "test.txt"|xargs sed -i 's#oldboy#oldgirl#g'?
 385 (2)[root@server data]# find /root/data/ -type f -name "test.txt" -exec sed -i 's#oldboy#oldgirl#g' {} \;?
 386 (3)[root@server data]# sed -i 's#oldgirl#oldboy#g' `find ./ -type f -name "test.txt"` //第三種方法優勢更大點?
 387?
 388 例3:
 389 awk  sed的過濾:都是過濾以d開頭的目錄
 390 [root@server ~]# ls -lF|awk '/^d/'?
 391 drwxr-xr-x    2 root root  4096 12月  2 15:41 qq/
 392 drwxr-xr-x. 102 root root  4096 11月 27 16:57 test/
 393 drwxr-xr-x    7 root root  4096 12月  3 16:39 zhu/
 394?
 395 [root@server ~]# ls -lF|sed -n '/^d/p' 
396
drwxr-xr-x ?
 2 root root ? 4096 12月  2 15:41 qq/
 397 drwxr-xr-x. 102 root root  4096 11月 27 16:57 test/
 398 drwxr-xr-x    7 root root  4096 12月  3 16:39 zhu/
 399 [root@server ~]#?
 400?
 401 [root@server ~]# ls -lF|grep '^d'?
 402 drwxr-xr-x    2 root root  4096 12月  2 15:41 qq/
 403 drwxr-xr-x. 102 root root  4096 11月 27 16:57 test/
 404 drwxr-xr-x    7 root root  4096 12月  3 16:39 zhu/
 405?
 406 例4:過濾Ip地址:
 407 [root@server ~]# ifconfig eth0|sed -n '2p' //-n表示取消默認輸出,2p表示取第2行?
 408 inet addr:192.168.1.11  Bcast:192.168.1.255  Mask:255.255.255.0
 409?
 410?
 411?
 412?
 413?
 414 yum ==linux里包管理器,寶珠解決依賴問題;
 415      例子:yum  -y install tree -y 
 416           下載tree包,然后調用rpm命令安裝tree包
 417            如果需要依賴包,幫你下載幫你提前安裝;
 418             yum update -y ====等價于upgrade
 419?
 420             yum grouplist 里選包組,   然后yum groupinstall "包組" -y
 421             yum search 關鍵字或yum search all:升級補丁
 422?
 423             yum remove tree -y <======千萬不要用
 424?
 425 rpm -ivh(安裝、顯示輸出、人類可讀展示)
 426      rpm -ivh  包名.rpm(提前下載好)
 427      最大問題,依賴包問題不好解決;
 428      a---b---c---d
 429 例:
 430 [root@server oldboy]# rpm -qa tree  //查詢本機已經有無安裝tree包 -qa?
 431 tree-1.5.3-3.el6.x86_64
 432 [root@server oldboy]#?
 433?
 434 tree  ==顯示目錄樹結構 
 435       -L:顯示層數
 436       -d:顯示目錄
 437 例:
 438 [root@server ~]# tree /root/zhu/ -Ld 1?
 439 /root/zhu/
 440 ├── a
 441 ├── b
 442 ├── c
 443 ├── d
 444 └── e
 445?
 446?
 447?
 448 alias ==查看以及定義別名(外號、小名)
 449         例子:alias rm='echo"rm can not be used,please use mv"'   //保護系統,禁止新手使用rm命令,使用mv命令;
 450         別名永久生效位置:root用戶:[root@server etc]# vim /root/.bashrc?
 451         所有用戶都生效:/etc/bashrc或/etc/profile定義
 452         生效source /etc/profiles
 453 unalias ==取消別名
 454 seq  sequence==seq序列
 455      -s 制定序列的分割符
 456      -w
 457 history ==打印用戶操作的歷史記錄
 458 ps -ef|grep ssh ==查看進程命令
 459 ss/netstat -lntup/-tulp|grep ssh  ==查看端口是否工作    
 460 查看配置好的Ip:
 461 ifconfig
 462 ip add 
 463 hostname 查看主機名(uname -n)
 464 uname 打印系統信息 -r 內核 -m:查看32位還是64位 -n主機名
 465 whoami 查看當前用戶
 466 ##############################################################################################?
 467 su   用戶角色切換
 468       su - 用戶名:-參數切換用戶環境變量
 469 實例:
 470 [root@server tmp]# su - oldboy -c "touch a.txt"   //表示在不切換用戶前提下,使用-c選項使得在不切換的賬號情況下,執行操作?
 471 [root@server tmp]# ls -l /home/oldboy/a.txt ?
 472 -rw-r--r-- 1 oldboy incahome 0 Jan  2 22:50 /home/oldboy/a.txt
 473 [root@server tmp]#?
 474 參考文檔:http://oldboy.blog.51cto.com/2561410/1053606
 475 ##############################################################################################?
 476 getenforce 檢查selinux狀態
 477 setenforce 設置SELINUX狀態 1啟用 0警告,不啟用
 478 例:
 479 方法1:
 480 [root@server selinux]# sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config?
 481 [root@server selinux]# grep =disabled /etc/selinux/config?
 482 SELINUX=disabled
 483 [root@server selinux]# cat /etc/selinux/config?
 484 方法2:
 485 [root@server selinux]# getenforce 486 Enforcing
 487 [root@server selinux]# setenforce 488 usage:  setenforce [ Enforcing | Permissive | 1 | 0 ]
 489 [root@server selinux]# setenforce 0     //關閉,警告 
490
[root@server selinux]# getenforce
491
Permissive 492
493
runlevel: //查看用戶所在系統運行級別 494 init: 切換運行級別,后面接對應級別的數字; 495 init 5 ==startx 切換桌面環境 496 chkconfig 設置開機自啟服務 497 chkconfig --list iptables 498
499
diff 比較,接兩個文件 500 vimdiff 高級比較,高亮顯示兩個文件內容區別 501 例: 502 [root@server ssh]# diff sshd_config sshd_config20151129.bak
503

504
[root@server ssh]# vimdiff sshd_config sshd_config20151129.bak
505
============================================================= 506 507 which:查找命令所在的路徑,搜索范圍來自全局環境PATH變量對應的路徑; 508 509 whereis:查找相關信息 -b :查二進制命令 510 511 locate :從數據庫里查相關信息,新命令需提前updatedb更新數據庫 512
513
例: 514 [root@server ~]# whereis -b ifconfig
515
ifconfig: /sbin/ifconfig 516 find / -type f -name "mv"
517
find / -type f -name "useradd"
518
locate useradd 519 ####################################################################################################
520
history 顯示歷史記錄 521 history -c:清空所有的歷史記錄 522 history -d +多(#)行號:清空第#行;?
 523 ####################################################################################################?
 524 wget:下載的意思  wget http://url
 525 [root@server yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo 
526
?
         -O:指定文件改成什么什么樣子
 527     --spider 爬蟲,檢查網站是不是好的,不會下載只會檢查
 528     -T --timeout=seconds 超時時間
 529     --tries=10  指定重試的次數
 530     -q --quit 關閉輸出
 531      wget --spider --force-html -i bookmarks.html
 532 #################################################################################################### ?
 2016/1/3號添加  ?
 533 皇帝:root 
 534 visudo =======vim /etc/sudoers 編輯sudo配置文件(vi /etc/sudoers)   -c 檢查語法
 535 注意:配置用戶權限位置在配置文件98行位置(用98gg直接切換)
 536?
 537?
 538 臣民:
 539 sudo 調兵虎符,sudo配置文件授權之后,執行命令時需要命令前帶sudo
 540 sudo [參數選項] 命令
 541 -l:必須登錄用戶下面,查看root給當前用戶所分配的權限規則
 542 例:
 543 [oldboy@server ~]$ sudo -l
 544 用戶 oldboy 可以在該主機上運行以下命令:
 545     (ALL) /bin/touch, (ALL) /usr/sbin/useradd, (ALL) /bin/ls, (ALL) /bin/rm
 546?
 547?
 548?
 549?
 550?
 551?
 552 ####################################################################################################?
 553 ifup  eth0:打開網卡
 554 ifdown  eth0:關閉網卡
 555 df -h   =====>  //以可讀的形式查看磁盤掛載信息 <=====>等價于cat /proc/mounts
 556 ##################################################################################################### 
557
df -i:查看掛載的磁盤inode情況 558 [root@server ~]# df -i
559
Filesystem Inodes IUsed IFree IUse% Mounted on 560 /dev/sda3 479552 59041 420511 13% / 561 tmpfs 71261 1 71260 1% /dev/shm 562 /dev/sda1 51200 38 51162 1% /boot 563 [root@server ~]#
564
#####################################################################################################
565

566

567

568

569
cat /proc/mount //設備掛載信息 570 fsck -A ======> 磁盤檢查(不要檢查好的磁盤),卸載的狀態檢查。 571
572
dmesg---內核打印的錯誤信息,例如硬件故障警告; 573
574
[root@server profile.d]# crontab -l
575
[root@server profile.d]# cat /var/spool/cron/root //定時任務所在路徑 576 577 tar 打包具體參數,見視頻 578 gzip/unzip zip壓縮解壓縮 579
580
cut 切割,簡單的取列命令 581 -d:指定分隔符 582 -f數字:表示取第幾列。-f3,6 583 -c按字符取; 584
585
wc 打印行號,字節數 586 -l:顯示一個文件有多少行 587 例子: 588
589
[root@server ~]# wc -l /etc/services
590
10774 /etc/services 591 [root@server ~]#
592

593
[root@server ~]# cat -n /etc/services|tail -1
594
10774 iqobject 48619/udp # iqobject
595

596
dumpe2fs - dump ext2/ext3/ext4 filesystem information 597
598
12月10號 599 chmod == change mode改變文件權限 600 方法 1:數字修改方法 601 chmod [數字組合] 文件名 602 r 4 603 w 2 604 x 1 605 - 0 606 例: rw-rw-r-x 代表數字權限655 607
608
方法2:字符權限修改方法 609 chmod [用戶類型] [+ | - | =] [權限字符] 文件名 610 rw-rw-r-x====>rwx--xr-x: 611 例:chmod u+x,g=x test.sh 612 613 umask默認值為022; 614 查看umask值命令為:umask 615 修改umask: umask 051 616 例: 617 如果umask值位051,則創建文件后權限位為多少?如果umask值中有奇數,奇數位有幾位對應有幾個1,必須是先減去umask值,再加上對應的幾個1。 618 答:666 666 619 - 051 - 051 620 ----------(錯誤) + 11 621 615 ---------(正確) 622 626 623
624

625
永久修改配置文件將配置信息填寫到/etc/profile中; 626 vim /etc/profile 627 12.14 628 修改用戶屬組 629 chown .adminuser /home/admins====chgrp adminuser /home/admins 630 chown 用戶 文件或目錄 <====僅僅授權用戶 631 chown :組 文件或目錄 <====僅僅授權用戶組 632 等同于"chgrp 組 文件或目錄"
633
chown 用戶:組 文件或目錄 <=====表示授權用戶和組。 634 強調: 635 1)其中的冒號“:”可以用點好“.”替代。 636 2)要授權的用戶和組名,必須是Linux里實際存在的。 637?
 638?
 639 ##########################################################################?
 640 刪除用戶的命令:userdel -r oldboy   //將oldboy家目錄一起刪除
 641 刪除用戶組的命令:groupdel incahome
 642 useradd oldboy -u +(uid號/用戶名)-g + (gid號/組名)
 643 userdel:
 644 所涉及到的文件:
 645       /etc/passwd--用戶賬號資料文件
 646       /etc/shadow--用戶賬號資訊加密文件
 647       /etc/group--用戶組資訊文件
 648 useradd  添加用戶  -u uid -g 指定所屬組 -s 登錄SHELL -M
 649 -c:設置備注信息
 650 -u:設置UID號
 651 -G:設置對于的屬組
 652 -s:設置對應的shell
 653 -d:設置相應的家目錄
 654 -e:指定用戶過期時間
 655 實例:
 656  8 [root@server ~]# useradd -c "HandsomeBoy" -u 806 -G root,oldboy,sa -s /bin/sh -d /oldboy6 oldboy6   
657
9 ##注釋
658
10 -c:設置備注信息 659 11 -u:設置UID號 660 12 -G:設置對于的屬組 661 13 -s:設置對應的shell 662 14 -d:設置相應的家目錄 663 15 ###成果如下
664
16 [root@server ~]# grep "oldboy6" /etc/passwd
665
17 oldboy6:x:806:806:HandsomeBoy:/oldboy6:/bin/sh 666 18 [root@server ~]# id oldboy6
667
19 uid=806(oldboy6) gid=806(oldboy6) groups=806(oldboy6),0(root),512(sa),513(oldboy) 668
669
例: 670 [root@server ~]# echo 123456|passwd --stdin oldboy?
 671 更改用戶 oldboy 的密碼 。
 672 passwd: 所有的身份驗證令牌已經成功更新。
 673 [root@server ~]# echo 123 >p.log 
674
[root@server ~]# passwd --stdin oldboy <p.log
675
更改用戶 oldboy 的密碼 。 676 passwd: 所有的身份驗證令牌已經成功更新。 677 [root@server ~]#
678

679
#########################################################################
680
usermod 用戶信息修改相關命令 681
682
-l (login_name):變更用戶login時的名稱為login_name,其余信息不變、 683 -L:凍結用戶密碼 684 -U:取消凍結用戶的密碼,使之恢復登錄。實際同樣是修改/etc/shadow的內容 685 usermod 修改用戶 -u uid,-g 指定所屬組,-s登錄SHELL,-e 指定用戶過期時間 686 ##########################################################################
687
chage 查看及修改用戶密碼相關信息 688 -E,--expiredate過期時間,將賬號過期時間設為“過期時間”,日期寫法MM/DD/YY 689 -I,--inactive失效密碼 690 -l,--list 顯示賬號年齡信息 691 -m,--mindays 最小天數 692 -M,--maxdays 最大天數 693 -W,--warndays 警告天數 694 例: 695 [root@server ~]# chage -l oldboy
696
Last password change : Dec 31, 2015 697 Password expires : Feb 29, 2016 698 Password inactive : Mar 30, 2016 699 Account expires : never 700 Minimum number of days between password change : 7 701 Maximum number of days between password change : 60 702 Number of days of warning before password expires : 10 703 [root@server ~]# chage -m 8 -M 61 -W 11 -I 31 oldboy <====>等價于passwd -n 8 -x 61 -w 11 -i31 oldboy命令也可以實現同樣功能,知識參數的寫法不同
704
[root@server ~]# chage -l oldboy
705
Last password change : Dec 31, 2015 706 Password expires : Mar 01, 2016 707 Password inactive : Apr 01, 2016 708 Account expires : never 709 Minimum number of days between password change : 8 710 Maximum number of days between password change : 61 711 Number of days of warning before password expires : 11 712
713
#########################################################################
714
passwd --stdin 非交互式設置密碼 715
716

717
#########################################################################
718
lsattr 查看特殊屬性。 719 chattr 設置特殊屬性,例如: +i 不可變 720 例: 721 [root@server ~]# chattr +i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab ?
 722 [root@server ~]# chattr -i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab    //解除鎖定?
 723 [root@server ~]# lsattr  /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab        //查看文件鎖定狀態?
 724 [root@server ~]# mv `which chattr` /opt/oldboy                 //防止黑客找到文件,可以將配置文件移動到其他地方?
 725 ##########################################################################?
 726 解析命令:
 727 
728
方法:反引號``或$() 等價于 729 tar zcvf etc-`date +%F`.tar.gz /etc/<========>tar zcf var-$(date +%F).tar.gz /var/ 730
731
###########################################################################
732
2016年1月2號添加 733 who show who is logged on 734 w show who is logged on and what they are doing 735 whoami 查看當前用戶 736 需要會的:id,w,who,last,lastlog 737 了解:users,groups,newgrp 738
739
#####################################################
740
tr命令 741 #方法5:擴展如何將ls -l命令中的權限字符轉換為八進制??
 742 22 [root@server ~]# ll /etc/hosts|cut -c 2-10|tr "rwx-" "4210"|awk -F "" '{print $1+$2+$3 $4+$5+$6 $7+$8+$9}'?
 743 23 644
 744 24 #知識點:1.tr字符替換的使用;2.cut -c截取字符;3.awk指定分隔符為空。?
 745?
 746 ############################################################################################?
 747?
 748?
 749?
 750?
 751?
 752?
 753?
 754?
 755?
 756?
 757 ps
 758 locate
 759 whereis
 760 export
 761 netstat(ss)
 762 ifconfig
 763 source
 764 ntpdate
 765 less 按屏(空格,page up/page down) 或按行(回車)查看文件
 766 more 按屏(空格)或按行(回車)查看文件(不能向上翻)
 767 ========================================================================
 768 /var/log/messages  系統日志
 769 /var/log/secure  系統安全日志
 770 /var/spool/clientmqueue  郵件臨時目錄
 771 /proc/interrupts  查看中斷文件
 772 /etc/fstab  磁盤文件系統開機自動掛載文件
 773 /etc/profile  全局的環境配置文件
 774 ========================================================================
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797 絕對路徑:必須從/開始
 798 相對路徑:沒有從/開始
 799 
800
快捷鍵: 801 TAB 命令、路徑補全 802 bash內置命令:用help命令查看幫助 803 alias 804 bg 805 break 806 cd 807 continue 808 declare 809 echo 810 eval 811 exec 812 exit 813 export 814 fg 815 getopts 816 hash, 817 help, 818 history, 819 jobs, 820 kill, 821 let 822 local, 823 logout, 824 mapfile, 825 popd, 826 printf, 827 pushd, 828 pwd, 829 read, 830 readonly, 831 return, 832 set, 833 shift, 834 shopt, 835 source, 836 suspend, 837 test, 838 times, 839 trap, 840 true, 841 type, 842 typeset, 843 ulimit, 844 umask, 845 unalias, 846 unset, 847
 848
 849
 850
 851
 852
 853 特殊字符命令:
 854 >或1> 重定向,會清除文件里所有以前數據,增加新數據;
 855 >>或1>> 追加重定向,文件結尾加入內容,不會刪除已有的文件內容;
 856 <0 輸入重定向;
 857 <<0 追加輸入重定向;
 858 2>錯誤重定向
 859 2>>錯誤追加重定向
 860 ==============================================================
 861 1.標準輸入(stdin):代碼為0,使用<或<<數據流向從右向左
 862 2.標準輸出(stdout): 代碼為1,使用>或>>數據流向從左向右
 863 3.錯誤輸出(stderr):代碼為2,使用2>或2>>.
 864 
865
箭頭的指向就是數據的流向; 866 下面3種方法是等價的 867 /dev/null 空設備 黑洞 868 1) 1 >/dev/null 2 >/dev/null 869 2) ***** 1>/dev/null 2>&1 870 3) &>/dev/null 871?
 872?
 873
 874
 875 ==================================================================
 876 通配符:(除了正則表達式以外的字符)
 877 * 通配符,代表任意(0到多個)字符*****
 878 ?通配符,代表任意1個字符
 879 ; 連續不同命令的分隔符*****
 880 # 配置文件注釋***** 881 \ 讓一個有意義的字符,脫掉馬甲。
 882 ..上級目錄
 883 . 當前目錄   \.代表點號;  
 884 .  還代表隱藏文件
 885 '' 單引號,不具有變量置換功能,輸出是所見即所得。
 886 "" 雙引號,具有變量置換功能,解析變量后輸出。
 887 ``:里面放命令,才會執行,tab鍵上面的鍵,反引號,兩個``中間為命令,會先執行,等價于$()。``===$()
 888 | 管道(把前一個命令結果的輸出交給后一個程序繼續處理)
 889 ~ 用戶的家目錄,針對root環境~就代表/root。
 890 $ 變量前需要加的符號
 891 / 路徑分隔符號
 892 {} 生成字符或數字序列,類似seq,列舉的意思,一般搭配echo使用;
 893 !+字母:調出最近一次以此字母開頭的命令并執行;
 894 例:
 895 首先執行 mkdir stu{001..100}
 896 接著執行!m ======>mkdir stu{001..100}
 897 !!:表示使用最近一次操作的命令;
 898 ! 邏輯運算中的“非”(not 899 && 當前一個指令執行成功時,執行后一個指令
 900 || 當前一個指令執行失敗時,執行后一個指令
 901 >或1> 重定向,會清除文件里所有以前數據,增加新數據;
 902 >>或1>> 追加重定向,文件結尾加入內容,不會刪除已有的文件內容;
 903 <0 輸入重定向;
 904 <<0 追加輸入重定向;
 905 2>錯誤重定向
 906 2>>錯誤追加重定向
 907 cd -:表示回到所在目錄的上一級目錄;
 908 例:
 909 [root@server test]# pwd 910 /root/test
 911 [root@server test]# cd /tmp/ 912 [root@server tmp]# cd - 913 /root/test
 914 [root@server test]# pwd 915 /root/test
 916 917 =====================================================================
 918 基礎正則表達式:一些特殊的符號 ,表示一些特殊的功能和作用
 919 . 單個任意字符
 920 * 重復前面任意0個或多個字符
 921 .* 匹配任意字符
 922 sed -i 's#(可以用正則匹配)#\1#g' oldboy.txt
 923 把前面正則匹配的括號內的結果,在后面用\1取出來操作。
 924 ^$:表示空行
 925 []:匹配指定范圍內任意單個字符;
 926 {n,m}:表示n-m次;
 927 \:讓一個正則表達式有意義的字符脫掉馬甲;
 928 ?:0或1個;
 929 +:重復前面1或多次;
 930 |:或
 931 ():分組
 932 [^]:表示取反
 933 ^;表示以什么什么開頭,例如:^d:表示以d開頭的文件
 934 $;表示以什么什么結尾,例如:/$:表示以/為結尾的,,oldboy$:以oldboy為結尾的
 935 5.擴展的正則表達式:ERE(egrep或grep -E)
 936 1)+ 重復一個或一個以上前面的字符。
 937 例:
 938 [root@server oldboy]# grep -Eo "go+d" oldboy.log  
939
god 940 good 941 god 942 goood 943 2)? 匹配之前的項1次或者0次。 944 例: 945 [root@server oldboy]# grep -Eo "go?d" oldboy.log
946
god 947 god 948 gd 949 [root@server oldboy]# 950
951
[root@server oldboy]# grep -Eo "g?d" oldboy.log
952
d 953 d 954 d 955 d 956 d 957 d 958 d 959 d 960 d 961 d 962 gd 963 [root@server oldboy]# 964 3)| 用或的方式查找多個符合的字符串。 965 例: 966 [root@server oldboy]# grep -E "g?d|good" oldboy.log
967
I am oldboy teacher! 968 I like badminiton ball,billiard ball and chinese chess! 969 my blog is http://oldboy.blog.51cto.com. 970 my god , i am not oldboy,but OLDBOY! 971 good 972 god 973 goood 974 gd 975 4)() 找出“用戶組”字符串。 976 例: 977 [root@server oldboy]# grep -E "g(la|oo)d" oldboy.log
978
good 979 [root@server oldboy]# 980 981 ^;表示以什么什么開頭,例如:^d:表示以d開頭的文件 982 例: 983 [root@server etc]# ls -l|grep '^d' //匹配以"d"開頭的文件
984
drwxr-xr-x. 3 root root 4096 11月 25 02:44 abrt 985 drwxr-xr-x. 4 root root 4096 11月 25 02:46 acpi 986 drwxr-xr-x. 2 root root 4096 11月 25 02:46 alsa 987 drwxr-xr-x. 2 root root 4096 11月 25 02:44 alternatives 988 drwxr-x---. 3 root root 4096 11月 25 02:46 audisp 989 drwxr-x---. 3 root root 4096 11月 25 02:46 audit 990 drwxr-xr-x. 2 root root 4096 11月 25 02:46 bash_completion.d 991 drwxr-xr-x. 2 root root 4096 12月 2 22:06 blkid 992 drwxr-xr-x. 2 root root 4096 3月 10 2015 chkconfig.d 993 drwxr-xr-x. 2 root root 4096 11月 25 02:44 compat-openmpi-psm-x86_64 994 drwxr-xr-x. 2 root root 4096 11月 25 02:45 compat-openmpi-x86_64 995
996
$;表示以什么什么結尾,例如:/$:表示以/為結尾的,,oldboy$:以oldboy為結尾的 997 例: 998 [root@server etc]# ls -lF|grep "/$"
999
drwxr-xr-x. 3 root root 4096 11月 25 02:44 abrt/ 1000 drwxr-xr-x. 4 root root 4096 11月 25 02:46 acpi/ 1001 drwxr-xr-x. 2 root root 4096 11月 25 02:46 alsa/ 1002 drwxr-xr-x. 2 root root 4096 11月 25 02:44 alternatives/ 1003 drwxr-x---. 3 root root 4096 11月 25 02:46 audisp/ 1004 drwxr-x---. 3 root root 4096 11月 25 02:46 audit/ 1005 drwxr-xr-x. 2 root root 4096 11月 25 02:46 bash_completion.d/ 1006 ======================================================================== 1007
1008
1009
1010
1011 環境變量:
1012 PATH  系統路徑變量,執行ls,cp等非內置命令時,系統會查找PATH里對應的路徑是否有,如果沒有就報告找不到該命令;
1013 當執行which cp來查看命令所在路徑的時候,也是從PATH變量去搜索。
1014
1015 臨時修改
[root@server ~]# export PATH="/tmp:$PATH",永久修改前面臨時修改的命令放到/etc/profile下,使用source /etc/profile使得修改立刻生效。
1016
1017
1018
1019
1020
1021
1022
1023
1024 學習中遇到的命令:
1025 [root@server cron]# cat /etc/rc.local   //開機啟動相當于windowsn開始菜單中啟動選項
1026
1027
1028 [root@server ~]# /etc/init.d/iptables stop   //關閉防火墻
1029
1030 [root@server ~]# yum -y install lrzsz        //安裝windows<===>linux之間傳輸文件的工具rz
1031
1032 [root@server ~]# >/etc/udev/rules.d/70-persistent-net.rules     //解決vm克隆虛擬機后網卡不能啟用
1033
1034 [root@server ~]#echo ">/etc/udev/rules.d/70-persistent-net.rules" >/etc/rc.local
1035
1036 [root@server ~]# cat /etc/redhat-release       //查看版本
1037 CentOS release 6.7 (Final)
1038 [root@server ~]# uname -r           //查看內核
1039 2.6.32-573.el6.x86_64
1040 [root@server ~]# uname -m           //32位還是64位1041 x86_64
1042 [root@server ~]# hostname           //主機名
1043 server
1044
1045 [root@server selinux]# runlevel      //查看運行級別
1046 N 3
1047
1048 [root@server ~]# find /root/data/ -type f -name "*.txt" -exec ls -l {} \;
1049 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/c/test.txt
1050 -rw-r--r--. 1 root root 0 Nov 25 23:42 /root/data/zhurui4.txt
1051 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/a/ddd/fff/test.txt
1052 -rw-r--r--. 1 root root 7 Nov 27 07:05 /root/data/a/test.txt
1053 -rw-r--r--. 1 root root 18 Nov 27 07:05 /root/data/test.txt
1054
1055 [root@server ~]# find /root/data/ -type f -name "*.txt"|xargs ls -l    //找到的結果可以用任何方式去處理
1056 -rw-r--r--. 1 root root  7 Nov 27 07:05 /root/data/a/ddd/fff/test.txt
1057 -rw-r--r--. 1 root root  7 Nov 27 07:05 /root/data/a/test.txt
1058 -rw-r--r--. 1 root root  7 Nov 27 07:05 /root/data/c/test.txt
1059 -rw-r--r--. 1 root root 18 Nov 27 07:05 /root/data/test.txt
1060 -rw-r--r--. 1 root root  0 Nov 25 23:42 /root/data/zhurui4.txt
1061

1062

1063

1064

1065 [root@server ~]# echo $PATH

1066 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 1067 [root@server ~]# grep PATH /etc/profile
1068     case ":${PATH}:" in
1069                 PATH=$PATH:$1
1070                 PATH=$1:$PATH
1071 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
1072 [root@server ~]# export PATH="/tmp:$PATH"     //臨時新增變量,重啟會失效
1073 [root@server ~]# echo $PATH
1074 /tmp:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
1075 [root@server ~]# which oldboy
1076 /usr/bin/which: no oldboy in (/tmp:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
1077 [root@server ~]# touch /tmp/oldboy           //新建命令
1078 [root@server ~]# chmod +x /tmp/oldboy         //給命令執行權限
1079 [root@server ~]# which oldboy
1080 /tmp/oldboy
1081 #PermitRootLogin yes    //禁止管理員遠程連接
1082
1083 修改字符集:
1084 路徑:/etc/sysconfig/i18n
1085 [root@server ~]# sed -i 's#LANG="en_US.UTF-8"#LANG="zh_CN.UTF-8"#g' /etc/sysconfig/i18n
1086 [root@server ~]# . /etc/sysconfig/i18n   ======= source /etc/sysconfig/i18n  //使配置立即生效
1087 [root@server ~]# echo $LANG1088 zh_CN.UTF-8
1089
1090 時間同步任務計劃:
1091 [root@server ~]# /usr/sbin/ntpdate time.nist.gov      //同步互聯網時間命令
1092
1093 [root@server ~]# echo "*/5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>%1" >>/var/spool/cron/root   //添加定時任務
1094 [root@server ~]# crontab -l
1095 */5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>%1
1096 [root@server ~]#
1097
1098 修改顯示歷史記錄命令環境變量:
1099 export HISTSIZE=5        //修改默認顯示歷史記錄的命令行
1100 export HISTFILESIZE=5     //控制.bash_history文件顯示行數
1101 [root@server ~]# cat ~/.bash_history?
1102 . /etc/sysconfig/i18n
1103 echo $LANG
1104 man cd
1105 history
1106 tree
1107
1108 交互給用戶生成密碼:
1109 useradd oldboy
1110 echo 123456|passwd --stdin oldboy
1111
1112
1113 修改遠程連接時間:
1114 export TMOUT=5
1115 echo "export TMOUT=5" >> /etc/profile
1116 tail -1 /etc/profile      //查看最近修改/etc/profile配置文件
1117 source /etc/profile
1118 echo $TMOUT
1119
1120 文件描述符概念:
1121 1、表示形式為整數數字,一般使用(0-65535)范圍;
1122 2、進程使用的時候會占用文件描述符(標識打開的文件)
1123
1124 查看默認文件描述符:
1125 [root@server cron]# ulimit -n
1126 1024
1127 3、調整文件描述符
1128 [root@server cron]# ulimit -SHn 65535      //臨時修改
1129 [root@server cron]# echo '*      -     nofile     65535 ' >>/etc/security/limits.conf <===>echo "ulimit -SHn 65535" >>/etc/rc.local
1130
1131 內核優化配置:
1132 vim /etc/sysctl.conf     //WEB服務,iptables服務調優配置文件
1133 sysctl -p  //讓配置生效
1134
1135 [root@server ~]# > /etc/issue             //隱藏linux軟件名及版本號
1136 [root@server ~]# > /etc/issue.net
1137
1138 鎖定系統配置文件,防止惡意修改
1139 [root@server ~]# chattr +i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab    ?
1140 [root@server ~]# chattr -i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab    //解除鎖定
1141 [root@server ~]# lsattr  /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/inittab        //查看文件鎖定狀態
1142 [root@server ~]# mv `which chattr` /opt/oldboy                 //防止黑客找到文件,可以將配置文件移動到其他地方
1143
1144
1145
1146 [root@server ~]# grep -v "nologin$" /etc/passwd               //將不能登錄的賬號排除掉
1147 root:x:0:0:root:/root:/bin/bash
1148 sync:x:5:0:sync:/sbin:/bin/sync
1149 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
1150 halt:x:7:0:halt:/sbin:/sbin/halt
1151 oldboy:x:500:500::/home/oldboy:/bin/bash
1152 oldgirl:x:501:501::/home/oldgirl:/bin/bash
1153 msn:x:502:502::/home/msn:/bin/bash
1154
1155 為grub菜單加密碼
1156
1157 [root@server ~]# /sbin/grub-md5-crypt
1158 Password: 
1159 [root@server ~]# vim /etc/grub.conf    //將生成的密碼填寫到如下配置文件中
1160  13 hiddenmenu
1161  密碼生成文件加到13-14行之間
1162  14 title CentOS 6 (2.6.32-573.el6.x86_64)
1163
1164 內核優化之禁PING
1165
1166 [root@server ~]# echo "net.ipv4.icmp_echo_ignore_all=1" >> /etc/sysctl.conf
1167 [root@server ~]# sysctl -p     //讓配置生效
1168
1169
1170 配置Yum源配置文件路徑:
1171 [root@server ~]# cat /etc/yum.repos.d/CentOS-Base.repo
1172
1173 [root@server ~]# cd /etc/yum
1174 yum/         yum.conf     yum.repos.d/ 
1175 [root@server ~]# cd /etc/yum.repos.d/
1176 [root@server yum.repos.d]# ls
1177 CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo
1178 CentOS-Debuginfo.repo  CentOS-Media.repo
1179 [root@server yum.repos.d]# cp CentOS-Base.repo CentOS-Base.repo.20151201.bak       //拷貝原有的centos-base-repo
1180 [root@server yum.repos.d]# ls
1181 CentOS-Base.repo               CentOS-Debuginfo.repo  CentOS-Media.repo
1182 CentOS-Base.repo.20151201.bak  CentOS-fasttrack.repo  CentOS-Vault.repo
1183 [root@server yum.repos.d]# ls
1184 CentOS-Base.repo               CentOS-Debuginfo.repo  CentOS-Media.repo
1185 CentOS-Base.repo.20151201.bak  CentOS-fasttrack.repo  CentOS-Vault.repo
1186 [root@server yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo    //從阿里云下載yum源
1187
1188 setuid:如果命令有4755的權限,對應關系為-rwsr-xr-x=====4755
1189 [root@server test]# find / -type f -perm 4755|xargs ls -l
1190 -rwsr-xr-x. 1 root root  77336 10月 15 2014 /bin/mount
1191 -rwsr-xr-x. 1 root root  38200 7月  24 01:55 /bin/ping
1192 -rwsr-xr-x. 1 root root  36488 7月  24 01:55 /bin/ping6
1193 -rwsr-xr-x. 1 root root  34904 10月 15 2014 /bin/su
1194 -rwsr-xr-x. 1 root root  53472 10月 15 2014 /bin/umount
1195 -rwsr-xr-x. 1 root root  10272 10月 15 2014 /sbin/pam_timestamp_check
1196 -rwsr-xr-x. 1 root root  34840 10月 15 2014 /sbin/unix_chkpwd
1197 -rwsr-xr-x. 1 root root  54496 2月  20 2015 /usr/bin/at
1198 -rwsr-xr-x. 1 root root  66352 4月   7 2015 /usr/bin/chage
1199 -rwsr-xr-x. 1 root root  51784 3月  30 2015 /usr/bin/crontab
1200 -rwsr-xr-x. 1 root root  71480 4月   7 2015 /usr/bin/gpasswd
1201 -rwsr-xr-x. 1 root root  36144 4月   7 2015 /usr/bin/newgrp
1202
1203 只有擁有s權限,則代表這個命令具有所屬用戶root的權限,不管什么用戶都可以執行!
1204
1205
1206
1207
1208
1209
1210
1211 linux優化;
1212 1、建立普通賬號,使用普通賬號登錄
1213 2、處理selinux
1214 3、處理防火墻
1215 4、精簡開機自啟動服務:sshd,network,crond,rsyslog,sysstat
1216 5、linux最小化安全理念;
1217
1218
1219
1220 /boot/ /var/ /dev/ /lib/ /sbin/ /usr/ /tmp/ /mnt/ /etc/ /bin/ /opt/
復制代碼

?

轉載于:https://www.cnblogs.com/hackerer/p/8295063.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/390351.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/390351.shtml
英文地址,請注明出處:http://en.pswp.cn/news/390351.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

1137. 第 N 個泰波那契數

泰波那契序列 Tn 定義如下&#xff1a; T0 0, T1 1, T2 1, 且在 n > 0 的條件下 Tn3 Tn Tn1 Tn2 給你整數 n&#xff0c;請返回第 n 個泰波那契數 Tn 的值。 示例 1&#xff1a; 輸入&#xff1a;n 4 輸出&#xff1a;4 解釋&#xff1a; T_3 0 1 1 2 T_4 1…

web圖像_Web圖像優化的基本介紹

web圖像Images are an essential ingredient of most websites. The visual quality of pictures has a direct impact on the brand image and the message those images convey. And the weight of images usually accounts for a 40-60% of the data transferred on the web…

ElasticSearch客戶端注解使用介紹

The best elasticsearch highlevel java rest api-----bboss 1.ElasticSearch客戶端bboss提供了一系列注解 ESId 用于標識實體對象中作為docid的屬性&#xff0c;該注解只有一個persistent 布爾值屬性&#xff0c;用于控制被本注解標注的字段屬性是否作為普通文檔屬性保存&am…

5827. 檢查操作是否合法

給你一個下標從 0 開始的 8 x 8 網格 board &#xff0c;其中 board[r][c] 表示游戲棋盤上的格子 (r, c) 。棋盤上空格用 ‘.’ 表示&#xff0c;白色格子用 ‘W’ 表示&#xff0c;黑色格子用 ‘B’ 表示。 游戲中每次操作步驟為&#xff1a;選擇一個空格子&#xff0c;將它變…

團隊的遠程管理_遠程團隊指南:如何管理您的遠程軟件開發團隊

團隊的遠程管理Guides to help you work remotely seem to have swept through the Internet these days. 這些天來&#xff0c;幫助您遠程工作的指南似乎席卷了Internet。 Do this, avoid that, stay productive, and all those run-of-the-mill tips we’ve already tried o…

JS 正則 錢

function ValidateIsDecial(sValue) {return (!sValue && !!!sValue && /^[0-9]{1,10}(\.[0-9]{0,2})?$/.test(sValue)); };驗證 decimal(12,2) 小數點前允許10位,小數點后允許2位 1234567890 true 12345678901 false 0123456789 true 01234567891 false 123.…

5193. 刪除字符使字符串變好

5193. 刪除字符使字符串變好 一個字符串如果沒有 三個連續 相同字符&#xff0c;那么它就是一個 好字符串 。 給你一個字符串 s &#xff0c;請你從 s 刪除 最少 的字符&#xff0c;使它變成一個 好字符串 。 請你返回刪除后的字符串。題目數據保證答案總是 唯一的 。 示例 …

2020計算機頂級大會_2020年頂級遠程調試工具

2020計算機頂級大會When it comes to debugging, the tool you use is extremely important and can determine how easy is is to fix problems within your code. 在調試方面&#xff0c;您使用的工具非常重要&#xff0c;可以確定在代碼中修復問題的難易程度。 In the earl…

BZOJ5292 洛谷4457 LOJ2513:[BJOI2018]治療之雨——題解

https://www.lydsy.com/JudgeOnline/problem.php?id5292 https://www.luogu.org/problemnew/show/P4457 https://loj.ac/problem/2513 你現在有m1個數&#xff1a;第一個為p&#xff0c;最小值為0&#xff0c;最大值為n&#xff1b;剩下m個都是無窮&#xff0c;沒有最小值或最…

PHP--------微信網頁開發實現微信掃碼功能

今天說說微商城項目中用到的掃一掃這個功能&#xff0c;分享一下&#xff0c;希望對各位有所幫助。 前提&#xff1a;要有公眾號&#xff0c;和通過微信認證&#xff0c;綁定域名&#xff0c;得到相應信息&#xff0c;appid&#xff0c;appsecret等。 微信開發文檔&#xff1a;…

313. 超級丑數

超級丑數 是一個正整數&#xff0c;并滿足其所有質因數都出現在質數數組 primes 中。 給你一個整數 n 和一個整數數組 primes &#xff0c;返回第 n 個 超級丑數 。 題目數據保證第 n 個 超級丑數 在 32-bit 帶符號整數范圍內。 示例 1&#xff1a; 輸入&#xff1a;n 12,…

初創公司股本結構_我如何向初創公司的開發團隊添加一些結構-以及從過程中學到的東西

初創公司股本結構Until recently, Id spent the last 4 years of my career at FinTech start-ups. Id always worked for smaller companies, and being at a start-up was the next logical step in looking for roles where I could make the biggest difference. 直到最近…

拿什么拯救你,我的面試之——從零打卡刷Leetcode(No.003)

寫在前邊&#xff1a;小詹一直覺得自己編程能力不強&#xff0c;想在網上刷題&#xff0c;又怕不能堅持。不知道有木有和小伙伴和小詹一樣想找個人一起刷題呢&#xff1f;歡迎和小詹一起定期刷leetcode&#xff0c;每周一周五更新一題&#xff0c;每一題都吃透&#xff0c;歡迎…

146. LRU 緩存機制

146. LRU 緩存機制 運用你所掌握的數據結構&#xff0c;設計和實現一個 LRU (最近最少使用) 緩存機制 。 實現 LRUCache 類&#xff1a; LRUCache(int capacity) 以正整數作為容量 capacity 初始化 LRU 緩存 int get(int key) 如果關鍵字 key 存在于緩存中&#xff0c;則返回…

[SQL] 請教一下 count里面有case when 一般情況下啥時候用

http://www.itpub.net/forum.php?modviewthread&tid1810967 問題: 比如 count(case when pday_id${deal_date} then 1 end) 我有點想不明白具體什么情況下count&#xff08;&#xff09; 這個小括號里面還要用case when 大家做BI統計的時候一般什么情況用啊 還有個…

路由器架設虛擬服務器讓外網訪問到本地網站

確定電腦與路由器正確連接&#xff0c;并且已連至互聯網。在地址欄中輸入192.168.0.1回車&#xff0c;輸入用戶名密碼&#xff0c;進入路由器主界面。 然后點擊左側菜單中的“虛擬服務器”&#xff0c;——“端口段映射”打開“端口段映射”界面。 由于網站用的是80端口&#x…

vue項目示例代碼git_您應該了解的5個Git命令以及代碼示例

vue項目示例代碼gitIve used Git for some years now, and I still find myself googling how to do some basic tasks. So this article is my attempt to learn how to do some of these things by writing about them. And even if I still forget, at least Ill have a ref…

413. 等差數列劃分

413. 等差數列劃分 如果一個數列 至少有三個元素 &#xff0c;并且任意兩個相鄰元素之差相同&#xff0c;則稱該數列為等差數列。 例如&#xff0c;[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差數列。 給你一個整數數組 nums &#xff0c;返回數組 nums 中所有為等差數組…

山羊與汽車游戲的實驗算法

實驗1&#xff1a; function shuffle(target) {var j, x, i target.length;for (; i > 0; j parseInt(Math.random() * i), x target[--i], target[i] target[j], target[j] x) {}return target }function removeAt(target, index) {return !!target.splice(index, 1).…

selenium模塊

selenium模塊 閱讀目錄 一 介紹二 安裝三 基本使用四 選擇器五 等待元素被加載六 元素交互操作七 其他八 項目練習一 介紹 selenium最初是一個自動化測試工具,而爬蟲中使用它主要是為了解決requests無法直接執行JavaScript代碼的問題selenium本質是通過驅動瀏覽器&#xff0c;完…