我自己总结的Java学习的系统知识点以及面试问题,目前已经开源,会一直完善下去,欢迎建议和指导欢迎Star: https://github.com/Snailclimb/Java-Guide
今天这篇文章中简单介绍一下一个 Java 程序员必知的 Linux 的一些概念以及常见命令(内容过多,阅读原文可以查看带目录的版本)。。
总体而言,Linux操作系统是一个强大、灵活且可定制的操作系统,广泛应用于服务器、嵌入式系统、超级计算机等各种领域。
Linux是一款功能强大的操作系统,其文件权限系统是确保文件和系统安全的关键组成部分。正确理解和配置文件权限对于维护系统安全至关重要。初次接触Linux时,在公司服务器上处理文件夹或文件时常常碰到Permission denied的提示。为了解决问题,我会直接使用一条简单而粗暴的命令sudo chmod -R 777。后来在另一家公司工作时,所有的服务器操作都经过审计,并且执行命令也需要遵守严格的规范。因此,我逐渐对Linux的文件权限有了更深的了解。本文将分享关于Linux文件权限系统的各个方面,包括权限位和常用命令。
操作系统(Operation System, OS),是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
在之前的博客中已经学习了一些相关的操作,这次来分享的是与Linux的权限有关的一些笔记。 在正片开始之前,先来讲讲外壳(shell)。
Linux是一个多用户的操作系统,引入用户,可以更加方便管理Linux服务器,系统默认需要以一个用户的身份登入,而且在系统上启动进程也需要以一个用户身份去运行,用户可以限制某些进程对特定资源的权限控制。
想必经常和服务器打交道的朋友,对于Linux可谓又爱又恨。对于项目组、运维人员、或者有多人需要对服务器进行操作的人,离不开Linux关于权限的管理。Linux的一大优势,就在于他的多人多任务环境,让不同身份的使用者具有较为保密的文件数据和不同的操作权限。
这次来说一下 Linux的用户管理,因为 Linux不同于 windows,它是一个多用户、多任务的操作系统,即允许同时登录多个用户进行操作,所以在学习 Linux的过程中必然要学习用户管理方面的知识,当然,也无非是一些增删改查的操作。内容如下。
Linux 操作系统的内核裁剪不仅是为了提升系统的安全性,而且是为了进一步提升应用系统的性能。如《Linux 内核裁剪框架初探》所述,Linux 的内核裁剪技术并没有得到广泛的应用,对于安全性、应用的性能以及开发效率而言,业界普遍采用的是虚拟化技术——虚拟机和容器。无论哪一种虚拟化技术,本质上都可以看作是操作系统能力的抽象、分拆和组合。
计算机开机是一个神秘的过程。我们只是按了开机键,就看到屏幕上的进度条或者一行行的输出,直到我们到达登录界面。然而,计算机开机又是个异常脆弱的过程,我们满心期望的登录界面可能并不会出现,而是一个命令行或者错误信息。了解计算机开机过程有助于我们修复开机可能出现的问题。
计算机开机是一个神秘的过程。我们只是按了开机键,就看到屏幕上的进度条或者一行行的输出,直到我们到达登录界面。然而,计算机开机又是个异常脆弱的过程,我们满心期望的登录界面可能并不会出现,而是一个命令行或者错误信息。了解计算机开机过程有助于我们修复开机可能出现的问题。 最初始阶段 当我们打开计算机电源,计算机会自动从主板的BIOS(Basic Input/Output System)读取其中所存储的程序。这一程序通常知道一些直接连接在主板上的硬件(硬盘,网络接口,键盘,串口,并口)。现在大部分的BIOS允许你从
Linux 内核是开源类 Unix 系统宏内核。仅仅一个内核并不是一套完整的操作系统。有一套基于 Linux 内核的完整操作系统叫作 Linux 操作系统。Kernel 是 Linux 系统的核心,主要负责硬件的支持。
下午回到家就想睡觉,醒来以为快早上了,一看时间原来才晚上十一点了,感冒了两周,颓废了半个月,心态不咋好,现在又来和你们见面了,加油!
对于计算机来说,所谓的数据就是0和1的序列。这样的一个序列可以存储在内存中,但内存中的数据会随着关机而消失。为了将数据长久保存,我们把数据存储在光盘或者硬盘中。根据我们的需要,我们通常会将数据分开保存到文件这样一个个的小单位中(所谓的小,是相对于所有的数据而言)。但如果数据只能组织为文件的话,而不能分类的话,文件还是会杂乱无章。每次我们搜索某一个文件,就要一个文件又一个文件地检查,太过麻烦。文件系统(file system)是就是文件在逻辑上组织形式,它以一种更加清晰的方式来存放各个文件。 路径与文件简介
👋大家好!我是你们的老朋友Java学术趴。相毕大家对Windows玩的已经是非常的熟练,那么小编今天给大家带大家搞一搞Linux系统,小编用一个星期的时间给大家整了一些Linux干货,由于内容太多,小编分开发。话不多说,直接进入今天的主题:Linux系统。Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作
运维行业正在变革,推荐阅读:30万年薪Linux运维工程师成长魔法 无论是出于 Linux 本身的多用户多任务分时操作系统的性质,还是出于系统安全的考虑, Linux 用户和用户组都是这个系统最重要的几块拼图之一。无论是日常使用,还是作为服务器来应用 Linux ,创建合适的用户、组别,赋予相应的权限,是基本的使用技巧。 今天小编为大家整理了 Linux 用户及用户组管理的相关内容,全篇文字超过一万字,力图为大家展示 Linux 用户管理的全貌。如果你对于这些知识还不是很熟悉,那么就一定仔细阅读文章了哦~
小菜提示: 看完此文手痒的同学,请在测试服务器上修改哦,可不能随便上生产服务器上测试!
实际上Linux有12位权限,我们前面说的Linux权限都只说了常用的9位权限,剩下的特殊权限也经常被用来进行Linux提权,如果没有了解了的,可以移步之前的文章《Linux权限详解》、《Linux安全权限》
下面用横线标出了. d代表这个是个目录 rwx 代表当前用户对这个文件/目录 是可读可写可执行 权限每3个一组. r-x 代表了当前组对这个文件/目录 是可读 可执行 r-x 最后一列则是其它用户对这个文件/目录的 权限. 后面依次跟的就是 硬链接数 当前用户(IBinary) 组名称(IBinary) 一般组名称跟用户名称一样. 在后面就是文件的大小 时间 以及文件名了.
Linux 系统是一个多用户多任务的操作系统,每一个想要使用系统资源的用户,都需要向系统管理员申请一个账号,之后以这个账号身份进入系统。
sudo可以进行短暂的提权,在最一次验证完成之后,短时间内可以用sudo命令进行相关操作,不用输密码,直接提权。
一般来说,在操作系统中会运行多个进程(几个到几千个不等),但一台计算机的 CPU 资源是有限的,如 8 核的 CPU 只能同时运行 8 个进程。那么当进程数大于 CPU 核心数时,操作系统是如何同时运行这些进程的呢?
学习Linux先明确是学习Linux操作系统还是某个Linux发行版(Ubuntu、CentOS、Fedora、OpenSUSE、Debian、Mint等),发行版指的是由个人或者团队组织编写的操作系统,通常会包括一些系统软件和应用的软件,以及一个用来简化系统初始安装的安装工具,一个典型的Linux发行版会包括Linux内核、一些GNU程序库和工具,命令行shell,图形界面的X Window系统和相应的桌面环境。
可以/etc/sudoers.d 下面建立一个文件内容如下 ,就可以是etl组的所有用户都可以无密码的切到etl用户下。
本专栏由小雨ttt创建,致力于分享学习Linux基础知识的过程。本专栏不是机械地介绍Linux指令集,而是包含了作者亲自实践的操作过程,站在一个初学者的角度理解Linux基础知识。
之前我们一直敲得命令和口口声声说的shell到底是什么呢?命令行提示符和输入的指令并且可以执行都是通过命令行解释器来实现的,那么命令行解释器就是我们常说的shell,具体我们看下面!
uname 可以查看操作系统的详细信息,具体可以使用uname --help查看,在linux命令行下输入可得到如下结果:
本文总结了Linux添加或者删除用户和用户组时常用的一些命令和参数。 1、建用户: adduser phpq //新建phpq用户 passwd phpq //给phpq用户设置密码 2、建工作组 groupadd test //新建test工作组 3、新建用户同时增加工作组 useradd -g test phpq
Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel?
注意:Administrators > Power Users >Users > Everyone
ls -l 命令用于列出指定目录下的文件和文件夹,并显示详细信息。下面是 ls -l 命令输出的详细信息解释:
Linux需要对登录用户读写执行文件、进入目录、查看增删目录内容等操作进行控制,不能任由用户随意执行所有操作。
Linux目录结构,可以看成是一种树形结构。其中最顶端使用 “/”表示,称为根目录。由于Linux是开放源代码的,不同的公司会根据Linux的核心代码进行修改,如果不对目录的功能进行描述、约束,那么使用者使用不同公司开发的Linux系统时,会崩溃、懵逼的。所以需要对Linux的目录作用有个大概的了解。 常用目录: (1)根目录(/):最重要的目录,相当于Windows系统中的C盘。所有的目录都是由根目录衍生出来的, 同时根目录也与开机/还原/系统修复等动作有关。
文件系统(File system)泛指储存在计算机上的文件和目录。文件系统可以有不同的格式,叫做文件系统类型(file system types)。这些格式决定信息是如何被储存为文件和目录。某些文件系统类型储存重复数据,某些文件系统类型加快硬盘驱动器的存取速度。
本篇继续安全系列之介绍,继续学习linux安全!,上期学习了android系统构建介绍,下期将会了解用户空间之安全。
这个命令会锁定用户的口令,从而禁止用户使用该账号登录系统。用户将无法使用已锁定的口令进行登录。
在计算机操作系统的发展史上,Unix是一个重要的里程碑。Unix操作系统最早由贝尔实验室于1969年开发,并在1971年发布。Unix操作系统以其简洁、灵活和可扩展的设计理念而受到广泛的赞誉。它基于分时操作系统的思想,允许多个用户同时访问计算机系统,并提供了许多功能强大的工具和命令行界面。Unix的设计被广泛采用,并成为后来操作系统的重要影响因素。
在BFS和MuqSS两个调度器的介绍之后,本文再介绍一种有意思的调度器,即Coscheduling。
所有可操作的计算机资源都存在于目录树这个结构中,对计算资源的访问,可以看做是对这棵目录树的访问
权限是约束人的(某个人或某些人) 比如看某些电影需要VIP,或者是QQ空间设置只对好友开放。 其实就是某件事允许谁去做,谁不能去做。
在Unix/Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限。
简单介绍 Linux 容器是一种轻量级“虚拟化”方法,用于在单个控制主机上同一时候执行多个虚拟装置(容器)。还有一个可用来描写叙述 Linux 容器所执行的操作的术语是“容器化”。 Linux 容器提供操作系统级别的虚拟化,当中的内核控制隔离的容器。容器通过内核控制组 (cgroup) 和内核命名空间进行隔离。通过 Xen 和 KVM 等其它完整虚拟化解决方式,虚拟化子系统可模拟完整的硬件环境。
可以使用uname -r 查看内核版本号,例如:2.6.32-754.2.1.el6.x86_64
在文章Linux Ubuntu安装Docker环境中,我们介绍了开源容器化平台和工具集Docker的详细配置方法;配置完毕后,Docker就已经可以正常使用了,但是还有着一个小问题——我们在Unix系统中进行Docker的各项操作时,由于Docker是和Unix的套接字(Socket)绑定的,而套接字归属于系统的root用户,非root用户如果需要访问它,就只能通过sudo命令实现;这也导致了,我们运行Docker时都必须要以root用户身份(也就是通过sudo命令)来实现。这就使得我们在执行很多和Docker有关的命令时,都需要输入一次root用户的密码,导致较为麻烦。那么,我们是否可以取消这一个限制呢?
Linux 系统的诞生主要源于林纳斯个人,而 Linux 系统的成长则更多得益于所采用的开源模式。林纳斯12岁开始接触计算机和编程,并从此狂热地爱上了编程。因为这份热爱,林纳斯自学了大量的编程知识,并不断地将学到的新知识进行练习。这些学习和练习为 Linux 系统储备了足够的知识弹药。而在开发过程中,林纳斯也不免遇到很多困难,但是他身上永不言弃的精神,让 Linux 系统最终诞生。在 Linux 系统诞生之后,它所采用的开源模式,令全世界对这个项目感兴趣的人都能参与进来。在世界各地优秀程序员的帮助下,Linux 系统不断走向完善,最终大获成功。在 Linux 系统获得广泛认可之后,林纳斯收获了名气,却并没有收获大量的财富。究其原因,是因为林纳斯希望 Linux 系统保持自由,不被商业因素所左右,所以他拒绝了很多公司抛来的巨额财富。开放源代码运动脱胎于自由软件运动,而自由软件运动又是继承早期的黑客文化而产生的。在最初的时候,软件是自由且不收费的,当时商业公司主要是销售硬件卖钱,软件则作为硬件的附属品免费赠送。当时的软件不掺杂商业利益,大家出于兴趣等原因编写程序并且分享给别人。这就是早期的黑客文化。打破黑客文化的人就是我们熟知的比尔·盖茨,他率先开始售卖软件,并且关闭软件的源代码。在他的影响下,软件便由最初的免费且自由模式发展成了现在的收费模式。而对此提出反对意见的是老牌黑客理查德·斯托曼,他发起了以源代码必须可以被自由获得为核心点的自由软件运动。但由于他提出的 Copyleft 概念有着很强烈的反商业感,自由软件运动下的 GPL 许可证又强制性要求修改后的软件,其被修改的那部分源代码也必须对外开放,这种对商业文化的不友好,令自由软件运动受到商业公司的排挤。当时Linux系统也是采用 GPL 许可证,所以也被称为自由软件。但是因为大家对自由“free”这个单词的总是产生歧义,认为那是免费的意思,于是林纳斯等人便提出了开放源代码这个概念,Linux 系统也就成了开源软件。源软件的条件比自由软件更宽松,对商业文化也更包容,于是伴随着 Linux 系统的成功,开源理念也就逐步被世界各地所接受。
Linux操作系统是多任务多用户操作系统,每当我们使用用户名登录操作系统时,Linux都会对该用户进行认证、授权审计等操作。操作系统为了识别每个用户,会给每个用户定义一个ID,就是UID。为了方便用户管理,Linux允许把多个用户放入一个用户组;在Linux系统中,用户组也有一个ID,GID。
在Linux系统中,有一句经典的话:“一切皆文件”(Everything is a file)。这句话的意思是,Linux将所有的设备、文件、进程等都当做文件来处理,统一了对它们的操作方法,使得Linux具有了很高的灵活性和可扩展性。本文将详细介绍Linux中的“一切皆文件”的概念,以及它的优点和应用。
领取专属 10元无门槛券
手把手带您无忧上云