Linux是一款操作系統它與windows相比只是沒有圖形界面了,所以一般的用戶都不會使用linux系統了,但是如果是服務器linux要比windows強大的多,下面一起來看看小編整理的Linux入門級學習筆記.
1. 磁盤管理
1.1 查看磁盤分區信息(修改分區)
方法1:查看 /proc/partitions 文件:
- [root@localhost TestLabs]# cat /proc/partitions
- major minor #blocks name
- 8 0 67108864 sda
- 8 1 512000 sda1
- 8 2 66595840 sda2
- 253 0 31985664 dm-0
- 253 1 2064384 dm-1
- 253 2 32542720 dm-2
方法2:執行命令 fdisk -l
- [root@localhost TestLabs]# fdisk -l
- Disk /dev/sda: 68.7 GB, 68719476736 bytes
- 255 heads, 63 sectors/track, 8354 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 4096 bytes
- I/O size (minimum/optimal): 4096 bytes / 4096 bytes
- Disk identifier: 0x00043e44
- Device Boot Start End Blocks Id System
- /dev/sda1 * 1 64 512000 83 Linux
- Partition 1 does not end on cylinder boundary.
- /dev/sda2 64 8355 66595840 8e Linux LVM
修改分區可以使用 fdisk [分區名稱] 進入交互界面進行磁盤分區管理,如所示:
- [root@localhost TestLabs]# fdisk /dev/sda
- The device presents a logical sector size that is smaller than
- the physical sector size. Aligning to a physical sector (or optimal
- I/O) size boundary is recommended, or performance may be impacted.
- WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
- switch off the mode (command 'c') and change display units to
- sectors (command 'u').
- Command (m for help): m
- Command action
- a toggle a bootable flag
- b edit bsd disklabel
- c toggle the dos compatibility flag
- d delete a partition
- l list known partition types
- m print this menu
- n add a new partition
- o create a new emptyempty DOS partition table
- p print the partition table
- q quit without saving changes
- s create a new emptyempty Sun disklabel
- t change a partition's system id
- u change display/entry units //Vevb.com
- v verify the partition table
- w write table to disk and exit
- x extra functionality (experts only)
- Command (m for help):
1.2 創建文件系統
使用命令 mke2fs -t [要創建的文件系統類型] [磁盤]
[root@localhost TestLabs]# mke2fs -t ext4 /dev/sda3
常用參數:
-b blocksize 指定文件系統塊大小
-c 創建的時候檢查壞塊
-L 指定卷標
-j 建立文件系統日志
1.3 磁盤掛載
掛載磁盤,使用mount [要掛載的分區] [掛在點]命令,直接使用mount命令將會列出已經掛載的分區.
常用參數:
-t 指定文件系統的類型
-o 指定掛載選項(ro[只讀],rw[讀寫],sync[無緩存,直寫],async[緩存,默認],noatime[每次訪問不更新文件訪問時間],atime[每次訪問更新文件訪問時間],remount[重新掛載])
#mount -o remount,sync,noatime /dev/sdb1 /mnt/
使用命令 umount [文件系統/掛載點] 卸載已經掛載的文件系統,使用命令 lsof 查看打開了那些文件,一般可以在無法卸載磁盤的時候用于查看已經打開的文件,后面跟上磁盤,可以列出該磁盤上哪些文件打開了.
或者 如果無法卸載,提示文件正在被使用,可以使用fuser -m /mnt 查看文件系統的進程,如果要實現自動掛載,可以修改 /etc/fstab文件實現,該文件中新增一條記錄就可以了,文件行結構如下所示:
/dev/sda3 /mnt ext4 defaults 0 0
需要掛載的設備 掛載點 文件系統 掛載選項 dump,fsck相關選項,使用mount -a 會掛載fstab文件中的所有自動掛載項.
2. 用戶及權限基礎
2.1 用戶基礎
用戶分為三類:
root用戶,id為0的用戶
系統用戶,沒有shell(/sbin/nologin or /bin/false),id范圍為1-499
普通用戶,id為500+
使用id可以查看當前用戶的信息,用戶配置文件為/etc/passwd,該文件保存了所有用戶的基本信息,該文件所有用戶均可以訪問,因此,密碼并不在該文件中存放,用戶的密碼存放在/etc/shadow文件中,該文件只有root用戶可以訪問.
另一個配置文件 /etc/group 為用戶組的配置文件,包含了組的信息,查看當前用戶whoami,who,w,命令越長,顯示的內容越少.
- localhost:bash mylxsw$ whoami
- mylxsw
- localhost:bash mylxsw$ who
- mylxsw console May 27 20:50
- mylxsw ttys000 May 28 21:39
- localhost:bash mylxsw$ w
- 22:20 up 1 day, 1:31, 2 users, load averages: 2.22 1.82 1.68
- USER TTY FROM LOGIN@ IDLE WHAT
- mylxsw console - 二20 25:29 -
- mylxsw s000 - 21:39 - w
2.1.1 添加新用戶
添加新用戶使用命令useradd,如下.
- [root@localhost mylxsw]# useradd aicode
- [root@localhost mylxsw]# cat /etc/passwd
- root:x:0:0:管宜堯:/root:/bin/bash
- ...
- mylxsw:x:500:500::/home/mylxsw:/bin/bash
- aicode:x:501:501::/home/aicode:/bin/bash
以上命令執行后會添加一個新用戶,用戶名為aicode,可以看到,該命令在/etc/passwd中添加了一條用戶信息記錄.
該命令會為用戶創建一個home目錄,在/home/用戶名,還會為用戶建立一個用戶組,改組名與用戶名稱相同,同時,會把/etc/skel目錄下的文件復制到用戶目錄中,/etc/skel目錄為用戶初始化目錄,如果需在新建用戶時初始化一些用戶信息,可以在該目錄中修改,類似于模板.
常用參數:
- -d指定用戶home目錄
- -s用戶登陸shell
- -u指定用戶id
- -g指定用戶的主組
- -G指定用戶的附屬組(最多31個,用“,”分隔)
2.1.2 修改用戶信息
通過命令usermod [參數] [用戶名] 修改用戶信息.
常用參數:
- -l新的用戶id
- -d指定用戶home目錄
- -s用戶登陸shell
- -u指定用戶id
- -g指定用戶的主組
- -G指定用戶的附屬組(最多31個,用“,”分隔)
- -L鎖定用戶,使其不能登陸
- -U解除對用戶的鎖定
2.1.3 刪除用戶
使用命令userdel [用戶名]刪除用戶,刪除用戶操作不會刪除用戶的home目錄,如果要刪除home目錄,需要增加-r參數.
2.1.4 組的創建、修改、刪除
- 創建組 groupadd [組名]
- 修改組名 groupmod -n [新組名] [舊組名]
- 修改組id groupmod -g [新組id] [舊組id]
- 刪除組 groupdel [組名]
Linux操作技巧收集
使用pushd和popd命令快速切換目錄,經常會有這么一種情況,我們會在不同目錄中進行頻繁的切換,如果目錄很深,那么使用cd命令的工作量是不小的,這時可以使用pushd和popd命令快速切換目錄.
- $ pwd
- /Users/mylxsw/codes/php/lecloud/api
- $ pushd .
- ~/codes/php/lecloud/api ~/codes/php/lecloud/api
- $ cd ../album/
- $ pwd
- /Users/mylxsw/codes/php/lecloud/album
- $ popd
- ~/codes/php/lecloud/api
- $ pwd
- /Users/mylxsw/codes/php/lecloud/api
創建軟連接的時候出現Too many levels of symbolic links的錯誤信息,創建軟連接的時候使用絕對路徑就可以解決,不要使用相對路徑.
localhost:~ mylxsw$ ln -s /Users/mylxsw/其它/app /Users/mylxsw/app
使用SCP命令在服務器和本地計算機之間傳遞文件.
- usage: scp [-12346BCEpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
- [-l limit] [-o ssh_option] [-P port] [-S program]
- [[user@]host1:]file1 ... [[user@]host2:]file2
從服務器下載文件:scp username@服務器地址:/path/文件名 本地保存路徑
上傳文件到服務器:
scp 本地文件路徑 username@服務器地址:/保存到服務器的路徑
Tip:如果要操作的對象是整個目錄的話,需要添加-t參數.
使用范例:
- localhost:Downloads mylxsw$ scp guanyy@10.10.10.10:/home/guanyy/download.db ./
- guanyy@10.10.10.10's password:
- download.db 100% 25MB 24.7MB/s 00:01
Mac OS 清理DNS緩存:dscacheutil -flushcache
Cent OS服務器安裝PHP的pecl,想要安裝某個PHP擴展,但發現服務器上沒有pecl,因此需要安裝pecl.
$ sudo yum install php-pear
安裝pear之后,pecl就有了,在當前目錄下查找大小超過100MB的文件.
find . -type f -size +100M
拷貝鏡像到U盤:dd if=yourimage.img of=/dev/sdb1
使用基于文本的圖形界面配置命令setup
安裝setup命令:$ sudo yum install setuptool
安裝之后,需要安裝一些常見的系統配置組件,也是使用yum:
$ sudo yum install system-config-services system-config-firewall system-config-network-tui
更多的配置組件可以使用yum search system-config命令查看,進入配置界面直接使用setup命令.
新聞熱點
疑難解答