shutdown -h now 立刻关机 shutdown -h 23:00 到下一个23点关机 shutdown -h +60 一个小时候关机 在虚拟机中,可能分辨率不够 那么可以安装VMware的工具 VM-->INSTALL VMWARETOOLES 等待几秒钟后,会出现一个文件夹(光盘目录) 在里面进入终端 shutdown -k now '我要关机啦' 把要关机的命令发布到每个用户 shutdown -t 5 5秒后关机 reboot 重启 halt 不理会各种服务是否关闭,而是直接关机 who 查看谁连接了本机 得到进程号后 ps -ef | grep gedit 可以杀这些进程 kill 进程号 如果 ssh没开,那么xshell连不上服务器的 开 /etc/init.d/sshd status 关 /etc/init.d/sshd stop 把环境改为英文 LANG=c 时间命令 把日期中的年提取出来;date +%Y 年月日:date +%Y/%m/%d 时分秒:date +%Y%Y/%m/%d' '%H:%M:%S 把空格用引号引起来,这样就不会把空格编译了 日历:cal cal 2010 显示出2010年的全部日历 cal 5 2008 显示出2008年5月份的日历 基本文件命令 pwd 看当前路径 ls 显示路径下面的所有内容 ls -l 表示文件的详细信息 touch 1.txt 创建 1.txt文档 改名 mv 1.txt 2.txt copy 把root下的2.txt赋值到当前目录中 cp /root/2.txt . 删除 rm 2.txt rm 2.txt -f 直接删除,不询问是否删除 rm -r 递归删除 创建文件夹 mkdir test 然后删除的时候rm test -rf 直接删除 文件夹(不再询问) 一般不加-r,太危险 用户操作 看test用户是否存在 id test1 创建用户 useradd test1 passwd test1 然后输入test1的密码 su - test1 切换用户(不需要输入密码) 此时变成了$(这个是普通用户) #是超级用户 su - root 此时需要密码 在普通用户下 输入 exit 退出,返回 root用户 ctrl + alt + F1 新开一个终端 普通用户不能设短密码,超级用户可以 常用快捷键 ctrl + c 1、换行不回车 2、结束程序 ctrl + d 可代替 exit (直接离开文字界面) Tab 命令补齐,文件名补齐 user 按2次 Tab ,可显示出所有以 user开头的命令 sync 同步(把内存中的数据写回到硬盘中) 等同于hibernate 中的 flush system-config-network 可在 xshell中呼出网络配置页面 配置各种命令的 /etc/sysconfig/network-scripts/ifcfg-eth0 !$(上次命令的最后部分) vim !$ /etc/init.d/network restart 网卡重启 /etc/sysconfig/network-scripts/ifcfg-eth0(网络信息在此文件中) 但是,DNS没有在这个里面 DNS在 /etc/resolv.conf中 的 nameserver对应的键值 手动安装 firefox 插入安装盘 右上角2个要打钩 然后等加载光盘 然后 进入光盘的终端 然后 cd Server rpm -ivh firefox-***** 不过这个试验下来,系统自带的firefox版本太低,不适合使用 所以重新下载新版本的firefox 插优盘的时候,一定要让虚拟机获取焦点 使用优盘 fdisk -l /dev/sda1 sda是指第一个硬盘 sdb1是指另一个硬盘 mkdir u 然后把硬盘挂在u上面 mount /dev/sdb1 /root/u 卸载 硬盘 umount /root/u/(这个时候不能在u的路径下) 如果在新建的u文件夹中创建了文件,再把硬盘挂载到u上面 那么之前创建的文件就会看不见,卸掉后,之前文件夹里的东西又能看到 加载卸载光盘同样的道理 umount /media/RHEL_5.5\ i386\ DVD/ vi/vim vim有3种模式 一般模式,编辑模式,命令行模式 进入编辑模式 i,o,a 退出编辑模式 Esc 命令行模式 在一般模式下输入 : ? / 保存,退出 查找 替换 显示行号 wq q 显示行号 :set nu 取消行号 :set nonu 删除当前一行 按2次d u是撤销刚才的操作 ctrl + z 是指挂起当前操作 如果要恢复挂起的操作 可用jobs查看挂起操作的job号 然后 用 fg %job号 bg %job号 复制一行: 在要复制的行出按两次y,然后把光标移到要复制的一行 按p 复制多行: y6y 即从当前行开始,复制6行 删除一个词 dw 但如果是中文的话,有问题的,比如“你是鱼啊?”按dw后,就剩?了 yw 复制一个词 直接把光标移到最后 按 $ 行头 按 ^ 翻页 pgdn pgup 光标移到最后一行 G(大写) 光标移到第一行 1G 光标移到第80行 80G dG 从当前行删除到最后一行 d10d 从当前行删除 10行 替换 : %s/old/new/g g指全部替换 e! 重新读入当前文件(当然是在未保存的情况下) 查找 /*** (正查询) n往下查 N往上找 ?***(反查询) n往上查 N往下找 /user/share/vim/vim70/tutor下的 tutor.zh.euc 是 vim的使用方法 nohup gedit tutor.zh.euc & &表示放在后台运行 nohup 表示独立于终端运行(终端关闭不会影响到gedit的运行)\ 在网vim中粘贴的时候,一定要注意,如果在普通模式下, 粘贴板中的a,i,o会被被当成命令 例:iaaaaaa 粘贴的时候,就会成为aaaaaa,i就没有了 ls -a 显示出所有的文件(包括.swp文件) 文件目录 linux 的目录配置 / 根目录(root目录) 根目录下还有个root目录,这个是root用户的home目录 /etc/ 配置文件目录 /DEV/ 接口和设备文件挂载到此文件夹中 /home/ 除了root用户的家目录 回到当前用户的家目录 cd ~ 或者 cd cd - 回到上一次所在目录 linux 不是通过文件后缀来判断文件类型 而是通过 ls -l 显示的 -rw-r--r-- 以-开头,则是普通文件 以d开头,则是目录 以c开头,则是字符流 以s开头,则是socket 以p开头,则是管道文件 以l开头,则是连接文件 以b开头,则是设备文件 创建 a,a.txt,a.ext 除了名字不一样,它的类型是一样的 但也不一定,比如压缩的后缀名就不一样 比如 .html .jsp .php 比如 .sh 是shell脚本 文件名避免特殊字符开头 如果以.开头,表示是隐藏文件 隐藏文件用 ls -a 显示出来 用户与用户组 -rw-r--r-- 1 root root 108 12-09 00:50 aaaa -文件类型 然后3位一看 rw-文件所有者的权限 r--用户组的权限 r--其他用户的权限 1 有多少个文件链接到此节点 root 当前文件所有者的名字 root 当前文件所属的用户组 108 文件大小 默认 byte 12-09 00:50 最后修改时间 aaaa 文件名 但权限限制对root不起作用 root下 使aaa有“组写”功能chomd g+w aaaa 使aaa取消“别组读”功能 chomd o-r aaaa 文件与目录的管理 删除目录下的全部文件 rm -rf * 创建目录a mkdir a 递归创建目录 mkdir b/c/d -p 删除目录a下的b/c/d rm b/c/d -p(此文件中必须没有文件) ~ 家目录 cd - 回到上一次所在的目录 别名:lias ll='ls -l' 别名 把'ls -l' 别名成 ll which ll alias ll='ls -l --color=tty' /bin/ls 取消别名: unalias ll 在系统开机或者新开会话的时候就要加载: vim ~/.bash_profile echo "hello mahongmin" (没能成功) alias ll='ls -l' 复制 删除 移动 创建或修改 cp mv rm touch 如果一个a文件夹下有文件,那么用cp是不能拷贝的 得用 cp a -r ./b(./b表示当前目录的b) -r表示连文件夹下的文件一起拷贝 cp默认为 cp -i(覆盖则提示) 因为系统做了别名 alias cp='cp -i' 如果不想要cp提示的话 可 /bin/cp a/1.txt b/1.txt rmdir 是不能删除非空目录的 rm b/ -r 递归删除,可删除所有 -f 删除而不提示 十大危险命令 rm -rf / 把根目录删除而不提示 查阅 cat tac less head tail cat 文件名 可把找到的文件打印打终端 tac 文件名 和上面一样,不过文本倒叙 more 文件名 可往后翻页查看 less 文件名 可往上,往后翻页 head 文件名 -3 显示前3行,默认10行 tail 文件名 和上面相反 tail -f 文件名 监测文件,一旦此文件有写入,则显示 第八课 文件与目录权限 rw- r-- r-- 作用到文件 r 可以读 w 可以修改,但不能删除 x 可以被执行 作用到目录 r 可以读 ls查看目录内的文件 w 可以在目录内创建文件,删除文件,以及对目录重命名 x 可以进入这个目录 cd 用户 用户组 创建用户 useradd 用户名 修改用户密码 passwd 用户名 查看用户 id 用户名 id test1 uid=503(test1) gid=503(test1) groups=503(test1) test1默认在test1用户组 创建aaa用户组 groupadd aaa 改变test1到aaa组 usermod -g aaa test1 直接创建test3到 aaa组 useradd -g aaa test3 passwd test3 使某文件具有“组可写” chmod g+w 文件名 使别的组不能读某文件 chmod o-r 文件名 使test目录权限齐全rwxrwxrwx chmod 777 test 700 只能自己用户rwx 707 自己和别的组能rwx 删除一个文件,是看此文件所在文件夹的最后一个权限是不是x 不过,即使是x,也不一定能删除,比如下面举例 rm -rf TT 先进入 TT,然后把里面的东西删掉,然后退出,然后在删TT 如果进不了TT,那么必然删不掉TT ls 一个文件夹时,此文件夹对应当前用户权限必须为r--(可读) 当要进入一个文件夹时,此文件夹对应当前用户权限必须为--x(可执行) 当在一个文件夹中创建文件时,此文件夹对应的当前用户必须权限必须为-w-(可写) 第九课 文件属性操作命令 chown 改变用户 chgrp 改变组 chmod 改变权限 chgrp bbb(组名) aaa(文件名) 此命令并不改变aaa里面文件的组 重要参数 -R 加了 -R 后,里面所有的文件的组都改为bbb chown (重要参数 -R) 用chown也能代替 chgrp 把TT的用户变成a2 chown a2(用户名) TT(文件名) 把TT的用户组变成aaa chown .aaa(组名) TT(文件名) 也可以 chown :aaa(组名) TT(文件名) 把aaa文件变成 a2用户,且为aaa组 chown a2.aaa(用户.组名) aaa(文件名) 也可以 chown a2:aaa(用户.组名) aaa(文件名) 用户 组 其他 u g o 使当前用户对file1有执行权限 chmod u+x file1 取消权限用 u-x 所有的位置都加x a为 all的意思 chmod a+x file1 等同于 chmod +x file1(a可以不写) other位加wx然后再减r chmod o+wx-r file1 也可以直接设置o的权限 chmod o=rwx file1 要操作多个位置,中间用逗号隔开 chmod g+w,o-wx file1 r:4 w:2 x:1 加起来是7 权限全加: chmod 777 file1 写出权限 r-x-w--wx chmod 523 file1 刚创建的新文件为什么是644? 是因为和系统内的一个值有关系 umask 出来 022 这样创建的文件夹则是 777-022 创建的文件则是666-022 755表示 drwxr-xr-x 644表示 -rw-r--r-- umask -S(大写) 出来 u=rwx,g=rx,0=rx 可改 umask 222 这样创建出来的文件就为 444 给一个公司的3个部门 tech hr manager tech只能访问修改自己,hr只能访问修改自己。manager能访问自己 也能访问tech,hr,但只能访问,不能修改 tech组有t1和t2 hr组有h1和h2 manager组有m1 三个文件夹 tech,hr,manager 把三个文件夹的权限一起改 chmod 770 hr/ manager/ tech/ -rw-r--r-- 1 root root 108 12-09 00:50 aaaa tech文件夹 drwxrwx--- root tech hr文件夹 drwxrwx--- root hr 这个时候只能访问自己组里文件夹 但 1、经理如何访问这两个文件夹?(先不管) 2、t1,t2在tech中创建文件,只能自己删除,同组的人不能删除,只能访问 文件的特殊权限 Suid Sgid sticky 获取权限流程 root --> user --> group -->other Suid 限制:只能放到二进制的可执行程序上,放到目录上无效 功能:无论谁执行,Linux都以程序的拥有者身份进入权限获取流程 ls /usr/bin/passwd -rwsr-xr-x l root root 22960 2006-07-17 passwd 注意这个user权限不同与别的 别的是rwx,它是rws 表示无论谁去执行这个程序,都将获取这个文件拥有者所有的权限 chmod u-s passwd 这样执行后,passwd只有 -rwxr-xr-x了,而不在有-rwsr-xr-x Sgid 限制:作用到二进制和目录 功能:作用到二进制,与suid类似, 如果作用到目录上,默认用户建立文件文件的所属组是用户的主组 如果在sgid目录下创建文件,则文件的所属组是继承目录的属组, 新建立的目录页集成g+s的权限 !$ 表示上一次命令的最后一个位置 chmod g+s 文件夹 sgid 需要再看一遍 sticky(冒前位) 限制:只能作用到目录上 功能:任何人都可以在目录下建立文件,只有root和建立者删除文件 chmod o+t 文件夹 此文件夹权限为 drwxrwx--- 这样执行后,文件夹的other权限最后一位是T 这样同组的人就不能删除此文件夹里的文件了 -rwsr-xr-x 此时的s如果是小写的,那么表示s的位置上是有x的 如果S是大写的,那么表示S的位置上市没有x的 T也一样 chmod 755的权限 如果要加Suid 则为 chmod 4755 file(二进制) 如果要加Sgid 则为 chmod 2755 file/dir 如果要加sticky,则是 chmod 1755 dir ACL权限设置 access control list(访问控制列表) setacl getacl man setfacl 可仔细看下setfacl的用法 给techacl创建acl列表 testacl 的权限为 -rw-r--r-- u:用户:权限 文件夹 setfacl -m u:t1:rw testacl 执行后 testacl 的权限为 -rw-rw-r--+ 多了个“+”表示多了个特殊权限 可用 getfacl testacl来查看加了哪些特殊权限 #file: testacl #owner: root #group: root user::rw- user:t1:rw- group::r-- mask::rw- other::r-- 如果给一个文件加上 setfacl -m u:hl:rwx testacl 执行后,mask::rwx 本来是rw-的,现在变成rwx了 再次输入 setfacl -m m:rw testacl 执行后getfacl 就会出现user:tl:rwx #effective:rw-(表示有效权限为rw) setfacl -m g:manager:rx hr/ tech/ (manager组对hr/tech有读和进入的权限)
Linux 初级命令(oracle DBA 所需)
猜你喜欢
转载自hongmin118.iteye.com/blog/897241
今日推荐
周排行