LINUX.ORG.RU

Сообщения Kroz

 

Первый элемент bash массива пропадает в командной строке

Форум — General

Доброго дня

Проверьте, пожалуйста, у себя в командной строке:

$ A=("one" "two" "three") ; echo "${A[0]} - ${A[1]} - ${A[2]}"
one - two - three

$ echo "${A[0]} - ${A[1]} - ${A[2]}"
 - two - three
Почему в результате второй команде нет первого элемента?

UPD: Еще странность: на только что запущенном шелле:
$ [[ -v A ]] && echo Exists
Exists
Куда копать?
$ bash --version
GNU bash, version 4.3.42(1)-release (i686-pc-linux-gnu)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

 

Kroz
()

Пропатчить конфиг перед его установкой в систему

Форум — General

Всем привет

Давно лелеял эту идею, пора воплощать...

Gentoo, работа с конфигами при обновлении пакета, как я ее понимаю:
1. Скачиваются файлы пакета; проверки, распаковки, компиляция...
2. Установка в песочницу
3. На каком-то этапе формируется файл конфигурации (кстати, точное определение еще нужно дать - см. вопрос 2).
4. Догадываюсь, что на этом этапе куда-то записывается «образ» конфига (наверное это хеш или что-то еще - см. вопрос 3), чтобы в следующий раз можно было сделать проверку модифицирован ли файл пользователем (см. шаг 5).
5. Проверяется (каким-то образом) модифицирован существующий (уже установленный) файл конфига пользователем.
6. Если существующий файл не был модифицирован, то emerge заменит существующий файл новым (из песочницы).
7. Если существующий файл таки был модифицирован пользователем, то новый конфиг будет установлен как ._cfg0001_xxxxxxx.

Проблема: любая модификация конфигов пользователем приводит к размножению ._cfg* файлов при апдейте пакетов.

Задача: патчить конфиг перед его установкой.

Вопросы:
1. Как выполнить скрипт сразу после шага 3 и желательно без модификации ebuild'ов? (Именно скрипт, так как простой patch в общем случае здесь не подходит)
2. Догадываюсь, что описанный механизм работы с конфигами работает не со всеми файлами. Например, если модифицирую /bin/mount, оно ж мне не создаст при обновлении ._cfg0001_mount? Где/как определяется что есть конфиг?
3. Расскажите, всё-таки, как происходит проверка конфигов? Где и на каком этапе записывается образ/хеш для сравнения?
4. На что еще имеет смысл обратить внимание для выполнения поставленной задачи?

Спасибо

Cast Pinkbyte

 ,

Kroz
()

Awesome: убирать меню при клике мимо него или переключении на другое окно

Форум — General

Всем привет!

Пробую awesome wm . Немного раздражает непривычное поведение системного меню.

Как сделать, чтобы меню убиралось при клике мимо него или переключении на другое окно?

Спасибо.

 

Kroz
()

Из какого видео фрагмент «Даёшь? Даю! Ура!»

Форум — Talks

Всем привет.

Был какой-то видеоролик, по-моему муз. клип или что-то ещё... И там был фрагмент как-бы советского кино (скорее всего просто имитация или нарезка), а точнее немого кино (то есть сначала кадр, потом текст, опять кадр, опять такст и т. п.). Там один спрашивает «Даешь?», второй отвечает «Даю!», первый (а может другие) «Уррааа!».

Подскажите, откуда это? Как найти?

Спасибо!

 ,

Kroz
()

Есть кто с Raspberry Pi и 1-wire?

Форум — General

Всем привет.

Не могу завести 1-wire на raspberry pi. Делаю через owfs, но, думаю, проблема глубже.

Важно: предполагается использование встроенного адаптера 1-wire, не внешнего.

