Linux常用命令

linux的命令操作

1、日常操作命令

**查看当前所在的工作目录
pwd

**查看当前系统的时间
date

**查看有谁在线(哪些人登陆到了服务器)
who 查看当前在线
last 查看最近的登陆历史记录

2、文件系统操作
**
ls / 查看根目录下的子节点(文件夹和文件)信息
ls -al -a是显示隐藏文件 -l是以更详细的列表形式显示

**切换目录
cd /home

**创建文件夹
mkdir aaa 这是相对路径的写法
mkdir -p aaa/bbb/ccc
mkdir /data 这是绝对路径的写法

**删除文件夹
rmdir 可以删除空目录
rm -r aaa 可以把aaa整个文件夹及其中的所有子节点全部删除
rm -rf aaa 强制删除aaa

**修改文件夹名称
mv aaa angelababy

**创建文件
touch somefile.1 创建一个空文件
echo "i miss you,my baby" > somefile.2 利用重定向“>”的功能,将一条指令的输出结果写入到一个文件中,会覆盖原文件内容
echo "huangxiaoming ,gun dan" >> somefile.2 将一条指令的输出结果追加到一个文件中,不会覆盖原文件内容

用vi文本编辑器来编辑生成文件
******最基本用法
vi somefile.4
1、首先会进入“一般模式”,此模式只接受各种快捷键,不能编辑文件内容
2、按i键,就会从一般模式进入编辑模式,此模式下,敲入的都是文件内容
3、编辑完成之后,按Esc键退出编辑模式,回到一般模式;
4、再按:,进入“底行命令模式”,输入wq命令,回车即可

******一些常用快捷键
一些有用的快捷键(在一般模式下使用):
a 在光标后一位开始插入
A 在该行的最后插入
I 在该行的最前面插入
gg 直接跳到文件的首行
G 直接跳到文件的末行
dd 删除行,如果 5dd ,则一次性删除光标后的5行
yy 复制当前行, 复制多行,则 3yy,则复制当前行附近的3行
p 粘贴
v 进入字符选择模式,选择完成后,按y复制,按p粘贴
ctrl+v 进入块选择模式,选择完成后,按y复制,按p粘贴
shift+v 进入行选择模式,选择完成后,按y复制,按p粘贴

查找并替换(在底行命令模式中输入)
%s/sad/88888888888888 效果:查找文件中所有sad,替换为88888888888888
/you 效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个)

3、文件权限的操作

****linux文件权限的描述格式解读
drwxr-xr-x (也可以用二进制表示 111 101 101 --> 755)

d:标识节点类型(d:文件夹 -:文件 l:链接)
r:可读 w:可写 x:可执行
第一组rwx: 表示这个文件的拥有者对它的权限:可读可写可执行
第二组r-x: 表示这个文件的所属组对它的权限:可读,不可写,可执行
第三组r-x: 表示这个文件的其他用户(相对于上面两类用户)对它的权限:可读,不可写,可执行

****修改文件权限
chmod g-rw haha.dat 表示将haha.dat对所属组的rw权限取消
chmod o-rw haha.dat 表示将haha.dat对其他人的rw权限取消
chmod u+x haha.dat 表示将haha.dat对所属用户的权限增加x

也可以用数字的方式来修改权限
chmod 664 haha.dat
就会修改成 rw-rw-r--

如果要将一个文件夹的所有内容权限统一修改,则可以-R参数
chmod -R 770 aaa/
chown angela:angela aaa/ <只有root能执行>

目录没有执行权限的时候普通用户不能进入
文件只有读写权限的时候普通用户是可以删除的(删除文件不是修改它,是操作父及目录),只要父级目录有执行和修改的权限

4、基本的用户管理

*****添加用户
useradd angela
要修改密码才能登陆
passwd angela 按提示输入密码即可

**为用户配置sudo权限
用root编辑 vi /etc/sudoers
在文件的如下位置,为hadoop添加一行即可
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL

然后,hadoop用户就可以用sudo来执行系统级别的指令
[hadoop@shizhan ~]$ sudo useradd huangxiaoming

5、系统管理操作
*****查看主机名
hostname
****修改主机名(重启后无效)
hostname hadoop

*****修改主机名(重启后永久生效)
vi /ect/sysconfig/network
****修改IP(重启后无效)
ifconfig eth0 192.168.12.22

****修改IP(重启后永久生效)
vi /etc/sysconfig/network-scripts/ifcfg-eth0

mount **** 挂载外部存储设备到文件系统中
mkdir /mnt/cdrom 创建一个目录,用来挂载
mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/ 将设备/dev/cdrom挂载到 挂载点 : /mnt/cdrom中

