当前位置:文档之家› LINUX学习笔记

LINUX学习笔记

LINUX学习笔记
LINUX学习笔记

LINUX学习笔记

一、linux目录结构

/ 根目录,最高级别

/bin 系统基本命令存放目录(/usr/bin)

/boot linux的内核及引导系统程序文件存放目录(如:vmlinuz、initrd.img)

一般情况下,GRUB或LILO系统引导管理也位于这个目录

/dev 设备文件存储目录,如声卡、光驱...

/ect 存放系统设置文件(如用户账号密码、服务器配置文件等)

/home 普通用户家目录,默认存放目录

/lib 库文件存放目录

/lost+found 在ext2或ext3文件系统中,当系统以外崩溃或机器意外关机,而产生一些文件碎片放在这里。

/media 即插即用型存储设备的挂载点自动在这个目录下创建。

如USB盘系统自动挂在后,会在这个目录下产生一个目录;

类似cdrom的目录

/mnt 存放挂载存储设备的挂载目录,如cdrom等目录

/opt 表示可选的意思,有些软件包也会被安装在此,也就是自定义软件包,

比如OpenOffice,或者一些我们自己编译的软件包,也可安装此处。

/proc 操作系统运行时,进程(正在运行的程序)信息及内核信息(比如CPU、硬盘分区、内存信息等)存放在此。

/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统

/root linux超级权限用户root的家目录

/sbin 大多是涉及系统管理的命令的存放,只有超级权限用户root才可执行命令存放,普通用户无权限执行此目录下的命令与/usr/sbin; /usr/X11R6/sbin; usr/local/sbin 目录相似(sbin,只有root权限才能执行) /tmp 临时文件目录,有时用户运行程序的时候,会产生临时文件。(/var/tmp目录和此目录相似)

/usr 系统存放程序的目录,如命令、帮助文件等。这个目录下有很多的文件和目录。

大部分Linux发行版提供的软件包都安装在此,涉及服务器的配置文件就安装在/ect中。

/usr/share/fonts 字体目录

/usr/share/man 或/usr/share/doc 帮助目录

/usr/bin 或/usr/local/bin 或/usr/X11R6/bin 普通用户可执行文件目录

/usr/sbin 或/usr/local/sbin 或/usr/X11R6/sbin 超级权限用户root可执行命令存放目录

/usr/include 程序头文件存放目录

/var (vary)此目录经常变动

/var/log 用来存放系统日志

/var/www 用来定义Apache服务器站点存放

/var/lib 用来存放一些库文件,如MySQL的,以及MySQL数据库的存放地。

二、基本命令

--查看帮助*** --help *** --?

--查看详细帮助man ***

--登录login

--退出窗口exit

--关机shutdown

--重启reboot

--初始化init (run level -/etc/inittab),0-6看第六部分的g

--进入根目录cd /

--回上层目录cd ..

--相对路径cd dev

--绝对路径cd /dev

--查用户名whoami

--查当前目录pwd

--列出当前目录内容ls

-l(树详细显示目录内容)

-m(横列显示目录内容,是屏幕长度显示)

-a(列出全部文件,包括隐藏文件)

-S(以文档大小排序)

--创建目录mkdir dname

--删除目录rmdir dname

rm -r *** -(递归删除该目录下所有内容,询问每个准备删除的文

件)

rm -rf ***-(强制删除该目录下所有内容,不询问)

--创建空白文件touch ***

(ps:从技术的角度来讲,linux的文件后缀名没有任何意义)

--复制cp

cp -r **1 **2 (复制1到2中)

--移动mv

mv -t **1 **2 (把2移动到1中)

--编辑文本vi [文件名]

--查看文本cat 由第一行开始显示文本內容

tac 从最后一行显示,可以看出tac 是cat 的倒着写

more 一页一页的显示文档內容

less 与more 类似,可以往前翻页

head 只看头几行

-N(数字,可根据行数显示)

tail 只看后几行

-N(数字,可根据行数显示)

nl 显示的時候,顺序输出行号

od 以二进制位的方式读取档案內容

--查找文本find [路径][查找类型][搜索文件名]

如查找rc.local find /etc -name *.local

--查找命令信息及其位置whereis 命令

如whereis ls

--查看环境变量echo $SHELL

如echo $PATH (分大小写:分隔符是:,windows是echo %path%;)

--链接ln

如ln joe.txt a (硬链接,如同复制一个新文件,joe.txt删除后,a还存在)

a是链接的名称,a和joe.txt同步,然后a的内容和joe.txt一样

joe.txt改变,a也跟着变

如ln -s joe.txt b (软链接,如同创建一个快捷方式,joe.txt删除后,b不存在)

--wc 统计指定文本文件的行数、字数、字符数

--grep(很常用) 在指定的文本文件中查找指定的字符串

grep 字符串文件名

--col 见管道..

--date 显示和设置日期

--stat 显示指定文件的相关信息

--who、w 显示在线登录用户

--whoami 显示用户自己的身份

--id 显示当前用户的id信息

--hostname 显示主机名称

--uname 显示操作系统信息

--dmesg 显示系统启动信息

--du 显示指定的文件(目录)已使用的磁盘空间

--df 显示文件系统磁盘空间的使用情况

--free 显示当前内存和交换空间的使用情况

--fdisk -l 显示磁盘信息

--locale 显示当前语言环境

三、挂载点(mount 设备目录挂载目录)

--访问设备(那设备当成一个文件,和另外一个文件夹进行绑定)

--例如挂载光驱:步骤[cd /mnt]---[mkdir cdr]---[mount /dev/cdrom /mnt/cdr]---[cd cdr]--OK!直接访问光驱内容

