linux中的重要指令及用法

来源:互联网 发布:大数据开发和数据挖掘 编辑:程序博客网 时间:2024/05/01 14:59

1.进入目录需要哪些权限, 在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作, 需要哪些权限.
linux权限管理:
(1)文件和文件目录的所有者 —-u
(2)文件和文件目录的所有者所在组的用户 —–g
(3)其他用户 —–o
这里写图片描述
对各个字段的意思进行图解
这里写图片描述
文件访问权限的种类
a)、基本权限


i.读(r/4):Read对 文件 而 言,具有读取 文件内容的权限;对 目录来说,具有浏览该 目录信息的权限
 ii.写(w/2):Write对 文件 而 言,具有修改 文件内容的权限;对 目录来说具有删除移动 目录内 文件的权限
 iii.执 行(x/1):execute对 文件 而 言,具有执 行 文件的权限;对 目录来说,具有进 入 目录的权限
 iv.“—”表 示不具有该项权限
 b)、特殊权限
i.suid (s/4)只能应 用在可执 行 文件上,允许任意 用户在执 行 文件时以 文件拥有者的 身份执 行
 ii.sgid (s/2)只能应 用在可执 行 文件上,使任意 用户在执 行可执 行 文件时,将以拥有组成员的 身份执 行
iii.粘着位(t/1)只能应 用在 目录 文件上,将使 用户在 目录中执 行删除时,只能删除 自 己拥有的对象
(a) 通过对cd命令读,写,执行操作的添加可知,要执行cd命令需要X(执行权限)
这里写图片描述
(b)通过对tauch命令读,写,执行操作的添加可知,要执行tauch命令需要X(执行权限)和W(写权限)
这里写图片描述
(c)通过对ls命令读,写,执行操作的添加可知,要执行ls命令需要X(执行权限)和r(读权限)
这里写图片描述
(d)通过对rm命令读,写,执行操作的添加可知,要执行rm命令需要r(读权限),w(写权限)和x(执行权限)
这里写图片描述

2.了解以下Linux下的重要目录/proc, /sys, /SElinux, /bin, /usr/lib, /usr/local, /var, /tmp
/proc
/proc:Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。
用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。下面列出的这些文件或子文件夹,并不是都是在你的系统中存在,这取决于你的内核配置和装载的模块。另外,在/proc下还有三个很重要的目录:net,scsi和sys。 Sys目录是可写的,可以通过它来访问或修改内核的参数,而net和scsi则依赖于内核配置。例如,如果系统不支持scsi,则scsi 目录不存在。
除了以上介绍的这些,还有的是一些以数字命名的目录,它们是进程目录。系统中当前运行的每一个进程都有对应的一个目录在/proc下,以进程的 PID号为目录名,它们是读取进程信息的接口。而self目录则是读取进程本身的信息接口,是一个link。
子文件或子文件夹
/proc/buddyinfo 每个内存区中的每个order有多少块可用,和内存碎片问题有关
/proc/cmdline 启动时传递给kernel的参数信息
/proc/cpuinfo cpu的信息
/proc/crypto 内核使用的所有已安装的加密密码及细节
/proc/devices 已经加载的设备并分类

