非常实用的Linux入门级学习笔记

爱互踩 爱互踩流量交换~

Linux是一款操作系统它与windows相比只是没有图形界面了,所以一般的用户都不会使用linux系统了,但是如果是服务器linux要比windows强大的多,下面一起来看看小编整理的Linux入门级学习笔记.

1. 磁盘管理

1.1 查看磁盘分区信息(修改分区)

方法1:查看 /proc/partitions 文件:

  1. [root@localhostTestLabs]#cat/proc/partitions
  2. majorminor#blocksname
  3. 8067108864sda
  4. 81512000sda1
  5. 8266595840sda2
  6. 253031985664dm-0
  7. 25312064384dm-1
  8. 253232542720dm-2

方法2:执行命令 fdisk -l

  1. [root@localhostTestLabs]#fdisk-l
  2. Disk/dev/sda:68.7GB,68719476736bytes
  3. 255heads,63sectors/track,8354cylinders
  4. Units=cylindersof16065*512=8225280bytes
  5. Sectorsize(logical/physical):512bytes/4096bytes
  6. I/Osize(minimum/optimal):4096bytes/4096bytes
  7. Diskidentifier:0x00043e44
  8. DeviceBootStartEndBlocksIdSystem
  9. /dev/sda1*16451200083Linux
  10. Partition1doesnotendoncylinderboundary.
  11. /dev/sda2648355665958408eLinuxLVM

修改分区可以使用 fdisk [分区名称] 进入交互界面进行磁盘分区管理,如所示:

  1. [root@localhostTestLabs]#fdisk/dev/sda
  2. Thedevicepresentsalogicalsectorsizethatissmallerthan
  3. thephysicalsectorsize.Aligningtoaphysicalsector(oroptimal
  4. I/O)sizeboundaryisrecommended,orperformancemaybeimpacted.
  5. WARNING:DOS-compatiblemodeisdeprecated.It'sstronglyrecommendedto
  6. switchoffthemode(command'c')andchangedisplayunitsto
  7. sectors(command'u').
  8. Command(mforhelp):m
  9. Commandaction
  10. atoggleabootableflag
  11. beditbsddisklabel
  12. ctogglethedoscompatibilityflag
  13. ddeleteapartition
  14. llistknownpartitiontypes
  15. mprintthismenu
  16. naddanewpartition
  17. ocreateanewemptyemptyDOSpartitiontable
  18. pprintthepartitiontable
  19. qquitwithoutsavingchanges
  20. screateanewemptyemptySundisklabel
  21. tchangeapartition'ssystemid
  22. uchangedisplay/entryunits//phpfensi.com
  23. vverifythepartitiontable
  24. wwritetabletodiskandexit
  25. xextrafunctionality(expertsonly)
  26. Command(mforhelp):

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,命令越长,显示的内容越少.

  1. localhost:bashmylxsw$whoami
  2. mylxsw
  3. localhost:bashmylxsw$who
  4. mylxswconsoleMay2720:50
  5. mylxswttys000May2821:39
  6. localhost:bashmylxsw$w
  7. 22:20up1day,1:31,2users,loadaverages:2.221.821.68
  8. USERTTYFROMLOGIN@IDLEWHAT
  9. mylxswconsole-二2025:29-
  10. mylxsws000-21:39-w

2.1.1 添加新用户

添加新用户使用命令useradd,如下.

  1. [root@localhostmylxsw]#useraddaicode
  2. [root@localhostmylxsw]#cat/etc/passwd
  3. root:x:0:0:管宜尧:/root:/bin/bash
  4. ...
  5. mylxsw:x:500:500::/home/mylxsw:/bin/bash
  6. aicode:x:501:501::/home/aicode:/bin/bash

以上命令执行后会添加一个新用户,用户名为aicode,可以看到,该命令在/etc/passwd中添加了一条用户信息记录.

该命令会为用户创建一个home目录,在/home/用户名,还会为用户建立一个用户组,改组名与用户名称相同,同时,会把/etc/skel目录下的文件复制到用户目录中,/etc/skel目录为用户初始化目录,如果需在新建用户时初始化一些用户信息,可以在该目录中修改,类似于模板.

常用参数:

  1. -d指定用户home目录
  2. -s用户登陆shell
  3. -u指定用户id
  4. -g指定用户的主组
  5. -G指定用户的附属组(最多31个,用“,”分隔)

2.1.2 修改用户信息

通过命令usermod [参数] [用户名] 修改用户信息.

常用参数:

  1. -l新的用户id
  2. -d指定用户home目录
  3. -s用户登陆shell
  4. -u指定用户id
  5. -g指定用户的主组
  6. -G指定用户的附属组(最多31个,用“,”分隔)
  7. -L锁定用户,使其不能登陆
  8. -U解除对用户的锁定

2.1.3 删除用户

使用命令userdel [用户名]删除用户,删除用户操作不会删除用户的home目录,如果要删除home目录,需要增加-r参数.

2.1.4 组的创建、修改、删除

  1. 创建组groupadd[组名]
  2. 修改组名groupmod-n[新组名][旧组名]
  3. 修改组idgroupmod-g[新组id][旧组id]
  4. 删除组groupdel[组名]

Linux操作技巧收集

使用pushd和popd命令快速切换目录,经常会有这么一种情况,我们会在不同目录中进行频繁的切换,如果目录很深,那么使用cd命令的工作量是不小的,这时可以使用pushd和popd命令快速切换目录.

  1. $pwd
  2. /Users/mylxsw/codes/php/lecloud/api
  3. $pushd.
  4. ~/codes/php/lecloud/api~/codes/php/lecloud/api
  5. $cd../album/
  6. $pwd
  7. /Users/mylxsw/codes/php/lecloud/album
  8. $popd
  9. ~/codes/php/lecloud/api
  10. $pwd
  11. /Users/mylxsw/codes/php/lecloud/api

创建软连接的时候出现Too many levels of symbolic links的错误信息,创建软连接的时候使用绝对路径就可以解决,不要使用相对路径.

localhost:~ mylxsw$ ln -s /Users/mylxsw/其它/app /Users/mylxsw/app

使用SCP命令在服务器和本地计算机之间传递文件.

  1. usage:scp[-12346BCEpqrv][-ccipher][-Fssh_config][-iidentity_file]
  2. [-llimit][-ossh_option][-Pport][-Sprogram]
  3. [[user@]host1:]file1...[[user@]host2:]file2

从服务器下载文件:scp username@服务器地址:/path/文件名 本地保存路径

上传文件到服务器:

scp 本地文件路径 username@服务器地址:/保存到服务器的路径

Tip:如果要操作的对象是整个目录的话,需要添加-t参数.

使用范例:

  1. localhost:Downloadsmylxsw$scpguanyy@10.10.10.10:/home/guanyy/download.db./
  2. guanyy@10.10.10.10'spassword:
  3. download.db100%25MB24.7MB/s00: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命令.

相关广告
  • 非常实用的Linux入门级学习笔记 非常实用的Linux入门级学习笔记 非常实用的Linux入门级学习笔记
相关阅读

非常实用的Linux入门级学习笔记

2019/10/10 17:46:01 | 谷歌SEO算法 | Safari浏览器