--卸载挂载设备(umount /dev/cdrom)--注意必须先退出挂载目录,否则出现"device is busy"错误.

四、startup-shutdown(linux启动流程)

--A、boot sequence(important) linux启动过程

a. load bios(hardware information)

b. read MBR's config to find out the OS

(MBR--Master Boot Record,硬盘第一个物理扇区,柱面0、磁头0、扇区1,包含主引导程序和硬盘分区表)

c. load the kernel of the OS

(加载为kernel核心的OS)

d. init process starts...

(启动linux第一个进程init)

e. execute /etc/rc.d/sysinit

(执行系统最重要的配置文件,后台启用进程)

(rc.d--run command)

f. start other modules(stc/modules.conf)

(开启各种模块,如内存管理模块、硬盘管理模块)

g. execute the run level scripts

(系统启动是分层次的,根据情况执行,每个层次之间没关系)

0 - 系统停机状态

1 - 单用户工作状态root

2 - 多用户状态(没有NFS)

3 - 多用户状态(有NFS)

NFS - Network File System 网络文件系统,联网系统

4 - 系统未使用,留给用户

5 - 图形界面

6 - 系统正常关闭并重新启动

如:cd /etc -- 有rc0.d、rc1.d、rc2.d、rc3.d、rc4.d、rc5.d等多个文件夹,保存着各个层次执行的进程文件

h. execute /etc/rc.d/rc.local (重要)

(保存其它进程脚本,如tomcat自动启动,要修改此配置文件)

i. execute /bin/login

(登录界面)

j. shell started...

五、vi 文本编辑器

--两种模式:命令模式编辑模式

--vi [文件名]

(切换到编辑模式)

a append-光标后添加

i insert-光标前插入

o open-另起一行编辑

esc (切换回命令模式)

:w 存盘

:wq 存盘退出

:q 退出

:q! 不存盘退出

dd 删除其中一行

dw 删除一个单词

(sudo gedit 文本常用linux下的文本编辑器,比vi好用)

六、用户设置

--切换用户(switch user) su username

小技巧:直接exit切换

--添加用户useradd username [-g] [组名](分配到某个用户组)

(创建后会自动在/home目录下创建该新用户的文件夹,如/home/username)

--设置密码passwd username

--cd /etc

--查看用户信息more password

如新增的用户信息:username:x:500:500::/home/username:/bin/bash

第一个数字,代表用户组,当添加用户没有指定用户组时,系统会创建一个和用户ID一样的组ID;

第二个数字:用户ID号;

用户的目录是/home/username;

用户的SHELL是/bin/bash

(命令--->SHELL[解释命令]--->kenrel内核)

SHELL有多种类型,如csh、bash(常用)、bsh、ksh、sh(最原始)

--添加用户组groupadd groupname

--查看用户组信息more group

--删除用户组groupdel groupname

--修改用户usermod [-g] [组名] [用户名]

--删除用户userdel username

然后把/home的文件夹删除了rm -rf 文件夹

七、权限file privilege

--linux把文件的权限分成四种:r:read w:write x:execute -:none

如:-rw-r--r--

lrwxrwxrwx

drwxr-xr-x

drwxr-xr-x

第一个数字'-'代表文件,其余是文件夹,后9位分为3组,每组有四种权限设置rwx-

第一位表示文件所有者

第二位表示和所有者在同一用户组的用户

第三位表示不在同一用户组的用户权限

--设置权限(随意应用,灵活组合!)

1、普通用法

--添加权限[chmod +x 文件]

如:-rw-r--r-- ---> -rwxr-xr-x

--删除权限[chmod -x 文件]

如:-rwxr-xr-x ---> -rw-r--r--

--给自己添加权限[chmod ?+x 文件]

如此类推,组--g,其他人--o

如:chmod u+x -rw-r--r-- ---> -rwxr--r--

chmod g+x -rw-r--r-- ---> -rw-r-xr--

chmod o+x -rw-r--r-- ---> -rw-r--r-x

2、专业用法chmod 755/777

--原理,八进制转二进制

如755,111 101 101,rwx r-x r-x

777,111 111 111,rwx rwx rwx

--修改所有者权限chown (change owner)

如:chown 原来文件file1 的所有者是root,改成joe的chown joe file1

linux学习笔记

Linux 一、Linux文件及文件夹命名规则 1)除了/之外,所有的字符都合法。因为/是系统的根目录名 2)有些字符最好不要用,如空格、制表符、退格符和@#$&-等字符。因为Linux命令以空格、-进行分开的;而#表示管理员命令行,$表示用户命令行等 3)避免使用.作为普通文件名的第一个字符。因为Linux系统以.开头的文件是隐藏文件4)Linux系统对英文字符大小写敏感 建议:不要把windows使用习惯带到Linux系统使用上 二、Linux操作命令 2.1、命令格式 命令格式:命令-选项参数 示例:ls –la /etc,参数是命令操作的对象 说明:1)当有多个选项时,可以写在一起。 2)两个特殊的目录.和..,分别代表当前目录和当前目录的父目录 2.2、命令种类及用法 Linux系统里命令按权限分为:1、只有管理员即root才能使用的命令,这些命令位置在/sbin 和/usr/sbin目录;2、管理员和所有用户都能使用的命令,这些命令的位置在/bin和/usr/bin 目录。bin是二进制文件夹binary缩写,usr是user的缩写,sbin是super binary缩写;3、Linux系统里内核处理任务文件都需要一个数字标识(inode-i节点),因为Linux只认i节点不认字符的,一个i节点可以对应多个文件 2.2.1、文件处理命令 2.2.1.1、ls命令-查看 1)命令名称:ls 2)命令英文原意:list 3)命令所在路径:/bin/ls 4)执行权限:所有用户

