Linux基础

今天记个笔记。

1.find

find / -name "yum.log"		#精确查找
find / -name "\*yum*"		#模糊查找1
find /var/log -name "*.log"	#模糊查找2
find / -size +10M               #查找大于10M的文件
find / -size +10M | xargs ls –lh		#使查询结果进行二次ls显示
find / -type f/d/c/b/s/l		#普通文件/目录/字符串/块设备/socket/链接

2.cat

cat /proc/version		#查看正在运行的内核版本
cat /etc/issue		#显示发行版本的相关信息 

3.mv

mv yum.log /tmp	#一般把文件放入/tmp当做删除,而不直接使用rm

4. mkdir

mkdir –p /a/b/c		#递归创建目录

5. uname

uname –a		#显示电脑以及操作系统的相关信息

6. lsb_release

lsb_release –a		#显示LSB和特定版本的一些信息
lsb_release –h		#查看帮助

7. grep

grep max_children php-fpm.log   #抓取文件中的特定字符:grep+字符+文件

grep –n max_children php-fpm.log		#显示行数
vi php-fpm.log +65		#进入到文件的第65行进行编辑

8. tar

tar zcvf demo.tar.gz ./* 把当前目录的所有文件打包成demo.tar.gz
tar zxvf demo.tar.gz ./* 解压demo.tar.gz文件

9. df –h #查看磁盘使用情况

10. free –m #以m单位显示服务器内存的使用情况

11. top #动态显示进程信息,q退出

12. cat /etc/passwd

Username : Password : Userid : Groupid : Comment : Home_directory : Shell
  • Username:唯一标识,一个用户账号,用户在登录时使用的就是它

  • Password:passwd中的密码是加密的,几乎不能被破解

  • Userid:Linux内部使用userid来标识用户。0是系统管理员,1-499是系统保留账号,500+是一般账号

  • Groupid:不同用户可属于同一用户组,具有用户组共有的权限

  • 通过usermod –g [组名] [用户名]来修改

  • Comment:用于给账号做注释,可为空

  • Home_directory:主目录,这个目录属于该账号,root的主目录是/root,其他账号的主目录在/home下

  • Shell:登录使用的shell,就是对登录命令进行解析的工具

    注:系统中还有一些默认的账号,如daemon、bin等这些账号有特殊用途,一般用于系统管理,其口令部分大部分用x表示,表示他们不能在登录时使用。

13. 添加用户并增加sudo权限

1.#useradd morra #增加用户morra
2.#visudo
3.找到root ALL=(ALL) ALL,在下面添加一行morra ALL=(ALL) ALL

14. 重定向

> :会覆盖源文件
>> :不会覆盖,只会向后追加

15. inode

索引节点是文件在文件系统的唯一标识。要读取文件必须要经过目录记录的文件名来指向到正确的inode,进而找到block的位置:

文件名 -> inode -> device block

ls -i text.txt			#查看文件的inode号码
stat text.txt			#查看文件的inode信息

inode包含文件的元信息:

  • 文件的字节数
  • 文件拥有者的User ID
  • 文件的Group ID
  • 文件的读、写、执行权限
  • 件的时间戳,共有三个:Change指inode上一次变动的时间,Modify指文件内容上一次变动的时间,Access:指文件上一次打开的时间。
  • 链接数,即有多少文件名指向这个inode
  • 文件数据block的位

inode特殊用法:

  1. 有时,文件名包含特殊字符,无法正常删除。这时,直接删除inode节点,就能起到删除文件的作用。
  2. 移动文件或重命名文件,只是改变文件名,不影响inode号码。
  3. 打开一个文件以后,系统就以inode号码来识别这个文件,不再考虑文件名。因此,通常来说,系统无法从inode号码得知文件名。这使得软件更新变得简单,可以在不关闭软件的情况下进行更新,不需要重启。因为系统通过inode号码,识别运行中的文件,不通过文件名。更新的时候,新版文件以同样的文件名,生成一个新的inode,不会影响到运行中的文件。等到下一次运行这个软件的时候,文件名就自动指向新版文件,旧版文件的inode则被回收。

16. 软链接和硬链接

硬链接Hard Link:

  • ln [源文件] [目标文件]
  • 实际链接与文本共用同一个inode,即多个文件名指向同一个inode号码
  • 创建之后链接数会加1
  • 删除实际链接或文本文件都不会影响文件本身(删除一个文件名,不影响另一个文件名的访问,除非两个都删除)
  • 不能链接到目录(只针对文件有效)
  • 不能跨文件系统使用链接
  • 最大的好处是安全,相当于做文件备份
  • 创建目录时,默认会生成两个目录项:"."和".."。前者的inode号码就是当前目录的inode号码,等同于当前目录的"硬链接";后者的inode号码就是当前目录的父目录的inode号码,等同于父目录的"硬链接"。所以,任何一个目录的"硬链接"总数,总是等于2加上它的子目录总数(含隐藏目录),这里的2是父目录对其的“硬链接”和当前目录下的".硬链接“。

软连接Soft Link/符号连接Symbolic Link:

  • ln -s [源文文件或目录] [目标文件或目录]
  • 软连接就和windows里的快捷方式差不多

17. linux文件目录结构

/:存放系统程序,也就是At&t开发的Unix程序。
/usr:存放Unix系统商(比如IBM和HP)开发的程序。
/usr/local:存放用户自己安装的程序。
/opt:在某些系统,用于存放第三方厂商开发的程序,所以取名为option,意为"选装"。

posted @ 2016-10-09 13:29  morra  阅读(365)  评论(1编辑  收藏  举报