/proc/dma 已注册使用的ISA DMA频道列表
/proc/execdomains Linux内核当前支持的execution domains
/proc/fb 帧缓冲设备列表,包括数量和控制它的驱动
/proc/filesystems 内核当前支持的文件系统类型
/proc/interrupts x86架构中的每个IRQ中断数
/proc/iomem 每个物理设备当前在系统内存中的映射
/proc/ioports 一个设备的输入输出所使用的注册端口范围
/proc/kcore 代表系统的物理内存,存储为核心文件格式,里边显示的是字节数,等于RAM大小加上4kb
/proc/kmsg 记录内核生成的信息,可以通过/sbin/klogd或/bin/dmesg来处理
/proc/loadavg 根据过去一段时间内CPU和IO的状态得出的负载状态,与uptime命令有关
/proc/locks 内核锁住的文件列表
/proc/mdstat 多硬盘,RAID配置信息(md=multiple disks)
/proc/meminfo RAM使用的相关信息
/proc/misc 其他的主要设备(设备号为10)上注册的驱动
/proc/modules 所有加载到内核的模块列表
/proc/mounts 系统中使用的所有挂载
/proc/mtrr 系统使用的Memory Type Range Registers (MTRRs)
/proc/partitions 分区中的块分配信息
/proc/pci 系统中的PCI设备列表
/proc/slabinfo 系统中所有活动的 slab 缓存信息
/proc/stat 所有的CPU活动信息
/proc/sysrq-trigger 使用echo命令来写这个文件的时候,远程root用户可以执行大多数的系统请求关键命令,就好像在本地终端执行一样。要写入这个文件,需要把/proc/sys/kernel/sysrq不能设置为0。这个文件对root也是不可读的
/proc/uptime 系统已经运行了多久
/proc/swaps 交换空间的使用情况
/proc/version Linux内核版本和gcc版本
/proc/bus 系统总线(Bus)信息,例如pci/usb等
/proc/driver 驱动信息
/proc/fs 文件系统信息
/proc/ide ide设备信息
/proc/irq 中断请求设备信息
/proc/net 网卡设备信息
/proc/scsi scsi设备信息
/proc/tty tty设备信息
/proc/net/dev 显示网络适配器及统计信息
/proc/vmstat 虚拟内存统计信息
/proc/vmcore 内核panic时的内存映像
/proc/diskstats 取得磁盘信息
/proc/schedstat kernel调度器的统计信息
/proc/zoneinfo 显示内存空间的统计信息,对分析虚拟内存行为很有用
以下是/proc目录中进程N的信息
/proc/N pid为N的进程信息
/proc/N/cmdline 进程启动命令
/proc/N/cwd 链接到进程当前工作目录
/proc/N/environ 进程环境变量列表
/proc/N/exe 链接到进程的执行命令文件
/proc/N/fd 包含进程相关的所有的文件描述符
/proc/N/maps 与进程相关的内存映射信息
/proc/N/mem 指代进程持有的内存,不可读
/proc/N/root 链接到进程的根目录
/proc/N/stat 进程的状态
/proc/N/statm 进程使用的内存的状态
/proc/N/status 进程状态信息,比stat/statm更具可读性
/proc/self 链接到当前正在运行的进程
/sys
/sys:sysfs 是 Linux 内核中设计较新的一种虚拟的基于内存的文件系统,它的作用与 proc 有些类似,但除了与 proc 相同的具有查看和设定内核参数功能之外,还有为 Linux 统一设备模型作为管理之用。相比于 proc 文件系统,使用 sysfs 导出内核数据的方式更为统一,并且组织的方式更好,它的设计从 proc 中吸取了很多教训。
/bin:可执行的二进制文件
 /usr/lib:/lib目录主要存放的是一些库文件。