5)命令作用:查看目录下的文件和文件夹 6)命令语法:ls 选项[-ald] [文件或目录] 7)用法示例:#ls –ald /etc 选项说明:-a all缩写,显示所有文件,包括隐藏文件 -l long缩写,显示文件和文件夹详细信息显示 -d 查看目录属性 -i 查看文件的inode(i节点:一个数字标识) 文件和文件夹详细信息说明: 1、第一部分如:drwxr-xr-x、-rwxr-xr-x、lrwxr-xr-x这部分分成4个部分, 其各个字符说明: d 第一个字符d表示目录directory - 如果是第一个字符表示二进制文件,其它表示无权限 l 第一个字符l表示软链接文件link r 读权限read w 写权限write x 执行权限execute 第一部分:即第一个字符,表示文件类型 第二部分:第2-10个字符,表示三种用户对该文件的权限 第2-4个字符,表示所有者u-user对该文件的权限 第5-7个字符,表示所属组g-group对该文件的权限 第8-10个字符,表示其它人o-others对该文件的权限 2、第二部分如:2,表示该文件硬链接数 3、第三部分如:root,表示该文件所有者权限 4、第四部分如:root,表示该文件所属组权限 5、第五部分如:4096,表示该文件大小;以数据块block表示最小存储数 据单位,每个数据块为512字节 6、第六部分如:12-01 20:52,表示该文件创建时间或最后修改时间 7、第七部分如:bin,表示该文件的名 2.2.1.2、cd命令-切换 1)命令名称:cd 2)命令英文原意:change directory 3)命令所在路径:shell内置命令 4)执行权限:所有用户 5)命令作用:切换目录 6)命令语法:cd [目录] 7)用法示例:#cd / 切换到根目录 注:这个命令一般配合pwd命令使用

传智 韩顺平 linux 课程笔记1(吐血整理)

Linux视频教程(韩顺平)听课笔记1 (RedHat) 1、老师联系方式:hanshunping@https://www.doczj.com/doc/c511075476.html, 2、linux for工作 (1)linux系统管理员——linux系统的维护、配置等 (2)linux程序员——需c/c++、java,php、jsp等 ①linux软件工程师(pc) ②linux嵌入式开发(单片机、芯片) 3、学习linux的步骤 (1)第一阶段:linux平台上的开发,包括vi,gcc,gdb,make,jdk,tomcat,mysql...和linux基本操作 (2)第二阶段:加厚c语言功底《c专家编程》或是java语言 (3)第三阶段:学习unix环境高级编程《unix环境高级编程》 (4)第四阶段:linux应用系统开发/linux嵌入式开发 4、计算机学习的正确道路 5、推荐书籍 -《鸟哥的Linux的私房菜基础学习篇》鸟哥、许伟、林彩娥等编著 -《Linux编程从入门到精通》宫虎波编著 -《Linux内核完全剖析》赵炯编著 6、关机命令 shutdown -h now立即进行关机 shutdown -r now现在重新启动计算机 -t sec : -t后面加秒数,即”过几秒后关机” -k: 不是要真的关机,只是发送警告信息

-r: 在将系统的服务停掉之后就重新启动 -h: 将系统服务停掉后,立即关机 -n: 不经过init程序,直接以shutdown关机 -f: 关机并启动之后,强制略过fsck的磁盘检查 -F: 系统重新启动之后,强制进行fsck的磁盘检查 -c: 取消已经在进行的shutdown命令内容 reboot 现在重新启动计算机 7、用户登录 登录时尽量少用root账户登录,因为它是系统管理员,最大的权限,难免操作失误。可以利用普通用户登录,登录后再用“su -”命令来切换成系统管理员身份。 8、进入桌面(命令行界面进入图形界面) startx 9、用户注销 在提示符下输入logout即可。 10、vi进行开发java和c/c++程序 -java程序 -vi Hello.java -输入i,进入到插入模式,写好代码 -输入Esc键,进入命令模式 -输入冒号:[wq 表示退出保存,q!表示退出不保存] -编译javac Hello.java -运行java Hello -c程序 -gcc o自定义文件名Hello.cpp[参数o表示可自定义生成的out文件名,否则默认为a. out]

Linux操作系统学习心得

Linux操作系统学习心得 这学期有幸学习了《嵌入式系统设计》这门课,在胡佳文老师的教导下深入了解了有关于嵌入式系统,ARM9,Linux系统等很多方面的知识,获益良多,在学习过程中自己也遇到了很多问题,同时受到了很大的启发,现在就本学期的学习谈谈自己的学习心得体会。 Linux操作系统这个名词记得在很早以前就听过,知道这是一个开放性很大的系统,源代码是直接公布在互联网上,很多计算机高手可以根据自己的需求来修改这个程序,同时它比较不易死机,在自己的印象中一直是一种高大上的系统,但是更深入的了解确是零,对于这个学期选这门公共选修课,很大一部分原因是怀着一颗要了解一种早就想知道的东西的心选的.当然我平时也喜欢玩点电脑什么的,只是停留在用别人设计好的现成的东西。 经过一个学期linux操作系统的学习,在老师在课堂对linux系统的介绍及通过网络的了解下,知道了linux原来是一种和windows差不多的电脑操作系统,windows是图形界面的,linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,linux也能显示图形界面,也有开始菜单、桌面、图标等。Windows有MS-DOS方式,在该方式下通过输入DOS命令来操作电脑;而linux与windows类似,也有命令方式,linux 启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外linux上也有很多的应用软件,安装运行了这些软件后,你就可以在linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。 当然我们对linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。它的产生和需要花钱买得windows系统形成了对比,因为 linux 的核心是免费的,自由使用的,核心源代码是开放的.任何人都可以根据自己的喜好来编辑创作适合自己的操作系统,linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以linux操作系统有着广泛的应用空间。 而且在课上随着老师的讲解和自己动手查资料,慢慢的学习到了更深入的知识,知道了linux的安装:硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题。学习了linux系统的进入,关闭和重启。掌握了linux系统的硬件配置,如显卡,声卡,网卡等,并且通过对linux系统基本命令的学习,尤其是shell命令语言(亦称命令解释器),熟悉了系统的基本操作。当然在学习中发现英文学得好也是学好linux的关键。同时还了解了linux对应下的一些常用软件及这些软件的安装。因为linux在服务器中广泛的应用,于是我们进一步学习了linux下接入internet的WEB服务器的安装与配置方法。之后还了解了linux的网络安全,系统的安全,用户的安全等。 眼看这个学期Linux的课程已经告一段落了,在这段时间的学习如果要问我在这门课中学到了什么,我觉得是一种为学的方法,使我受益非浅。 首先每学一部分内容前必定有很多疑问,想要独立解开疑问,从网络上找资