*****umount
umount /mnt/cdrom

*****统计文件或文件夹的大小
du -sh /mnt/cdrom/Packages
df -h 查看磁盘的空间
****关机
halt
****重启
reboot

******配置主机之间的免密ssh登陆
假如 A 要登陆 B
在A上操作:
首先生成密钥对
ssh-keygen (提示时,直接回车即可)
再将A自己的公钥拷贝并追加到B的授权列表文件authorized_keys中
ssh-copy-id B

crontab定时器

基本格式 :
        *  command

分  时  日  月  周  命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时0~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
crontab文件的一些例子:
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启apache。
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启apache。

  • */1 * * * /usr/local/etc/rc.d/lighttpd restart
    每一小时重启apache
  • 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
    晚上11点到早上7点之间,每隔一小时重启apache
    0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
    每月的4号与每周一到周三的11点重启apache
    0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
    一月一号的4点重启apache
    名称 : crontab
    使用权限 : 所有使用者
    使用方式 :
    crontab file [-u user]-用指定的文件替代目前的crontab。
    crontab-[-u user]-用标准输入替代目前的crontab.
    crontab-1[user]-列出用户目前的crontab.
    crontab-e[user]-编辑用户目前的crontab.
    crontab-d[user]-删除用户目前的crontab.
    crontab-c dir- 指定crontab的目录。
    crontab文件的格式:M H D m d cmd.
    M: 分钟(0-59)。
    H:小时(0-23)。
    D:天(1-31)。
    m: 月(1-12)。
    d: 一星期内的天(0~6,0为星期天)。
    cmd要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量
    说明 :
    crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。-u user 是指设定指定
    user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设
    定自己的时程表。
    参数 :
    crontab -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数
    来指定使用那个文字编辑器(比如说 setenv VISUAL joe)
    crontab -r : 删除目前的时程表
    crontab -l : 列出目前的时程表
    crontab file [-u user]-用指定的文件替代目前的crontab。
    时程表的格式如下 :
    f1 f2 f3 f4 f5 program
    其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执
    行的程序。
    当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推
    当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推
    当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推
    当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其馀类推
    使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。
    例子 :

每天早上7点执行一次 /bin/ls :

0 7 * * * /bin/ls
在 12 月内, 每天的早上 6 点到 12 点中,每隔3个小时执行一次 /usr/bin/backup :
0 6-12/3 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信给 alex@domain.name :
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata
每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....执行 echo "haha"
20 0-23/2 * * * echo "haha"
注意 :
当程序在你所指定的时间执行后,系统会寄一封信给你,显示该程序执行的内容,若是你不希望收到这样的信,请在每一行空一格之
后加上 > /dev/null 2>&1 即可
例子2 :

每天早上6点10分

10 6 * * * date

每两个小时

0 */2 * * * date

晚上11点到早上8点之间每两个小时,早上8点

0 23-7/2,8 * * * date

每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点

0 11 4 * mon-wed date

1月份日早上4点

0 4 1 jan * date
范例
$crontab -l 列出用户目前的crontab.

私有yum仓库的安装配置

1、本地yum仓库的安装配置
两种方式: a、每一台机器都配一个本地文件系统上的yum仓库 file:///packege/path/
b、在局域网内部配置一台节点(server-base)的本地文件系统yum仓库,然后将其发布到web服务器中,
其他节点就可以通过http://server-base/pagekege/path/

        制作流程:  先挑选一台机器mini4,挂载一个系统光盘到本地目录/mnt/cdrom,
        然后启动一个httpd服务器,将/mnt/cdrom 软连接到httpd服务器的/var/www/html目录中 
        (cd /var/www/html; ln -s /mnt/cdrom ./centos )
        然后通过网页访问测试一下:  http://mini4/centos   会看到光盘的目录内容
        至此:网络版yum私有仓库已经建立完毕  
        剩下就是去各台yum的客户端配置这个http地址到repo配置文件中

无论哪种配置,都需要先将光盘挂在到本地文件目录中
mount -t iso9660 /dev/cdrom /mnt/cdrom
为了避免每次重启后都要手动mount,可以在/etc/fstab中加入一行挂载配置,即可自动挂载
vi /etc/fstab
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0

2、minimal安装的系统出现的问题:缺各种命令,安装软件时缺各种依赖

scp命令都没有:yum install -y openssh-clients
每台机器上都要安装才行

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,723评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,485评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,998评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,323评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,355评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,079评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,389评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,019评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,519评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,971评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,100评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,738评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,293评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,289评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,517评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,547评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,834评论 2 345

推荐阅读更多精彩内容