/etc文件系统
/etc 目录包含各种系统配置文件,下面说明其中的一些。其他的你应该知道它们属于哪个程序,并阅读该程序的 man 页。许多网络配置文件也在 /etc 中。
/etc/rc 或 /etc/rc.d 或 /etc/rc?.d : 启动、或改变运行级时运行的脚本或脚本的目录。
/etc/passwd : 用户数据库,其中的域给出了用户名、真实姓名、用户起始目录、加密口令和用户的其他信息。
/etc/fdprm : 软盘参数表,用以说明不同的软盘格式。可用 setfdprm 进行设置。更多的信息见 setfdprm 的帮助页。
/etc/fstab : 指定启动时需要自动安装的文件系统列表。也包括用 swapon -a 启用的 swap 区的信息。
/etc/group : 类似 /etc/passwd ,但说明的不是用户信息而是组的信息。包括组的各种数据。
/etc/inittab : init 的配置文件。
/etc/issue : 包括用户在登录提示符前的输出信息。通常包括系统的一段短说明或欢迎信息。具体内容由系统管理员确定。
/etc/magic : “file” 的配置文件。包含不同文件格式的说明, “file” 基于它猜测文件类型。
/etc/motd : motd 是 message of the day 的缩写,用户成功登录后自动输出。内容由系统管理员确定。常用于通告信息,如计划关机时间的警告等。
/etc/mtab : 当前安装的文件系统列表。由脚本 (scritp) 初始化,并由 mount 命令自动更新。当需要一个当前安装的文件系统的列表时使用 ( 例如 df 命令 ) 。
/etc/shadow : 在安装了影子 (shadow) 口令软件的系统上的影子口令文件。影子口令文件将 /etc/passwd 文件中的加密口令移动到 /etc/shadow 中,而后者只对超级用户 (root) 可读。这使破译口令更困难,以此增加系统的安全性。
/etc/login.defs : login 命令的配置文件。
/etc/printcap : 类似 /etc/termcap ,但针对打印机。语法不同。
/etc/profile 、 /etc/csh.login 、 /etc/csh.cshrc : 登录或启动时 bourne 或 cshells 执行的文件。这允许系统管理员为所有用户建立全局缺省环境。
/etc/securetty : 确认安全终端,即哪个终端允许超级用户 (root) 登录。一般只列出虚拟控制台,这样就不可能 ( 至少很困难 ) 通过调制解调器 (modem) 或网络闯入系统并得到超级用户特权。
/etc/shells : 列出可以使用的 shell 。 chsh 命令允许用户在本文件指定范围内改变登录的 shell 。提供一
台机器 ftp 服务的服务进程 ftpd 检查用户 shell 是否列在 /etc/shells 文件中,如果不是,将不允许该用户登录。
/etc/termcap : 终端性能数据库。说明不同的终端用什么 “ 转义序列 ” 控制。写程序时不直接输出转义
/var 文件系统
/var 包含系统一般运行时要改变的数据。通常这些数据所在的目录的大小是要经常变化或扩充的。原来 /var 目录中有些内容是在 /usr 中的,但为了保持 /usr 目录的相对稳定,就把那些需要经常改变的目录放到 /var 中了。每个系统是特定的,即不通过网络与其他计算机共享。
/var/catman : 包括了格式化过的帮助 (man) 页。帮助页的源文件一般存在 /usr/man/catman 中;有些 man 页可能有预格式化的版本,存在 /usr/man/cat 中。而其他的 man 页在第一次看时都需要格式化,格式化完的版本存在 /var/man 中,这样其他人再看相同的页时就无须等待格式化了。 (/var/catman 经常被清除,就像清除临时目录一样。 )
/var/lib : 存放系统正常运行时要改变的文件。
/var/local : 存放 /usr/local 中安装的程序的可变数据 ( 即系统管理员安装的程序 ) 。注意,如果必要,
即使本地安装的程序也会使用其他 /var 目录,例如 /var/lock 。
/var/lock : 锁定文件。许多程序遵循在 /var/lock 中产生一个锁定文件的约定,以用来支持他们正在使用某个特定的设备或文件。其他程序注意到这个锁定文件时,就不会再使用这个设备或文件。
/var/log : 各种程序的日志 (log) 文件,尤其是 login (/var/log/wtmplog 纪录所有到系统的登录和注销 ) 和 syslog (/var/log/messages 纪录存储所有核心和系统程序信息 ) 。 /var/log 里的文件经常不确定地增长,应该定期清除。
/var/run : 保存在下一次系统引导前有效的关于系统的信息文件。例如, /var/run/utmp 包含当前登录的用户的信息。
/var/spool : 放置 “ 假脱机 (spool)” 程序的目录,如 mail 、 news 、打印队列和其他队列工作的目录。每个不同的 spool 在 /var/spool 下有自己的子目录,例如,用户的邮箱就存放在 /var/spool/mail 中。
/var/tmp : 比 /tmp 允许更大的或需要存在较长时间的临时文件。注意系统管理员可能不允许 /var/tmp 有很旧的文件。
/tmp
/tmp文件是linux运行时产生的缓存文件,用于加速二次打开文件的速度。
/tmp文件在linux关机时会被系统预设指令删除的。
/usr/local
/usr/local/bin放置用户安装的小的应用程序,和一些在/usr/local目录下大应用程序的符号连接。
/SELinux
SELinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。
了解以下重要命令. du, df, top, free, pstack, su, sudo(sudo -, sudo -s), adduser, password
du命令
1.命令格式:
du [选项][文件]
2.命令功能:
显示每个文件和目录的磁盘使用空间。
3.命令参数:
-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或–total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-k或–kilobytes 以KB(1024bytes)为单位输出。
-m或–megabytes 以MB为单位输出。
-s或–summarize 仅显示总计,只列出最后加总的值。
-h或–human-readable 以K,M,G为单位,提高信息的可读性。
-x或–one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-L<符号链接>或–dereference<符号链接> 显示选项中所指定符号链接的源文件大小。
-S或–separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
-X<文件>或–exclude-from=<文件> 在<文件>指定目录或文件。
–exclude=<目录或文件> 略过指定的目录或文件。
-D或–dereference-args 显示指定符号链接的源文件大小。
-H或–si 与-h参数相同,但是K,M,G是以1000为换算单位。
-l或–count-links 重复计算硬件链接的文件。
这里写图片描述
df命令
1.命令格式:
df [选项][文件]
2.命令功能:df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
3命令参数
-a或–all:包含全部的文件系统;
–block-size=<区块大小>:以指定的区块大小来显示区块数目;
-h或–human-readable:以可读性较高的方式来显示信息;
-H或–si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes;
-i或–inodes:显示inode的信息;
-k或–kilobytes:指定区块大小为1024字节;
-l或–local:仅显示本地端的文件系统;
-m或–megabytes:指定区块大小为1048576字节;
–no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值;
-P或–portability:使用POSIX的输出格式;
–sync:在取得磁盘使用信息前,先执行sync指令;
-t<文件系统类型>或–type=<文件系统类型>:仅显示指定文件系统类型的磁盘信息;
-T或–print-type:显示文件系统的类型;
-x<文件系统类型>或–exclude-type=<文件系统类型>:不要显示指定文件系统类型的磁盘信息;
–help:显示帮助;
–version:显示版本信息。
top命令
1.命令格式:top [选项]