一篇非常好的linux学习笔记分享(Linux入门绝佳)

作者:佚名字体:[增加减小] 来源:互联网时间:03-06 21:54:44我要评论 一篇非常好的linux学习笔记分享,对于常用命令整理的比较详细,推荐使用。 linux目录架构 / 根目录 /bin 常用的命令binary file 的目錄 /boot 存放系统启动时必须读取的档案,包括核心(kernel) 在内 /boot/grub/menu.lst GRUB设置 /boot/vmlinuz 内核 /boot/initrd 核心解壓縮所需RAM Disk /dev 系统周边设备 /etc 系统相关设定文件 /etc/DIR_COLORS 设定颜色 /etc/HOSTNAME 设定用户的节点名 /etc/NETWORKING 只有YES标明网络存在 /etc/host.conf 文件说明用户的系统如何查询节点名 /etc/hosts 设定用户自已的IP与名字的对应表 /etc/hosts.allow 设置允许使用inetd的机器使用 /etc/hosts.deny 设置不允许使用inetd的机器使用 /etc/hosts.equiv 设置远端机不用密码 /etc/inetd.conf 设定系统网络守护进程inetd的配置 /etc/gateways 设定路由器 /etc/protocols 设定系统支持的协议 /etc/named.boot 设定本机为名字服务器的配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 设置IP /etc/resolv.conf 设置DNS /etc/X11 X Window的配置文件,xorg.conf 或XF86Config 這兩個X Server 的設定檔/etc/fstab 记录开机要mount的文件系统 /etc/inittab 设定系统启动时init进程将把系统设置成什么样的runlevel /etc/issue 记录用户登录前显示的信息 /etc/group 设定用户的组名与相关信息 /etc/passwd 帐号信息 /etc/shadow 密码信息 /etc/sudoers 可以sudo命令的配置文件 /etc/securetty 设定哪些终端可以让root登录 /etc/login.defs 所有用户登录时的缺省配置

linux基本命令学习笔记

一、常用系统工作命令 1.echo 用于在终端输出字符串或者变量提取后的值 2.date 用于显示系统的时间或者日期 date "+%Y-%m-%d %H:%M:%S" 指定格式查看当前系统时间 date -s "20180901 8:53:00" 设置系统当前时间 date "+%j" 3.reboot 4.poweroff 5.wget(暂时了解即可) 6.ps 查看系统中的进程状态ps aux -a 显示所有进程 -u 用户以及其他详细信息 -x 显示没有控制终端的进程 //linux系统中有长短格式之分长长不能合并,长短不能合并,短短可以合并; 合并后保留一个- 号、ps命令允许参数不加减号(-),因此直接写成ps aux ·五种常见进程状态: R (运行)S(中断)D(不可中断)Z(僵死)T(停止) 7.top 动态的监视进程活动与系统负载等信息“Linux中的强化班的Windows任务管理器” 8.pidof 用于查询某个指定服务进程的PID值,格式为“pidof[参数][服务名称]” 9.kill 终止某个指定的PID的服务进程。 10.killall 用于终止某个指定名称的服务所对应的全部进程、killall[参数][进程名称] 如果我们在系统终端中执行一个命令后想立即停止它,可同时按下Ctrl+C组合键,这样将立即终止该命令的进程。或者有些命令在执行时不断的在屏幕上输出信息,影响后续命令的输入,则可以在执行命令时在末尾加上一个&符号,这样命令将进入系统后台来执行。 二、系统状态检测命令 1.ifconfig 查看本机当前网卡配置与网络状态的信息 主要查看网卡名称inet参数后面的ip地址ether参数后面的网卡物理地址(MAC 地址)以及RX TX的接受数据包和发送数据包的个数及累计流量 2.uname 用于查看系统内核与系统版本等信息 uname -a 若要查看当前系统版本的详细信息,则需要查看redhat-release文件 cat /etc/redhat-release 3.uptime 用于查系统的负载信息 显示当前系统时间系统已运行时间启用终端数量以及平均负载值 平均负载值:系统在最近一分钟五分钟十五分钟内的压力情况 4.free用于显示当前系统的内存使用量信息free -h 5.who 用于查看当前登入主机的用户终端信息 https://www.doczj.com/doc/c511075476.html,st 用于查看所有系统的登录记录。(日志文件形式保存在系统中,因此黑客很容易对其进行篡改,不要用该命令的输出信息判断系统有无被恶意入侵) 7.history 显示历史执行过的命令(1000条)如果不够,可自定义/etc/profile文件中的HISTSIZE变量值。使用-c参数会清除所有命令历史记录。还可以使用“!编码数字”的方式重复执行某一次命令。