У кого есть работающий 1-wire? - Покажите/подскажите следующее:
1. lsusb (lspci) должны выводить что-то про адаптер? Покажите свой вывод lsusb, lspci
2. Зачем редактировать в /boot/config.txt добавлять «dtoverlay=w1-gpio-pullup,gpiopin=4,pullup=1»? Что будет если этого не сделать?
3. Говорят, что в каких-то ядрах есть бага, которая что-то ломает в 1wire. Есть инфа, какая версия 100% рабочая? Какая у вас версия ядра?
4. Я правильно понимаю, что для owfs модули ядра не обязательны?
5. У себя я вообще не нашел модулей ядра. Они как-то доставляются? Или где их взять?
6. Покажите свой owfs.conf. Интересно что писать в server:.
7. У меня датчик не видится, но есть фейковые устройства. Как их убрать?
8. Я правильно понимаю, что pullup резистор не обязателен? Есть какая-то разница в конфигурациях с резистором или без?

Спасибо.

 , ,

Kroz
()

Помогите установить ati-drivers-15.12-r1 при kernel 4.4.0

Форум — General

Всем привет.

Обновил ядро до 4.4.0, обновляю ati-drivers до ati-drivers-15.12-r1 - ошибки компиляции. Выдержка внизу, детальный лог здесь: http://pastebin.com/3zgB3qKK

Притом у людей ствится, как я понимаю.

Помогите, пожалуйста, решить проблему или хотябы дайте свой конфиг ядра + выхлоп emerge -pv --nodeps gentoo-sources ati-drivers.

cast leakyleaf, Jameson.

Спасибо.

  CC [M]  /var/ramdisk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_debug.o
disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.c:839:20:’ defined but not used [-Wunused-function]
 static acpi_status KCL_ACPI_Slot_No_Hotplug(KCL_ACPI_DevHandle handle, u32 lvl, void *data, void **rv)

  CC [M]  /var/ramdisk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_ioctl.o
disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:262:0:"__flush_tlb" redefined
 #define __flush_tlb() native_write_cr3(native_read_cr3())

In file included from /highmem.h:26:0,
                 from em.h:34,
                 from disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:123:
/tlbflush.h:13:0:this is the location of the previous definition
 #define __flush_tlb() __native_flush_tlb()

disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:264:20:’
 static inline void __flush_tlb_all(void)

In file included from /highmem.h:26:0,
                 from em.h:34,
                 from disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:123:
/tlbflush.h:124:20:’ was here
 static inline void __flush_tlb_all(void)

disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:pxchg’:
disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1751:30:plicit declaration of function ‘plicit-function-declaration]
                              : "q"(new), "m"(*__xg(ptr)), "0"(old)

disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1751:46:ent of unary ‘’)
                              : "q"(new), "m"(*__xg(ptr)), "0"(old)

disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1757:46:ent of unary ‘’)
                              : "q"(new), "m"(*__xg(ptr)), "0"(old)

disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1763:46:ent of unary ‘’)
                              : "q"(new), "m"(*__xg(ptr)), "0"(old)

  CC [M]  /var/ramdisk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_io.o
disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1749:9:emory input 2 is not directly addressable
         __asm__ __volatile__(LOCK_PREFIX "cmpxchgb %b1,%2"

disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1755:9:emory input 2 is not directly addressable
         __asm__ __volatile__(LOCK_PREFIX "cmpxchgw %w1,%2"

disk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1761:9:emory input 2 is not directly addressable
         __asm__ __volatile__(LOCK_PREFIX "cmpxchgl %1,%2"

cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target '/var/ramdisk/tmp/portage/x11-drivers/ati-drivers-15.12-r1/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o' failed

 , ,

Kroz
()

Инициализировать union константу в классе

Форум — Development

Всем привет

Чувствую что туплю, потому прошу помощи - просветить.

Нужно сделать константу в классе, которая представляет из себя union. Сейчас это строка в самом низу:

static const TUnion A = TUnion(1,1);

(сорри за неинформативное имя)

Компилирую так:
$ g++ -std=c++14 -ggdb -o range range.cpp


Текущий вариант кода выдает такое:
test.cpp:74:36: error: ‘constexpr’ needed for in-class initialization of static data member ‘const TRangeLocation::TUnion TRangeLocation::A’ of non-integral type [-fpermissive]
  static const TUnion A = TUnion(1,1);
                                    ^
test.cpp:74:36: error: ‘constexpr TRangeLocation::TUnion::TUnion(TPointLocation::T, TPointLocation::T)’ called in a constant expression

Что ему нужно? Или вообще так нельзя?

Я ожидаю, что если я скормлю ему две единицы, то m_range константы TRangeLocation::A будет содержать 257.

#include <iostream>
#include <iomanip>
#include <cstdint> // uint8_t
#include <type_traits>

/**
 * \brief Definitions of constants for describing location of point relative of range's endpoints
 *
 * If was decided no not using enum since a bug in gcc: when defining bitsize of enum field, gcc emits warning: http://stackoverflow.com/questions/28401851/is-it-possible-to-specify-the-bit-width-of-an-enum-in-c11
 * All constants shall have same type
 * MAX shall contain maximum value
*/
class TPointLocation{ /// \todo: Rename to TPointRangeLocation
public:
	typedef uint8_t T; /// To let all constants have same type

	static const T LEFT_FROM = 0;  /// -p-f---t---
	static const T EQUAL_FROM = 1; /// ---fp--t---
	static const T BETWEEN = 2;    /// ---f-p-t---
	static const T EQUAL_TO = 3;   /// ---f---tp--
	static const T RIGHT_TO = 4;   /// ---f---t-p-

	static const T MAX = 4; /// Maximum value of all constants. Uses for static_assert.

	/// \todo: think about constexpr
};

/**
 * \brief Location of one range relative to another one.
*/
class TRangeLocation{ /// \todo: Rename to TRangeRangeLocation
public:
	typedef uint16_t T; /// Shall fit two TPointLocation::T

  /** \brief A structure just containing location information of two endpoints of the range.
	 *
	 * Used in union to construct cummulative value.
	 * Shall not be a bitfield, since later will use reference to it.
	 * Separated because a new struct cannot be defined in the union.
	*/
	struct TPoints{
		static_assert(std::is_integral<TPointLocation::T>::value && std::is_unsigned<TPointLocation::T>::value,"TPointLocation is expected to be an unsigned integer");
		//static_assert(TPointLocation::MAX < 9,"Bitfield size in not enough to store the value");
		static_assert(sizeof(T)==sizeof(TPointLocation::T)*2 ,"Size of TrangeLocation: is bigger (and thus causes ambiguity) or is not enough");
		TPointLocation::T from;
		TPointLocation::T to;

		constexpr TPoints():from(0),to(0){};
		constexpr TPoints(TPointLocation::T f, TPointLocation::T t):from(f),to(t){};
	};

	union TUnion{
		TPoints m_points; /// It is prefered to avoid constructions like m_points.from, but this is impossible
		T m_range;

		constexpr TUnion():m_range(0){};
		constexpr TUnion(TPointLocation::T from, TPointLocation::T to):m_points(from,to){};
	} m_value;

	const T &m_range = m_value.m_range; /// Convenient alias
	const TPointLocation::T &m_from = m_value.m_points.from; /// Convenient alias
	const TPointLocation::T &m_to = m_value.m_points.to;     /// Convenient alias

	TRangeLocation(){};
	TRangeLocation(TPointLocation::T from, TPointLocation::T to):m_value(from,to){};

	TRangeLocation& operator=(TRangeLocation &&b)
	{
		m_value.m_range = std::move(b.m_value.m_range);

		return *this;
	};

	static const TUnion A = TUnion(1,1);
} x;

int main()
{
	return 0;
};

 ,

Kroz
()

Midori - можно ли переместить панель с табами вниз?

Форум — General

Всем привет

Присматриваюсь к Midori browser. Практически всё устраивает. Только вот я привык, что панель с табами внизу. Это можно как-то реализовать?

Да, и есть ли там какой-то режим тонкой настройки типа opera:config (в firefox тоже что-то подобное было).

 

Kroz
()

kde-plasma/kwinбез wayland хочет media-libs/mesa с wayland

Форум — General

Всем привет.

Gentoo ~x86, прилетело с обновлением:

$ emerge -av1 kwin
...
Calculating dependencies... done!
[ebuild     U  ] media-libs/mesa-11.0.5::gentoo [11.0.4::gentoo] USE="classic dri3 egl gallium gbm nptl udev vaapi wayland* -bindist -d3d9 -debug -gles1 -gles2 -llvm -opencl -openmax -osmesa -pax_kernel -pic (-selinux) -vdpau -xa -xvmc" VIDEO_CARDS="(-freedreno) -i915 -i965 -ilo -intel -nouveau -r100 -r200 -r300 -r600 -radeon -radeonsi -vmware" 7 102 KiB
...
[ebuild     U  ] kde-plasma/kwin-5.4.95:5::kde [5.4.3:5::kde] USE="-debug -gles2 -handbook -multimedia {-test} (-wayland%)" 3 719 KiB
[...
The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by kde-plasma/kwin-5.4.95::kde
# required by kwin (argument)
>=media-libs/mesa-11.0.5 wayland

Would you like to add these changes to your config files? [Yes/No]


То есть kwin, который без wayland, требует mesa с wayland, я все правильно понял?
Это нормально?

 

Kroz
()

GitHub: законтрибутить в чужой проект через WEB

Форум — Development

Всем привет!

Ситуация: выкачал одну вещь из github, нашел недостатки, подправил. Теперь хочется поделиться наработками с сообществом. Вопрос: как сделать так, чтобы мои изменения попали в исходный репозиторий?

Исходные данные:
- Никогда не работал с git (работал с subversion)
- Завел новый аккаунт на github
- Есть измененный файл, который нужно закоммитить репозиторий (про push/pull ничего не знаю, так что «закоммитить» может и не совсем точно)
- Волей случая не за линуксовой машиной, так что очень желательно все делать через браузер.

Вкратце опишите, пожалуйста, что делать, чтобы мой патч попал в основной репозиторий.

Да, и как это сделать идеологически правильно: ведь по идее ж собственник репозитория же должен решить, принимать ли мой коммит? Или кто угодно может менять файлы?

Спасибо

P. S. Кому интересно: vim, прикрутил к vim-session поддержку MiniBufExplorer по мотивам этого треда.

 , , ,

Kroz
()

vim syntax highlight: как сделать, чтобы накладывался цвет и bold?

Форум — General

Всем привет.

Делаю подсветку синтаксиса в vim.
GUI (gvim), но не в этом суть, если для терминала решение есть, для gvim'а разберусь как прикрутить.

Тестовый текст:

one two three four

Делаю:
:syn off
:syn on
:syn match two 'two.*' contains=three
:hi two guifg=red

Работает: two three four теперь красное.
Теперь продолжаю:
:syn match three 'three.*'
:hi two gui=bold

Я ожидал, что three four теперь будет крассным bold, а оно просто bold и дефолтного guifg .

Как сделать, чтобы для three bold (явно указанный) не отменял guifg установленного two?

 ,

Kroz
()

Так в чем разница MPLS и VLAN?

Форум — General

Всем привет.

Вопрос, наверное, совсем нубовский, но все-таки.

И VLAN, и MPLS - уровня 2.5, добавляют метки/теги. Так зачем параллельно существуют две технологии? Почему нельзя, например, использовать MPLS вместо VLAN? Или VLAN вместо MPLS? В чем принципиальная разница?

 , , , ,

Kroz
()

Чтобы компилятор различал стандартный тип и «кастомный» (typedef)

Форум — Development

Всем привет

Есть шаблонная функция (fn в примере внизу), которая действует по-разному в зависимости от типа аргумента. Есть кастомный тип (TNew в примере внизу), который является синонимом стандартного типа unsigned char. Мне нужно чтобы функция действовала по-разному в случаях, когда ей передается стандартный тип или кастомный. C++ же воспринимает кастомный тип как синоним стандартного, и не дает специфицировать функцию.

В общем, проще на примере.

Код внизу не компилируется, так как компилятор трактует
void fn(const unsigned char &arg)
void fn(const TNew &arg)
как одно и то же. А нужно, чтобы он различал эти функции/типы.

Такое возможно?

#include <iostream>
#include <iomanip>

typedef unsigned char TNew;

template <class T>
void fn(const T &arg)
{
  std::cout << "generic" << std::endl;
}

template <>
void fn(const unsigned char &arg)
{
  std::cout << "unsigned char" << std::endl;
}

template <>
void fn(const TNew &arg)
{
  std::cout << "TNew" << std::endl;
}


int main()
{
  int a;
  unsigned char b;
  TNew c;

  fn(a);
  fn(b);
  fn(c);

  return 0;
}

 ,

Kroz
()

Otter browser и видео в youtube

Форум — General

Всем привет

У кого-то работает видео в youtube в otter browser? У меня черный экран, звук идет, картинки если навести на перемотку показывает. HTML5 (не flash). Такое впечатление, что нет кодеков, но каких?

 ,

Kroz
()

Помогите скомпилировать С++11 файл с помощью clang

Форум — Development

Всем привет.

Понадобилось скомпилировать С++ файл (С++11) с помощью clang. Запускаю, получаю:

$ clang -std=c++11 -stdlib=libc++ file.cpp 
file.cpp:1:9: fatal error: 'iostream' file not found
#include<iostream>
        ^
1 error generated


Почему он не может найти заголовочный файл? Как это победить?

clang-3.6.2, gcc-4.9.3:
$ emerge -pv --nodeps clang gcc llvm

These are the packages that would be merged, in order:

[ebuild   R    ] sys-devel/clang-3.6.2-r100:0/3.6::gentoo  USE="python static-analyzer -debug -multitarget" 0 KiB
[ebuild   R    ] sys-devel/gcc-4.9.3:4.9::gentoo  USE="cxx fortran nls nptl objc objc++ objc-gc openmp sanitize (-altivec) -awt -cilk -debug -doc (-fixed-point) -gcj -go -graphite (-hardened) (-libssp) (-multilib) (-multislot) -nopie -nossp -regression-test -vanilla" 23 KiB
[ebuild   R    ] sys-devel/llvm-3.6.2:0/3.6::gentoo  USE="clang libffi ncurses python static-analyzer xml -debug -doc -gold -libedit -multitarget -ocaml {-test}" PYTHON_TARGETS="python2_7 -pypy" VIDEO_CARDS="-radeon" 0 KiB

Total: 3 packages (3 reinstalls), Size of downloads: 23 KiB

 , ,

Kroz
()

vim плагины для С++ разрабоки

Форум — Development

Уважаемые С++ программисты, программеры, кодеры и родственные души.

Если вы работаете в vim, какие плагины вы при этом используете?

Поделитесь, пожалуйста, своими комплектами vim плагинов для C++ разработки.

Спасибо!

 ,

Kroz
()

Где можно посмотреть таблицу скан-кодов клавиатуры?

Форум — General

Всем привет!

Шаманю с трансляцией скан-кодов в keycodes. setkeycodes работает. Но интересно бы посмотреть дефолтную таблицу связок scancodes -> keycodes.

Интернет советует 2 вещи:
- evtest. Но он показывает не все. В частности, мою клавиатурную кнопку Power (scancode=0xde) не показывает.
- showkeys . Но он показывает нажатую кнопку. Мне что, его запускать и все кнопки по очереди нажимать?

Ведь где-то ж это есть?

 

Kroz
()

После обновления Xorg и/или драйверов Ctrl+Alt+F1 показывает черный экран

Форум — General

Всем привет!

После обновления Xorg и/или драйверов при переключении на виртуальный терминал показывается черный экран. Возврат в граф. среду с помощью Ctrl+Alt+F7 работает нормально.

Я такое замечал ранее, откатывался маскировкой следующего:

=x11-drivers/ati-drivers-15.1
=x11-drivers/xf86-input-evdev-2.9.2
Но пришла пора решать проблему.

Куда копать?
$ emerge -pv --nodeps x11-drivers/ati-drivers x11-base/xorg-drivers xorg-server

These are the packages that would be merged, in order:

[ebuild   R    ] x11-drivers/ati-drivers-15.7:1::gentoo  USE="modules qt4 -debug -gdm-hack -pax_kernel -static-libs" 0 KiB
[ebuild   R    ] x11-base/xorg-drivers-1.17::gentoo  INPUT_DEVICES="evdev wacom -acecad -aiptek -elographics -fpit -hyperpen -joystick -keyboard (-libinput) -mouse -mutouch -penmount -synaptics -tslib -vmmouse -void" VIDEO_CARDS="fglrx -apm -ast -chips -cirrus -dummy -epson -fbdev (-freedreno) -geode -glint -i128 -i740 -intel -mach64 -mga -neomagic -nouveau -nv -nvidia (-omap) (-omapfb) -qxl -r128 -radeon -radeonsi -rendition -s3 -s3virge -savage -siliconmotion -sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx) -tdfx (-tegra) -tga -trident -tseng -vesa -via -virtualbox -vmware (-voodoo)" 0 KiB
[ebuild   R    ] x11-base/xorg-server-1.17.2:0/1.17.2::gentoo  USE="glamor ipv6 nptl suid udev xorg -dmx -doc -kdrive -minimal (-selinux) -static-libs -systemd -tslib -unwind -wayland -xephyr -xnest -xvfb" 0 KiB

Total: 3 packages (3 reinstalls), Size of downloads: 0 KiB

Выхлоп Xorg.0.log при переключении на VT1 и обратно:

[  4835.861] (II) AIGLX: Suspending AIGLX clients for VT switch
[  4835.862] (II) fglrx(0): Backup framebuffer data.
[  4836.543] (II) fglrx(0): Backup complete.
[  4840.305] (II) AIGLX: Resuming AIGLX clients after VT switch
[  4840.676] (II) fglrx(0): EDID vendor "DEL", prod id 40985
[  4840.678] (II) fglrx(0): Using hsync ranges from config file
[  4840.678] (II) fglrx(0): Using vrefresh ranges from config file
[  4840.678] (II) fglrx(0): Printing DDC gathered Modelines:
[  4840.679] (II) fglrx(0): Modeline "1680x1050"x0.0  119.00  1680 1728 1760 1840  1050 1053 1059 1080 +hsync -vsync (64.7 kHz eP)
[  4840.679] (II) fglrx(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz e)
[  4840.679] (II) fglrx(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz e)
[  4840.679] (II) fglrx(0): Modeline "640x480"x0.0   25.18  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz e)
[  4840.679] (II) fglrx(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz e)
[  4840.680] (II) fglrx(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz e)
[  4840.680] (II) fglrx(0): Modeline "1024x768"x0.0   78.75  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.0 kHz e)
[  4840.680] (II) fglrx(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz e)
[  4840.680] (II) fglrx(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz e)
[  4840.680] (II) fglrx(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz e)
[  4840.681] (II) fglrx(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz e)
[  4841.019] (II) fglrx(0): EDID vendor "DEL", prod id 40985
[  4841.019] (II) fglrx(0): Using hsync ranges from config file
[  4841.019] (II) fglrx(0): Using vrefresh ranges from config file
[  4841.019] (II) fglrx(0): Printing DDC gathered Modelines:
[  4841.019] (II) fglrx(0): Modeline "1680x1050"x0.0  119.00  1680 1728 1760 1840  1050 1053 1059 1080 +hsync -vsync (64.7 kHz eP)
[  4841.019] (II) fglrx(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz e)
[  4841.019] (II) fglrx(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz e)
[  4841.019] (II) fglrx(0): Modeline "640x480"x0.0   25.18  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz e)
[  4841.019] (II) fglrx(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz e)
[  4841.019] (II) fglrx(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz e)
[  4841.019] (II) fglrx(0): Modeline "1024x768"x0.0   78.75  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.0 kHz e)
[  4841.019] (II) fglrx(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz e)
[  4841.020] (II) fglrx(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz e)
[  4841.020] (II) fglrx(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz e)
[  4841.020] (II) fglrx(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz e)
[  4841.051] (II) fglrx(0): EDID vendor "DEL", prod id 40985
[  4841.052] (II) fglrx(0): Using hsync ranges from config file
[  4841.052] (II) fglrx(0): Using vrefresh ranges from config file
[  4841.052] (II) fglrx(0): Printing DDC gathered Modelines:
[  4841.052] (II) fglrx(0): Modeline "1680x1050"x0.0  119.00  1680 1728 1760 1840  1050 1053 1059 1080 +hsync -vsync (64.7 kHz eP)
[  4841.052] (II) fglrx(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz e)
[  4841.052] (II) fglrx(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz e)
[  4841.052] (II) fglrx(0): Modeline "640x480"x0.0   25.18  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz e)
[  4841.052] (II) fglrx(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz e)
[  4841.052] (II) fglrx(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz e)
[  4841.052] (II) fglrx(0): Modeline "1024x768"x0.0   78.75  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.0 kHz e)
[  4841.052] (II) fglrx(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz e)
[  4841.052] (II) fglrx(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz e)
[  4841.052] (II) fglrx(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz e)
[  4841.052] (II) fglrx(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz e)

 , ,