2.命令功能:top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。通过top命令所提供的互动式界面,用热键可以管理。
3命令参数
-b:以批处理模式操作;
-c:显示完整的治命令;
-d:屏幕刷新间隔时间;
-I:忽略失效过程;
-s:保密模式;
-S:累积模式;
-i<时间>:设置间隔时间;
-u<用户名>:指定用户名;
-p<进程号>:指定进程;
-n<次数>:循环显示的次数。查看其他重要指令,请戳下面链接

http://man.linuxde.net/top

如何使用命令安装gcc/g++, gdb, vim
(1)安装vim
首先,在命令行中输入vi查看一下vim的信息:
这里写图片描述
输入ls -a查看是否存在.vimrc和.viminfo这样的配置文件,结果如下:
这里写图片描述

(2)配置gcc/g++
Centos中使用yum来配置gcc和g++,若要安装gcc,则在命令行中输入:yum -y install gcc,按回车键就能够进行gcc的安装,若要安装g++,则需要在命令行中输入:yum -y install gcc-c++,就能够进行g++

这里写图片描述
(3)配置GDB
1.在linux系统中,打开网页http://ftp.gnu.org/gnu/gdb/ ,会出现如下的界面:
这里写图片描述
这里显示的都是一些gdb工具的压缩包,然后,我们选择其中的一个版本进行下载. 假如选择的是gdb-7.10版本的下载好了后.
在命令窗口中输入:tar xzvf gdb-7.10.1tar.gz ,解压完后,能够查看到gdb-7.10.1的一个文件
进入解压后的目录中:cd gdb-7.10.1
输入命令:./configure ,完成后使用dir查看
输入命令:make ,将GDB进行编译
输入make install ,进行安装GDB
使用:gdb -v 查看GDB的版本信息,确认安装是否正确

原创粉丝点击