Linux读书笔记

Linux读书笔记 Linux读书笔记 /.bashrc 就可以看到文件的内容 二进制文件: linux中的可执行文件就是这种格式的,命令cat就是一个二进制文件 数据格式文件: 这些程序在运行过程中,会读取某些特格式的文件,那些特定格式的文件可以称数据文件。如linux在用户登录时,都会将登录数据记录在/var/log/wtmp文件内,该文件是一个数据文件,它能通过 last 命令读出来。但使用cat 时,会读出乱码,因为它属于一种特殊格式的文件。 2.目录: 就是目录,第一个属性为,例如。 3.连接文件: 类似windows下面的快捷方式。第一个属性为,例如 4.设备与设备文件: 与系统外设及存储相关的一些文件,通常都集中在/dev目录下。该文件又分为两种: 块设备文件: 就是存储数据以供系统访问的接口设备,简单而言就是硬盘。例如一号硬盘的代码是/dev/hdal等文件,第一个属性为。 字符设备文件:

即串行端口的接口设备,例如键盘、鼠标等。第一个属性为。 5.套接字: 这类文件通常用在网络数据连接。第一个属性为 6.管道: FIFO也是一种特殊的文件类型,其主要目的是,解决多个程序同时访问一个文件所造成的错误,第一个属性为。 二、文件扩展名 *.sh:批处理文件,因为批处理文件使用shell写成,所以扩展名就是.sh。 *.z *.tar *.tar.gz *.zip *.tgz : 经过打包的压缩文件。 *.html *.php: 网页相关文件,分别表示HTML语法与PHP语法的网页文件。 三、如果当前在\home目录下,如果想进入/var/log目录时,怎么写呢? 1.cd /var/log 一定由根目录/写起 2.cd ../var/log回为在\home中,要回到上一层之后,才能继续向/var移动,不是由/写起,例如由/usr/share/doc到 /usr/share/man,可以写成 cd ../man ,相对路径是指相对于当前工作目录的路径。 四、常用的命令 ls:例文件 mv rm 删除文件

Linux 操作系统shell学习笔记 (linux系统)

Linux 操作系统shell学习笔记(linux系统) linux软件开发 No.001 文件安全与权限 1. umask 决定了新建文件的权限 2. 软链接(符号链接) ln -s source_path target_path No.002 find和xargs 1. find pathname -options [-print -exec -ok] 其中exec参数的命令格式:'command-' {} \; 注意必须包含【{} \;】 -perm 按权限来查找ex. find . -perm 755 -print -mtime 按修改时间来查找ex. find / -mtime -5 -print 更改时间5天以内 find / -mtime +5 -print 更改时间5天以前 2. xargs与-exec和-ok类似,但是限制更少,也更快 3种参数的命令:find . -name "*.c" -exec wc -l {} \; find . -name "*.c" -ok wc -l {} \; 每次执行命令前有提示 find . -name "*.c" | xargs wc -l No.003 后台执行命令 1. [crontab] [at] [&] [nohup]四种

No.004 文件名置换 1. 列出隐藏文件ex. ls .* No.005 shell输入与输出 1. echo输出时加上-n 参数不换行,ex. echo -n "aaaa" 2. tee 命令可以同时输出到屏幕和文件中ex. ls | tee file.out 3. 标准输入0 标准输出1 标准错误2 4. 将标准输出和标准错误输入到一个文件ex. command >file.out 2>&1 No.006 命令执行顺序 1. 命令1 && 命令2 命令1执行成功后才会执行命令2 2. 命令1 || 命令2 命令1执行失败后才会执行命令2 No.007 正则表达式 1. 正则表达式元字符及含义 ^ 只匹配行首 $ 只匹配行尾

Kali linux学习笔记

H\gd gdips 。 m _?p.. +f\gd .+ ” ” /+ dn j dnj j apuudib jk iq\n 0+ 1+ 2+ + %bjjg c\ f m& .+ n \m c_in+i o m\ao+ jh AKP ncj_\idib+ jh cook7,,rrr+ skgjdo*_]+ jh,bjjbg *_jmfn, . oc E\mq mno m oc c\mq no m *_ hd mjnjao+ jh *g 2-- *] bjjbg

oc c\mq no m *_ hd mjnjao+ jh *] kbk oc c\mq no m *_ hd mjnjao *g /-- *] gdif _di oc c\mq no m *_ hd mjnjao+ jh *g 2-- *] \gg / h o\bjjg adg Rn\b 7 h o\bjjadg jkodjin *_7 _jh\di oj n \m c *o7 adg otk oj _jrigj\_ %k_a)_j )sgn)kko)j_k)j_n)_j s)sgns)kkos& *g7 gdhdo ja m npgon oj n \m c %_ a\pgo /--& *c7 rjmf rdoc _j ph ion di _dm ojmt %pn t n ajm gj \g \i\gtndn& *i7 gdhdo ja adg n oj _jrigj\_ *j7 rjmfdib _dm ojmt %gj \odji oj n\q _jrigj\_ _ adg n& *a7 jpokpo adg Bs\hkg n7 h o\bjjadg+kt *_ \kkg + jh *o _j )k_a *g /-- *i 2- *j \kkg adg n *a m npgon+cohg h o\bjjadg+kt *c t n *j \kkg adg n *a m npgon+cohg %gj \g _dm \i\gtndn& ” ” FM ” ” é ~ _inh\k _in iph ad m _in_d o3