Kroz
()

Фазы установки пакета emerge

Форум — General

Всем привет.

Какие есть фазы в установке пакета с помощью emerge? Ну, допустим, если я хочу воспроизвести процесс с помощью ebuild.

На форуме нашел сообщение 2012 года:

ebuild path/to/package.ebuild fetch 
ebuild path/to/package.ebuild unpack 
ebuild path/to/package.ebuild compile 
ebuild path/to/package.ebuild install 
ebuild path/to/package.ebuild qmerge 
ebuild path/to/package.ebuild clean

Подозреваю, что с тех пор что-то поменялось. Например, в мане по ebuild нахожу такие вещи как setup, prepare, configure, test, которые, подозреваю, как-то должны вписываться в общий процесс.

В идеале получить бы ссылку на официальную документацию, где описана актуальная информация.

cast Pinkbyte

 , ,

Kroz
()

L3 switch

Форум — General

Всем привет.

Заговорили с товарищем про разницу switch, L3 switch, router. Я вроде эту тему понимаю. Но после общения, погуглив, я не нашел подтверждения некоторым своим мыслям. Потому прошу достопочтенное общество подтвердить/опровергнуть следующие утверждения относительно L3 switch.
1. Его портам не нужно назначать отдельных IP адресов (management IP не в счет). Те IP адреса (подсети), которые назначены на его порты, это адреса других устройств. Или: если есть сеть из двух хостов соедененных L3 switch'ем, такой сети достаточно двух IP адресов (management IP не в счет).
2. Его нельзя пингануть по прортам (management IP не в счет)
3. Он не подменяет MAC адреса пакетов. То есть пакет, пройдя L3 switch, будет все равно иметь MAC адреса отправителя/получателя - хостов или соотв. ближайших шлюзов, но не L3 switch'a.
4. На хостах ARP таблица будет содержать MAC адреса других хостов/рутеров, но L3 switch там никак себя не засветит (management IP не в счет).

Собственно, всё это базируется на утверждении, что это все еще L2 устройство (точнее устройство уровня ниже L3, если считать VLAN уровнем 2.5) абсолютно прозрачное для уровня L3 (IP).

Верно?

Ответ: Нет, не верно. Функционально L3 switch = полноценный router. В исполнении, у него меньше функций, чем у классического (с точки зрения предложений на рынке) рутера, где-то меньше ресурсов, но он очень быстрый. Его сегмент применения - маршрутизация между VLAN'ами. Детальней здесь: L3 switch (комментарий)

 , ,

Kroz
()

RSS подписка на новые темы