关于linux系统命令和基础概念(长期更新)

29 篇文章 0 订阅
3 篇文章 0 订阅

总体介绍

什么是linux??

对于新学一个东西来说,任何人都是新手。最好的学习方式就是先知道他是什么,能干什么。也要参考一些先行者的思路,学习路线。然后最主要的就是要自己去深入的思考~~!!!!,一定要自己去思考!

先来看看百度百科的解释
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。

Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux不仅仅是被网络运维人员当作服务器使用,甚至当作网络防火墙,这是Linux的一大亮点

Linux具有开放源码、没有版权、技术社区用户多等特点,开放源码使得用户可以自由裁剪,灵活性高,功能强大,成本低。尤其系统中内嵌网络协议栈,经过适当的配置就可实现路由器的功能。这些特点使得Linux成为开发路由交换设备的理想开发平台。

linux具体学习思路:(个人踩坑)

一个小故事:
linux不同于编程语言,编程语言主要是思想,而linux则更注重实操,所以对于Linux的学习过程,个人感觉实操会更多一点,本人以前也干过开发,做开发的时候可能一天1000行代码,但是也可能是一天纯粹梳理思路,或者找bug,有时候因为一个版本问题的bug可能需要2天甚至更多来解决。但是好歹用基础编程语言工具就可以解决很多问题,而且在有基础之后很少会有没有思路的情况。也可以说几乎所有的问题,在你对他的基础有了一定的了解之后都是可以有迹可循的,但是linux的体系太过庞大了!!,以致于我一直处于一个经常发现问题了,但是没有解决思路的情况(甚至是在一些繁多的的文件中匹配一个字符串都要用shell脚本,事后发现:哦~原来有更加简单的解决办法,是的就是grep工具,哈哈)。于是,再后来我才改变了自己对于linux的学习思路,不能满足与简单的现状,要去寻找更多的工具,看看有没有更加快捷的,方便的解决方案,实际上,这个基本素养,这应该是一个优秀的程序员的基本素养

简单说就是: 先对linux有一个简单的,整体的认知,去了解他的一些基础概念,先在心里种下一颗春天的种子,他就会自然而然的去发芽长大,以至于在后面的学习过程中在接触到这些知识的时候,会变得非常容易接受,甚至会觉得:哦~~,本来就应该是这样的。这样会有一个事半功倍的效果。(概念—特性(特点)—细节(知识点)—总结)

首先明确一点:在linux中一切都是文件,就像java中一切都是对象一样。(比如说你的cpu,磁盘,用户,命令等,都是以文件的形式体现在操作系统上)明确好这点后,理解一些难点的时候,会让你可以很轻易的跨过一些槛。

大致路线:(千万不要死记硬背,知道这个命令是干嘛的,然后在使用的时候可以使用help现场查,这样用的多了之后,自然而然就记住了)

1:Linux基础知识、基本命令(起源、组成、常用命令如cp、ls、file、mkdir等常见操作命令)
	这些命令都有非常多的参数,并不建议一个个死记硬背,太多了,还会记错。要先去知道这些大命令是解决什么
	问题的,在用的时候可以用help去查看他们的使用方法,或者百度也可以
2:Linux用户及权限基础
3:Linux系统进程管理进阶
4:Linux高效文本、文件处理命令(vim、grep、sed、awk、find等命令)
	笔者在工作中经常用到grep和find,其次是sed、awk和vim。
5:shell脚本入门(将重复的事情交给电脑自己去做,大幅提高效率)
	shell脚本,又称“万能胶”。在建立、管理、部署、安装实体服务器机器的时候,嘿嘿,这可就是神器了,如果
	没有shell脚本我可能一天都搞不定一台服务器的安装部署配置(本公司是有自己的塔式服务器,也有云端的阿
	里云和华为云的服务器),但是有了shell脚本,我可以一天搞定3.5台,这还是在一次只能搞一台,而且还是机
	械硬盘的情况下的速度,中间还会出一些问题。。。。。

关于linux系统发行版的选择

笔者刚刚接触Linux的时候用的是CentOS6.5。后来在工作中改用ubuntu的16.04LTS 。(这个问题可能比较仁者见仁智者见智)