Linux学习笔记之第二章文本编辑器

修改主机名: 修改静态ip: vi /etc/hostname 1vi /etc/sysconfig/network-scripts/ifcfg-ens32 BOOTPROTO=static 静态IPADDR=地址NETMASK=子网掩码:255.255.255.0GATEWAY= 网关DNS1=域名服务器1 2 3 4 5 6 7

–color=auto:将找到的关键字部分加上颜色显示学习目标 1、vi/vim文本编辑器 2、用户管理 3、文件基本属性 4、常用命令 学习内容 1、vi/vim文本编辑器 常用操作: dd:删除光标所在的整行 ndd:删除光标之后的的n行 yy:复制整行 nyy:复制n行 p: 光标位置向下粘贴 P:光标占位置向上粘贴 u:撤销 ctrl+r:重做上一个动作(还原撤销的操作) :set nu 显示行号 :set nonu 取消行号 查找替换: /word :查找,n:向下查找,N:向上查找

重要文件: 保存用户信息的文件:/etc/passwd 保存密码的文件:/etc/shadow 保存用户组的文件:/etc/group 保存用户组密码的文件:/etc/gshadow 用户配置文件:/etc/default/useradd 配置文件分析: /etc/passwd 用户名:密码:用户ID:用户组ID:用户描述:用户的主目录:shell 命令root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync 1 2 3 4 5 6 7 登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标 志 1

linux系统学习笔记

==============================智能娱乐系统=================== 硬件:中控:UI,音视频数据处理能力 操作:显卡,声卡、LED、游戏机、触控屏 ARM :cortex - A 软件:开发环境:vmware + linux(ubuntu) 程序开发:linux C 程序移植:交叉开发 效果:自动处理程序 一、Linux 命令 linux : 图形简陋---> 追求效率高 移植性强,开源性 linux :命令行形式进行交互 ls: 查看全部文件名/ --->根目录 pwd: 打印当前的路径/home/gec 等于~ ---> 家目录 cd : 直接回到/home/gec cd / : 回到根目录/ cd ..: 回到上一级的目录 ls -l 类型权限链接数创建者工作组大小日期目录名d rwxrwxr-x 2 gec gec 4096 Jul 2 2013 Desktop d:目录(第一个字母:-:普通文件d:目录) rwxrwxr-x:文件的权限r:读权限w:写权限x:执行权限 用户权限:rwx(创建者的权限)rwx(同组人)r-x(其他人) clear: 清除屏幕信息 touch 创建文件 touch xxxx ----> 因为身份是gec,所以必须在/home/gec中创建 rm 删除文件/目录 rm xxxx(文件名) ----> 因为身份是gec,所以必须在/home/gec中删除rm xxxx(目录名) -rf

gedit 编辑文件 gedit xxxx cat 查看文件内容 cat xxxx mkdir 创建目录 mkdir xxxx ----> 因为身份是gec,所以必须在/home/gec中创建 cp 拷贝命令 cp 文件名目录名---> cp abc.c 123/ chmod 修改文件的权限 -rw-rw-r-- 1 gec gec 20 Apr 14 19:43 abc.c 421421421 6 6 4 希望三个人都是可读可写可执行7 7 7 chmod 777 xxxx chmod 777 abc.c -rwxrwxrwx 1 gec gec 20 Apr 14 19:43 abc.c 二、linux与windows间的共享目录 1,在windows系统中的D:\创建一个名字为share的目录 2, "虚拟机" --- "设置" ---- "选项" --- "共享文件夹" --- "总是启用" ---"确定" 3,在linux系统输入以下命令来进入共享目录 cd /mnt/hgfs/share/ 4,在linux与windows分别创建目录和文件,观察两个系统的变化 =====================开发板的使用========================= 一、核心板

兄弟连linux学习笔记

4.1.1 文件处理命令 命令格式 命令+选项+参数 ls -la /etc 命令ls 显示目录文件 语法:-a 显示所有文件-l详细信息显示-d查看目录属性-rw-r--r-- - 文件类型(-文件d目录l软链接文件) rw -r-- r-- u g o u所有者g所属组o其他人 r读w写x执行 4.1.2 目录处理命令 mkdir创建新目录 语法:mkdir -p(目录名)递归创建 cd 切换目录

语法:cd (目录) pwd 显示当前目录 语法pwd 4.1.2.4 rmdir 删除空目录 语法:rmdir (目录) cp 复制文件或者目录 语法:cp -rp (源文件或目录)(目标目录)-r 复制目录 -p保留文件属性 mv 剪切文件、改名 语法:mv (原文件或目录)(目标目录)rm

删除文件 语法:rm -rf (文件或目录) -r 删除目录 -f 强制执行 4.1.3 文件处理命令 touch 创建空文件 语法:touch (文件名) cat 显示文件内容 语法:cat(文件名) -n 显示行号 tac 显示文件内容(反向) 语法:tac(文件名) more

分页显示文件内容 语法:more(文件名) (空格)翻页 (Enter)换行 q 退出 less 分页显示文件内容(可向上翻页)语法:less (文件名) head 显示文件前面几行 语法head (文件名) -n 指定行数 tail 显示文件后几行 语法tail (文件名) -n 指定行数 -f 动态显示文件末尾内容 4.1.4链接命令 ln

生成链接文件 语法:ln -s (源文件)(目标文件) -s创建软连接 软链接特征:类似Windows快捷方式 lrwxrwxrwx l 软链接 软链接文件权限都为rwxrwxrwx 文件大小- 只是符号链接 /tmp/issue.soft -> /etc/issue 箭头指向原文件 4.2.1权限管理命令 chmod 改变文件或目录权限 语法:chmod [{ugoa}{+-=}{rwx}] (文件或目录)[mode=421 ](文件或目录) -R 递归修改 权限的数字表示 r ---- 4 w ---- 2 x ---- 1 rwx rw- r-- 7 6 4

