Команды Linux для начинающих | Losst
Если вы только перешли на Linux с Windows, то, наверное, хотите пользоваться только графическим интерфейсом, а о возможностях терминала даже не вспоминать. Тем не менее, если вы захотите залезть вглубь системы и настроить что-либо чего нет в графическом интерфейсе, то вам понадобиться терминал. Ещё терминал нужен если вы собираетесь администрировать Linux сервер, где нет графического интерфейса.
Во многих случаях терминал намного удобнее по сравнению с графическим интерфейсом. Если вы помните нужные команды и их параметры, то будете работать с терминалом намного быстрее чем с графическим интерфейсом. В этой статье я собрал несколько команд Linux, которые в первую очередь понадобятся начинающим.
Содержание статьи:
1. ls
Самое первое что вам понадобиться после открытия терминала на сервере — это сориентироваться в файловой системе. Для того чтобы посмотреть содержимое папки можно использовать команду ls.
ls -l
Но вы можете передать путь к нужной папке:
ls -l /etc
Можно сказать, что это аналог команды dir и Windows. Но вам не обязательно всегда использовать ls, чтобы посмотреть какие файлы есть в папке. Когда вы набираете путь к файлу или папке, то можете нажать Tab и командная оболочка выведет все возможные варианты пути:
Подробнее про команду ls читайте здесь.
2. cd
Команда cd не менее важная, потому что она позволяет менять текущую папку. Благодаря этому вы можете не набирать каждый раз длинный путь к папке, а работать непосредственно в ней. Например, чтобы перейти в папку /etc/ выполните:
cd /etc/
Чтобы перейти в папку уровнем выше используйте путь ../:
cd ../
А чтобы вернуться в предыдущую папку, используйте дефис:
cd -
3. sudo
В Linux очень строгая система управления полномочиями и чтобы настроить что-то что касается всей системы, например, создать папку в корневом каталоге или смонтировать диск, вам придется иметь права суперпользователя. Для этого и нужна команда sudo. Она позволяет выполнять другие команды от имени суперпользователя.
sudo mkdir /mnt/mountpoint
С этой командой будьте очень осторожными, потому что она выполняется от имени суперпользователя и вы можете повредить свою систему если не знаете что делаете. Подробнее про sudo читайте тут.
4. Пакетный менеджер
С помощью пакетного менеджера вы можете и будете устанавливать программы в своем дистрибутиве. Обычно в Linux программы устанавливаются не из интернета, а с помощью пакетного менеджера из репозиториев дистрибутива это быстрее, надежнее и безопаснее в плане вирусов. Именно пакетный менеджер чаще всего вы будете запускать с утилитой sudo, если вы новичок. Пакетный менеджер умеет не только устанавливать программы, но и ставить все библиотеки, необходимые программе, а также обновлять программу при необходимости.
У каждого дистрибутива пакетный менеджер свой. Например, в Ubuntu, Debian и Linux Mint используется пакетный менеджер APT. Я писал про APT отдельную статью Как пользоваться apt. Если это ваш пакетный менеджер, посмотрите её. В дистрибутивах, основанных на Fedora и Red Hat Enterprice Linux используется пакетный менеджер yum или dnf. Это практически одно и то же. Почитать про YUM можно в статье Установка пакетов в CentOS. В OpenSUSE тоже используется формат пакетов RPM, однако здесь применяется свой пакетный менеджер под названием zypper. В ArchLinux применяется пакетный менеджер Pacman. Кроме того, существуют универсальные пакетные менеджеры, такие как Snap и Flatpack.
Какой бы дистрибутив вы не использовали вам обязательно надо разобраться со своим пакетным менеджером.
Например в Ubuntu сначала надо обновить списки пакетов:
sudo apt update
Затем можно установить нужный пакет, например gimp:
sudo apt install gimp
И удалить его:
sudo apt remove gimp
5. man
Невозможно запомнить синтаксис и опции абсолютно всех команд Linux и не всегда удобно искать информацию об этом в сети. В Linux есть обширная справка, в которой вы можете найти информацию практически о любой команде, которой, возможно, даже нет в сети Интернет. Для поиска информации о команде, например ls просто выполните в терминале:
man ls
Затем листайте вывод с помощью мыши или стрелок вверх и вниз. Чтобы выйти из окна справки нажмите кнопку q
Выводы
Есть еще очень много команд, которые вы можете выполнять в терминале Linux чтобы более эффективно управлять своей системой. По мере того, как вы будете узнавать новые команды, пользоваться терминалом будет легче. В современных системах вы можете сделать вообще все с помощью графического интерфейса, но терминал по-прежнему остается самым быстрым и эффективным способом.
Консольные команды имеют много преимуществ, например, когда программа работает не так, как нужно, то в терминал выводятся сообщение об ошибках. В сегодняшней статье мы рассмотрели команды Linux для начинающих, если вы начали пользоваться Linux, то обязательно изучите терминал.
Оцените статью:
Загрузка…
Команда |
Описание |
|
Системная информация |
||
arch |
отобразить архитектуру компьютера |
|
uname -m |
||
uname -r |
отобразить используемую версию ядра |
|
dmidecode -q |
показать аппаратные системные компоненты — (SMBIOS / DMI) |
|
hdparm -i /dev/hda |
вывести характеристики жесткого диска |
|
hdparm -tT /dev/sda |
протестировать производительность чтения данных с жесткого диска |
|
cat /proc/cpuinfo |
отобразить информацию о процессоре |
|
|
показать прерывания |
|
cat /proc/meminfo |
проверить использование памяти |
|
cat /proc/swaps |
показать файл(ы) подкачки |
|
cat /proc/version |
вывести версию ядра |
|
cat /proc/net/dev |
показать сетевые интерфейсы и статистику по ним |
|
cat /proc/mounts |
отобразить смонтированные файловые системы |
|
lspci -tv |
показать в виде дерева PCI устройства |
|
lsusb -tv |
показать в виде дерева USB устройства |
|
date |
вывести системную дату |
|
cal 2007 |
вывести таблицу-календарь 2007-го года |
|
date 041217002007. 00 |
установить системные дату и время ММДДЧЧммГГГГ.СС (МесяцДеньЧасМинутыГод.Секунды) |
|
clock -w |
сохранить системное время в BIOS |
|
Остановка системы |
||
shutdown -h now |
Остановить систему |
|
init 0 |
||
telinit 0 |
||
shutdown -h hours:minutes & |
запланировать остановку системы на указанное время |
|
shutdown -c |
отменить запланированную по расписанию остановку системы |
|
shutdown -r now |
перегрузить систему |
|
reboot |
||
logout |
выйти из системы |
|
Файлы и директории |
||
cd /home |
перейти в директорию ‘/home’ |
|
cd . . |
перейти в директорию уровнем выше |
|
cd ../.. |
перейти в директорию двумя уровнями выше |
|
cd |
перейти в домашнюю директорию |
|
cd ~user |
перейти в домашнюю директорию пользователя user |
|
cd — |
перейти в директорию, в которой находились до перехода в текущую директорию |
|
pwd |
показать текущюю директорию |
|
ls |
отобразить содержимое текущей директории |
|
ls -F |
отобразить содержимое текущей директории с добавлением к именам символов, храктеризующих тип |
|
ls -l |
показать детализированое представление файлов и директорий в текущей директории |
|
ls -a |
показать скрытые файлы и директории в текущей директории |
|
ls *[0-9]* |
показать файлы и директории содержащие в имени цифры |
|
tree |
показать дерево файлов и директорий, начиная от корня (/) |
|
lstree |
||
mkdir dir1 |
создать директорию с именем ‘dir1’ |
|
mkdir dir1 dir2 |
создать две директории одновременно |
|
mkdir -p /tmp/dir1/dir2 |
создать дерево директорий |
|
rm -f file1 |
удалить файл с именем ‘file1’ |
|
rmdir dir1 |
удалить директорию с именем ‘dir1’ |
|
rm -rf dir1 |
удалить директорию с именем ‘dir1’ и рекурсивно всё её содержимое |
|
rm -rf dir1 dir2 |
удалить две директории и рекурсивно их содержимое |
|
mv dir1 new_dir |
переименовать или переместить файл или директорию |
|
cp file1 file2 |
сопировать файл file1 в файл file2 |
|
cp dir/* . |
копировать все файлы директории dir в текущую директорию |
|
cp -a /tmp/dir1 . |
копировать директорию dir1 со всем содержимым в текущую директорию |
|
cp -a dir1 dir2 |
копировать директорию dir1 в директорию dir2 |
|
ln -s file1 lnk1 |
создать символическую ссылку на файл или директорию |
|
ln file1 lnk1 |
создать «жёсткую» (физическую) ссылку на файл или директорию |
|
touch -t 0712250000 fileditest |
модифицировать дату и время создания файла, при его отсутствии, создать файл с указанными датой и временем (YYMMDDhhmm) |
|
Поиск файлов |
||
find / -name file1 |
найти файлы и директории с именем file1. Поиск начать с корня (/) |
|
find / -user user1 |
найти файл и директорию принадлежащие пользователю user1. Поиск начать с корня (/) |
|
find /home/user1 -name «*.bin» |
Найти все файлы и директории, имена которых оканчиваются на ‘. bin’. Поиск начать с ‘/ home/user1’ |
|
find /usr/bin -type f -atime +100 |
найти все файлы в ‘/usr/bin’, время последнего обращения к которым более 100 дней |
|
find /usr/bin -type f -mtime -10 |
найти все файлы в ‘/usr/bin’, созданные или изменённые в течении последних 10 дней |
|
find / -name *.rpm -exec chmod 755 ‘{}’ ; |
найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, и изменить права доступа к ним |
|
find / -xdev -name «*.rpm» |
найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, игнорируя съёмные носители, такие как cdrom, floppy и т.п. |
|
locate «*.ps» |
найти все файлы, сожержащие в имени ‘.ps’. Предварительно рекомендуется выполнить команду ‘updatedb’ |
|
whereis halt |
показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к файлу ‘halt’ |
|
which halt |
отображает полный путь к файлу ‘halt’ |
|
Монтирование файловых систем |
||
mount /dev/hda2 /mnt/hda2 |
монтирует раздел ‘hda2’ в точку монтирования ‘/mnt/hda2’. Убедитесь в наличии директории-точки монтирования ‘/mnt/hda2’ |
|
umount /dev/hda2 |
размонтирует раздел ‘hda2’. Перед выполнением, покиньте ‘/mnt/hda2’ |
|
fuser -km /mnt/hda2 |
принудительное размонтирование раздела. Применяется в случае, когда раздел занят каким-либо пользователем |
|
umount -n /mnt/hda2 |
выполнить размонитрование без занесения информации в /etc/mtab. Полезно когда файл имеет атрибуты «только чтение» или недостаточно места на диске |
|
mount /dev/fd0 /mnt/floppy |
монтировать флоппи-диск |
|
mount /dev/cdrom /mnt/cdrom |
монтировать CD или DVD |
|
mount /dev/hdc /mnt/cdrecorder |
монтировать CD-R/CD-RW или DVD-R/DVD-RW(+-) |
|
mount -o loop file.iso /mnt/cdrom |
смонтировать ISO-образ |
|
mount -t vfat /dev/hda5 /mnt/hda5 |
монтировать файловую систему Windows FAT32 |
|
mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share |
монтировать сетевую файловую систему Windows (SMB/CIFS) |
|
mount -o bind /home/user/prg /var/ftp/user |
«монтирует» директорию в директорию (binding). Доступна с версии ядра 2.4.0. Полезна, например, для предоставления содержимого пользовательской директории через ftp при работе ftp-сервера в «песочнице» (chroot), когда симлинки сделать невозможно. |
|
Дисковое пространство |
||
df -h |
отображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства (Прим.переводчика. ключ -h работает не во всех *nix системах) |
|
ls -lSr |more |
выдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера и позволяет осуществлять постраничный просмотр |
|
du -sh dir1 |
подсчитывает и выводит размер, занимаемый директорией ‘dir1’ (Прим.переводчика. ключ -h работает не во всех *nix системах) |
|
du -sk * | sort -rn |
отображает размер и имена файлов и директорий, с соритровкой по размеру |
|
rpm -q -a —qf ‘%10{SIZE}t%{NAME}n’ |sort -k1,1n |
показывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру (fedora, redhat и т.п.) |
|
dpkg-query -W -f=’${Installed-Size;10}t${Package}n’ | sort -k1,1n |
показывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.) |
|
Пользователи и группы |
||
groupadd group_name |
создать новую группу с именем group_name |
|
groupdel group_name |
удалить группу group_name |
|
groupmod -n new_group_name old_group_name |
переименовать группу old_group_name в new_group_name |
|
useradd -c «Nome Cognome» -g admin -d /home/user1 -s /bin/bash user1 |
создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell’а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognome |
|
useradd user1 |
создать пользователя user1 |
|
userdel -r user1 |
удалить пользователя user1 и его домашний каталог |
|
usermod -c «User FTP» -g system -d /ftp/user1 -s /bin/nologin user1 |
изменить атрибуты пользователя |
|
passwd |
сменить пароль |
|
passwd user1 |
сменить пароль пользователя user1 (только root) |
|
chage -E 2005-12-31 user1 |
установить дату окончания действия учётной записи пользователя user1 |
|
pwck |
проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow |
|
grpck |
проверяет корректность системных файлов учётных записей. Проверяется файл/etc/group |
|
newgrp [-] group_name |
изменяет первичную группу текущего пользователя. Если указать «-«, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd |
|
Выставление/изменение полномочий на файлы |
||
ls -lh |
просмотр полномочий на файлы и директории в текущей директории |
|
ls /tmp | pr -T5 -W$COLUMNS |
вывести содержимое директории /tmp и разделить вывод на пять колонок |
|
chmod ugo+rwx directory1 |
добавить полномочия на директорию directory1 ugo(User Group Other)+rwx(Read Write eXecute) — всем полные права. Аналогичное можно сделать таким образом «chmod 777 directory1» |
|
chmod go-rwx directory1 |
отобрать у группы и всех остальных все полномочия на директорию directory1. |
|
chown user1 file1 |
назначить владельцем файла file1 пользователя user1 |
|
chown -R user1 directory1 |
назначить рекурсивно владельцем директории directory1 пользователя user1 |
|
chgrp group1 file1 |
сменить группу-владельца файла file1 на group1 |
|
chown user1:group1 file1 |
сменить владельца и группу владельца файла file1 |
|
find / -perm -u+s |
найти, начиная от корня, все файлы с выставленным SUID |
|
chmod u+s /bin/binary_file |
назначить SUID-бит файлу /bin/binary_file. Это даёт возможность любому пользователю запускать на выполнение файл с полномочиями владельца файла. |
|
chmod u-s /bin/binary_file |
снять SUID-бит с файла /bin/binary_file. |
|
chmod g+s /home/public |
назначить SGID-бит директории /home/public. |
|
chmod g-s /home/public |
снять SGID-бит с директории /home/public. |
|
chmod o+t /home/public |
назначить STIKY-бит директории /home/public. Позволяет удалять файлы только владельцам |
|
chmod o-t /home/public |
снять STIKY-бит с директории /home/public |
|
Специальные атрибуты файлов |
||
chattr +a file1 |
позволить открывать файл на запись только в режиме добавления |
|
chattr +c file1 |
позволяет ядру автоматически сжимать/разжимать содержимое файла. |
|
chattr +d file1 |
указавет утилите dump игнорировать данный файл во время выполнения backup’а |
|
chattr +i file1 |
делает файл недоступным для любых изменений: редактирование, удаление, перемещение, создание линков на него. |
|
chattr +s file1 |
позволяет сделать удаление файла безопасным, т.е. выставленный атрибут s говорит о том, что при удалении файла, место, занимаемое файлом на диске заполняется нулями, что предотвращяет возможность восстановления данных. |
|
chattr +S file1 |
указывает, что, при сохранении изменений, будет произведена синхронизация, как при выполнении команды sync |
|
chattr +u file1 |
данный атрибут указывает, что при удалении файла содержимое его будет сохранено и при необходимости пользователь сможет его восстановить |
|
lsattr |
показать атрибуты файлов |
|
Архивирование и сжатие файлов |
||
bunzip2 file1.bz2 |
разжимает файл ‘file1.gz’ |
|
gunzip file1.gz |
||
gzip file1 |
сжимает файл ‘file1’ |
|
bzip2 file1 |
||
gzip -9 file1 |
сжать файл file1 с максимальным сжатием |
|
rar a file1.rar test_file |
создать rar-архив ‘file1.rar’ и включить в него файл test_file |
|
rar a file1.rar file1 file2 dir1 |
создать rar-архив ‘file1.rar’ и включить в него file1, file2 и dir1 |
|
unrar x file1.rar |
распаковать rar-архив |
|
tar -cvf archive.tar file1 |
создать tar-архив archive.tar, содержащий файл file1 |
|
tar -cvf archive.tar file1 file2 dir1 |
создать tar-архив archive.tar, содержащий файл file1, file2 и dir1 |
|
tar -tf archive.tar |
показать содержимое архива |
|
tar -xvf archive.tar |
распаковать архив |
|
tar -xvf archive.tar -C /tmp |
распаковать архив в /tmp |
|
tar -cvfj archive.tar.bz2 dir1 |
создать архив и сжать его с помощью bzip2(Прим.переводчика. ключ -j работает не во всех *nix системах) |
|
tar -xvfj archive.tar.bz2 |
разжать архив и распаковать его(Прим.переводчика. ключ -j работает не во всех *nix системах) |
|
tar -cvfz archive.tar.gz dir1 |
создать архив и сжать его с помощью gzip |
|
tar -xvfz archive.tar.gz |
разжать архив и распаковать его |
|
zip file1.zip file1 |
создать сжатый zip-архив |
|
zip -r file1.zip file1 file2 dir1 |
создать сжатый zip-архив и со включением в него нескольких файлов и/или директорий |
|
unzip file1.zip |
разжать и распаковать zip-архив |
|
RPM пакеты (Fedora, Red Hat и тому подобное) |
||
rpm -ivh package.rpm |
установить пакет с выводом сообщений и прогресс-бара |
|
rpm -ivh —nodeps package.rpm |
установить пакет с выводом сообщений и прогресс-бара без контроля зависимостей |
|
rpm -U package.rpm |
обновить пакет без изменений конфигурационных файлов, в случае отсутствия пакета, он будет установлен |
|
rpm -F package.rpm |
обновить пакет только если он установлен |
|
rpm -e package_name.rpm |
удалить пакет |
|
rpm -qa |
отобразить список всех пакетов, установленных в системе |
|
rpm -qa | grep httpd |
среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd» |
|
rpm -qi package_name |
вывести информацию о конкрентном пакете |
|
rpm -qg «System Environment/Daemons» |
отобразить пакеты входящие в группу пакетов |
|
rpm -ql package_name |
вывести список файлов, входящих в пакет |
|
rpm -qc package_name |
вывести список конфигурационных файлов, входящих в пакет |
|
rpm -q package_name —whatrequires |
вывести список пакетов, необходимых для установки конкретного пакета по зависимостям |
|
rpm -q package_name —whatprovides |
show capability provided by a rpm package |
|
rpm -q package_name —scripts |
отобразит скрипты, запускаемые при установке/удалении пакета |
|
rpm -q package_name —changelog |
вывести историю ревизий пакета |
|
rpm -qf /etc/httpd/conf/httpd.conf |
проверить какому пакету принадлежит указанный файл. Указывать следует полный путь и имя файла. |
|
rpm -qp package.rpm -l |
отображает список файлов, входящих в пакет, но ещё не установленных в систему |
|
rpm —import /media/cdrom/RPM-GPG-KEY |
ипортировать публичный ключ цифровой подписи |
|
rpm —checksig package.rpm |
проверит подпись пакета |
|
rpm -qa gpg-pubkey |
проверить целостность установленного содержимого пакета |
|
rpm -V package_name |
проверить размер, полномочия, тип, владельца, группу, MD5-сумму и дату последнего изменеия пакета |
|
rpm -Va |
проверить содержимое всех пакеты установленные в систему. Выполняйте с осторожностью! |
|
rpm -Vp package.rpm |
проверить пакет, который ещё не установлен в систему |
|
rpm2cpio package.rpm | cpio —extract —make-directories *bin* |
извлечь из пакета файлы содержащие в своём имени bin |
|
rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm |
установить пакет, собранный из исходных кодов |
|
rpmbuild —rebuild package_name.src.rpm |
собрать пакет из исходных кодов |
|
YUM — средство обновления пакетов(Fedora, RedHat и тому подобное) |
||
yum install package_name |
закачать и установать пакет |
|
yum update |
обновить все пакеты, установленные в систему |
|
yum update package_name |
обновить пакет |
|
yum remove package_name |
удалить пакет |
|
yum list |
вывести список всех пакетов, установленных в систему |
|
yum search package_name |
найти пакет в репозитории |
|
yum clean packages |
очисть rpm-кэш, удалив закачанные пакеты |
|
yum clean headers |
удалить все заголовки файлов, которые система использует для разрешения зависимостей |
|
yum clean all |
очисть rpm-кэш, удалив закачанные пакеты и заголовки |
|
DEB пакеты (Debian, Ubuntu и тому подобное) |
||
dpkg -i package.deb |
установить / обновить пакет |
|
dpkg -r package_name |
удалить пакет из системы |
|
dpkg -l |
показать все пакеты, установленные в систему |
|
dpkg -l | grep httpd |
среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd» |
|
dpkg -s package_name |
отобразить инфрмацию о конкретном пакете |
|
dpkg -L package_name |
вывести список файлов, входящих в пакет, установленный в систему |
|
dpkg —contents package.deb |
отобразить список файлов, входящих в пакет, который ешё не установлен в систему |
|
dpkg -S /bin/ping |
найти пакет, в который входит указанный файл. |
|
APT — средство управление пакетами (Debian, Ubuntu и тому подобное) |
||
apt-get install package_name |
установить / обновить пакет |
|
apt-cdrom install package_name |
установить / обновить пакет с cdrom’а |
|
apt-get update |
получить обновлённые списки пакетов |
|
apt-get upgrade |
обновить пакеты, установленные в систему |
|
apt-get remove package_name |
удалить пакет, установленный в систему с сохранением файлов конфигурации |
|
apt-get purge package_name |
удалить пакет, установленный в систему с удалением файлов конфигурации |
|
apt-get check |
проверить целостность зависимостей |
|
apt-get clean |
удалить загруженные архивные файлы пакетов |
|
apt-get autoclean |
удалить старые загруженные архивные файлы пакетов |
|
Просмотр содержимого файлов |
||
cat file1 |
вывести содержимое файла file1 на стандартное устройсво вывода |
|
tac file1 |
вывести содержимое файла file1 на стандартное устройсво вывода в обратном порядке (последняя строка становиться первой и т.д.) |
|
more file1 |
постраничный вывод содержимого файла file1 на стандартное устройство вывода |
|
less file1 |
постраничный вывод содержимого файла file1 на стандартное устройство вывода, но с возможностью пролистывания в обе стороны (вверх-вниз), поиска по содержимому и т.п. |
|
head -2 file1 |
вывести первые две строки файла file1 на стандартное устройство вывода. По-умолчанию выводится десять строк |
|
tail -2 file1 |
вывести последние две строки файла file1 на стандартное устройство вывода. По-умолчанию выводится десять строк |
|
tail -f /var/log/messages |
выводить содержимое файла /var/log/messages на стандартное устройство вывода по мере появления в нём текста.$/d’ example.txt |
удалить пустые строки и комментарии из файла example.txt |
echo ‘test’ | tr ‘[:lower:]’ ‘[:upper:]’ |
преобразовать символы из нижнего регистра в верхний |
|
sed -e ‘1d’ result.txt |
удалить первую строку из файла example.txt |
|
sed -n ‘/string1/p’ |
отобразить только строки содержашие «string1» |
|
sed -e ‘s/ *$//’ example.txt |
удалить пустые символы в в конце каждой строки |
|
sed -e ‘s/string1//g’ example.txt |
удалить строку «string1» из текста не изменяя всего остального |
|
sed -n ‘1,8p;5q’ example.txt |
взять из файла с первой по восьмую строки и из них вывести первые пять |
|
sed -n ‘5p;5q’ example.txt |
вывести пятую строку |
|
sed -e ‘s/0*/0/g’ example.txt |
заменить последовательность из любого количества нулей одним нулём |
|
cat -n file1 |
пронумеровать строки при выводе содержимого файла |
|
cat example.txt | awk ‘NR%2==1’ |
при выводе содержимого файла, не выводить чётные строки файла |
|
echo a b c | awk ‘{print $1}’ |
вывести первую колонку. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции |
|
echo a b c | awk ‘{print $1,$3}’ |
вывести первую и треью колонки. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции |
|
paste file1 file2 |
объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m |
|
paste -d ‘+’ file1 file2 |
объединить содержимое file1 и file2 в виде таблицы с разделителем «+» |
|
sort file1 file2 |
отсортировать содержимое двух файлов |
|
sort file1 file2 | uniq |
отсортировать содержимое двух файлов, не отображая повторов |
|
sort file1 file2 | uniq -u |
отсортировать содержимое двух файлов, отображая только уникальные строки (строки, встречающиеся в обоих файлах, не выводятся на стандартное устройство вывода) |
|
sort file1 file2 | uniq -d |
отсортировать содержимое двух файлов, отображая только повторяющиеся строки |
|
comm -1 file1 file2 |
сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file1’ |
|
comm -2 file1 file2 |
сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file2’ |
|
comm -3 file1 file2 |
сравнить содержимое двух файлов, удаляя строки встречающиеся в обоих файлах |
|
Преобразование наборов символов и файловых форматов |
||
dos2unix filedos.txt fileunix.txt |
конвертировать файл текстового формата из MSDOS в UNIX (разница в символах возврата коретки) |
|
unix2dos fileunix.txt filedos.txt |
конвертировать файл текстового формата из UNIX в MSDOS (разница в символах возврата коретки) |
|
recode ..HTML < page.txt > page.html |
конвертировать содержимое тестового файла page.txt в html-файл page.html |
|
recode -l | more |
вывести список доступных форматов |
|
Анализ файловых систем |
||
badblocks -v /dev/hda1 |
проверить раздел hda1 на наличие bad-блоков |
|
fsck /dev/hda1 |
проверить/восстановить целостность linux-файловой системы раздела hda1 |
|
fsck.ext2 /dev/hda1 |
проверить/восстановить целостность файловой системы ext2 раздела hda1 |
|
e2fsck /dev/hda1 |
||
e2fsck -j /dev/hda1 |
проверить/восстановить целостность файловой системы ext3 раздела hda1 с указанием, что журнал расположен там же |
|
fsck.ext3 /dev/hda1 |
проверить/восстановить целостность файловой системы ext3 раздела hda1 |
|
fsck.vfat /dev/hda1 |
проверить/восстановить целостность файловой системы fat раздела hda1 |
|
fsck.msdos /dev/hda1 |
||
dosfsck /dev/hda1 |
||
Форматирование файловых систем |
||
mkfs /dev/hda1 |
создать linux-файловую систему на разделе hda1 |
|
mke2fs /dev/hda1 |
создать файловую систему ext2 на разделе hda1 |
|
mke2fs -j /dev/hda1 |
создать журналирующую файловую систему ext3 на разделе hda1 |
|
mkfs -t vfat 32 -F /dev/hda1 |
создать файловую систему FAT32 на разделе hda1 |
|
fdformat -n /dev/fd0 |
форматирование флоппи-диска без проверки |
|
mkswap /dev/hda3 |
создание swap-пространства на разделе hda3 |
|
swap-пространство |
||
mkswap /dev/hda3 |
создание swap-пространства на разделе hda3 |
|
swapon /dev/hda3 |
активировать swap-пространство, расположенное на разделе hda3 |
|
swapon /dev/hda2 /dev/hdb3 |
активировать swap-пространства, расположенные на разделах hda2 и hdb3 |
|
Создание резервных копий (backup) |
||
dump -0aj -f /tmp/home0.bak /home |
создать полную резервную копию директории /home в файл /tmp/home0.bak |
|
dump -1aj -f /tmp/home0.bak /home |
создать инкрементальную резервную копию директории /home в файл /tmp/home0.bak |
|
restore -if /tmp/home0.bak |
восстановить из резервной копии /tmp/home0.bak |
|
rsync -rogpav —delete /home /tmp |
синхронизировать /tmp с /home |
|
rsync -rogpav -e ssh —delete /home ip_address:/tmp |
синхронизировать через SSH-туннель |
|
rsync -az -e ssh —delete ip_addr:/home/public /home/local |
синхронизировать локальную директорию с удалённой директорией через ssh-туннель со сжатием |
|
rsync -az -e ssh —delete /home/local ip_addr:/home/public |
синхронизировать удалённую директорию с локальной директорией через ssh-туннель со сжатием |
|
dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr ‘dd of=hda.gz’ |
сделать «слепок» локального диска в файл на удалённом компьютере через ssh-туннель |
|
tar -Puf backup.tar /home/user |
создать инкрементальную резервную копию директории ‘/home/user’ в файл backup.tar с сохранением полномочий |
|
( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr ‘cd /home/share/ && tar x -p’ |
копирование содержимого /tmp/local на удалённый компьютер через ssh-туннель в /home/share/ |
|
( tar c /home ) | ssh -C user@ip_addr ‘cd /home/backup-home && tar x -p’ |
копирование содержимого /home на удалённый компьютер ч |
сборник команд для администрирования linux систем
Ниже представлены различные команды системной оболочки Unix подобных операционных систем. Имейте в виду, это просто сборник, не относящийся к какому-то конкретному дистрибутиву, то есть многие из этих команд, специфичны для какой-то определенной системы и могут отсутствовать в других дистрибутивах Linux. Большинство из приведенных ниже команд, являются достаточно повседневными, то есть часто используются в процессе администрирования Unix систем ( различных дистрибутивов Linux ).Корректные: выключение, перезагрузка, выход из системы
- # init 0
- Выключить систему
- # logout
- Завершить текущую сессию
- # reboot
- Перезагрузка
- # shutdown -h now
- Еще один вариант корректного выключения
- # shutdown -h 22:15 &
- Запланировать выключение системы на 22 часа 15 минут
- # shutdown -c
- Отменить запланированное выключения системы
- # shutdown -r now
- Еще один вариант перезагрузки
- # telinit 0
- Тоже способ выключения системы
Получение различной информации о системе
- # arch
- Вывести на экран архитектуру компьютера
- # uname -m
- Так-же выводит архитектуру компьютера
- # cal 2010
- Печатает календарь на 2010 год. Без аргументов выводит календарь на текущий месяц
- # cat /proc/cpuinfo
- Вывести подробную информацию о процессоре
- # cat /proc/interrupts
- Вывести информацию о прерываниях
- # cat /proc/meminfo
- Выводит статистику использования памяти
- # cat /proc/swaps
- Вывести информацию о swap файле(ах) ( файл подкачки )
- # cat /proc/version
- Вывести информацию о версии текущего ядра
- # cat /proc/net/dev
- Вывести информацию и статистику по сетевым устройствам
- # cat /proc/mounts
- Показать смонтированные файловые системы
- # clock -w
- Записать текущую системную дату в BIOS
- # date
- Вывести текущую системную дату и время
- # date 041217002007.00
- Установить дату и время в значение МесяцДеньЧасМинутаГод.Секунда
- # dmidecode -q
- Вывести в читабельном виде информацию по аппаратному оборудованию системы (SMBIOS / DMI)
- # hdparm -i /dev/hda
- Вывести характеристики жесткого диска
- # hdparm -tT /dev/sda
- Измерять скорость чтения данных с жесткого диска
- # lspci -tv
- Вывести список устройств на шине PCI
- # lsusb -tv
- Вывести список устройств на USB шине
- # uname -r
- Вывести версию используемого ядра
Дисковое пространство
- # df -h
- Вывод информации о свободном и занятом дисковом пространстве на смонтированных разделах, в формате, удобном для чтения
- # dpkg-query -W -f=’${Installed-Size;10}t${Package}n’ | sort -k1,1n
- Выводит объем используемого дискового пространства, занятого файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)
- # du -sh dir
- Выводит объем дискового пространства, занимаемый директорией dir
- # du -sk * | sort -rn
- Выводит листинг файлов и директорий с размером, сортируя его по размеру
- # ls -lSr | more
- Выводит листинг файлов и директорий, сортируя по возрастанию размера и перенаправляет его в программу more для постраничного просмотра
- # rpm -q -a —qf ‘%10{SIZE}t%{NAME}n’ | sort -k1,1n
- Выводит объем дискового пространства, занимаемого файлами rpm-пакета, с сортировкой по размеру ( fedora, redhat и т.п. )
Работа с файлами и папками
- # pwd
- Вывести текущую директорию
- # cd /home
- Перейти в директорию /home
- # cd ..
- Перейти в родительский каталог, то есть подняться на уровень выше
- # cd ../..
- Подняться в дереве каталогов на два уровня
- # cd
- Перейти в домашний каталог
- # cd ~user
- Перейти в домашний каталог пользователя user
- # cd —
- Перейти в предыдущую директорию, из которой был сделан переход в текущую директорию
- # cp -a test_1 test_2
- Копировать директорию test_1 в директорию test_2
- # cp file_1 file_2
- Копировать файл file_1 в файл file_2
- # cp -a /tmp/test .
- Rопировать директорию test и все ее содержимое в текущую директорию
- # cp test/* .
- Копировать все файлы содержащиеся в директории test в текущую директорию
- # iconv -l
- Выводит список доступных для использования кодировок
- # iconv -c -f windows-1251 -t utf-8 inputFile > outputFile
- Конвертировать файл из кодировки windows-1251 в кодировку utf-8
- # ln -s /path/to/filedir ./link
- Создать в текущей директории символическую ссылку link на директорию или файл filedir
- # ln /path/to/filedir ./link
- Создать в текущей директории жесткую ссылку link на директорию или файл filedir
- # ls
- Вывести листинг содержимого текущей директории
- # ls -F
- Листинг текущей директории с добавлением к именам символов, обозначающих тип объекта
- # ls -l
- Листинг текущей директории с подробностями по каждому объекту ( права доступа, владелец, группа, дата, размер )
- # ls -a
- Кроме обычных объектов, вывести в листинге, скрытые файлы и директории, текущего каталога
- # ls /tmp | pr -T5 -W$COLUMNS
- Листинг директории /tmp в 5 колонок
- # ls *[0-9]*
- Вывести в листинг файлов и директорий текущего каталога, содержащие в имени цифровые символы
- # lstree
- Листинг иерархии директорий и файлов, начиная с корневого каталога (/)
- # mkdir dir
- Создать в текущем каталоге, директорию с именем dir
- # mkdir dir_1 dir_2
- Создать в текущем каталоге две директории, с именами dir_1 и dir_2
- # mkdir -p /path/to/dir
- Создать иерархию директорий. Кроме самой директории dir будут созданы все промежуточные директории
- # mv filedir new_filedir
- Переместить ( переименовать ) файл или директорию из filedir в new_filedir
- # rm -rf /dir
- Рекурсивно удалить директорию dir и всё её содержимое, без запроса подтверждения на удаление
- # rm -f file
- Удалить файл file, без запроса подтверждения
- # rm -rf /dir_1 /dir_2
- Удалить директории /dir_1 и /dir_2 вместе с содержимым, без запроса подтверждения
- # rmdir /dir
- Удалить директорию /dir
- # tree
- Вывести иерархию директорий и файлов, начиная с корневой (/)
- # touch -t 0712250000 file1
- Изменить дату и время создания файла, если указанный файл не существует, создать его с указанными датой и временем (YYMMDDhhmm)
Поиск нужного файла
- # find / -user vasya
- Найти все директории и файлы принадлежащие пользователю vasya. Поиск будет производиться, начиная с корневой директории (/)
- # find / -name filedir
- Найти директории и файлы с именем filedir. Поиск будет производиться, начиная с корневой директории (/)
- # find /usr/bin -type f -atime +20
- Найти все файлы в директории /usr/bin, время последнего обращения к которым более 20 дней
- # find /usr/bin -type f -mtime -10
- Найти все файлы в директории /usr/bin, которые были созданы или модифицированы в течении последних 10 дней
- # find / -xdev -name \*.rpm
- Искать директории и файлы, имена которых оканчиваются на «.rpm«, но игнорируя съёмные накопители, cdrom, usb и т.п.
- # find . -maxdepth 1 -name *.jpg -print -exec convert
- Найти в текущей директории все файлы с расширением jpg и выполнить для каждого команду convert ( Imagemagick )
- # find /path/to/dir -name \*.c
- Найти все директории и файлы, имена которых оканчиваются на «.с«. Поиск будет производиться, начиная с директории /path/to/dir
- # find / -name *.rpm -exec chmod 755 ‘{}’ \;
- Начиная с корня, найти все фалы и директории, имена которых оканчиваются на «.rpm«, и для каждого изменить права доступа
- # whereis ls
- Вывод полных путей к бинарным файлам, файлом исходных кодов и руководств, имеющих отношение к файлу ls
- # locate \*.ps
- Поиск всех файлов, содержащих в имени «.ps» по специальной базе данных, предварительно сформированной командой updatedb
- # which ls
- Вывести полный путь до файла ls
Монтирование файловых систем
- # mount /dev/hda1 /mnt/disk
- Монтировать устройство /dev/hda1 в папку с именем /mnt/disk. точка монтирования, папка /mnt/disk, должна существовать
- # fuser -km /mnt/hda1
- Размонтировать устройство hda1 если оно заблокировано каким либо процессом
- # mount -o loop file.iso /mnt/cdrom
- Смонтировать фаил или образ ISO в директорию /mnt/cdrom
- # mount /dev/hdb /mnt/cdrecorder
- Монтировать cdrw или dvdrom
- # mount -t vfat /dev/hda5 /mnt/hda5
- Смонтировать раздел с файловой системой FAT32
- # mount /dev/cdrom /mnt/cdrom
- Монтировать cdrom или dvdrom
- # mount /dev/fd0 /mnt/floppy
- Монтировать floppy disk ( дисковод мягких дисков )
- # mount /dev/hdc /mnt/cdrecorder
- Монтировать cdrw или dvdrom
- # mount /dev/sda1 /mnt/usbdisk
- Монтировать USB устройство
- # mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share
- Монтировать сетевую файловую систему Windows (SMB/CIFS)
- # umount -n /mnt/hda2
- Размонтировать без записи в файл /etc/mtab, используется в ситуациях, когда файл находится в режиме только чтение или жесткий диск переполнен
- # umount /dev/hda2
- Размонтировать диск hda2, предварительно неоходимо выйти из точки монтирования /mnt/hda2
Пользователи и группы
- # useradd -c «User Vasya» -g admin -d /home/vasya -s /bin/bash vasya
- Создать пользователя vasya, домашним каталогом будет создана директория /home/vasya, в качестве системной оболочки будет назначен /bin/bash, пользователь будет включен в группу admin, кроме того для учетной записи будет создан комментарий «User Vasya»
- # useradd vasya
- Создать пользователя vasya
- # usermod -c «User FTP» -g system -d /ftp/ftpuser -s /bin/nologin ftpuser
- Изменение пользователя
- # userdel -r vasya
- Удалить пользователя с именем vasya и его домашнюю директорию
- # groupadd [ group_name ]
- Создать группу с именем group_name
- # chage -E 2005-12-31 vasya
- Установить дату окончания действия учётной записи пользователя vasya
- # groupdel [ group_name ]
- Удалить группу group_name
- # groupmod -n test new_test
- Переименовать группу test в new_test
- # newgrp — [group]
- Изменяет основную группу текущего пользователя. При указании «-«, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, основная группа будет назначена из файла /etc/passwd
- # grpck
- Проверка корректности системных файлов учётных записей. Проверяется файл/etc/group
- # pwck
- Проверка корректности системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow
- # passwd
- Изменить пароль текущего пользователя
- # passwd vasya
- Изменить пароль пользователя vasya ( может выполнять только root )
Атрибуты файлов
- # chattr +a file
- Разрешает только добавление данных в файл
- # chattr +d file
- Игнорировать данный файл при создании резервной копии с помощью программы dump
- # chattr +c file
- Разрешить ядру автоматически сжимать/разжимать содержимое файла
- # chattr +i file1
- Защита файла от каких либо изменений или манипуляций: редактирование, перемещение, удаление, создание ссылок на него
- # chattr +S file1
- Определяет, будет-ли при сохранении изменений, произведена синхронизация, как при использовании команды sync
- # chattr +u file1
- При удалении файла с данным атрибутом, его будет сохранено, что-бы оставить пользователю возможность восстановить данные в случае необходимости
- # chattr +s file1
- Позволяет безвозвратное удаление данного файла. При удалении файла с этим атрибутом, место на диске, занимаемое файлом, перезаписывается нулями, после чего файл уже не подлежит восстановлению
- # lsattr
- Листинг файлов с атрибутами
Работа с правами доступа файлов и директорий
- # chown vasya /file
- Назначить пользователя vasya владельцем файла file
- # chown -R vasya directory
- Рекурсивно обойти директорию directory и назначить пользователя vasya владельцем всех вложенных файлов и директорий
- # chown vasya:group /file
- Назначить владельца и группу для файла /file
- # chmod ugo+rwx /directory
- Установить полные права доступа rwx ( Read Write eXecute ) для всех ugo ( User Group Other ) на директорию /directory. То-же самое можно сделать, используя числовой представление chmod 777 directory
- # chmod go-rwx /directory
- Удалить все права на директорию /directory для группы и остальных
- # chgrp new_group file
- Изменить группу-владельца для file на new_group
- # chmod o+t /home/public
- Установить так называемый STIKY-бит на директорию /home/public. Удалить файл в такой директории может только владелец данного файла
- # chmod o-t /home/public
- Удалить STIKY-бит с директории /home/public
- # chmod u+s /bin/binary_file
- Установить SUID-бит на файл /bin/binary_file. Это позволяет любому пользователю системы, запускать данный файл с правами владельца файла
- # chmod u-s /bin/binary_file
- Удалить SUID-бит с файла /bin/binary_file
- # chmod g+s /home/public
- Установить SGID-бит на директории /home/public
- # chmod g-s /home/public
- Удалить SGID-бит с директории /home/public
- # find / -perm -u+s
- Поиск всех файлов с установленным SUID битом, начиная с корня файловой системы
- # ls -lh
- Листинг текущего каталога с правами доступа
Архивация и сжатие файлов
- # gzip -9 file1
- Поместить файл file1 в архив gzip с максимальной степенью сжатия
- # rar a file1.rar file1 file2 dir1
- Создать rar архив file1.rar, заархивировав файлы: file1, file2 и директорию: dir1
- # rar a file1.rar test_file
- Упаковать в rar архив file1.rar файл test_file
- # rar x file.rar
- Разархивировать rar архив file.rar
- # bzip2 file1
- Сжимает файл file1
- # bunzip2 file1.bz2
- Разжимает файл file1.bz2
- # gzip file1
- Сжимает файл file1
- # gunzip file1.gz
- Разжимает файл file1.gz
- # tar -cvf archive.tar file1 file2 dir1
- Создать tar архив archive.tar, упаковав в него файлы file1, file2 и директорию dir1
- # tar -cvf archive.tar file
- Упаковать в tar-архив archive.tar, файл file
- # tar -tf archive.tar
- Вывести содержимое tar архива
- # tar -xvf archive.tar
- Распаковать tar архив
- # tar -xvf archive.tar -C /tmp
- Распаковать архив в /tmp
- # tar -cvfz archive.tar.gz dir1
- Создать tar архив и сжать его с помощью программы gzip
- # tar -xvfz archive.tar.gz
- Разжать tar архив и распаковать его
- # tar -cvfj archive.tar.bz2 dir1
- Создать архив и сжать его с помощью bzip2 ( ключ -j работает не во всех *nix системах )
- # tar -xvfj archive.tar.bz2
- Разжать архив и распаковать его ( ключ -j работает не во всех *nix системах )
- # zip file1.zip file1
- Создать сжатый zip-архив
- # zip -r file1.zip file1 file2 dir1
- Запаковать в архив несколько файлов и/или директорий
- # unzip file1.zip
- Разжать и распаковать zip-архив
- # unrar x file1.rar
- Распаковать rar-архив
Работа с RPM пакетами ( Fedora, Red Hat и им подобные дистрибутивы )
- # rpm -e [ package ]
- Удалить пакет package
- # rpm -qa | grep httpd
- Вывести список установленных в системе пакетов и отобрать, содержащие в своем имени httpd
- # rpm -qa
- Вывести список всех установленных в системе пакетов
- # rpm -qi [ package ]
- Вывести информацию о пакете package
- # rpm -ivh [package.rpm]
- Установить пакет с выводом сообщений и прогресс-бара
- # rpm -U [package.rpm]
- Обновить пакет без изменений конфигурационных файлов, в случае отсутствия пакета, он будет установлен
- # rpm -ivh —nodeeps [package.rpm]
- Установить пакет с выводом сообщений и прогресс-бара без контроля зависимостей
- # rpm -F [package.rpm]
- Обновить пакет только если он установлен
- # rpm -q [package] —whatprovides
- Список предоставляемой функциональности
- # rpm -q [package] —changelog
- Вывести историю ревизий пакета
- # rpm -q [package] —scripts
- Отобразит скрипты, запускаемые при установке/удалении пакета
- # rpm -qf /etc/httpd/conf/httpd.conf
- Проверить какому пакету принадлежит указанный файл. Указывать следует полный путь и имя файла
- # rpm -qg «System Environment/Daemons»
- Отобразить пакеты входящие в группу пакетов ( fedora, redhat )
- # rpm -qc [package]
- Вывести список конфигурационных файлов, входящих в пакет
- # rpm -ql [package]
- Вывести список файлов, входящих в пакет
- # rpm -q [package] —whatrequires
- Вывести список пакетов, необходимых для установки конкретного пакета по зависимостям
- # rpm -qp [package.rpm] -l
- Отображает список файлов, входящих в пакет, но ещё не установленных в систему
- # rpm -Va
- Проверить содержимое всех пакеты установленные в систему. Выполняйте с осторожностью!
- # rpm -ivh /usr/src/redhat/RPMS/`arch`/[package.rpm]
- Установить пакет, собранный из исходных кодов
- # rpm -Vp [package.rpm]
- Проверить пакет, который ещё не установлен в систему
- # rpm2cpio [package.rpm] | cpio —extract —make-directories *bin*
- Извлечь из пакета файлы содержащие в своём имени bin
- # rpm —import /media/cdrom/RPM-GPG-KEY
- Импортировать публичный ключ цифровой подписи
- # rpm —checksig [package.rpm]
- Проверит подпись пакета
- # rpm -qa gpg-pubkey
- Проверить целостность установленного содержимого пакета
- # rpm -V [package]
- Проверить размер, полномочия, тип, владельца, группу, MD5-сумму и дату последнего изменения пакета
- # rpmbuild —rebuild [package.src.rpm]
- Собрать пакет из исходных кодов
Средство управления пакетами — YUM ( Fedora, RedHat и т.д. )
- # yum list
- Вывести листинг пакетов, установленных в системе
- # yum clean headers
- Удалить все заголовки файлов, которые система использует для разрешения зависимостей
- # yum clean [package]
- Очистить rpm-кэш, удалив закачанные пакеты
- # yum search [package]
- Найти пакет в репозитории
- # yum clean all
- Очистить rpm-кэш, удалив закачанные пакеты и заголовки
- # yum -y install [ package ]
- Скачать и установить пакет
- # yum update [package]
- обновить пакет
- # yum -y update
- Обновить все пакеты, установленные в систему
- # yum localinstall [ package.rpm ]
- Попытаться установить пакет RPM и все зависимые от него пакеты, используя ваши репозитории
- # yum remove [package]
- Удалить пакет
Средства управления DEB пакетами ( Debian, Ubuntu и т.д. )
- # dpkg -l
- Список пакетов, установленных в системе
- # dpkg -r [package]
- Удалить пакет из системы
- # dpkg -i [package.deb]
- Установить / обновить пакет
- # dpkg -l | grep httpd
- Вывести список установленных в системе пакетов, отобрав, содержащие в своем названии httpd
- # dpkg -s [package]
- Вывести информацию о конкретном пакете
- # dpkg —contents [package.deb]
- Вывести список файлов, входящих в пакет, который ешё не установлен в систему
- # dpkg -L [package]
- Вывести список файлов, входящих в пакет, установленный в систему
- # dpkg -S /bin/ping
- В какой пакет входит указанный файл.
Система управления пакетами Pacman ( Arch, Frugalware and alike )
- # pacman -S name
- Установить пакет name со всеми зависимостями
- # pacman -R name
- Удалить пакет и все его файлы
Средство управление пакетами — APT ( Debian, Ubuntu и т.д. )
- # apt-cache search [ package ]
- Вывести список пакетов, чье имя совпадает со строкой package
- # apt-get check
- Проверить зависимости
- # apt-cdrom install [ package ]
- Установить / обновить пакет с cdrom’а
- # apt-get install [ package ]
- Установить / обновить пакет
- # apt-get upgrade
- Обновить установленные в систему пакеты
- # apt-get remove [ package ]
- Удалить установленный пакет из системы, сохранив файлы конфигурации
- # apt-get update
- Обновить списки пакетов репозитария
- # apt-get clean
- Удалить загруженные архивные файлы пакетов
Анализ файловой системы
- # badblocks -v /dev/hda1
- Проверить раздел hda1 на наличие bad-блоков
- # fsck /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность linux-файловой системы раздела hda1
- # fsck.ext2 /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность файловой системы ext2 раздела hda1
- # fsck.msdos /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность файловой системы fat раздела hda1
- # fsck.vfat /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность файловой системы fat раздела hda1
- # fsck.ext3 /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность файловой системы ext3 раздела hda1
- # dosfsck /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность файловой системы fat, раздела hda1
- # e2fsck /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность файловой системы ext2 раздела hda1
- # e2fsck -j /dev/hda1
- Проверить и при необходимости попробовать восстановить целостность файловой системы ext3 раздела hda1, журнал файловой системы расположен там же
Просмотр содержимого файлов
- # cat file1
- Вывести все содержимое файла начиная с первой строки
- # head -2 file1
- Отобразить две первые строки файла
- # tac file1
- Отобразить содержимое файла начиная с последней строки
- # tail -f /var/log/messages
- В реальном времени выводить все, что добавляется в файл
- # tail -2 file1
- Вывести две последние строки файла
- # more file1
- Отобразить содержимое файла постранично
- # less file1
- Аналогична команде more но позволяет перемещаться по содержимому вперед и назад
Манипуляции с текстом
- # cat -n file1
- Вывести содержимое файла, нумеруя выводимые строки
- # cat example.Aug /var/log/messages
- Отобрать и вывести строки, начинающиеся с сочетания символов «Aug», из файла /var/log/messages
- # grep Aug /var/log/messages
- Отобрать и вывести строки, содержащие сочетание символов «Aug» из файла /var/log/messages
- # grep Aug -R /var/log/*
- Отобрать и вывести строки, содержащие сочетание символов «Aug», из всех файлов, расположенных в директории /var/log и ниже
- # paste -d ‘+’ file1 file2
- Объединить содержимое file1 и file2 в виде таблицы с разделителем «+»
- # paste file1 file2
- Объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m
- # sdiff file1 file2
- Сравнить содержимое двух файлов
- # sed ‘s/string1/string2/g’ example.txt
- Заменить string1 на string2 в файле example.$/d’ example.txt
- Удалить пустые строки и комментарии из файла example.txt
- # sed -e ‘1d’ exampe.txt
- Удалить первую строку из файла example.txt
- # sed -n ‘/string1/p’
- Отобразить только строки содержащие string1
- # sed -e ‘s/string//g’ example.txt
- Удалить строку string1 из текста файла example.txt не изменяя всего остального
- # sed -e ‘s/ *$//’ example.txt
- Удалить пустые символы в конце каждой строки файла example.txt
- # sed -n ‘5p;5q’ example.txt
- Вывести пятую строку
- # sed -n ‘2,5p’ example.txt
- Вывести строки со второй по пятую
- # sed -e ‘s/00*/0/g’ example.txt
- Заменить последовательность из любого количества нулей одним нулём
- # sort file1 file2
- Вывести отсортированное содержимое двух файлов
- # sort file1 file2 | uniq
- Вывести отсортированное содержимое двух файлов исключая повторные значения
- # sort file1 file2 | uniq -u
- Вывести уникальные значения из отсортированного содержимого двух файлов
- # sort file1 file2 | uniq -d
- Вывести только повторяющиеся значения из отсортированного содержимого двух файлов
- # echo ‘word’ | tr ‘[:lower:]’ ‘[:upper:]’
- Перевести символы нижнего регистра в верхний
Конвертирование соодержимого текстовых файлов
- # dos2unix filedos.txt fileunix.txt
- Конвертировать содержимое текстового файла из MSDOS кодировки в UNIX кодировку (разница в символах возврата коретки)
- # unix2dos fileunix.txt filedos.txt
- Конвертировать содержимое текстового файла из UNIX кодировки в MSDOS кодировку (разница в символах возврата коретки)
- # recode ..HTML < page.txt > page.html
- Конвертировать содержимое тестового файла page.txt в html-файл page.html
- # recode -l | more
- Вывести список доступных форматов
Файловая система SWAP ( файл подкачки )
- # mkswap /dev/hda3
- Создание swap-пространство на разделе hda3
- # swapon /dev/hda3
- Включить swap-пространство, расположенное на разделе hda3
- # swapon /dev/hda2 /dev/hdb3
- Активировать swap-пространства, расположенные на разделах hda2 и hdb3
Форматирование файловой системы
- # fdformat -n /dev/fd0
- Форматирование флоппи-диска без проверки
- # mkfs /dev/hda1
- Создать файловую систему linux на разделе hda1
- # mke2fs -j /dev/hda1
- Создать журналируемую файловую систему ext3 на разделе hda1
- # mke2fs /dev/hda1
- Создание файловой системы ext2 на разделе hda1
- # mkfs -t vfat 32 -F /dev/hda1
- Создать файловую систему FAT32 на разделе hda1
Резервное копирование ( Backup )
- # find /var/log -name ‘*.log’ | tar cv —files-from=- | bzip2 > log.tar.bz2
- Поиск всех файлов, заканчивающихся на «.log» в директории /var/log, и упаковка их в bzip-архив
- # find /home/user -name ‘*.txt’ | xargs cp -av —target-directory=/home/backup/ —parents
- Поиск в директории /home/user файлов, имена которых оканчиваются на «.txt», и копирование их в другую директорию
- # rsync -rogpav —delete /home /tmp
- Синхронизировать директории /tmp и /home
- # rsync -az -e ssh —delete ip_addr:/home/public /home/local
- Синхронизировать локальную и удаленную директории через ssh туннель используя сжатие
- # rsync -rogpav -e ssh —delete /home ip_address:/tmp
- Синхронизация через SSH туннель
- # rsync -az -e ssh —delete /home/local ip_addr:/home/public
- Синхронизировать удалённую директорию с локальной используя ssh туннель со сжатием
- # dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr ‘dd of=hda.gz’
- Создать «слепок» локального диска в файл на удалённом сервере используя ssh туннель
- # dd if=/dev/hda of=/dev/fd0 bs=512 count=1
- Создание копии MBR ( Master Boot Record ) с /dev/hda на флоппи-диск
- # dd if=/dev/sda of=/tmp/backup
- Создание резервной копии содержимого жесткого диска в файл backup
- # dd if=/dev/fd0 of=/dev/hda bs=512 count=1
- Восстановить MBR с флоппи-диска на /dev/hda
- # dump -0aj -f /tmp/home0.bak /home
- Создать полную резервную копию директории /home в файл /tmp/home0.bak
- # dump -1aj -f /tmp/home0.bak /home
- Создать инкрементную резервную копию директории /home в файл /tmp/home0.bak
- # restore -if /tmp/home0.bak
- Восстановить данные из резервной копии /tmp/home0.bak
- # tar -Puf backup.tar /home/user
- Создать инкрементную резервную копию директории /home/user в файл backup.tar сохраняя права доступа
- # ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr ‘cd /home/share/ && tar x -p’
- Упаковка в архив и копирование содержимого /tmp/local в директорию /home/share/ удалённого сервера, используя ssh туннель
- # ( tar c /home ) | ssh -C user@ip_addr ‘cd /home/backup-home && tar x -p’
- Упаковка в архив и копирование содержимого /home в директорию /home/backup-home удалённого сервера, используя ssh туннель
- # tar cf — . | (cd /tmp/backup ; tar xf — )
- Упаковка в архив и копирование одной директории в другую с сохранением прав доступа и ссылок
CDROM
- # cd-paranoia -B
- Перенести аудио-треки с компакт-диска в wav-файлы.
- # cd-paranoia —
- Перенести три аудио-трека с компакт-диска в wav-файлы.
- # cdrecord -v dev=/dev/cdrom cd.iso
- Записать ISO-образ на компакт-диск.
- # gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom —
- Записать сжатый ISO-образ на компакт-диск.
- # mkisofs /dev/cdrom > cd.iso
- Создать ISO-образ компакт-диска.
- # mkisofs -J -allow-leading-dots -R -V
- Создать ISO-образ из содержимого директории.
- # mkisofs /dev/cdrom | gzip > cd_iso.gz
- Создать сжатый ISO-образ компакт-диска.
- # mount -o loop cd.iso /mnt/iso
- Смонтировать ISO-образ компакт-диска в файловую систему.
- # cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force
- Очистить перезаписываемый компакт-диск.
- # cdrecord —scanbus
- Сканировать системную шину для поиска идентификаторов SCSI каналов.
- # dd if=/dev/hdc | md5sum
- Вычислить контрольную сумму MD5 для устройства, например, компакт-диска.
Сети (LAN / WiFi)
- # dhclient eth0
- Включить DHCP на сетевом интерфейсе eth0
- # ethtool eth0
- Вывод статистики по сетевому интерфейсу eth0
- # hostname
- Вывести имя компьютера
- # host www.example.com
- Преобразовать домен www.example.org в ip-адрес и наоборот
- # ifconfig eth0
- Вывести настройки сетевой карты eth0
- # ifconfig eth0 promisc
- Переключить интерфейс eth0 в promiscuous-режим для сбора ( сниффинг ) сетевых пакетов
- # ifup eth0
- Включить сетевой интерфейс eth0
- # ifdown eth0
- Отключить сетевой интерфейс eth0
- # ifconfig eth0 192.168.1.1 netmask 255.255.255.0
- Назначить IP адрес и маску сетевому интерфейсу eth0
- # ip link show
- Вывести статус связи всех сетевых интерфейсов
- # iwconfig eth2
- Вывести конфигурацию беспроводного сетевого интерфейса eth2
- # iwlist scan
- Сканирование и поиск беспроводных сетей и точек доступа
- # mii-tool eth0
- Вывести состояние связи сетевого интерфейса eth0
- # nslookup www.example.com
- Ресольвить ( преобразовать/разрешить ) доменное имя www.example.org в ip-адрес и наоборот
- # route -n
- Песать локальной таблицы маршрутизации
- # route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1
- Добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1
- # route add -net 0/0 gw IP_Gateway
- Назначить ip-адрес шлюза по умолчанию ( default gateway )
- # route del 0/0 gw IP_gateway
- Удалить ip-адрес шлюза по умолчанию ( default gateway )
- # netstat -tup
- Выводит листинг всех установленных соединений по протоколам TCP и UDP без разрешения имён в ip-адреса а так-же PID‘ы и имена процессов, обслуживающих данные соединения
- # netstat -tupl
- Вывод списка соединений по протоколам TCP и UDP без разрешения имён в ip-адреса а так-же и PID‘ы и имена процессов, ожидающих соединений на сетевых портах
- # netstat -rn
- Вывести таблицу маршрутизации, аналог команды route -n
- # echo «1» > /proc/sys/net/ipv4/ip_forward
- Разрешить форвардинг ( пересылку ) пакетов
- # tcpdump tcp port 80
- Отлавливать и выводить весь трафик на TCP-порт 80 (обычно — HTTP)
- # whois www.example.com
- Вывести информацию о доменном имени из базы данных whois
Microsoft Windows networks (samba)
- # mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share
- Монтировать smb-ресурс, расшаренный на windows-машине, в папку локальной файловой системы
- # nbtscan ip_addr
- Преобразовать имя netbios. Программа nbtscan не во всех системах присутствует по-умолчанию, nmblookup включен в пакет samba
- # nmblookup -A ip_addr
- Преобразовать имя netbios. Программа nbtscan не во всех системах присутствует по-умолчанию, nmblookup включен в пакет samba
- # smbclient -L ip_addr/hostname
- Вывести список ресурсов, выделенных в общий доступ на windows-машине
- # smbget -Rr smb://ip_addr/share
- Аналог программы wget для SMB протокола
Фаервол IPTABLES, штатный, для большинства дистрибутивов Linux
- # iptables -t filter -L
- Вывести список всец цепочек правил
- # iptables -t nat -L
- Вывести все цепочки из NAT таблицы
- # iptables -t nat -F
- Очистить все цепочки правил в таблице NAT
- # iptables -t filter -X
- Очистить все пользовательские цепочки правил в таблице filter
- # iptables -t filter -F
- Очистить все цепочки правил в таблице filter
- # iptables -t filter -A INPUT -p tcp —dport telnet -j ACCEPT
- Разрешить входящие соединения с telnet
- # iptables -t filter -A OUTPUT -p tcp —dport http -j DROP
- Запретить исходящие HTTP соединения
- # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
- включить NAT (Network Address Translate) исходящих пакетов на интерфейс eth0. Допустимо при использовании с динамически выделяемыми ip-адресами.
- # iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp —dport 22 -j DNAT —to-destination 10.0.0.2:22
- Пересылка пакетов, адресованных одному хосту, на другой хост
- # iptables -t filter -A INPUT -j LOG —log-prefix
- Включить логгирование пакетов, проходящих через цепочку INPUT, и добавлением к сообщению префикса «DROP INPUT»
- # iptables -t filter -A FORWARD -p tcp —dport pop3 -j ACCEPT
- Разрешить форвардинг POP3 соединений
Мониторинг и отладка системы
- # free -m
- Вывод статистики по оперативной памяти
- # kill -9 proc_id
- Убить процесс с PID proc_id, без соблюдения целостности данных, то есть насмерть
- # kill -1 proc_id
- Перечитать файл конфигурации процессом с PID proc_id
- # last reboot
- Вывод истории ребутов системы
- # lsof /home/user1
- Вывести список открытых файлов из директории /home/user1
- # lsof -p proc_id
- Вывести список файлов, открытых процессом с PID proc_id
- # lsmod
- Список загруженных модулей ядра
- # ps -e -o pid,args —forest
- Вывести список PID’ов и процессов в виде дерева
- # ps -eafw
- Отобразить работающие в системе процессы, используемые ими ресурсы и другую полезную информацию ( единожды )
- # pstree
- Вывести дерево процессов
- # smartctl -i /dev/hda
- Проверить доступность SMART на жёстком диске /dev/hda
- # smartctl -A /dev/hda
- Проверка состояния жёсткого диска /dev/hda через SMART
- # strace -c ls >/dev/null
- Вывести список системных вызовов, созданных и полученных процессом ls
- # strace -f -e open ls >/dev/null
- Вывести список вызовов системных бибилотек
- # tail /var/log/messages
- Вывести десять последних записей из системного журнала
- # tail /var/log/dmesg
- Вывести десять последних записей из журнала загрузки ядра
- # top
- Вывести список работающих в системе процессов с различной полезной информацией в режиме реального времени с автоматическим обновлением данных
- # watch -n1 ‘cat /proc/interrupts’
- Выводить прерывания в режиме реального времени
Другие полезные команды
- # alias hh=’history’
- Создать псевдоним hh для команды history
- # apropos …keyword
- Вывод комманд, так или иначе относящихся к ключевым словам. Полезно, когда вы знаете что делает программа, но не помните команду
- # chsh
- Изменить системную оболочку пользователя
- # gpg -c file1
- Шифрует файл file1 с помощью GNU Privacy Guard
- # gpg file1.gpg
- Дешифруе
25 базовых команд Linux, которые должны знать все системные администраторы — Linux Hint
Системные администраторы несут ответственность за настройку, поддержку и обеспечение надежной работы компьютерных систем, особенно на многопользовательских компьютерах (например, серверах). Успешный системный администратор предлагаетВ этой статье рассматриваются некоторые основные команды Linux, которые должен знать любой системный администратор. Если вы уже являетесь системным администратором, скорее всего, вы знаете эти команды. Если вас интересует область системного администрирования, то изучение этих команд улучшит ваши базовые знания в этой области.
Команды Linux для системных администраторов
1. Время работы
Linux поставляется с инструментом uptime , который позволяет вам проверить, как долго работает система, и сколько пользователей вошли в систему в данный момент времени. Инструмент также отображает среднюю нагрузку на систему с интервалами в 1, 5 и 15 минут.
Вывод может быть изменен с помощью флагов. Следующая команда покажет вывод в более организованном формате.
Инструмент безотказной работы также может отображать время безотказной работы системы, начиная с определенного времени.Чтобы использовать эту функцию, время должно быть отформатировано в формате гггг-мм-дд ЧЧ: ММ .
$ uptime -s <гггг-мм-дд_ЧЧ: ММ>
2. Пользователи
Команда users выведет список всех пользователей, которые в данный момент вошли в систему.
Эта команда не содержит многих опций. Единственными доступными вариантами являются функции help и версии .
3. w
Команда w — это инструмент, определяемый только одним символом.Этот инструмент используется для проверки состояния системы. Команда w отобразит текущих пользователей, вошедших в систему, а также процессы и средние значения нагрузки для каждого пользователя. Эта команда также сообщает имя входа, время входа в систему, имя терминала, JCPU, PCPU и команды.
Команда w имеет несколько опций. Параметр -h отобразит вывод без каких-либо заголовков.
Флаг -s исключает JCPU и PCPU из вывода.
Флаг -f удаляет поле «FROM» из вывода.
Используйте флаг -V для проверки версии инструмента.
4. ls
Команда ls используется для проверки содержимого каталога вместе с другой важной информацией. Основное использование команды ls выглядит следующим образом. Если целевой каталог не указан, ls будет использовать текущий каталог.
Чтобы заказать вывод в формате списка, используйте флаг -l .
$ ls -l <целевой_каталог>
Если вы хотите получить более качественный результат, используйте флаг -h . Это означает удобочитаемый формат .
$ ls -lh <целевой_каталог>
Если вам нужно проверить все каталоги вместе с их подкаталогами, вы должны использовать рекурсивный флаг -R . Однако, в зависимости от каталога, вывод может быть очень длинным.
$ ls -R <целевой_каталог>
Если вы хотите отсортировать вывод, флаг -lS отсортирует вывод по размеру.
$ ls -lhS <целевой_каталог>
Команда ls также может отображать UID и GID файлов и каталогов. Используйте флаг -n для выполнения этой задачи.
Есть различные параметры, которые можно использовать с командой ls. Чтобы получить быстрый список доступных опций, загляните на страницу справки ls.
5. ВОЗ
Команда who вернет имя, дату, время и информацию о текущем пользователе.Однако, в отличие от команды w, эта команда не выводит информацию о том, что делает пользователь.
Для полного вывода используйте флаг -a .
Для всех параметров используйте следующую команду.
6. подробнее
При работе с чем-то, что дает большие результаты, может пригодиться инструмент more . Этот инструмент позволяет легко просматривать весь вывод, не теряя при прокрутке.
Например, следующая команда с использованием инструмента ls , скорее всего, выдаст большой результат:
Вы можете лучше использовать инструмент more, связав выходные данные по конвейеру.
При работе с большим текстовым файлом вы также можете использовать дополнительный инструмент для упрощения навигации.
Если вы хотите прокрутить вниз, нажмите Введите . Если вы хотите прокрутить вверх, нажмите B (в верхнем регистре). Для выхода нажмите Q .Обратите внимание, что прокрутка вверх не будет работать с содержимым, которое передается по конвейеру.
Инструмент more имеет несколько доступных опций. Вы можете проверить эти параметры на странице дополнительной помощи.
7. меньше
Как и больше, меньше — это мощный инструмент для упрощения навигации по большим выводам. Как и раньше, большой вывод будет направлен на меньший.
Инструмент «Меньше» также полезен при навигации по большим текстовым файлам.
Что касается навигации, то горячие клавиши остались прежними.Для прокрутки вверх нажмите B. Для прокрутки вниз нажмите . Введите или , пробел . В отличие от more, less позволяет прокручивать вверх и вниз, даже когда содержимое передается по конвейеру.
Дополнительные параметры см. На странице справки less.
8. cp
Инструмент cp — наиболее важный инструмент для копирования файлов и каталогов. Обратите внимание, что источником может быть несколько файлов или каталогов.
$ cp <параметры> <источник> <назначение>
В этом примере файл будет скопирован в целевой каталог.Флаг -v означает подробный режим.
В случае конфликтов cp обычно перезаписывает файл. Чтобы избежать случайной перезаписи, используйте флаг -i , который означает интерактивный режим.
$ cp -iv output.txt test /
Если вы хотите скопировать каталог вместе со всем его содержимым, используйте флаг -R , который означает рекурсивное копирование.
$ cp -vR <источник> <назначение>
Инструмент cp содержит множество опций.Ознакомьтесь с быстрым списком доступных опций с помощью команды справки.
9. мв
Как и cp, mv — это типичный инструмент для перемещения файлов и каталогов. Инструмент mv также можно использовать для переименования файлов и каталогов. Как и в случае с cp, источником может быть несколько файлов или каталогов.
Базовая структура команды mv следующая:
$ mv <опция> <источник> <назначение>
Для перемещения выхода .txt в каталог test используется флаг -v , обозначающий подробный режим.
Чтобы переименовать файл, вместо указания другого каталога замените место назначения новым именем.
$ mv -v <старое_имя_файла> <новое_имя_файла>
Чтобы переместить каталог, используйте пути к каталогам.
$ mv
При перемещении файла место назначения может уже содержать файл с таким же именем, что вызывает конфликт.По умолчанию mv перезапишет существующий файл. Если вы не хотите, чтобы mv перезаписывал какие-либо файлы, вы можете использовать флаг -n .
$ mv -vn <источник> <цель>
В определенных ситуациях может потребоваться вручную выбрать файлы для замены. В этом случае используйте флаг -i , который означает интерактивный режим.
$ mv -vi <источник> <цель>
С инструментом mv можно использовать множество опций.Чтобы быстро просмотреть все доступные параметры, выполните команду help .
10. кот
Инструмент cat , который расшифровывается как concatenate , является одним из наиболее часто используемых администраторами инструментов. Этот инструмент используется для проверки содержимого файла без внесения каких-либо изменений в файл. Основное использование этой команды — проверка содержимого файла, в основном текстовых файлов.
Эта команда выглядит следующим образом:
Инструмент также может подсчитывать линии за вас.Чтобы включить нумерацию строк, используйте флаг -n .
Для одновременного извлечения нескольких файлов используйте инструмент cat .
$ cat <файл1>; cat <файл2>; cat <файл3>
Команда cat может творить чудеса, когда ее сопровождают другие команды. Например, вы можете легко включить больше или меньше инструментов для упрощения навигации. Я рекомендую по возможности использовать инструмент «меньше», чем «больше».
Чтобы получить быстрый список доступных опций, выполните следующую команду.
11. grep
Инструмент grep — еще одна мощная и популярная команда. Этот инструмент позволяет выполнять быстрый поиск в заданном файле строк, содержащих совпадение с заданным словом или строкой. Инструмент grep может выполнять поиск как файлов, так и передаваемого содержимого.
Ниже показано, как использовать grep с текстовыми файлами.
$ grep
Для поиска без учета регистра используйте флаг -i .
$ grep -i <поисковый_терм> <файл>
Используя команду grep, вы также можете выполнять поиск в файлах всего каталога. Если есть несколько подкаталогов, то grep также может выполнять рекурсивный поиск в каталогах. Для выполнения рекурсивного поиска используйте флаг -r или -R .
$ grep -r <поисковый_терм> <каталог>
Когда вы ищете термин, grep будет соответствовать любой строке, содержащей искомый термин.Например, при поиске текста «alsa» grep будет соответствовать таким терминам, как «alsabat», «alsaucm» и т. Д. Для поиска совпадения только всего слова используйте флаг -w .
$ grep -w <поисковый_терм> <файл>
Инструмент grep также может подсчитывать, сколько раз найденный контент был найден. Чтобы увидеть количество найденных совпадений, используйте флаг -c .
$ grep -c
Также возможно выполнить обратное совпадение.В этом случае инструмент grep сообщит обо всех строках, которые не содержат поисковый запрос. Чтобы использовать поиск с обратным совпадением, используйте флаг -v .
$ grep -v
Инструмент grep также работает с перенаправленным контентом. В следующем примере инструмент grep будет использоваться для чтения текстового файла с помощью cat. Вывод будет перенаправлен на grep для выполнения поиска.
$ cat <файл> | grep
С grep доступно множество функций.Чтобы быстро ознакомиться с этими функциями, посетите страницу справки grep.
12. CD
Команда cd , или команда смены каталога, используется для изменения текущего каталога на другой. Это очень простой, но важный инструмент. Чтобы изменить текущий каталог, используйте следующую структуру.
Если вы просто хотите перейти в родительский каталог текущего, используйте .. в качестве цели.
Для команды cd доступно не так много параметров.Это очень простая команда. Однако есть несколько вариантов, которые могут пригодиться при использовании этого инструмента. Посетите страницу справки компакт-диска, чтобы узнать больше.
13. pwd
Команда pwd или печать текущего каталога выведет абсолютный путь к текущему каталогу. Например, каталог «~ /» является ярлыком для «/ home /
Посетите страницу справки pwd, чтобы узнать о поддерживаемых параметрах.
14.сорт
Команда sort — это инструмент, используемый для сортировки передаваемого ей содержимого в порядке возрастания или убывания. Вероятно, лучший способ использовать этот инструмент — передать в него содержимое. По умолчанию команда sort сортирует содержимое в порядке возрастания.
Для сортировки в порядке убывания используйте флаг -r .
Если вы хотите, чтобы сортировка игнорировала регистры, используйте флаг -f .
Инструмент сортировки также может работать непосредственно с текстовыми файлами.
Хотя приведенный выше список включает только основные функции инструмента сортировки, с этим инструментом доступно множество других опций. Проверьте эти параметры на странице справки по сортировке.
15. найди
Команда find — удобный инструмент для выполнения быстрого поиска в целевом каталоге. Однако, в отличие от grep, find будет искать по имени файла.
Например, следующая команда будет искать файл (ы) с именем viktor (текущее имя пользователя) в домашнем каталоге.
$ найти / домашнее имя viktor
Как видите, в некоторых ситуациях find может не иметь разрешения на чтение определенного каталога. В этом случае убедитесь, что текущий пользователь имеет разрешение на чтение, необходимое для просмотра этих расположений. Также можно выполнять поиск с привилегиями sudo, но это не рекомендуется (если не требуется).
Если вы хотите выполнить поиск без учета регистра, используйте флаг -iname вместо флага -name.
$ find
Есть несколько способов точной настройки поиска.Например, вы можете искать файлы, принадлежащие определенному пользователю.
$ find <каталог_поиска> -user
Точно так же можно искать файлы, принадлежащие группе пользователей.
$ find <каталог_поиска> -группа <группа>
Вы можете дополнительно уточнить поиск, выполнив поиск определенного файла или каталога с помощью флага -type . Что касается значения, f обозначает файл, а d обозначает каталог.
$ find <каталог_поиска> -тип f-имя <поиск_терм>
Инструмент поиска пригодится во многих ситуациях и поддерживает множество опций для достижения желаемого результата.
16. деготь
Команда tar — один из наиболее распространенных инструментов в Linux, используемых для архивирования, сжатия и распаковки. В этот инструмент можно включить три алгоритма сжатия: gz, bz2 и xz. Эти параметры будут определять расширение файла сжатого архива; например, tar.gz, tar.bz2 и tar.xz.
Для создания архива структура команд будет выглядеть следующим образом. Следующая команда создаст tar-архив, сжатый с помощью gzip.
$ tar -cvzf <имя_файла> .tar.gz <каталог_файла в_архив>
Всего с командой tar используются четыре разных флага:
- -c : Указывает tar создать архив
- -v : Указывает tar работать в подробном режиме
- -z : Указывает tar использовать сжатие gz
- -f : Сообщает tar имя целевого файла
Чтобы создать сжатый архив bz2, используйте следующую команду.Здесь флаг -j предназначен для сжатия bz2.
$ tar -cvjf <имя_файла> .tar.bz2 <каталог_файла в_архив>
Чтобы создать сжатый архив xz, используйте следующую команду. Здесь флаг -J предназначен для сжатия xz.
$ tar -cvJf <имя_файла> .tar.xz <каталог_файла в_архив>
Используйте следующую команду для извлечения tar-архива. Флаг -x указывает tar извлечь архив.
Существует множество опций для тонкой настройки процесса архивирования / сжатия / распаковки tar. Проверьте эти параметры на странице справки tar.
17. последняя
Команда last возвращает ценную информацию об активности пользователей в системе. Эту команду могут выполнять обычные пользователи. Последняя команда сообщает такую информацию, как время, дата, версия ядра, загрузка / перезагрузка системы и т. Д. Эта информация может быть особенно полезна для устранения неполадок.
Вывод последней команды может быть длинным. Можно ограничить количество строк, которые будут сообщать последними. Для этого используйте флаг -n , за которым следует количество строк, которым вы хотите ограничить поиск.
Чтобы увидеть выключение системы и изменения уровня запуска, используйте флаг -x .
Чтобы опустить поле имени хоста, используйте флаг -R , который помогает упростить вывод.
Чтобы сообщить подробности о пользователе, используйте следующую команду.
Для последнего инструмента доступно намного больше опций. Ознакомьтесь с ними на последней странице справки.
18. пс
Инструмент ps — одна из самых простых команд для просмотра текущих процессов в системе. Эта команда предлагает снимок момента выполнения команды в реальном времени. Инструмент ps также предоставляет другую информацию, такую как идентификатор пользователя, использование ЦП, потребление памяти, выполняемые команды и т. Д.
Ниже приводится простейший способ использования инструмента ps.
Однако базовый прогон не будет сообщать обо всех запущенных процессах. Чтобы получить полный отчет, используйте следующую команду. Вывод будет очень длинным, и вы можете использовать более или менее для облегчения навигации по результату.
Если вы хотите получить более подробную информацию о процессах, используйте флаг -u или -f .
Чтобы проверить процессы, запущенные под определенным пользователем, используйте флаг -u , за которым следует имя пользователя.
Для поиска процессов по имени используйте флаг -C , за которым следует условие поиска.
Для поиска процессов по PID используйте флаг -p , за которым следуют PID.
$ ps -f -p
Чтобы увидеть процессы в древовидном формате, используйте флаг –forest .
Это только основы инструмента ps, который поставляется с множеством других опций.Проверьте эти параметры на странице справки ps.
19. убить
Команда kill обычно используется для завершения процессов. Внутри эта команда отправляет определенные сигналы процессу, который определяет поведение процесса. По умолчанию команда kill завершает процесс, отправляя сигнал TERM. Чтобы убить процесс, вам понадобится его PID, который можно получить с помощью команды ps.
Чтобы отправить специальный сигнал целевому процессу, используйте флаг -s , за которым следует сигнал.
Следующий логичный вопрос: какие сигналы вы можете посылать? Чтобы узнать это, проверьте список доступных сигналов. Обратите внимание, что «KILL» и «SIGKILL» — это один и тот же сигнал, но с разными метками.
Kill — это довольно простая команда, которую легко использовать. Однако, если вы все еще не знаете, что делать, загляните на страницу справки по уничтожению.
20. п.м.
Инструмент rm используется для удаления файлов и каталогов.Этот инструмент — одна из самых простых команд для повседневного использования.
Ниже показано, как удалить файл с помощью rm.
Чтобы удалить каталог, добавьте флаг -r , который означает рекурсивное удаление каталогов и их содержимого. Также часто этот флаг сочетается с флагом -f , который означает принудительное удаление.
При удалении я рекомендую использовать флаг -v для подробного режима.
$ rm -rfv <каталог_файла>
Чтобы увидеть все доступные параметры, посетите страницу справки rm.
21. мкдир
Команда mkdir используется для создания каталога в файловой системе. Эта команда — простой и понятный инструмент.
Чтобы создать каталог в желаемом месте, выполните следующую команду. Флаг -v означает подробный режим.
$ mkdir -v <путь_каталога>
Ознакомьтесь с другими доступными параметрами на странице помощи mkdir.
22. верх
Команда top — это мощный инструмент для мониторинга системных ресурсов и запущенных процессов в реальном времени.
Запустите инструмент, используя следующую команду.
Чтобы выйти из инструмента, нажмите q .
Вы можете фильтровать процессы по владельцу. Для этого используйте флаг -u , за которым следует имя пользователя.
Окно по умолчанию может показаться скучным и скучным. Если вам это окно кажется тусклым, вы можете оживить его, нажав z .Это действие применит упрощенную окраску к выводу, что упростит работу.
Нажмите c , чтобы увидеть абсолютный путь запущенных процессов.
Инструмент сообщает информацию в режиме реального времени. Лента обновляется только через определенные промежутки времени. По умолчанию значение интервала составляет 3 секунды. Чтобы изменить интервал по умолчанию, нажмите d и измените значение на желаемое.
Чтобы убить целевой процесс, нажмите k .
Чтобы получить быструю помощь, нажмите h .
23. бесплатно
Команда free полезна для проверки системных ресурсов, таких как физическая память и память подкачки. Этот инструмент также сообщает о буферах, используемых ядром.
Запустите инструмент, используя следующую команду.
Выходные значения будут в килобайтах (1 КБ = 1024 байта). Если вы хотите, чтобы вывод был в мегабайтовом формате, используйте флаг -m .
Чтобы получить вывод в формате гигабайта, используйте флаг -g .
Для более удобочитаемого формата используйте флаг -h .
Команды Linux — LinuxConfig.org
Введение
Кто должен прочитать это руководство
Вы новичок в GNU / Linux и хотите выйти за рамки обычного перетаскивания окна и щелчка мышью? Это руководство предназначено для абсолютно начинающих пользователей, желающих изучить основы командной строки GNU / Linux. Это руководство предназначено для изучения основных команд Linux, связанных с навигацией, администрированием файлов и каталогов, установкой программного обеспечения и устранением основных неполадок системы.Что такое командная строка GNU / Linux
Скорее всего, когда вы слышите, как кто-то говорит об операционной системе GNU / Linux, вы также слышите, как они говорят о командной строке или командах Linux. Запустите эту команду и выполните ту и ту команду! Правильно?Но почему? Почему операционная система GNU / Linux почти всегда связана с командами и командной строкой? Простой ответ заключается в том, что командная строка является неотъемлемой частью операционной системы GNU / Linux и, как таковая, предлагает пользователю возможность выполнять задачи более эффективно, с большей точностью и, что наиболее важно, с дополнительной информацией обо всем процессе выполнения.
Многие начинающие пользователи GNU / Linux связывают командную строку и команды Linux с трепетом, магическими навыками волшебника высокого уровня и ненужными накладными расходами.Будем честны сами с собой! Неважно, какое оправдание вы могли бы иметь в своем отвращении к системе GNU / Linux и ее командной строке, причина, скорее всего, связана с отсутствием понимания и нежеланием учиться.
Поэтому не будем винить систему GNU / Linux в наших недостатках! Он здесь, чтобы помочь независимо от того, являетесь ли вы полным новичком или пользователем продвинутого уровня.Насколько система может вам помочь, не зависит от глубины вашего кошелька, как это бывает с некоторыми другими проприетарными операционными системами! Объем помощи, которую вы получите от системы GNU / Linux, зависит исключительно от вашего желания учиться и вашей решимости.
На данном этапе я уверен, что вы задаете себе вопрос: Нужны ли мне
Базовые команды Linux
Статья обновлена на 06 дек 2020
Подписаться на обновления статьи
В этой статье собраны основные команды и процедуры Linux, относящиеся к использованию вашей встроенной системы.
Примечание: Эта статья представляет собой обзор, который поможет вам начать работу, поэтому вы можете найти полезными для поиска более полные учебники, руководства и руководства в Интернете.
И Torizon, и эталонные образы Toradex для Yocto Project основаны на Linux. Некоторые инструкции, представленные в этой статье, будут без проблем применяться к обоим, другие могут потребовать доработки или просто не применимы к тем или другим.
Будет представлено следующее содержимое:
- Используйте основные команды Linux
touch
,cp
,cd
,ls
,mv
,mkdir
,rm
иpwd
- Базовое чтение / запись файла с использованием
echo
,cat
и текстового редактораVi
- Поиск файла или содержимого файла с помощью
file
иgrep
- Получите IP-адреса и MAC-адреса вашей платы либо из UART отладки с помощью
ip
, либо с ПК для разработки с помощьюarp-scan
- Сжимайте и распаковывайте папки с помощью
tar
- Получите системную дату и время с помощью команд
timedatectl
,date
иhwclock
- Создание, запуск в фоновом режиме и завершение сценария оболочки с помощью команд
chmod
,ps
иkill
- Мониторинг производительности системы с помощью системного менеджера
htop
- Автоматический запуск сценария во время загрузки путем создания службы
systemd
- Измените системный пароль, используя
passwd
- Скачать файлы, используя
wget
Цель этого раздела познакомить вас с основными командами Linux touch
, cp
, cd
, ls
, mv
, mkdir
, rm
и pwd
, а также некоторыми концепциями, касающимися структура каталогов.
Примечание: Если вам нужна быстрая справка по конкретной команде, используйте параметр —help , как в примере ниже:
<команда> --help
Выходные данные команды pwd
(текущий рабочий каталог) сообщают вам полный путь к каталогу, в котором вы находитесь:
# pwd
/ home / root
Команда touch
создает пустой файл:
коснитесь sample_file.txt
Используя команду pwd
, вы уже знаете, что текущий каталог — / home / root
. Создадим в нем два каталога с именами dir1
и dir2
:
mkdir dir1 dir2
Примечание: Этот шаг объясняет структуру каталогов для среды Linux. Вы можете пропустить его, если это теоретический шаг. Нажмите кнопку ниже, чтобы отобразить.
В среде Linux существует понятие абсолютного или полного пути и относительного пути.См. Следующую структуру каталогов:
Есть некоторые обозначения для описания пути к каталогу:
- / — корневой каталог. Все абсолютные пути начинаются с /
- / также является разделителем каталогов
- . обозначает текущий или текущий каталог
- .. обозначает родительский каталог относительно текущего каталога
- ~ — это домашний каталог.Для модулей Toradex это всегда каталог
/ home / root
.
Полный путь указывает на место в файловой системе вне зависимости от текущего каталога. На рисунке ниже представлены абсолютные пути для ранее представленной структуры каталогов:
Абсолютные пути
Относительный путь указывает на место в файловой системе относительно текущего пути. На рисунке ниже представлены относительные пути для ранее представленной структуры каталогов, учитывая, что / home / root
— это текущий каталог:
Относительные пути
Изменение на недавно созданный dir1
:
# относительный путь
cd dir1
# абсолютный путь
cd / home / root / dir1
Вернуться в родительский каталог:
# относительный путь
cd..
# откуда угодно (три возможности)
cd
cd ~
cd / home / root
Перейти в корневой каталог:
кд /
Вернитесь в домашний каталог, прежде чем переходить к следующему шагу.
Используйте команду cp
для копирования файлов. Давайте скопируем sample_file.txt
вокруг:
# copy с тем же именем в dir1
cp sample_file.txt dir1
# скопировать в dir2 и переименовать файл в copy_dir2_file.txt
cp sample_file.txt ./dir1/copy_dir2_file.txt
# сделать копию в тот же каталог с именем copy_file.txt
copy_file.txt
Для копирования всего каталога и его содержимого с сохранением атрибутов файла:
cp -a dir1 dir1_copy
Если вы хотите скопировать содержимое каталога в уже созданный каталог:
mkdir dir1_contents
cp -a dir1 /.dir1_contents
Примечание. Используйте команду ls
на следующем шаге для проверки содержимого каталога.
Используйте команду ls
, чтобы просмотреть содержимое каталога:
ls
ls / дом
ls / bin
Вы можете увидеть подробную информацию о файлах и каталогах внутри проверяемого:
ls -l / bin
ls -lh / bin
Команда mv
может использоваться для переименования или перемещения файла / каталога:
коснитесь sample_file.txt
mv sample_file.txt renamed.txt
mv dir2 directory2
Используйте команду rm
для удаления файла или каталога.
Предупреждение: Процесс необратим, поэтому будьте осторожны, чтобы не удалить что-то важное!
# Удалить файл
rm renamed.txt
# Удалить каталог
rm -r dir1_copy
# Спросить перед удалением
rm -ri dir1_contents
В этом разделе объясняется, как читать и записывать в файл непосредственно из командной строки, а также с помощью текстового редактора.
Используйте команду echo
для записи в файл из командной строки.
Примечание: Эта команда будет полезна для установки / настройки аппаратных функций из командной строки, хотя она ограничена для редактирования текстовых файлов.
# создать или перезаписать файл
echo "Hello World"> readwrite.txt
# создать или добавить в файл
echo "Hello Again" >> readwrite.txt
Используйте команду cat
для чтения файла из командной строки.
cat readwrite.txt
# печатать номера строк, игнорируя пустые строки
cat -b readwrite.txt
cat -n readwrite.txt
Чтобы привыкнуть к основным командам Linux, вы можете поиграть в игры bashcrawl и Terminus.
Примечание. Vi, а также редактор Vim имеют множество функций и команд и известны как трудные в использовании для новичков. Поищите в Интернете, если вы хотите углубиться в изучение того, как их использовать, или взгляните на текстовый редактор nano, который может быть немного более удобным для пользователя.
Для создания или редактирования файла с помощью текстового редактора Vi:
vi чтение и запись
Когда вы открываете приложение, вы находитесь в обычном режиме и не можете редактировать текст. Нажмите клавишу «i», чтобы войти в режим «вставки». Затем вы можете редактировать файл по своему усмотрению.
После внесения некоторых изменений нажмите клавишу «ESC», чтобы вернуться в «нормальный» режим. В этом режиме вы можете сохранить изменения и выйти из Vi. Для этого введите следующее:
: wq
Это команда для записи -> выйти из .
Сохранить изменения и выйти из Vi
Для перехода на определенную линию:
#: , например:
: 4
Для поиска определенного текста:
# / , например
/ world
Нажмите клавишу «n», чтобы просмотреть вхождения.
Vi текстовый поиск
Сыграйте в браузерную игру VIM Adventures, чтобы узнать больше о Vim в увлекательной игровой форме.
В этом разделе описывается, как искать конкретный файл и как искать в каталоге конкретное текстовое содержимое файла.
Для поиска определенного файла используйте команду find
. Поиск выполняется внутри определенного каталога и всех его дочерних каталогов:
#find -name ""
#search для определенного имени файла
find. -name "readwrite.txt"
# искать все файлы с определенным расширением
find / -name "*.txt "
# поиск всех файлов, содержащих" read "в имени, для текущего каталога
find. -name" * read * "
# поиск всех файлов, содержащих" read "в имени, для каталога пользователя
найти / home / root / -name "* read *"
Для поиска файла с определенным текстом в качестве содержимого можно использовать команду grep
. grep
полезен не только для поиска содержимого файлов, но и как фильтр, например, для вывода других команд.
# поиск файлов, содержащих строку "hello world" в текущем каталоге
grep -nre "hello world" ./*
# поиск без учета регистра с абсолютным путем
grep -nrie "hello world" / home / корень / *
В этом разделе описывается, как получить IP-адрес и MAC-адрес вашей платы, либо с самой платы, используя ip
, если у вас есть отладочное последовательное соединение, либо с вашего ПК разработчика, используя arp-scan
.
Убедитесь, что у вас есть работающее последовательное соединение, следуя инструкциям из раздела Настройка консоли отладки последовательного порта (Linux / U-Boot).
# ip-адрес
или, как ярлык
# ip a
Может отображаться относительно большой список, в зависимости от того, сколько физических и виртуальных активных интерфейсов имеет плата. Два интерфейса точно будут напечатаны:
-
lo
, который является интерфейсом обратной связи. - Проводной интерфейс.Обычно он начинается с
eth
илиenp
и может незначительно отличаться в зависимости от используемого вами дистрибутива (TorizonCore, эталонные изображения Toradex для Yocto, устаревшие изображения, такие как Angstrom-based из BSP 2.8).
В приведенном ниже примере с использованием TorizonCore интерфейс Ethernet — ethernet0
, IP-адрес — 192.168.10.44
, а MAC-адрес — 00: 14: 2d: 63: 19: 3f
:
Убедитесь, что и ваша плата, и ваш компьютер подключены к одной и той же локальной сети.Сначала используйте команду ip
, чтобы вывести список доступных и активных сетевых интерфейсов на вашем компьютере :
$ ip ссылка отображается
Может отображаться относительно большой список, в зависимости от того, сколько у вас физических и виртуальных активных интерфейсов. Два интерфейса точно будут напечатаны:
-
lo
, который является интерфейсом обратной связи. - Какой-то проводной или беспроводной интерфейс. Обычно он начинается с
eth
,enp
илиwlo
.Из приведенного ниже примера видно, что проводной интерфейс —enp3s0f1
, а Wi-Fi —wlo1
: .
После того, как вы определили один интерфейс, подключенный к той же сети, что и ваша плата, используйте arp-scan
, чтобы найти IP-адрес платы:
# sudo arp-scan --localnet --interface = <ваш интерфейс>
См. Пример ниже, где IP-адреса и MAC-адреса платы, найденные при сканировании LAN с интерфейса enp3s0f1
на вашем ПК, равны 192.168.10.43
и 00: 14: 2d: 63: 19: 3f
соответственно:
В приведенном выше примере мы могли сканировать локальную сеть с помощью Wi-Fi wlo1
, только если бы он был подключен к той же локальной сети (обычно к тому же маршрутизатору), что и плата.
В этом разделе описывается, как сжимать и распаковывать папки с помощью команды tar
. Он не охватывает все возможности, а лишь некоторые из наиболее часто используемых.
# сжатая папка и ее содержимое
tar -cjvf compressed.tar.bz2 dir1
tar -cvf compressed.tar.gz dir1
# сжимать только содержимое папки (обратите внимание, что после каталога стоит точка)
tar -cjvf compressed.tar.bz2 -C ./dir1.
tar -cvf compressed.tar.gz -C ./dir1.
базовых команд Linux с справочными страницами
Вот несколько основных команд, которые помогут вам начать работу в чудесном мире Linux и других вариантов UNIX. Все эти команды должны работать из командной строки (независимо от того, какую оболочку вы используете).Вы ДОЛЖНЫ нажать клавишу ВВОД, чтобы вызвать команду. Все команды UNIX и Linux чувствительны к регистру. Конечно, существуют тысячи команд и процедур, связанных с Linux.
Вы также можете выполнять несколько команд, разделяя их символом; например cd newdir; mkdir thatdir; ls -la сначала изменит каталоги на каталог newdir, затем создаст каталог с именем thatdir, а затем перечислит все файлы в длинном формате. Вы можете связать вместе столько команд, сколько захотите, но следует проявлять осторожность, чтобы случайно не сделать что-нибудь вредное.
Если вы считаете, что что-то нужно добавить в этот список, дайте мне знать.
доступ — определить, доступен ли файл
Синтаксис
файл режима доступа
Для получения дополнительных опций и того, как использовать, проверьте доступ к странице руководства
псевдоним — определение или отображение псевдонимов
Синтаксис
псевдоним [псевдоним [= строка]…]
Дополнительные параметры и способы использования проверки псевдонима см. На странице руководства
bg — запускать задания в фоновом режиме
Синтаксис
bg [job_id…]
Дополнительные параметры и способы использования см. На странице руководства bg
cal — отображает календарь
Синтаксис
кал [-smjy13] [[месяц] год]
Для получения дополнительных сведений о дополнительных параметрах и использовании см. Справочную страницу
.cd — изменить каталоги
Используйте компакт-диск для изменения каталога.Введите cd, а затем имя каталога для доступа к этому каталогу. Помните, что вы всегда находитесь в каталоге и можете переходить к каталогам иерархически выше или ниже.
Синтаксис
cd [-L | -P] [каталог]
Дополнительные параметры и способы использования см. На странице руководства на компакт-диске
chown — изменить владельца файла и группу
Синтаксис
chown [ОПЦИЯ] ВЛАДЕЛЕЦ [: [ГРУППА]] ФАЙЛ
chown [ОПЦИЯ]: ФАЙЛ ГРУППЫ
chown [ОПЦИЯ] –reference = RFILE FILE
Дополнительные параметры и способы использования см. На странице руководства chown
chmod — изменить права доступа к файлам
Синтаксис
chmod [-r] perm
Базовые команды Linux | 123 Центр поддержки Reg
Что такое Unix?
UNIX — это операционная система, которая была впервые разработана в 1960-х годах и с тех пор находится в постоянном развитии.Под операционной системой мы подразумеваем набор программ, обеспечивающих работу компьютера. Это стабильная, многопользовательская, многозадачная система для серверов, настольных компьютеров и ноутбуков.
Список файлов и каталогов
ls (list) Команда ls (L в нижнем регистре и S в нижнем регистре) выводит список содержимого вашего текущего рабочего каталога. В вашем домашнем каталоге могут не быть видимых файлов, и в этом случае будет возвращено приглашение UNIX. Кроме того, некоторые файлы могут быть уже вставлены системным администратором при создании вашей учетной записи.На самом деле ls не приводит к отображению всех файлов в вашем домашнем каталоге, а только тех, чье имя не начинается с точки (.) Файлы, начинающиеся с точки (.), называются скрытыми файлами и обычно содержат важная информация о конфигурации программы. ls -a перечисляет файлы, которые обычно скрыты.
Создание каталогов
mkdir (make каталог) Теперь мы создадим подкаталог в вашем домашнем каталоге. Чтобы создать подкаталог unixstuff в вашем текущем рабочем каталоге, введите
Чтобы увидеть только что созданный каталог, введите
Переход в другой каталог
cd (изменить каталог) Команда cd directory означает изменение текущего рабочего каталога в «каталог».Текущий рабочий каталог можно рассматривать как каталог, в котором вы находитесь, то есть вашу текущую позицию в дереве файловой системы. Чтобы перейти в только что созданный каталог, введите
Введите ls, чтобы увидеть содержимое (которое должно быть пустым). . (Текущий каталог) В UNIX (.) Означает текущий каталог, поэтому ввод
означает оставаться на месте (каталог unixstuff). Сначала это может показаться не очень полезным, но использование (.) В качестве имени текущего каталога сэкономит много времени при вводе. .. (Текущий каталог) (..) означает родительский элемент текущего каталога, поэтому ввод
перенесет вас на один каталог вверх по иерархии.
Обратите внимание: Ввод cd без аргументов всегда возвращает вас в ваш домашний каталог. Это очень полезно, если вы потерялись в файловой системе.
Пути
pwd (рабочий каталог печати) Пути позволяют вам определить, где вы находитесь по отношению ко всей файловой системе.Например, чтобы узнать абсолютный путь к своему домашнему каталогу, введите cd , чтобы вернуться в домашний каталог, а затем введите
Копирование файлов
cp (copy) Команда cp сделает копию файл в текущем рабочем каталоге, чтобы сделать копию файла file1 и называть его file2 введите
Перемещение файлов
mv (перемещение) Чтобы переместить файл из одного места в другое, используйте команду mv. Это приводит к перемещению, а не к копированию файла, так что в итоге вы получаете только один файл, а не два.Его также можно использовать для переименования файла, переместив его в тот же каталог, но присвоив ему другое имя. Чтобы переместить (или переименовать) файл1 в файл2 введите
Удаление файлов и каталогов
rm (удалить), rmdir (удалить каталог) Чтобы удалить (удалить) файл, используйте команду rm . Чтобы удалить file1, введите
# rm file1
Вы можете использовать команду rmdir для удаления каталога (сначала убедитесь, что он пуст). Вы не сможете этого сделать, поскольку UNIX не позволит вам удалить непустой каталог.
Отображение содержимого файла на экране
clear (очистить экран) Если ваш экран загроможден, вы можете использовать команду clear очистить окно терминала от предыдущих команд, чтобы вывести следующие команды можно четко понять. В командной строке введите
. Это очистит весь текст и оставит вас с приглашением% в верхней части окна. cat (объединение) Команда cat может использоваться для отображения содержимого файла на экране.