但是笔者后来也尝试将16.04升级到了18版本,但是出了问题。尝试了几次之后都有问题,换回16.04之后问题解决。可能是由于18版本相对于16版本变了不少东西,所以引发的问题,但是16.04还是一个很稳定的版本的。可以经得住考验。嘿嘿

前面的百度百科中也说了,Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。不同发行版的命令可能会有少许的区别。比如CentOS中的yum源和ubuntu中的apt-get。当然,大多数的命令、工具还是通用的。

还会有如下区别:
在安装软件的时候会有这样的区别,比如.deb主要在debian和ubuntu ; .rpm 主要用在Linux Red Hat Fedora SUSE 等等上。这个要注意一下
在这里插入图片描述

向下扎破跟,向上捅破天

我第一次听说这句话,是从任正非先生的口中听说,当时华为刚刚被制裁不久。由于无法自己造芯片而被限制。当时听到这句话只是觉得很有力量,非常扎实。后来才知道,哦~原来是我们的基础工业研究力度还是不够大,而被卡了脖子。。。其实这个学习也是一样的,不应该追求短平快的方便的工具,而是要打造最牢固的基础才能造出最高的大厦。嗨,我们领导最爱说的一句话就是:基础不牢,地动山摇。哈哈,确实是的。

linux各个方面的常用命令

文件权限方面

1:查看文件或目录权限: 	ls -l 或者
					ll		加文件名或者目录名字
		d是目录; -是普通文件; l是链接; b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
		c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
		drwxrwxr-x  2 gobills gobills 4096 610 16:12 ./
		drwxr-xr-x 14 gobills gobills 4096 610 16:12 ../
		-rw-rw-r--  1 gobills gobills    0 610 16:12 hhh
		-rw-rw-r--  1 gobills gobills    0 610 16:12 test
2:修改文件或文件夹权限:
		chmod 全称 change permissions mode of a file
		语法: chmod [{ugoa}{+-=}{rwx}] [文件或目录]
                     [mode=421] [文件或目录]
                     -R 递归修改
			u:所有者, g:所属组,o:其他人,a:所有;
			+:添加权限,-减少权限,=直接赋值成这个权限
		例如:	chmod -R o+w test1
				chmod o+r hhh.txt
3:新建用户和用户组:
		新建用户组:   groupadd sharegroup
			也可以指定用户组id:	groupadd -g 111  sharegroup 新建用户组并指定用户组sharegroup 的ID111

		新建用户:  	(当然,也可以指定用户的id ,这个一百度一大堆,哈哈)
			adduser  shareuser1                 //新建shareuser1用户
			passwd shareuser1                	//给shareuser1用户设置密码
		新建用户时,同时将其增加到组内,如果单独新建用户,则会建一个同名的组
			sudo useradd -g root bbb
			sudo useradd -g groupname username
		将已有用户加到组内 :
			usermod -aG groupname username  (这个会把用户从其他组中去掉)
			usermod -a groupname username


		注意:::::::::::::::::!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
		linux 里面对文件的读写执行和目录的读写执行是有区别的:
		权限         文件                    文件夹
		r 读          查看文件内容      列出文件夹内容
		w 写        修改文件内容       可以在文件夹创建删除文件内容
		x 执行      执行文件              可以进入文件夹

4:更改文件所有者命令:Linux chown 命令
	命令用于设置文件所有者和文件关联组的命令。
	利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户 ID,组可以是组名或者
组 ID,文件是以空格分开的要改变权限的文件列表,支持通配符。 。
	语法格式:	chown [-cfhvR] [--help] [--version] user[:group] file...  
	
    user : 新的文件拥有者的使用者 ID
    group : 新的文件拥有者的使用者组(group)
    -c : 显示更改的部分的信息
    -f : 忽略错误信息
    -h :修复符号链接
    -v : 显示详细的处理信息
    -R : 处理指定目录以及其子目录下的所有文件
    --help : 显示辅助说明
    --version : 显示版本
    
	实例:			
		sudo chown root hhd
		sudo chown root:root hhd		#第一个是用户,第二个是组
		chown -R root:root *       #将当前前目录下的所有文件与子目录的拥有者皆设为 runoob,群体的使用者 runoobgroup:
		chown :529 hhd             #把 hhd 的关联组设置为 529 (关联组ID),不改变所有者:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值