Linux操作系统学习心得

Linux操作系统学习心得 Linux操作系统这个名词记得在很早以前就听过,但具体是什么样的系统却真的不知道,甚至都不知道它是手机系统还是电脑系统,知道的只是它好像比较不易死机,。对于这个学期选这门公共选修课,很大一部分原因是怀着一颗要了解一种早就想知道的东西的心选的.当然我平时也喜欢玩点电脑什么的,只是停留在用别人设计好的现成的东西。 经过一个学期linux操作系统的学习,在老师在课堂对linux系统的介绍及通过网络的了解下,知道了linux原来是一种和windows差不多的电脑操作系统,windows是图形界面的,linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,linux 也能显示图形界面,也有开始菜单、桌面、图标等。Windows有MS-DOS 方式,在该方式下通过输入DOS命令来操作电脑;而linux与windows 类似,也有命令方式,linux 启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外linux上也有很多的应用软件,安装运行了这些软件后,你就可以在linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。 当然我们对linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。它的产生和需要花钱买得windows系统形成了对比,因为linux的核心是免费的,自由使用的,核心源代码是开放的.任何人都可以根据自己的喜好来编辑创作适合自己的操作系统,linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以linux 操作系统有着广泛的应用空间。 而且在课上随着老师的讲解和自己动手查资料,慢慢的学习到了更深入的知识,知道了linux的安装:硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题。学习了linux系统的进入,关闭和重启。掌握了linux系统的硬件配置,如显卡,声卡,网卡等,并且通过对linux 系统基本命令的学习,尤其是shell命令语言(亦称命令解释器),熟悉了系统的基本操作。当然在学习中发现英文学得好也是学好linux 的关键。同时还了解了linux对应下的一些常用软件及这些软件的安装。因为linux在服务器中广泛的应用,于是我们进一步学习了linux 下接入internet的WEB服务器的安装与配置方法。之后还了解了linux 的网络安全,系统的安全,用户的安全等。 眼看这个学期Linux的课程已经告一段落了,在这段时间的学习如

linux复习笔记

Linux复习笔记 1.Linux发展史 1991年开发了Linux内核 1994年发布了Linux1.0版本 1996年发布了Linux2.0版本 2.Linux内核 (1)任何版本的linux都使用相同的内核—https://www.doczj.com/doc/c511075476.html,/ (2)版本号4.13.6--主版本.次版本.修改版本 主版本或次版本有一个为奇数:发展中版本 主版本和次版本均为偶数:稳定版本 (3)Linux完整系统包括: Linux kernel(内核)、free software(软件)、documentation(文档) (4)Linux常见的发行版本 Redhat:收费、企业用的正式版本 CentOS:学生学习使用的免费版本 Fedora:红帽的测试版(软件) Debian:点点 ubuntu:图形化 3.Linux的应用 ①网络服务器(WWW,FTP,Mail)、②关键任务的应用(金融大数据库,大型企业网管环境)、③学术机构、④桌面计算机、⑤手机系统、⑥嵌入式系统 4.虚拟机安装 Virtual Box:搜官网->选择windows版本->下载安装 5.用户的操作 whoami:可以查看当前的用户 su:用来进行用户的切换(#:管理员用户,$:普通用户) 用法:①su 用户名②su 回车(切换到root) (root账户切换到其他账户不需要输入密码,其他账户之间的切换或切换到root账户需要输入密码) sudo:重置密码 sudo passwd root useradd 用户名:添加一个账户 截图:

6.shell的快捷键 Ctrl+a:调到命令行开头 Ctrl+e:调到命令行末尾 Ctrl+u:将光标处到命令行开头的内容清除 Ctrl+k:将光标处到命令行末尾的内容清除 Ctrl+r:在历史命令列表中搜索某一命令 Ctrl+l:清屏 history:显示历史命令 ! [number] :执行曾经执行过的命令,number为行数截图: 7.查看文件和目录 pwd:查看当前所在路径 命令格式:命令 -选项 -参数(目录) (文件类型见10) ls:查看当前目录下的文件 -d:只看当前目录的信息 -l:看详细信息

Linux学习笔记一

Linux学习笔记一 默认情况下,所有系统帐号与一般身份用户,以及root的相关信息,都记录在/etc/passwd 文件内;密码记录在/etc/shadow 文件中;Linux所有的用户组名称都记录在/etc/group内。不可随意删除这3个文件。 了解Linux文件属性,以root身份登录后输入|s -al查看具体属性设置。 文件前面第一个字符为.表示隐藏文件。 各字段依次的含义:文件属性,连接数,文件拥有者,文件所属用户组,文件大小,文件最 先修改时间,文件名 文件属性10字段: Linux文件类型: -普通文件。根据文件内容分:纯文本文件(ASCLL ),二进制文件(binary ),数据格式文件(data) ----last 命令 d目录, l连接文件link file ,b设备文件中可供存储的接口设备, c设备文件中串行端口设备如键盘鼠标 拥有者权限,同用户组权限,其他非本用户组权限

