По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В статье пойдет речь о расположении файлов и папок, как использовать поиск для нахождения нужной информации. Задача ознакомление с предназначение основных папок в операционной системе Linux и то, что в них находиться. Разберемся в структуре FHS и посмотрим, как искать файлы и команды. FHS (File System Hierarchy Standard) – это стандартная иерархия ОС. Согласно Hierarchy FHS - есть стандартные папки, которые должны располагаться в корне. Вот классическое расположение файлов и папок в корневой папке ОС Linux. Стандарт FHS был изначально предназначен для того, чтобы во всех дистрибутивах ОС Linux могли понять и найти все, что нам нужно. Некоторые дистрибутивы Linux отклоняются от этого стандарта, но не сильно в целом данный стандарт соблюдается. Перечислим основные папки и их предназначение. /bin – базовые исполняемые файлы /boot – файлы loader /dev – устройства /etc – конфигурация ПК /home – домашние директории /lib – библиотеки ядра /proc – информация о работающей системе /media – монтирование носителей /mnt – монтирование носителей /opt – дополнительное программное обеспечение /root – домашняя директория админа /sbin – основные программы настройки системы /srv – данные системных служб /tmp – временные файлы /usr – бинарные файлы пользователей /var - переменные Первая папка bin в ней находятся базовые исполняемые файлы команд, т.е все команды которые может использовать пользователь они находятся здесь в данной папке. Папка boot – в данной папке находятся файлы загрузчика. Обычно это отдельный диск примонтированный в котором находиться ядро Linux. В папке dev – находятся файлы всех устройств в операционной системе Linux все и даже устройства представляют собой файлы. Папка etc – здесь находиться конфигурация нашего конкретного ПК, в ней много подпапок и в ней лежит конфигурация. В директории home находятся домашние папки всех пользователей, кроме пользователя root. В данной папке находятся документы, рабочий стол и т.д все что относится к пользователю. Папка lib здесь находятся общие библиотеки и модули ядра. Папка proc – здесь находятся вся информация о запущенных в данный момент процессах. В данную папку монтируется виртуальная файловая система procfs. Папка media создана для монтирования съемных накопителей типа USB или CD-ROM. В старых версиях Linux и до сих пор осталась, есть папка mnt. Раньше в нее монтировались съемные носители, теперь же данную папку обычно используют для монтирования дополнительных файловых систем. Папка opt - для установки дополнительного программного обеспечения. Папка root – говорит сама за себя. Папка sbin в данной папке лежат настройки серьезных таких компонент, как файрвол iptables, например, или процесс инициализации init. Папка srv в ней лежат данные для всех системных служб. Папка tmp – понятно, что в ней хранятся временные файлы. Причем данные файлы там хранятся до перезагрузки операционной системы, во время нее они удаляются. В папке usr хранятся двоичные файлы, которые относятся непосредственно к пользователю, например, игры или программы, т.е то что пользователь самостоятельно установил. Папка var – папка переменные, здесь обычно размещается почта или логи программ. Понятно, что это стандарт во многих дистрибутивах могут быть отклонения, но в том или ином виде все эти папки присутствуют в различных дистрибутивах. Подробнее про структуру FHS можно прочитать здесь Вторая часть не менее важная, как же найти в данных папках необходимую информацию. Команды, используемые для поиска: Grep – Утилита поиска по содержимому в том числе и внутри файла Find - Утилита поиска файлов по свойствам. Серьезная утилита, которая начинает поиск файлов по файловой системе в реальном времени, у данной утилиты есть множество ключей и параметров Locate – Это быстрый поиск файлов. Which – Поиск команды. Выводит минимальное количество информации Type – Вывод точной команды Whereis – Поиск команды, исходников и мануалов. Серьезный глубокий инструмент Начнем с find / -name mail. Данная команда начнет искать в корневой папке / все файлы с именем mail. Данная команда рекурсивно осуществляет поиск по всей файловой системе. Т.к мы запустили поиск от пользователя root, то он пробежался по всем папкам спокойно, если запускать от обычного пользователя, то может не хватать прав. Есть другая команда - locate mail. Данная команда отрабатывает практически мгновенно. Команда find искала именно по синтаксису, плюс можно добавлять сложные конструкции поиска. Команда locate делает проще показывает все где находится сочетание символов. Запустим поиск с помощью команды find / -user siadmin, поиск будет искать все что касается данного пользователя. Поиск опять идет дольше, чем поиск командой locate siadmin. Дело в том, что данная команда по умолчанию ищет не везде и у нее есть конфигурационный файл cat /etc/updatedb.conf. В данном конфигурационном файле мы можем увидеть, что данная утилита не ищет в примонтированных файловых системах. Даная строчка # PRUNENAMES=".git .bzr .hg .svn", говорит о том , что в данных форматы в поиске не выдаются. Поиск не производится в папках PRUNEPATHS="/tmp /var/spool /media /var/lib/os-prober /var/lib/ceph /home/.ecryptfs /var/lib/schroot". И не ищет в перечисленных файловых системах в файле. Данный файл можно конфигурировать и будут манятся параметры поиска. Создадим файл текстовый touch Vadim.txt. И попробуем найти - locate Vadim.txt. Ничего не нашел. find Vadim.txt - поиск успешен. locate работает с индексной локацией. Данный механизм напоминает индексацию файлов в MS Windows. Проходит индексация файлов и папок и после этого windows знает, что и где лежит. А если индексация не была проведена, то операционная система Windows или говорит, что ничего не найдено или поиск происходит длительное время. Аналогично утилита locate работает в Linux. Раз в день, команда locate запускает команду find. Команда find пробегает по всей файловой системе, а команда locate создает некую Базу данных и запоминает где и что находиться. Именно поэтому команда find работает долго, а команда locate работает практически моментально. Locate знает, где и что лежит в тот момент когда find искал. Но есть большой минус, данная функция происходит раз в день и изменения могут быть не актуальны. Для обновления базы данных команды locate, необходимо ее запустить вручную updatedb. Т.е ест конфигурация /etc/updatedb.conf и мы запускаем обновление Базы данных команды. После обновления, команда будет практически мгновенно находить. И последняя часть статьи, в которой необходимо рассмотреть поиск по командам. Тут достаточно просто, есть команда ls – она показывает содержимое папки. Мы можем найти где находиться данная команда which ls и получим, что она находиться /bin/ls. Т.е. команда ls хранится в папке bin – где хранятся бинарники тех команд, которые могут быть вызваны пользователями. По сути когда мы набираем команду ls, мы вводим /bin/ls. У нас есть команда type. Обратите внимание, когда мы вызываем команду ls срабатывает подсветка файлов и так далее, т.е. настройки оболочки. Когда мы запускаем напрямую /bin/ls то вызывается непосредственно команда и игнорируются настройки оболочки. Причина заключается в том, что когда мы запускаем просто команду ls, то она запускается с некоторыми ключами. Чтобы узнать, что за ключи используются необходимо набрать type ls. Обратите внимание, что команда ls – это алиаспсевдоним. Т.е запуская в таком режиме, фактически мы вводим /bin/ls –color=auto. И получаем красивый вывод. Type позволяет выводить псевдоним. Есть еще одна команда, которая более детальную информацию выводит whereis ls. Для ls там не много информации. Показывает, где лежит и к какому пакету относится.
img
Друг, в статье быстро покажем, как заставить звонить IP – телефон Grandstream GXP1610 в связке с IP – АТС Asterisk. Настройки выполним с помощью графической оболочки FreePBX 14. Let's get it started! $dbName_ecom = "to-www_ecom"; $GoodID = "2524508967"; mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); mysql_select_db($dbName_ecom) or die(mysql_error()); $query_ecom = "SELECT `model`, `itemimage1`, `price`, `discount`, `url`, `preview115`, `vendor`, `vendorCode` FROM `items` WHERE itemid = '$GoodID';"; $res_ecom=mysql_query($query_ecom) or die(mysql_error()); $row_ecom = mysql_fetch_array($res_ecom); echo 'Кстати, купить '.$row_ecom['vendor'].' '.$row_ecom['vendorCode'].' можно в нашем магазине Merion Shop по ссылке ниже. С настройкой поможем 🔧 Купить '.$row_ecom['model'].''.number_format(intval($row_ecom['price']) * (1 - (intval($row_ecom['discount'])) / 100), 0, ',', ' ').' ₽'; $dbName_ecom = "to-www_02"; $GoodID = "2524508967"; mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); mysql_select_db($dbName_ecom) or die(mysql_error()); Пошаговое видео Настройка FreePBX Открыв FreePBX переходим в меню Applications → Extensions, нажимаем + Add Extension и создаем сущность вида Chan_Sip. Внутри страницы настройки: User Extension - желаемый номер для аппарата; Display Name - имя, которое увидим на дисплее телефонного аппарата; Обратите внимание, по умолчанию, chan_sip слушает пор 5160! Из поля Secret скопируйте пароль, который FreePBX сгенерировал для нового номера. Сохраняем настройки. Настройка GXP1610 Следующее, что нам предстоит сделать – выяснить IP – адрес (если он получил его по протоколу DHCP), который наш подключенный в сеть GXP1610 получил. Все очень просто – на дисплее телефона нажмите на кнопку NextScr - вот и наш IP – адрес. Открываем новую вкладку в браузере и попадаем на страницу графической оболочки (web gui) нашего Grandstream GXP1610. Вводим логин и пароль. По умолчанию, логин для входа - admin, пароль такой же - admin SIP – регистрации на телефоне нет – исправляем. Открываем Accounts → General Settings и начинаем заполнять поля: Account Name - имя учетной записи. Например, Мерион Нетворкс; SIP Server - IP – адрес сервера Asterisk и через двоеточие порт, на котором слушает chan_sip. Например, 192.168.2.19:5160; Outbound Proxy - аналогично сип – серверу, IP – адрес сервера Asterisk и через двоеточие порт; SIP User ID - номер телефона, который создали на FreePBX. Например, 155; Authenticate ID - аналогично как выше, внутренний номер. Например, 155; Authenticate Password - пароль, который вы скопировали из поля Secret на этапе настройки FreePBX; Name - указываем тоже самое, что и в поле Account Name; Account Display - рекомендуем выбрать User ID, чтобы на дисплее телефона отображался номер, а не имя. Все-таки, дисплей не очень большой :); Нажимаем Save and Apply Проверка В меню навигации в WEB – интерфейсе управления телефоном нажмите на Status. Если в опции SIP registration на зеленом фоне указано Yes, то телефон успешно зарегистрирован. Не получилось? Напиши свой вопрос в комментариях – поможем :)
img
В пленительном мире айти существует множество направлений, одно из самых распространенных - разработчик Java. Если этот язык программирования вызвал у вас ассоциацию ароматной чашки кофе, вы на верном пути. Он был разработан в 1995 году для настройки электронных бытовых устройств. Но время движется дальше, и теперь на Java пишутся различные программы и приложения. Майнкрафт, Spotify, Netflix, «Яндекс.Музыка» и «Яндекс.Маркет», LinkedIn - все эти продукты объединяет язык программирования Java, с помощью которого они были созданы. Попробуем разобраться, как так вышло и рассмотреть профессию Java-разработчика подробнее. Мы ответим на самые интересные вопросы: сколько зарабатывают джависты, и какими навыками нужно обладать для входа в специальность. javavezde Немного скучной, но показательной статистики Язык Java остается одним из самых распространенных и востребованных на протяжении последних лет. Согласно индексу TIOBE, оценивающему популярность языков программирования, на январь 2024 года Java занимает 4 место, уступая таким языкам как Python, C и C++. Все потому, что Java относительно прост в изучении, кроссплатформенный (мы ниже подробнее расскажем, что это такое), весьма производительный, а также обладает высоким уровнем надежности и безопасности. Из-за последнего он широко применяется в банковской сфере. Что касается безопасности, Java имеет встроенные механизмы, такие как средства контроля доступа и проверку на отсутствие указателей, что делает приложения на Java более устойчивыми к различным видам атак. Простыми словами, кроссплатформенность позволяет программам, написанным на языке Java, функционировать на различных операционных системах без изменений в их исходном коде. Почему стоит выбрать Java Начнем с того, что применение этого языка достаточно обширно. Java используется во многих областях, включая веб-разработку, мобильное программирование (Android), корпоративные приложения, игровую индустрию и другие. А это означает, что перед разработчиком открывается широкий выбор сфер, в которых можно работать и развиваться. И даже геймдев - практически все игры на первых мобильных телефонах были написаны на языке Java. motorola Востребованный язык не позволит джависту остаться без работы. Мы уже упоминали выше универсальность этого языка. Это значит, что изучение Java - отличный выбор в качестве первого языка, потому что многие базовые принципы и инструменты были переняты другими. Кроме того, Java имеет обширную экосистему библиотек, фреймворков и инструментов. Что также делает его универсальным языком для различных типов разработки, включая веб-приложения, мобильные приложения, корпоративные системы и многое другое. Необходимые скиллы для новичков Путь в профессию начинается с учебы: можно получить классическое высшее образование или пройти специальные онлайн-курсы. В среднем, чтобы изучить основы Java и начать разрабатывать простые программы, требуется около 3-6 месяцев. Для уровня junior понадобится больше времени: на обучение у вас уйдет не меньше полугода. К слову, в академии Merion есть курс «Java-разработчик с нуля» длительностью 4 месяца. А здесь можно за минуту ознакомиться с курсом. Для успешной Java-разработки необходимо обладать определенным набором навыков. Вот некоторые из ключевых скиллов: Опыт программирования на Java: обладать основными знаниями синтаксиса языка, понимать его особенности и возможности. Объектно-ориентированное программирование (ООП): понимание основных принципов ООП, таких как инкапсуляция, наследование и полиморфизм, является важным для разработчиков на Java. Знание фреймворков: джависты используют фреймворк Spring, который необходим для разработки масштабируемых и эффективных приложений. Работа с базами данных и знание языка SQL: без них никуда, потому что они нужны практически в любом веб-приложении для хранения и манипуляции данными. Умение работать с системами контроля версий, например, Git. Она позволяет разработчикам эффективно сотрудничать, отслеживать историю изменений, создавать ветки для экспериментов и объединять изменения. Тестирование: знание принципов автоматизированного тестирования, чтобы автоматически проверять код после того, как в него были внесены очередные изменения. Командная работа: не стоит забывать, что Java-программирование это история про умение работать в команде, поэтому помимо перечисленных выше хард-скиллов, нужно обладать еще и софтами. Например, умение договариваться и взаимодействовать с другими участниками, желание развиваться, изучение английского языка и др. Уровень дохода Java-разработчика zarplatait Самая приятная часть повествования - это зарплаты в айти. Итак, на начало 2024 года на хэдхантере опубликовано чуть меньше 2 тыс. вакансий Java-разработчика с различным уровнем опыта работы. Обычно их делят так: junior (до года), middle (1-3 года) и senior (больше 3-х лет). Зарплатные вилки столичных разработчиков в среднем представлены в следующем диапазоне: Junior: 60-140 тыс.руб; Middle: 130-250 тыс.руб; Senior: 220-350 тыс.руб Зарплаты в регионах ниже в среднем на 10-20%. Заключение Итак, задачи Java-разработчика достаточно обширны и варьируются от проектирования архитектуры до написания эффективного кода, от обеспечения безопасности приложения до его последующей поддержки. Java-разработчик- это инженер, создающий технологически сложные интеллектуальные решения. Надеемся, что упомянув на первый (да и на второй, и третий) взгляд сложные термины и понятия, мы не отпугнули вас от интересной профессии.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59