r read 读,w write 写,x excute 可执行 9个属性,3个一组,其中可用数字来表示各个属性:r--4 , w--2 , x--1,将同一组的3个属性相加:owner=rwx=4+2+1 Windows中,一个文件是否具有执行能力是通过扩展名"来决定,但在Linux中是通过是否具有x属性来决定的。 Linux文件扩展名: .sh :批处理文件(script,脚本),shell写成 .pl :程序语言Perl的文件 更改文件权限 charp改变文件所属用户组 chown改变文件拥有者 chmod改变文件的属性,suid等特性 chown还可以直接修改用户组的名称。什么时候用到chown和chgrp,比如将一个文件copy 给其他人时,复制后的文件拥有者仍然是原来的拥有者,所以得到文件复制分的用户仍然没有修改的权限,此时就需要修改文件的拥有者与用户组。 当我们以vi编辑shell的文字文件后,其属性通常都是-rw-rw-rw- , 666属性,如果要将它变成可执行文件,并且不能让其他人修改此文件,那么就需要修改文件的属性成 -rwxr-xr-x,755 属性

Linux学习笔记:用户及用户组

Linux学习笔记:用户及用户组 来自:标点符的《Linux学习笔记:用户及用户组》链接:https://www.doczj.com/doc/c511075476.html,/linux-user-group.html(点击尾部阅读原文前往) Linux用户只有两个等级:root及非root。Linux中还有一部分用户,如:apache、mysql、nobody、ftp等,这些也都是非root用户,即普通用户。Linux的权限实际是上不同用户所能访问的文件的不同产生的假象。而这些假象的造成,还要涉及到另外一个概念:用户组一个用户至少要属于一个用户组一个用户可以属于多个用户组 用户组存在的原因主要还是方便分配权限。而用户本身和权限的差别不是很大,各个用户之间主要的不同是:是否拥有密码home目录(普通用户可以有一个以自己用户名命名的home目录,存放的地址是/home/username,root用户的home目录是:/root)shell 像nobody这样用来执行Nginx的工作进程的用户,一般不分配密码和shell,甚至连home目录都没有。 为什么不分配密码?如果设置了密码,程序无法自动使用。由于不会有人使用这个用户登录系统,所以就没有必要分配shell。(备注:其实严格上说是有分配shell,只是分配的shell 是/sbin/nologin这个特殊的shell,没有任何其他功能,主要

功能是防止你登陆。) 所有用户都可以通过查看/etc/passwd查看。以下为我的系统中的用户信息:root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin dbus:x:81:81:System message bus:/:/sbin/nologin

linux 学习心得

linux 学习心得.txt喜欢我这是革命需要,知道不?!你不会叠衣服一边呆着去!以后我来叠!我一定要给你幸福,谁也别想拦着。linux,sh脚本编程 在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具。Shell不仅仅是命令的收集,而且是一门非常棒的编程语言。您可以通过使用shell使大量的任务自动化,shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。 下面,让我们一起来看看shell是如何工作的: 建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在bash的大姐,bourne shell 中运行)。 如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、emacs、vi等来编写我们的shell程序。程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 当编辑好脚本时,如果要执行该脚本,还必须使其可执行。 要使脚本可执行: chmod +x filename 然后,您可以通过输入: ./filename 来执行您的脚本。 注释 在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。 变量 在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写: 变量名=值 取出变量值可以加一个美元符号($)在变量前面: #!/bin/sh #对变量赋值: a="hello world" # 现在打印变量a的内容: echo "A is:" echo $a 在您的编辑器中输入以上内容,然后将其保存为一个文件first。之后执行chmod +x first 使其可执行,最后输入./first执行该脚本。 这个脚本将会输出: A is: hello world 有时候变量名很容易与其他文字混淆,比如: num=2 echo "this is the $numnd" 这并不会打印出"this is the 2nd",而仅仅打印"this is the ",因为shell会去搜索

linux读书笔记

第一次学shell编程,看的文章中说shell程序必须以"#!/bin/sh"开始,也就认为是这样了。 虽然知道在shell中以"#"开始的语句都是注释,但也从没认为"#!/bin/sh"也是注释,就像对C语言程序必须有main函数一样毫无怀疑。 但前些时候又听说"#!/bin/sh"也是注释,可有可无,当时觉得真是一个失败,连基本的语法都分不清。 前几天借了一本书,才真正认识了"#!/bin/sh"。 shell编程是以"#"为注释,但对"#!/bin/sh"却不是。 "#!/bin/sh"是对shell的声明,说明你所用的是那种类型的shell及其路径所在。 如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell。 比如:如果脚本被编写为在Korn Linux中运行,而默认运行shell脚本的为C shell csh,则上述脚本在执行过程中很可能失败。 所以建议大家就把"#!/bin/sh"当成C 语言的main函数一样,写shell必须有,以使shell程序更严密。 即: #!/bin/sh 是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面根的是此解释此脚本的shell的路径。 其实第一句的#!是对脚本的解释器程序路径,脚本的内容是由解释器解释的,我们可以用各种各样的解释器来写对应的脚本。 比如说/bin/csh脚本,/bin/perl脚本,/bin/awk脚本,/bin/sed脚本,甚至/bin/echo等等。 那我们真的能写一个/bin/echo的脚本文件吗?我们来试试,下面是一个例子:代码: #!/bin/echo –e 这只有一行的程序(实际上它也只能是一行,echo程序并不是被设计成像awk那样的编程语言,能写成源程序文件)命名为myecho,加上权限后执行它: 代码: $ ./myecho "hi\a" ./myecho hi 如果你的echo支持-e选项并且你工作的环境还算安静,你在得到上面的结果的时候也应该听到清脆的终端响铃。但这种程序是毫无作用的。 1、linux分区 --在linux里面所有的设备、任何东西,在linux看来都是文件。 --文件在它看来,有两种形式: 第一种是字符型(键盘输入、打印机); 第二种是二进制型(硬盘、光驱、U盘) --linux中所有硬件

相关主题
文本预览
相关文档 最新文档